22 #ifndef LSST_GEOM_SPHEREPOINT_H_ 23 #define LSST_GEOM_SPHEREPOINT_H_ 240 return fabs(_latitude) >=
HALFPI;
bool operator==(SpherePoint const &other) const noexcept
true if two points have the same longitude and latitude.
std::size_t hash_value() const noexcept
Return a hash of this object.
bool isFinite() const noexcept
true if this point is a well-defined position.
std::pair< Angle, Angle > getTangentPlaneOffset(SpherePoint const &other) const
Get the offset from a tangent plane centered at this point to another point.
table::Key< lsst::geom::Angle > latitude
Angle bearingTo(SpherePoint const &other) const
Orientation at this point of the great circle arc to another point.
Point2D getPosition(AngleUnit unit) const noexcept
Return longitude, latitude as a Point2D object.
Angle getRa() const noexcept
Synonym for getLongitude.
Angle getLongitude() const noexcept
The longitude of this point.
SpherePoint rotated(SpherePoint const &axis, Angle const &amount) const noexcept
Return a point rotated from this one around an axis.
sphgeom::UnitVector3d getVector() const noexcept
A unit vector representation of this point.
Vector3d is a vector in ℝ³ with components stored in double precision.
AngleUnit constexpr radians
constant with units of radians
A class representing an angle.
Angle operator[](size_t index) const
Longitude and latitude by index.
std::ostream & operator<<(std::ostream &os, SpherePoint const &point)
Print the value of a point to a stream.
This file declares a class for representing vectors in ℝ³.
This file declares a class for representing unit vectors in ℝ³.
size_t operator()(argument_type const &x) const noexcept
SpherePoint() noexcept
Construct a SpherePoint with "nan" for longitude and latitude.
A base class for image defects.
Angle getDec() const noexcept
Synonym for getLatitude.
Angle separation(SpherePoint const &other) const noexcept
Angular distance between two points.
Angle getLatitude() const noexcept
The latitude of this point.
SpherePoint offset(Angle const &bearing, Angle const &amount) const
Return a point offset from this one along a great circle.
table::Key< lsst::geom::Angle > longitude
SpherePoint & operator=(SpherePoint const &other) noexcept
Overwrite this object with the value of another SpherePoint.
Point in an unspecified spherical coordinate system.
LonLat represents a spherical coordinate (longitude/latitude angle) pair.
bool atPole() const noexcept
true if this point is either coordinate pole.
lsst::geom::SpherePoint SpherePoint
ItemVariant const * other
UnitVector3d is a unit vector in ℝ³ with components stored in double precision.
bool operator!=(SpherePoint const &other) const noexcept
false if two points represent the same position.
A class used to convert scalar POD types such as double to Angle.
SpherePoint averageSpherePoint(std::vector< SpherePoint > const &coords)
Return the average of a list of coordinates.