|
| UnitNormMap (std::vector< double > const ¢re, std::string const &options="") |
|
virtual | ~UnitNormMap () |
|
| UnitNormMap (UnitNormMap const &)=default |
| Copy constructor: make a deep copy. More...
|
|
| UnitNormMap (UnitNormMap &&)=default |
|
UnitNormMap & | operator= (UnitNormMap const &)=delete |
|
UnitNormMap & | operator= (UnitNormMap &&)=default |
|
std::shared_ptr< UnitNormMap > | copy () const |
| Return a deep copy of this object. More...
|
|
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 |
|
| UnitNormMap (AstUnitNormMap *rawptr) |
| Construct a UnitNormMap from a raw AST pointer. More...
|
|
| Mapping (AstMapping *rawMap) |
|
virtual std::shared_ptr< Object > | copyPolymorphic () const override |
|
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 |
|
virtual std::shared_ptr< Object > | copyPolymorphic () const =0 |
|
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) |
|
The forward transformation of a UnitNormMap subtracts the specified centre and then transforms the resulting vector to a unit vector and the vector norm. The output contains one more coordinate than the input: the initial NIn outputs are in the same order as the input; the final output is the norm.
The inverse transformation of a UnitNormMap multiplies each component of the provided vector by the provided norm and adds the specified centre. The output contains one fewer coordinate than the input: the initial NIn inputs are in the same order as the output; the final input is the norm.
UnitNormMap enables radially symmetric transformations, as follows:
- apply a UnitNormMap to produce a unit vector and norm (radius)
- apply a one-dimensional mapping to the norm (radius), while passing the unit vector unchanged
- apply the same UnitNormMap in the inverse direction to produce the result
Attributes
UnitNormMap has no attributes beyond those provided by Mapping and Object.