LSST Applications g0265f82a02+d6b5cd48b5,g02d81e74bb+a41d3748ce,g1470d8bcf6+6be6c9203b,g2079a07aa2+14824f138e,g212a7c68fe+a4f2ea4efa,g2305ad1205+72971fe858,g295015adf3+ab2c85acae,g2bbee38e9b+d6b5cd48b5,g337abbeb29+d6b5cd48b5,g3ddfee87b4+31b3a28dff,g487adcacf7+082e807817,g50ff169b8f+5929b3527e,g52b1c1532d+a6fc98d2e7,g591dd9f2cf+b2918d57ae,g5a732f18d5+66d966b544,g64a986408d+a41d3748ce,g858d7b2824+a41d3748ce,g8a8a8dda67+a6fc98d2e7,g99cad8db69+7fe4acdf18,g9ddcbc5298+d4bad12328,ga1e77700b3+246acaaf9c,ga8c6da7877+84af8b3ff8,gb0e22166c9+3863383f4c,gb6a65358fc+d6b5cd48b5,gba4ed39666+9664299f35,gbb8dafda3b+d8d527deb2,gc07e1c2157+b2dbe6b631,gc120e1dc64+61440b2abb,gc28159a63d+d6b5cd48b5,gcf0d15dbbd+31b3a28dff,gdaeeff99f8+a38ce5ea23,ge6526c86ff+39927bb362,ge79ae78c31+d6b5cd48b5,gee10cc3b42+a6fc98d2e7,gf1cff7945b+a41d3748ce,v24.1.5.rc1
LSST Data Management Base Package
Loading...
Searching...
No Matches
Public Types | Public Member Functions | List of all members
lsst::afw::geom::ellipses::Ellipse::GridTransform Class Referencefinal

A temporary-only expression object representing an lsst::geom::AffineTransform that maps the Ellipse to a unit circle at the origin. More...

#include <GridTransform.h>

Public Types

using DerivativeMatrix = Eigen::Matrix<double, 6, 5>
 Matrix type for derivative with respect to input ellipse parameters.
 

Public Member Functions

 GridTransform (Ellipse const &input)
 Standard constructor.
 
lsst::geom::AffineTransform::Matrix getMatrix () const
 Return the transform matrix as an Eigen object.
 
DerivativeMatrix d () const
 Return the derivative of transform with respect to input ellipse.
 
double getDeterminant () const
 Return the determinant of the lsst::geom::AffineTransform.
 
 operator lsst::geom::AffineTransform () const
 Convert the proxy to an lsst::geom::AffineTransform.
 
lsst::geom::AffineTransform inverted () const
 Return the inverse of the AffineTransform.
 

Detailed Description

A temporary-only expression object representing an lsst::geom::AffineTransform that maps the Ellipse to a unit circle at the origin.

Definition at line 82 of file GridTransform.h.

Member Typedef Documentation

◆ DerivativeMatrix

Matrix type for derivative with respect to input ellipse parameters.

Definition at line 85 of file GridTransform.h.

Constructor & Destructor Documentation

◆ GridTransform()

lsst::afw::geom::ellipses::Ellipse::GridTransform::GridTransform ( Ellipse const & input)
explicit

Standard constructor.

Definition at line 100 of file GridTransform.cc.

100: _input(input), _coreGt(input.getCore()) {}

Member Function Documentation

◆ d()

Ellipse::GridTransform::DerivativeMatrix lsst::afw::geom::ellipses::Ellipse::GridTransform::d ( ) const

Return the derivative of transform with respect to input ellipse.

Definition at line 110 of file GridTransform.cc.

110 {
111 DerivativeMatrix r = DerivativeMatrix::Zero();
112 lsst::geom::LinearTransform linear = _coreGt;
113 r.block<4, 3>(0, 0) = _coreGt.d();
114 double x = -_input.getCenter().getX();
115 double y = -_input.getCenter().getY();
132 return r;
133}
int y
Definition SpanSet.cc:48
DerivativeMatrix d() const
Return the derivative of the transform with respect to input core.
Eigen::Matrix< double, 6, 5 > DerivativeMatrix
Matrix type for derivative with respect to input ellipse parameters.
lsst::geom::Point2D const & getCenter() const
Return the center point.
Definition Ellipse.h:62
A 2D linear coordinate transformation.

◆ getDeterminant()

double lsst::afw::geom::ellipses::Ellipse::GridTransform::getDeterminant ( ) const

Return the determinant of the lsst::geom::AffineTransform.

Definition at line 135 of file GridTransform.cc.

135{ return _coreGt.getDeterminant(); }
double getDeterminant() const
Return the determinant of the lsst::geom::LinearTransform.

◆ getMatrix()

lsst::geom::AffineTransform::Matrix lsst::afw::geom::ellipses::Ellipse::GridTransform::getMatrix ( ) const

Return the transform matrix as an Eigen object.

Definition at line 102 of file GridTransform.cc.

102 {
103 lsst::geom::AffineTransform::Matrix r = lsst::geom::AffineTransform::Matrix::Zero();
104 r.block<2, 2>(0, 0) = _coreGt.getMatrix();
105 r.block<2, 1>(0, 2) = -r.block<2, 2>(0, 0) * _input.getCenter().asEigen();
106 r(2, 2) = 1.0;
107 return r;
108}
lsst::geom::LinearTransform::Matrix getMatrix() const
Return the transform matrix as an Eigen object.
EigenVector const & asEigen() const noexcept(IS_ELEMENT_NOTHROW_COPYABLE)
Return a fixed-size Eigen representation of the coordinate object.

◆ inverted()

lsst::geom::AffineTransform lsst::afw::geom::ellipses::Ellipse::GridTransform::inverted ( ) const

Return the inverse of the AffineTransform.

Definition at line 142 of file GridTransform.cc.

142 {
144}
lsst::geom::LinearTransform inverted() const
Return the inverse of the lsst::geom::LinearTransform;.
An affine coordinate transformation consisting of a linear transformation and an offset.

◆ operator lsst::geom::AffineTransform()

lsst::afw::geom::ellipses::Ellipse::GridTransform::operator lsst::geom::AffineTransform ( ) const

Convert the proxy to an lsst::geom::AffineTransform.

Definition at line 137 of file GridTransform.cc.

137 {
138 lsst::geom::LinearTransform linear = _coreGt;
139 return lsst::geom::AffineTransform(linear, linear(lsst::geom::Point2D() - _input.getCenter()));
140}

The documentation for this class was generated from the following files: