lsst.afw
g3a5ebb7d8a+28b83bf6a5
Toggle main menu visibility
Loading...
Searching...
No Matches
include
lsst
afw
geom
ellipses
GridTransform.h
Go to the documentation of this file.
1
// -*- lsst-c++ -*-
2
3
/*
4
* LSST Data Management System
5
* Copyright 2008, 2009, 2010 LSST Corporation.
6
*
7
* This product includes software developed by the
8
* LSST Project (http://www.lsst.org/).
9
*
10
* This program is free software: you can redistribute it and/or modify
11
* it under the terms of the GNU General Public License as published by
12
* the Free Software Foundation, either version 3 of the License, or
13
* (at your option) any later version.
14
*
15
* This program is distributed in the hope that it will be useful,
16
* but WITHOUT ANY WARRANTY; without even the implied warranty of
17
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18
* GNU General Public License for more details.
19
*
20
* You should have received a copy of the LSST License Statement and
21
* the GNU General Public License along with this program. If not,
22
* see <http://www.lsstcorp.org/LegalNotices/>.
23
*/
24
25
#ifndef LSST_AFW_GEOM_ELLIPSES_GridTransform_h_INCLUDED
26
#define LSST_AFW_GEOM_ELLIPSES_GridTransform_h_INCLUDED
27
28
/*
29
* Definitions for Ellipse::GridTransform and BaseCore::GridTransform.
30
*
31
* Note: do not include directly; use the main ellipse header file.
32
*/
33
34
#include "Eigen/Eigenvalues"
35
36
#include "
lsst/afw/geom/ellipses/Ellipse.h
"
37
#include "
lsst/geom/AffineTransform.h
"
38
39
namespace
lsst
{
40
namespace
afw
{
41
namespace
geom
{
42
namespace
ellipses
{
43
48
class
BaseCore::GridTransform
final {
49
public
:
51
using
DerivativeMatrix
= Eigen::Matrix<double, 4, 3>;
52
54
explicit
GridTransform
(
BaseCore
const
& input);
55
57
operator
lsst::geom::LinearTransform
()
const
;
58
60
lsst::geom::LinearTransform::Matrix
getMatrix
()
const
;
61
63
DerivativeMatrix
d
()
const
;
64
66
double
getDeterminant
()
const
;
67
71
lsst::geom::LinearTransform
inverted
()
const
;
72
73
private
:
74
BaseCore
const
& _input;
75
Eigen::SelfAdjointEigenSolver<Eigen::Matrix2d> _eig;
76
};
77
82
class
Ellipse::GridTransform
final {
83
public
:
85
using
DerivativeMatrix
= Eigen::Matrix<double, 6, 5>;
86
88
explicit
GridTransform
(
Ellipse
const
& input);
89
91
lsst::geom::AffineTransform::Matrix
getMatrix
()
const
;
92
94
DerivativeMatrix
d
()
const
;
95
97
double
getDeterminant
()
const
;
98
100
operator
lsst::geom::AffineTransform
()
const
;
101
103
lsst::geom::AffineTransform
inverted
()
const
;
104
105
private
:
106
Ellipse
const
& _input;
107
BaseCore::GridTransform
_coreGt;
108
};
109
110
inline
BaseCore::GridTransform
const
BaseCore::getGridTransform
()
const
{
111
return
BaseCore::GridTransform
(*
this
);
112
}
113
114
inline
Ellipse::GridTransform
const
Ellipse::getGridTransform
()
const
{
115
return
Ellipse::GridTransform
(*
this
);
116
}
117
}
// namespace ellipses
118
}
// namespace geom
119
}
// namespace afw
120
}
// namespace lsst
121
122
#endif
// !LSST_AFW_GEOM_ELLIPSES_GridTransform_h_INCLUDED
AffineTransform.h
Ellipse.h
lsst::afw::geom::ellipses::BaseCore::GridTransform
A temporary-only expression object representing an lsst::geom::LinearTransform that maps the ellipse ...
Definition
GridTransform.h:48
lsst::afw::geom::ellipses::BaseCore::GridTransform::getDeterminant
double getDeterminant() const
Return the determinant of the lsst::geom::LinearTransform.
Definition
GridTransform.cc:94
lsst::afw::geom::ellipses::BaseCore::GridTransform::inverted
lsst::geom::LinearTransform inverted() const
Return the inverse of the lsst::geom::LinearTransform;.
Definition
GridTransform.cc:96
lsst::afw::geom::ellipses::BaseCore::GridTransform::d
DerivativeMatrix d() const
Return the derivative of the transform with respect to input core.
Definition
GridTransform.cc:46
lsst::afw::geom::ellipses::BaseCore::GridTransform::GridTransform
GridTransform(BaseCore const &input)
Standard constructor.
Definition
GridTransform.cc:35
lsst::afw::geom::ellipses::BaseCore::GridTransform::DerivativeMatrix
Eigen::Matrix< double, 4, 3 > DerivativeMatrix
Matrix type for derivative with respect to ellipse parameters.
Definition
GridTransform.h:51
lsst::afw::geom::ellipses::BaseCore::GridTransform::getMatrix
lsst::geom::LinearTransform::Matrix getMatrix() const
Return the transform matrix as an Eigen object.
Definition
GridTransform.cc:38
lsst::afw::geom::ellipses::BaseCore::getGridTransform
GridTransform const getGridTransform() const
Return the transform that maps the ellipse to the unit circle.
Definition
GridTransform.h:110
lsst::afw::geom::ellipses::BaseCore::BaseCore
BaseCore()=default
Return the size of the bounding box for the ellipse core.
lsst::afw::geom::ellipses::Ellipse::GridTransform
A temporary-only expression object representing an lsst::geom::AffineTransform that maps the Ellipse ...
Definition
GridTransform.h:82
lsst::afw::geom::ellipses::Ellipse::GridTransform::getDeterminant
double getDeterminant() const
Return the determinant of the lsst::geom::AffineTransform.
Definition
GridTransform.cc:135
lsst::afw::geom::ellipses::Ellipse::GridTransform::d
DerivativeMatrix d() const
Return the derivative of transform with respect to input ellipse.
Definition
GridTransform.cc:110
lsst::afw::geom::ellipses::Ellipse::GridTransform::getMatrix
lsst::geom::AffineTransform::Matrix getMatrix() const
Return the transform matrix as an Eigen object.
Definition
GridTransform.cc:102
lsst::afw::geom::ellipses::Ellipse::GridTransform::DerivativeMatrix
Eigen::Matrix< double, 6, 5 > DerivativeMatrix
Matrix type for derivative with respect to input ellipse parameters.
Definition
GridTransform.h:85
lsst::afw::geom::ellipses::Ellipse::GridTransform::inverted
lsst::geom::AffineTransform inverted() const
Return the inverse of the AffineTransform.
Definition
GridTransform.cc:142
lsst::afw::geom::ellipses::Ellipse::GridTransform::GridTransform
GridTransform(Ellipse const &input)
Standard constructor.
Definition
GridTransform.cc:100
lsst::afw::geom::ellipses::Ellipse::getGridTransform
GridTransform const getGridTransform() const
Return the transform that maps the ellipse to the unit circle.
Definition
GridTransform.h:114
lsst::afw::geom::ellipses::Ellipse::Ellipse
Ellipse(BaseCore const &core, lsst::geom::Point2D const ¢er=lsst::geom::Point2D())
Return the transform that maps the ellipse to the unit circle.
Definition
Ellipse.h:164
lsst::geom::AffineTransform
lsst::geom::AffineTransform::Matrix
Eigen::Matrix3d Matrix
lsst::geom::LinearTransform
lsst::geom::LinearTransform::Matrix
Eigen::Matrix< double, 2, 2, Eigen::DontAlign > Matrix
lsst::afw::geom::ellipses
Definition
ellipses.h:50
lsst::afw::geom
Definition
frameSetUtils.h:40
lsst::afw
Definition
imageAlgorithm.dox:1
lsst
Generated on
for lsst.afw by
1.17.0