|
| FrameSet (Frame const &frame, std::string const &options="") |
|
| FrameSet (Frame const &baseFrame, Mapping const &mapping, Frame const ¤tFrame, std::string const &options="") |
|
virtual | ~FrameSet () |
|
| FrameSet (FrameSet const &)=default |
| Copy constructor: make a deep copy. More...
|
|
| FrameSet (FrameSet &&)=default |
|
FrameSet & | operator= (FrameSet const &)=delete |
|
FrameSet & | operator= (FrameSet &&)=default |
|
std::shared_ptr< FrameSet > | copy () const |
| Return a deep copy of this object. More...
|
|
void | addAxes (Frame const &frame) |
|
virtual void | addFrame (int iframe, Mapping const &map, Frame const &frame) |
|
void | addVariant (Mapping const &map, std::string const &name) |
|
std::string | getAllVariants () const |
|
int | getBase () const |
|
int | getCurrent () const |
|
std::shared_ptr< Frame > | getFrame (int iframe, bool copy=true) const |
|
std::shared_ptr< Mapping > | getMapping (int from=BASE, int to=CURRENT) const |
|
int | getNFrame () const |
|
std::string | getVariant () const |
|
void | mirrorVariants (int iframe) |
|
void | remapFrame (int iframe, Mapping &map) |
|
virtual void | removeFrame (int iframe) |
|
void | renameVariant (std::string const &name) |
|
void | setBase (int ind) |
|
void | setCurrent (int ind) |
|
| Frame (int naxes, std::string const &options="") |
|
virtual | ~Frame () |
|
| Frame (Frame const &)=default |
| Copy constructor: make a deep copy. More...
|
|
| Frame (Frame &&)=default |
|
Frame & | operator= (Frame const &)=delete |
|
Frame & | operator= (Frame &&)=default |
|
std::shared_ptr< Frame > | copy () const |
| Return a deep copy of this object. More...
|
|
double | angle (PointD const &a, PointD const &b, PointD const &c) const |
|
double | axAngle (PointD const &a, PointD const &b, int axis) const |
|
double | axDistance (int axis, double v1, double v2) const |
|
double | axOffset (int axis, double v1, double dist) const |
|
std::shared_ptr< FrameSet > | convert (Frame const &to, std::string const &domainlist="") |
|
double | distance (PointD const &point1, PointD const &point2) const |
|
std::shared_ptr< FrameSet > | findFrame (Frame const &tmplt, std::string const &domainlist="") |
|
std::string | format (int axis, double value) const |
|
bool | getActiveUnit () const |
|
std::string | getAlignSystem () const |
|
double | getBottom (int axis) const |
|
int | getDigits () const |
|
int | getDigits (int axis) const |
|
bool | getDirection (int axis) const |
|
std::string | getDomain () const |
|
double | getDut1 () const |
|
double | getEpoch () const |
|
std::string | getFormat (int axis) const |
|
std::string | getInternalUnit (int axis) const |
|
std::string | getLabel (int axis) const |
|
bool | getMatchEnd () const |
|
int | getMaxAxes () const |
|
int | getMinAxes () const |
|
int | getNAxes () const |
|
std::string | getNormUnit (int axis) const |
|
double | getObsAlt () const |
|
std::string | getObsLat () const |
|
std::string | getObsLon () const |
|
bool | getPermute () const |
|
bool | getPreserveAxes () const |
|
std::string | getSymbol (int axis) const |
|
std::string | getSystem () const |
|
std::string | getTitle () const |
|
double | getTop (int axis) const |
|
std::string | getUnit (int axis) const |
|
std::vector< double > | intersect (std::vector< double > const &a1, std::vector< double > const &a2, std::vector< double > const &b1, std::vector< double > const &b2) const |
|
std::vector< int > | matchAxes (Frame const &other) const |
|
CmpFrame | under (Frame const &next) const |
|
PointD | norm (PointD value) const |
|
PointD | offset (PointD point1, PointD point2, double offset) const |
|
DirectionPoint | offset2 (PointD const &point1, double angle, double offset) const |
|
void | permAxes (std::vector< int > perm) |
|
FrameMapping | pickAxes (std::vector< int > const &axes) const |
|
ResolvedPoint | resolve (std::vector< double > const &point1, std::vector< double > const &point2, std::vector< double > const &point3) const |
|
void | setAlignSystem (std::string const &system) |
|
void | setBottom (int axis, double bottom) |
|
void | setDigits (int digits) |
|
void | setDigits (int axis, int digits) |
|
void | setDirection (bool direction, int axis) |
|
virtual void | setDomain (std::string const &domain) |
|
void | setDut1 (double dut1) |
|
void | setEpoch (double epoch) |
|
void | setEpoch (std::string const &epoch) |
|
void | setFormat (int axis, std::string const &format) |
|
void | setLabel (int axis, std::string const &label) |
|
void | setMatchEnd (bool match) |
|
void | setMaxAxes (int maxAxes) |
|
void | setMinAxes (int minAxes) |
|
void | setObsAlt (double alt) |
|
void | setObsLat (std::string const &lat) |
|
void | setObsLon (std::string const &lon) |
|
void | setActiveUnit (bool enable) |
|
void | setPermute (bool permute) |
|
void | setPreserveAxes (bool preserve) |
|
void | setSymbol (int axis, std::string const &symbol) |
|
void | setSystem (std::string const &system) |
|
void | setTitle (std::string const &title) |
|
void | setTop (int axis, double top) |
|
void | setUnit (int axis, std::string const &unit) |
|
NReadValue | unformat (int axis, std::string const &str) const |
|
virtual | ~Mapping () |
|
| Mapping (Mapping const &)=default |
| Copy constructor: make a deep copy. More...
|
|
| Mapping (Mapping &&)=default |
|
Mapping & | operator= (Mapping const &)=delete |
|
Mapping & | operator= (Mapping &&)=default |
|
std::shared_ptr< Mapping > | copy () const |
| Return a deep copy of this object. More...
|
|
int | getNIn () const |
|
int | getNOut () const |
|
bool | getIsSimple () const |
|
bool | isInverted () const |
|
bool | getIsLinear () const |
|
bool | getReport () const |
|
bool | hasForward () const |
|
bool | hasInverse () const |
|
std::shared_ptr< Mapping > | inverted () const |
|
Array2D | linearApprox (PointD const &lbnd, PointD const &ubnd, double tol) const |
|
SeriesMap | then (Mapping const &next) const |
|
ParallelMap | under (Mapping const &next) const |
|
double | rate (PointD const &at, int ax1, int ax2) const |
|
void | setReport (bool report) |
|
std::shared_ptr< Mapping > | simplified () const |
|
void | applyForward (ConstArray2D const &from, Array2D const &to) const |
|
Array2D | applyForward (ConstArray2D const &from) const |
|
std::vector< double > | applyForward (std::vector< double > const &from) const |
|
void | applyInverse (ConstArray2D const &from, Array2D const &to) const |
|
Array2D | applyInverse (ConstArray2D const &from) const |
|
std::vector< double > | applyInverse (std::vector< double > const &from) const |
|
void | tranGridForward (PointI const &lbnd, PointI const &ubnd, double tol, int maxpix, Array2D const &to) const |
|
Array2D | tranGridForward (PointI const &lbnd, PointI const &ubnd, double tol, int maxpix, int nPts) const |
|
void | tranGridInverse (PointI const &lbnd, PointI const &ubnd, double tol, int maxpix, Array2D const &to) const |
|
Array2D | tranGridInverse (PointI const &lbnd, PointI const &ubnd, double tol, int maxpix, int nPts) const |
|
virtual | ~Object () |
|
| Object (Object const &object) |
| Copy constructor: make a deep copy. More...
|
|
| Object (Object &&)=default |
|
Object & | operator= (Object const &)=delete |
|
Object & | operator= (Object &&)=default |
|
bool | operator== (Object const &rhs) const |
|
bool | operator!= (Object const &rhs) const |
|
std::shared_ptr< Object > | copy () const |
| Return a deep copy of this object. More...
|
|
void | clear (std::string const &attrib) |
|
bool | hasAttribute (std::string const &attrib) const |
|
std::string | getClassName () const |
|
std::string | getID () const |
| Get ID: object identification string that is not copied. More...
|
|
std::string | getIdent () const |
| Get Ident: object identification string that is copied. More...
|
|
int | getNObject () const |
|
int | getObjSize () const |
| Get ObjSize: the in-memory size of the AST object in bytes. More...
|
|
int | getRefCount () const |
|
bool | getUseDefs () const |
| Get UseDefs: allow use of default values for Object attributes? More...
|
|
void | lock (bool wait) |
|
bool | same (Object const &other) const |
|
void | setID (std::string const &id) |
| Set ID: object identification string that is not copied. More...
|
|
void | setIdent (std::string const &ident) |
| Set Ident: object identification string that is copied. More...
|
|
void | setUseDefs (bool usedefs) |
| Set UseDefs: allow use of default values for Object attributes? More...
|
|
void | show (std::ostream &os, bool showComments=true) const |
|
std::string | show (bool showComments=true) const |
|
bool | test (std::string const &attrib) const |
|
void | unlock (bool report=false) |
|
AstObject const * | getRawPtr () const |
|
AstObject * | getRawPtr () |
|
|
virtual std::shared_ptr< Object > | copyPolymorphic () const override |
|
| FrameSet (AstFrameSet *rawPtr) |
|
| Frame (AstFrame *rawPtr) |
|
| Mapping (AstMapping *rawMap) |
|
template<typename Class > |
std::shared_ptr< Class > | decompose (int i, bool copy) const |
|
| Object (AstObject *object) |
|
template<typename T , typename AstT > |
std::shared_ptr< T > | copyImpl () const |
|
bool | getB (std::string const &attrib) const |
|
std::string const | getC (std::string const &attrib) const |
|
double | getD (std::string const &attrib) const |
|
float | getF (std::string const &attrib) const |
|
int | getI (std::string const &attrib) const |
|
long int | getL (std::string const &attrib) const |
|
void | set (std::string const &setting) |
|
void | setB (std::string const &attrib, bool value) |
|
void | setC (std::string const &attrib, std::string const &value) |
|
void | setD (std::string const &attrib, double value) |
|
void | setF (std::string const &attrib, float value) |
|
void | setI (std::string const &attrib, int value) |
|
void | setL (std::string const &attrib, long int value) |
|
A FrameSet consists of a set of one or more Frames (which describe coordinate systems), connected together by Mappings (which describe how the coordinate systems are inter-related).
A FrameSet makes it possible to obtain a Mapping between any pair of these Frames (i.e. to convert between any of the coordinate systems which it describes). The individual Frames are identified within the FrameSet by an integer index, with Frames being numbered consecutively from one as they are added to the FrameSet.
Every FrameSet has a "base" Frame and a "current" Frame (which are allowed to be the same). Any of the Frames may be nominated to hold these positions, and the choice is determined by the values of the FrameSet's Base and Current attributes, which hold the indices of the relevant Frames. By default, the first Frame added to a FrameSet is its base Frame, and the last one added is its current Frame.
The base Frame describes the "native" coordinate system of whatever the FrameSet is used to calibrate (e.g. the pixel coordinates of an image) and the current Frame describes the "apparent" coordinate system in which it should be viewed (e.g. displayed, etc.). Any further Frames represent a library of alternative coordinate systems, which may be selected by making them current.
When a FrameSet is used in a context that requires a Frame, (e.g. obtaining its Title value, or number of axes), the current Frame is used. A FrameSet may therefore be used in place of its current Frame in most situations.
When a FrameSet is used in a context that requires a Mapping, the Mapping used is the one between its base Frame and its current Frame. Thus, a FrameSet may be used to convert "native" coordinates into "apparent" ones, and vice versa. Like any Mapping, a FrameSet may also be inverted (see Mapping::inverted), which has the effect of returning a copy with base and current Frames swapped, hence of reversing the Mapping between them.
Regions may be added into a FrameSet (since a Region is a type of Frame), either explicitly or as components within CmpFrames. In this case the Mapping between a pair of Frames within a FrameSet will include the effects of the clipping produced by any Regions included in the path between the Frames.
Attributes
In addition to those attributes common to Frame Mapping and Object, FrameSet also has the following attributes:
Every FrameSet also inherits any further attributes that belong to its current Frame, regardless of that Frame's class. (For example, the Equinox
attribute, defined by SkyFrame, is inherited by any FrameSet which has a SkyFrame as its current Frame.) The set of attributes belonging to a FrameSet may therefore change when a new current Frame is selected.