LSSTApplications
11.0-24-g0a022a1,14.0+64,15.0,15.0+1,15.0-1-g14e9bfd,15.0-1-g1eca518,15.0-1-g499c38d,15.0-1-g60afb23,15.0-1-g6668b0b,15.0-1-g788a293,15.0-1-g82223af,15.0-1-ga91101e,15.0-1-gae1598d,15.0-1-gc45031d,15.0-1-gd076f1f,15.0-1-gf4f1c34,15.0-1-gfe1617d,15.0-16-g953e39cab,15.0-2-g2010ef9,15.0-2-g33d94b3,15.0-2-g5218728,15.0-2-g947dc0d,15.0-3-g9103c06,15.0-3-ga03b4ca,15.0-3-ga659d1f3,15.0-3-ga695220+2,15.0-3-gaec6799,15.0-3-gb7a597c,15.0-3-gd5b9ff95,15.0-4-g0478fed+2,15.0-4-g45f767a,15.0-4-gff20472+2,15.0-6-ge2d9597
LSSTDataManagementBasePackage
|
A purely radial polynomial distortion, up to 6th order. More...
#include <XYTransform.h>
Public Types | |
typedef afw::geom::Point2D | Point2D |
typedef afw::geom::AffineTransform | AffineTransform |
enum | { magicSentinel = 0xdeadbeef } |
typedef unsigned long | memId |
Type of the block's ID. More... | |
typedef memId(* | memNewCallback) (const memId cid) |
A function used to register a callback. More... | |
typedef memId(* | memCallback) (const Citizen *ptr) |
Public Member Functions | |
RadialXYTransform (std::vector< double > const &coeffs) | |
RadialXYTransform (RadialXYTransform const &) | |
RadialXYTransform (RadialXYTransform &&) | |
RadialXYTransform & | operator= (RadialXYTransform const &) |
RadialXYTransform & | operator= (RadialXYTransform &&) |
~RadialXYTransform () | |
virtual std::shared_ptr< XYTransform > | clone () const |
returns a deep copy More... | |
virtual std::shared_ptr< XYTransform > | invert () const |
returns a "deep inverse" in this sense that the forward+inverse transforms do not share state default implementation; subclass may override More... | |
virtual Point2D | forwardTransform (Point2D const &point) const |
virtuals for forward and reverse transforms More... | |
virtual Point2D | reverseTransform (Point2D const &point) const |
virtual AffineTransform | linearizeForwardTransform (Point2D const &point) const |
linearized forward and reversed transforms More... | |
virtual AffineTransform | linearizeReverseTransform (Point2D const &point) const |
default implementation; subclass may override More... | |
std::vector< double > | getCoeffs () const |
std::string | repr () const |
Return a string representation of a Citizen. More... | |
void | markPersistent (void) |
Mark a Citizen as persistent and not destroyed until process end. More... | |
memId | getId () const |
Return the Citizen's ID. More... | |
Static Public Member Functions | |
static std::vector< double > | polyInvert (std::vector< double > const &coeffs) |
These static member functions operate on polynomials represented by vector<double>. More... | |
static double | polyEval (std::vector< double > const &coeffs, double x) |
static Point2D | polyEval (std::vector< double > const &coeffs, Point2D const &p) |
static double | polyEvalDeriv (std::vector< double > const &coeffs, double x) |
static AffineTransform | polyEvalJacobian (std::vector< double > const &coeffs, Point2D const &p) |
static double | polyEvalInverse (std::vector< double > const &coeffs, std::vector< double > const &icoeffs, double x) |
static Point2D | polyEvalInverse (std::vector< double > const &coeffs, std::vector< double > const &icoeffs, Point2D const &p) |
static AffineTransform | polyEvalInverseJacobian (std::vector< double > const &coeffs, std::vector< double > const &icoeffs, Point2D const &p) |
static AffineTransform | makeAffineTransform (double x, double y, double f, double g) |
static bool | hasBeenCorrupted () |
Check all allocated blocks for corruption. More... | |
static memId | getNextMemId () |
Return the memId of the next object to be allocated. More... | |
static int | init () |
Called once when the memory system is being initialised. More... | |
Census | |
Provide a list of current Citizens | |
static int | census (int, memId startingMemId=0) |
How many active Citizens are there? More... | |
static void | census (std::ostream &stream, memId startingMemId=0) |
Print a list of all active Citizens to stream, sorted by ID. More... | |
static const std::vector< const Citizen * > * | census () |
Return a (newly allocated) std::vector of active Citizens sorted by ID. More... | |
callbackIDs | |
Set callback Ids. The old Id is returned | |
static memId | setNewCallbackId (memId id) |
Call the NewCallback when block is allocated. More... | |
static memId | setDeleteCallbackId (memId id) |
Call the current DeleteCallback when block is deleted. More... | |
callbacks | |
Set the New/Delete callback functions; in each case the previously installed callback is returned. These callback functions return a value which is Added to the previously registered id. The default callback functions are called default{New,Delete}Callback; you may want to set a break point in these callbacks from your favourite debugger | |
static memNewCallback | setNewCallback (memNewCallback func) |
Set the NewCallback function. More... | |
static memCallback | setDeleteCallback (memCallback func) |
Set the DeleteCallback function. More... | |
static memCallback | setCorruptionCallback (memCallback func) |
Set the CorruptionCallback function. More... | |
Protected Attributes | |
std::vector< double > | _coeffs |
std::vector< double > | _icoeffs |
A purely radial polynomial distortion, up to 6th order.
forwardTransform(pt) = pt * scale where:
lsst::pex::exceptions::InvalidParameterError | if coeffs.size() > 0 and any of the following are true: coeffs.size() == 1, coeffs[0] != 0 or coeffs[1] == 0 |
Definition at line 225 of file XYTransform.h.
|
inherited |
Definition at line 52 of file XYTransform.h.
|
inherited |
|
inherited |
Definition at line 51 of file XYTransform.h.
lsst::afw::geom::RadialXYTransform::RadialXYTransform | ( | std::vector< double > const & | coeffs | ) |
coeffs | radial polynomial coefficients; if size == 0 then gives the identity transformation; otherwise must satisfy: size > 1, coeffs[0] == 0, and coeffs[1] != 0 |
Definition at line 37 of file RadialXYTransform.cc.
|
default |
|
default |
|
default |
|
staticinherited |
How many active Citizens are there?
startingMemId | Don't print Citizens with lower IDs |
Definition at line 261 of file Citizen.cc.
|
staticinherited |
Print a list of all active Citizens to stream, sorted by ID.
stream | stream to print to |
startingMemId | Don't print Citizens with lower IDs |
Definition at line 284 of file Citizen.cc.
|
staticinherited |
Return a (newly allocated) std::vector of active Citizens sorted by ID.
You are responsible for deleting it; or you can say std::unique_ptr<std::vector<Citizen const*> const> leaks(Citizen::census()); and not bother (that becomes std::unique_ptr in C++11)
Definition at line 316 of file Citizen.cc.
|
virtual |
returns a deep copy
Implements lsst::afw::geom::XYTransform.
Definition at line 62 of file RadialXYTransform.cc.
virtuals for forward and reverse transforms
These routines are responsible for throwing exceptions if the 'point' arg is outside the domain of the transform.
Implements lsst::afw::geom::XYTransform.
Definition at line 70 of file RadialXYTransform.cc.
|
inline |
Definition at line 246 of file XYTransform.h.
|
inherited |
Return the Citizen's ID.
Definition at line 218 of file Citizen.cc.
|
staticinherited |
Return the memId of the next object to be allocated.
Definition at line 223 of file Citizen.cc.
|
staticinherited |
Check all allocated blocks for corruption.
Definition at line 347 of file Citizen.cc.
|
staticinherited |
Called once when the memory system is being initialised.
Definition at line 208 of file Citizen.cc.
|
virtual |
returns a "deep inverse" in this sense that the forward+inverse transforms do not share state default implementation; subclass may override
Reimplemented from lsst::afw::geom::XYTransform.
Definition at line 66 of file RadialXYTransform.cc.
|
virtual |
linearized forward and reversed transforms
These are virtual but not pure virtual; there is a default implementation which calls forwardTransform() or reverseTransform() and takes finite differences with step size equal to one.
The following should always be satisfied for an arbitrary Point2D p (and analogously for the reverse transform) this->forwardTransform(p) == this->linearizeForwardTransform(p)(p);default implementation; subclass may override
Reimplemented from lsst::afw::geom::XYTransform.
Definition at line 76 of file RadialXYTransform.cc.
|
virtual |
default implementation; subclass may override
Reimplemented from lsst::afw::geom::XYTransform.
Definition at line 80 of file RadialXYTransform.cc.
|
static |
Definition at line 220 of file RadialXYTransform.cc.
|
inherited |
Mark a Citizen as persistent and not destroyed until process end.
Definition at line 248 of file Citizen.cc.
|
default |
|
default |
|
static |
Definition at line 136 of file RadialXYTransform.cc.
|
static |
Definition at line 145 of file RadialXYTransform.cc.
|
static |
Definition at line 160 of file RadialXYTransform.cc.
|
static |
Definition at line 176 of file RadialXYTransform.cc.
|
static |
Definition at line 195 of file RadialXYTransform.cc.
|
static |
Definition at line 211 of file RadialXYTransform.cc.
|
static |
Definition at line 169 of file RadialXYTransform.cc.
|
static |
These static member functions operate on polynomials represented by vector<double>.
They are intended mainly as helpers for the virtual member functions above, but are declared public since there are also some unit tests which call them.
Definition at line 95 of file RadialXYTransform.cc.
|
inherited |
Return a string representation of a Citizen.
Definition at line 239 of file Citizen.cc.
Implements lsst::afw::geom::XYTransform.
Definition at line 72 of file RadialXYTransform.cc.
|
staticinherited |
Set the CorruptionCallback function.
func | function be called when block is found to be corrupted |
Definition at line 426 of file Citizen.cc.
|
staticinherited |
Set the DeleteCallback function.
func | function be called when desired block is deleted |
Definition at line 416 of file Citizen.cc.
|
staticinherited |
Call the current DeleteCallback when block is deleted.
id | Desired ID |
Definition at line 381 of file Citizen.cc.
|
staticinherited |
Set the NewCallback function.
func | The new function to be called when a designated block is allocated |
Definition at line 406 of file Citizen.cc.
|
staticinherited |
Call the NewCallback when block is allocated.
id | Desired ID |
Definition at line 370 of file Citizen.cc.
|
protected |
Definition at line 273 of file XYTransform.h.
|
protected |
Definition at line 274 of file XYTransform.h.