lsst.afw
g3a5ebb7d8a+28b83bf6a5
Toggle main menu visibility
Loading...
Searching...
No Matches
src
geom
ellipses
Ellipse.cc
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
#include "
lsst/afw/geom/ellipses/Ellipse.h
"
25
26
namespace
lsst
{
27
namespace
afw
{
28
namespace
geom
{
29
namespace
ellipses
{
30
31
Ellipse::ParameterVector
const
Ellipse::getParameterVector
()
const
{
32
ParameterVector
r;
33
r.head<3>() = _core->getParameterVector();
34
r.tail<2>() = _center.asEigen();
35
return
r;
36
}
37
38
void
Ellipse::setParameterVector
(
Ellipse::ParameterVector
const
& vector) {
39
_core->setParameterVector(vector.head<3>());
40
_center =
lsst::geom::Point2D
(vector.tail<2>());
41
}
42
43
void
Ellipse::readParameters
(
double
const
* iter) {
44
_core->readParameters(iter);
45
_center.setX(iter[3]);
46
_center.setY(iter[4]);
47
}
48
49
void
Ellipse::writeParameters
(
double
* iter)
const
{
50
_core->writeParameters(iter);
51
iter[3] = _center.getX();
52
iter[4] = _center.getY();
53
}
54
55
lsst::geom::Box2D
Ellipse::computeBBox
()
const
{
56
lsst::geom::Extent2D
dimensions =
getCore
().
computeDimensions
();
57
return
lsst::geom::Box2D
(
getCenter
() - dimensions * 0.5, dimensions);
58
}
59
60
Ellipse
&
Ellipse::operator=
(
Ellipse
const
& other) {
61
_center = other.
getCenter
();
62
*_core = other.
getCore
();
63
return
*
this
;
64
}
65
// Delegate to copy-assignment for backwards compatibility
66
Ellipse
&
Ellipse::operator=
(
Ellipse
&& other) {
return
*
this
= other; }
67
68
}
// namespace ellipses
69
}
// namespace geom
70
}
// namespace afw
71
}
// namespace lsst
Ellipse.h
lsst::afw::geom::ellipses::BaseCore::computeDimensions
lsst::geom::Extent2D computeDimensions() const
Return the size of the bounding box for the ellipse core.
Definition
BaseCore.cc:129
lsst::afw::geom::ellipses::Ellipse::getParameterVector
ParameterVector const getParameterVector() const
Return the ellipse parameters as a vector.
Definition
Ellipse.cc:31
lsst::afw::geom::ellipses::Ellipse::writeParameters
void writeParameters(double *iter) const
Definition
Ellipse.cc:49
lsst::afw::geom::ellipses::Ellipse::operator=
Ellipse & operator=(Ellipse const &other)
Set the parameters of this ellipse from another.
Definition
Ellipse.cc:60
lsst::afw::geom::ellipses::Ellipse::getCenter
lsst::geom::Point2D const & getCenter() const
Return the center point.
Definition
Ellipse.h:62
lsst::afw::geom::ellipses::Ellipse::computeBBox
lsst::geom::Box2D computeBBox() const
Return the bounding box of the ellipse.
Definition
Ellipse.cc:55
lsst::afw::geom::ellipses::Ellipse::getCore
BaseCore const & getCore() const
Return the ellipse core.
Definition
Ellipse.h:71
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::afw::geom::ellipses::Ellipse::readParameters
void readParameters(double const *iter)
Definition
Ellipse.cc:43
lsst::afw::geom::ellipses::Ellipse::setParameterVector
void setParameterVector(ParameterVector const &vector)
Set the ellipse parameters from a vector.
Definition
Ellipse.cc:38
lsst::afw::geom::ellipses::Ellipse::ParameterVector
Eigen::Matrix< double, 5, 1 > ParameterVector
Proxy return type for Ellipse::convolve().
Definition
Ellipse.h:57
lsst::geom::Box2D
lsst::afw::geom::ellipses
Definition
ellipses.h:50
lsst::afw::geom
Definition
frameSetUtils.h:40
lsst::afw
Definition
imageAlgorithm.dox:1
lsst::geom::Extent2D
Extent< double, 2 > Extent2D
lsst::geom::Point2D
Point< double, 2 > Point2D
lsst
Generated on
for lsst.afw by
1.17.0