LSSTApplications
11.0-24-g0a022a1,14.0+77,15.0,15.0+1
LSSTDataManagementBasePackage
|
This is the base class for spherical coordinates. More...
#include <Coord.h>
Public Member Functions | |
Coord (lsst::afw::geom::Point2D const &p2d, lsst::afw::geom::AngleUnit unit=lsst::afw::geom::degrees, double const epoch=2000.0) | |
Constructor for the Coord base class. More... | |
Coord (lsst::afw::geom::Point3D const &p3d, double const epoch=2000.0, bool normalize=true, lsst::afw::geom::Angle const defaultLongitude=lsst::afw::geom::Angle(0.)) | |
Constructor for the Coord base class. More... | |
Coord (lsst::afw::geom::Angle const ra, lsst::afw::geom::Angle const dec, double const epoch=2000.0) | |
Constructor for the Coord base class. More... | |
Coord (std::string const ra, std::string const dec, double const epoch=2000.0) | |
Constructor for the Coord base class. More... | |
Coord () | |
Default constructor for the Coord base class. More... | |
virtual | ~Coord ()=default |
Coord (Coord const &) | |
Coord (Coord &&) | |
Coord & | operator= (Coord const &) |
Coord & | operator= (Coord &&) |
virtual std::shared_ptr< Coord > | clone () const |
virtual void | reset (lsst::afw::geom::Angle const longitude, lsst::afw::geom::Angle const latitude) |
virtual void | reset (lsst::afw::geom::Angle const longitude, lsst::afw::geom::Angle const latitude, double const epoch) |
Reset our coordinates wholesale. More... | |
double | getEpoch () const |
lsst::afw::geom::Point2D | getPosition (lsst::afw::geom::AngleUnit unit=lsst::afw::geom::degrees) const |
Return our contents in a Point2D object. More... | |
lsst::afw::geom::Point3D | getVector () const |
Return our contents in a position vector. More... | |
virtual std::pair< std::string, std::string > | getCoordNames () const |
virtual std::string | getClassName () const |
virtual CoordSystem | getCoordSystem () const |
virtual std::string | toString () const |
Get string representation. More... | |
lsst::afw::geom::Angle | operator[] (int const index) const |
Provide access to our contents via an index. More... | |
bool | operator== (Coord const &rhs) const |
Equality operator, compares each element directly. More... | |
lsst::afw::geom::Angle | getLongitude () const |
The main access method for the longitudinal coordinate. More... | |
lsst::afw::geom::Angle | getLatitude () const |
The main access method for the latitudinal coordinate. More... | |
std::string | getLongitudeStr (lsst::afw::geom::AngleUnit unit) const |
Allow quick access to the longitudinal coordinate as a string. More... | |
std::string | getLatitudeStr () const |
Allow quick access to the longitude coordinate as a string. More... | |
Coord | transform (Coord const &poleTo, Coord const &poleFrom) const |
Transform our current coords to another spherical polar system. More... | |
lsst::afw::geom::Angle | angularSeparation (Coord const &c) const |
compute the angular separation between two Coords More... | |
std::pair< lsst::afw::geom::Angle, lsst::afw::geom::Angle > | getOffsetFrom (Coord const &c) const |
Compute the offset from a coordinate. More... | |
std::pair< lsst::afw::geom::Angle, lsst::afw::geom::Angle > | getTangentPlaneOffset (Coord const &c) const |
Get the offset on the tangent plane. More... | |
void | rotate (Coord const &axis, lsst::afw::geom::Angle const theta) |
Rotate our current coords about a pole. More... | |
lsst::afw::geom::Angle | offset (lsst::afw::geom::Angle const phi, lsst::afw::geom::Angle const arcLen) |
offset our current coords along a great circle defined by an angle wrt a declination parallel More... | |
std::shared_ptr< Coord > | convert (CoordSystem system, double epoch=2000) const |
Convert to a specified Coord type at a specified epoch. More... | |
virtual Fk5Coord | toFk5 (double const epoch) const |
Convert ourself to Fk5: RA, Dec (precess to new epoch) More... | |
virtual Fk5Coord | toFk5 () const |
Convert ourself to Fk5: RA, Dec (use current epoch) More... | |
virtual IcrsCoord | toIcrs () const |
Convert ourself to ICRS: RA, Dec (basically J2000) More... | |
virtual GalacticCoord | toGalactic () const |
Convert ourself to Galactic: l, b. More... | |
virtual EclipticCoord | toEcliptic (double const epoch) const |
Convert ourself to Ecliptic: lambda, beta (precess to new epoch) More... | |
virtual EclipticCoord | toEcliptic () const |
Convert ourself to Ecliptic: lambda, beta (use existing epoch) More... | |
virtual TopocentricCoord | toTopocentric (Observatory const &obs, lsst::daf::base::DateTime const &obsDate) const |
Convert ourself to Altitude/Azimuth: alt, az. More... | |
Private Member Functions | |
void | _verifyValues () const |
Make sure the values we've got are in the range 0 <= x < 2PI. More... | |
Private Attributes | |
lsst::afw::geom::Angle | _longitude |
lsst::afw::geom::Angle | _latitude |
double | _epoch |
lsst::afw::coord::Coord::Coord | ( | lsst::afw::geom::Point2D const & | p2d, |
lsst::afw::geom::AngleUnit | unit = lsst::afw::geom::degrees , |
||
double const | epoch = 2000.0 |
||
) |
Constructor for the Coord base class.
p2d | Point2D |
unit | Rads, Degs, or Hrs |
epoch | epoch of coordinate |
Definition at line 298 of file Coord.cc.
lsst::afw::coord::Coord::Coord | ( | lsst::afw::geom::Point3D const & | p3d, |
double const | epoch = 2000.0 , |
||
bool | normalize = true , |
||
lsst::afw::geom::Angle const | defaultLongitude = lsst::afw::geom::Angle(0.) |
||
) |
Constructor for the Coord base class.
p3d | Point3D |
epoch | epoch of coordinate |
normalize | normalize the p3d provided |
defaultLongitude | longitude to use if x=y=0 |
Definition at line 305 of file Coord.cc.
lsst::afw::coord::Coord::Coord | ( | lsst::afw::geom::Angle const | ra, |
lsst::afw::geom::Angle const | dec, | ||
double const | epoch = 2000.0 |
||
) |
Constructor for the Coord base class.
ra | Right ascension, decimal degrees |
dec | Declination, decimal degrees |
epoch | epoch of coordinate |
Definition at line 313 of file Coord.cc.
lsst::afw::coord::Coord::Coord | ( | std::string const | ra, |
std::string const | dec, | ||
double const | epoch = 2000.0 |
||
) |
Constructor for the Coord base class.
ra | Right ascension, hh:mm:ss.s format |
dec | Declination, dd:mm:ss.s format |
epoch | epoch of coordinate |
Definition at line 318 of file Coord.cc.
lsst::afw::coord::Coord::Coord | ( | ) |
|
virtualdefault |
|
default |
|
default |
|
private |
Make sure the values we've got are in the range 0 <= x < 2PI.
Definition at line 331 of file Coord.cc.
geom::Angle lsst::afw::coord::Coord::angularSeparation | ( | Coord const & | c | ) | const |
|
inlinevirtual |
Reimplemented in lsst::afw::coord::TopocentricCoord, lsst::afw::coord::EclipticCoord, lsst::afw::coord::GalacticCoord, lsst::afw::coord::Fk5Coord, and lsst::afw::coord::IcrsCoord.
Definition at line 113 of file Coord.h.
std::shared_ptr< Coord > lsst::afw::coord::Coord::convert | ( | CoordSystem | system, |
double | epoch = 2000 |
||
) | const |
Convert to a specified Coord type at a specified epoch.
[in] | system | coordinate system to which to convert |
[in] | epoch | epoch of coordinate system; only relevant for FK5 and Ecliptic coordinates |
lsst::pex::exceptions::InvalidParameterError | if system = TOPOCENTRIC (because observatory data is required) or if system not recognized |
Definition at line 471 of file Coord.cc.
|
inlinevirtual |
|
inlinevirtual |
Reimplemented in lsst::afw::coord::TopocentricCoord, lsst::afw::coord::EclipticCoord, and lsst::afw::coord::GalacticCoord.
|
inlinevirtual |
Reimplemented in lsst::afw::coord::TopocentricCoord, lsst::afw::coord::EclipticCoord, lsst::afw::coord::GalacticCoord, lsst::afw::coord::Fk5Coord, and lsst::afw::coord::IcrsCoord.
Definition at line 149 of file Coord.h.
|
inline |
|
inline |
Allow quick access to the longitude coordinate as a string.
Definition at line 840 of file Coord.h.
|
inline |
|
inline |
Allow quick access to the longitudinal coordinate as a string.
Definition at line 824 of file Coord.h.
std::pair< geom::Angle, geom::Angle > lsst::afw::coord::Coord::getOffsetFrom | ( | Coord const & | c | ) | const |
Compute the offset from a coordinate.
The resulting angles are suitable for input to Coord::offset
c | Coordinate from which to compute offset |
Definition at line 518 of file Coord.cc.
geom::Point2D lsst::afw::coord::Coord::getPosition | ( | lsst::afw::geom::AngleUnit | unit = lsst::afw::geom::degrees | ) | const |
Return our contents in a Point2D object.
Definition at line 346 of file Coord.cc.
std::pair< geom::Angle, geom::Angle > lsst::afw::coord::Coord::getTangentPlaneOffset | ( | Coord const & | c | ) | const |
Get the offset on the tangent plane.
This is suitable only for small angles.
c | Coordinate from which to compute offset |
Definition at line 543 of file Coord.cc.
geom::Point3D lsst::afw::coord::Coord::getVector | ( | ) | const |
Return our contents in a position vector.
Definition at line 355 of file Coord.cc.
geom::Angle lsst::afw::coord::Coord::offset | ( | lsst::afw::geom::Angle const | phi, |
lsst::afw::geom::Angle const | arcLen | ||
) |
offset our current coords along a great circle defined by an angle wrt a declination parallel
phi | angle wrt parallel to offset |
arcLen | angle to offset |
phi
Definition at line 409 of file Coord.cc.
|
inline |
Equality operator, compares each element directly.
Definition at line 845 of file Coord.h.
|
inline |
Provide access to our contents via an index.
Definition at line 801 of file Coord.h.
|
inlinevirtual |
Reimplemented in lsst::afw::coord::GalacticCoord, and lsst::afw::coord::IcrsCoord.
Definition at line 115 of file Coord.h.
|
virtual |
Reset our coordinates wholesale.
This allows the user to instantiate Coords without values, and fill them later.
longitude | Longitude coord (eg. R.A. for Fk5) |
latitude | Latitude coord (eg. Declination for Fk5) |
epoch | epoch of coordinate |
Definition at line 339 of file Coord.cc.
void lsst::afw::coord::Coord::rotate | ( | Coord const & | axis, |
lsst::afw::geom::Angle const | theta | ||
) |
Rotate our current coords about a pole.
axis | axis of rotation (right handed) |
theta | angle to offset in radians |
Definition at line 382 of file Coord.cc.
|
virtual |
Convert ourself to Ecliptic: lambda, beta (precess to new epoch)
Reimplemented in lsst::afw::coord::EclipticCoord, and lsst::afw::coord::Fk5Coord.
Definition at line 576 of file Coord.cc.
|
virtual |
Convert ourself to Ecliptic: lambda, beta (use existing epoch)
Reimplemented in lsst::afw::coord::EclipticCoord, and lsst::afw::coord::Fk5Coord.
Definition at line 577 of file Coord.cc.
|
virtual |
Convert ourself to Fk5: RA, Dec (precess to new epoch)
Reimplemented in lsst::afw::coord::TopocentricCoord, lsst::afw::coord::EclipticCoord, lsst::afw::coord::GalacticCoord, lsst::afw::coord::Fk5Coord, and lsst::afw::coord::IcrsCoord.
Definition at line 567 of file Coord.cc.
|
virtual |
Convert ourself to Fk5: RA, Dec (use current epoch)
Reimplemented in lsst::afw::coord::TopocentricCoord, lsst::afw::coord::EclipticCoord, lsst::afw::coord::GalacticCoord, lsst::afw::coord::Fk5Coord, and lsst::afw::coord::IcrsCoord.
Definition at line 570 of file Coord.cc.
|
virtual |
Convert ourself to Galactic: l, b.
Reimplemented in lsst::afw::coord::GalacticCoord, and lsst::afw::coord::Fk5Coord.
Definition at line 574 of file Coord.cc.
|
virtual |
Convert ourself to ICRS: RA, Dec (basically J2000)
Reimplemented in lsst::afw::coord::Fk5Coord, and lsst::afw::coord::IcrsCoord.
Definition at line 572 of file Coord.cc.
|
virtual |
Get string representation.
Reimplemented in lsst::afw::coord::TopocentricCoord, lsst::afw::coord::GalacticCoord, and lsst::afw::coord::IcrsCoord.
Definition at line 967 of file Coord.cc.
|
virtual |
Convert ourself to Altitude/Azimuth: alt, az.
obs | observatory of observation |
obsDate | date of observation |
Reimplemented in lsst::afw::coord::TopocentricCoord, and lsst::afw::coord::Fk5Coord.
Definition at line 579 of file Coord.cc.
Transform our current coords to another spherical polar system.
Variable names assume an equatorial/galactic transform, but it works for any spherical polar system when the appropriate poles are supplied.
poleTo | Pole of the destination system in the current coords |
poleFrom | Pole of the current system in the destination coords |
Definition at line 364 of file Coord.cc.
|
private |
|
private |