LSST Applications g0f08755f38+9c285cab97,g1635faa6d4+13f3999e92,g1653933729+a8ce1bb630,g1a0ca8cf93+bf6eb00ceb,g28da252d5a+0829b12dee,g29321ee8c0+5700dc9eac,g2bbee38e9b+9634bc57db,g2bc492864f+9634bc57db,g2cdde0e794+c2c89b37c4,g3156d2b45e+41e33cbcdc,g347aa1857d+9634bc57db,g35bb328faa+a8ce1bb630,g3a166c0a6a+9634bc57db,g3e281a1b8c+9f2c4e2fc3,g414038480c+077ccc18e7,g41af890bb2+fde0dd39b6,g5fbc88fb19+17cd334064,g781aacb6e4+a8ce1bb630,g80478fca09+55a9465950,g82479be7b0+d730eedb7d,g858d7b2824+9c285cab97,g9125e01d80+a8ce1bb630,g9726552aa6+10f999ec6a,ga5288a1d22+2a84bb7594,gacf8899fa4+c69c5206e8,gae0086650b+a8ce1bb630,gb58c049af0+d64f4d3760,gc28159a63d+9634bc57db,gcf0d15dbbd+4b7d09cae4,gda3e153d99+9c285cab97,gda6a2b7d83+4b7d09cae4,gdaeeff99f8+1711a396fd,ge2409df99d+5e831397f4,ge79ae78c31+9634bc57db,gf0baf85859+147a0692ba,gf3967379c6+41c94011de,gf3fb38a9a8+8f07a9901b,gfb92a5be7c+9c285cab97,w.2024.46
LSST Data Management Base Package
|
An endpoint for lsst::geom::Point2D. More...
#include <Endpoint.h>
Public Types | |
using | Array |
using | Point |
Public Member Functions | |
Point2Endpoint (Point2Endpoint const &)=default | |
Point2Endpoint (Point2Endpoint &&)=default | |
Point2Endpoint & | operator= (Point2Endpoint const &)=delete |
Point2Endpoint & | operator= (Point2Endpoint &&)=delete |
Point2Endpoint () | |
Construct a Point2Endpoint. | |
Point2Endpoint (int nAxes) | |
Construct a Point2Endpoint with nAxes specified; nAxes must equal template parameter N. | |
~Point2Endpoint () override=default | |
std::vector< double > | dataFromPoint (Point const &point) const override |
Get raw data from a single point. | |
ndarray::Array< double, 2, 2 > | dataFromArray (Array const &arr) const override |
Get raw data from an array of points. | |
Point | pointFromData (std::vector< double > const &data) const override |
Get a single point from raw data. | |
Array | arrayFromData (ndarray::Array< double, 2, 2 > const &data) const override |
Get an array of points from raw data. | |
void | normalizeFrame (std::shared_ptr< ast::Frame > framePtr) const override |
Check that framePtr points to a Frame, not a subclass. | |
int | getNPoints (Array const &arr) const override |
Return the number of points in an array. | |
virtual int | getNPoints (Array const &arr) const =0 |
Return the number of points in an array. | |
int | getNAxes () const |
virtual bool | operator== (BaseEndpoint const &other) const noexcept |
Determine whether two endpoints represent the same conversion. | |
bool | operator!= (BaseEndpoint const &other) const noexcept |
Determine whether two endpoints do not represent the same conversion. | |
virtual std::shared_ptr< ast::Frame > | makeFrame () const |
Create a Frame that can be used with this end point in a Transform. | |
Static Public Member Functions | |
static std::string | getClassPrefix () |
Get the class name prefix, e.g. "Point2" for "Point2Endpoint". | |
Protected Member Functions | |
void | _assertNAxes (int nAxes) const |
int | _getNAxes (ndarray::Array< double, 2, 2 > const &data) const |
int | _getNAxes (ndarray::Array< double, 1, 1 > const &data) const |
int | _getNAxes (std::vector< double > const &data) const |
int | _getNPoints (ndarray::Array< double, 2, 2 > const &data) const |
An endpoint for lsst::geom::Point2D.
Definition at line 261 of file Endpoint.h.
|
inherited |
Definition at line 197 of file Endpoint.h.
|
inherited |
Definition at line 198 of file Endpoint.h.
|
default |
|
default |
|
inlineexplicit |
Construct a Point2Endpoint.
Definition at line 271 of file Endpoint.h.
|
explicit |
Construct a Point2Endpoint with nAxes specified; nAxes must equal template parameter N.
This constructor is primarily used by Transform; other users are encouraged to use the default constructor.
[in] | nAxes | The number of axes in a point; must equal template parameter N |
lsst.pex.exceptions.InvalidParameterError | if nAxes != N |
Definition at line 106 of file Endpoint.cc.
|
overridedefault |
|
protectedinherited |
Definition at line 73 of file Endpoint.cc.
|
inlineprotectedinherited |
Definition at line 179 of file Endpoint.h.
|
inlineprotectedinherited |
Definition at line 177 of file Endpoint.h.
|
inlineprotectedinherited |
Definition at line 181 of file Endpoint.h.
|
inlineprotectedinherited |
Definition at line 183 of file Endpoint.h.
|
overridevirtual |
Get an array of points from raw data.
[in] | data | Raw data for an array of points, as a 2-D ndarray array [nPoints, nAxes] in C order, so the in-memory view is, for example, x0, y0, x1, y1, x2, y2, ... |
lsst::pex::exceptions::InvalidParameterError | if the array has the wrong nAxes dimension |
Implements lsst::afw::geom::BaseEndpoint< PointT, ArrayT >.
Definition at line 147 of file Endpoint.cc.
|
overridevirtual |
Get raw data from an array of points.
[in] | arr | Array of points |
lsst::pex::exceptions::InvalidParameterError | if the array has the wrong nAxes dimension |
Implements lsst::afw::geom::BaseEndpoint< PointT, ArrayT >.
Definition at line 123 of file Endpoint.cc.
|
overridevirtual |
Get raw data from a single point.
[in] | point | data for a single point |
lsst::pex::exceptions::InvalidParameterError | if the point has the wrong number of axes |
Implements lsst::afw::geom::BaseEndpoint< PointT, ArrayT >.
Definition at line 114 of file Endpoint.cc.
|
inlinestatic |
Get the class name prefix, e.g. "Point2" for "Point2Endpoint".
Definition at line 307 of file Endpoint.h.
|
inlineinherited |
Definition at line 79 of file Endpoint.h.
|
pure virtualinherited |
Return the number of points in an array.
Implemented in lsst::afw::geom::BaseVectorEndpoint< PointT >, and lsst::afw::geom::GenericEndpoint.
|
overrideinherited |
Return the number of points in an array.
Definition at line 207 of file Endpoint.cc.
|
virtualinherited |
Create a Frame that can be used with this end point in a Transform.
Reimplemented in lsst::afw::geom::SpherePointEndpoint.
Definition at line 68 of file Endpoint.cc.
|
overridevirtual |
Check that framePtr points to a Frame, not a subclass.
Subclasses are forbidden because lsst::geom::Point2D is assumed to be cartesian and subclasses of Frame are not (e.g. SkyFrame, SpecFrame and TimeFrame). Note that SpecFrame and TimeFrame are 1-dimensional so they cannot be used in any case. A CmpFrame could be cartesian, but we play it safe and reject these (however, a cartesian CmpFrame ought to simplify to a Frame).
Reimplemented from lsst::afw::geom::BaseEndpoint< PointT, ArrayT >.
Definition at line 159 of file Endpoint.cc.
|
inlinenoexceptinherited |
Determine whether two endpoints do not represent the same conversion.
Definition at line 109 of file Endpoint.h.
|
delete |
|
delete |
|
virtualnoexceptinherited |
Determine whether two endpoints represent the same conversion.
other | the endpoint to compare |
true
iff this object and other
are of exactly the same class and all visible properties are identical. This implementation requires that the objects have the same number of axes.Definition at line 63 of file Endpoint.cc.
|
overridevirtual |
Get a single point from raw data.
[in] | data | Data as a vector of length NAxes |
Implements lsst::afw::geom::BaseEndpoint< PointT, ArrayT >.
Definition at line 137 of file Endpoint.cc.