lsst.afw
g3a5ebb7d8a+28b83bf6a5
Toggle main menu visibility
Loading...
Searching...
No Matches
include
lsst
afw
math
TransformBoundedField.h
Go to the documentation of this file.
1
// -*- LSST-C++ -*-
2
/*
3
* LSST Data Management System
4
* Copyright 2017 AURA/LSST.
5
*
6
* This product includes software developed by the
7
* LSST Project (http://www.lsst.org/).
8
*
9
* This program is free software: you can redistribute it and/or modify
10
* it under the terms of the GNU General Public License as published by
11
* the Free Software Foundation, either version 3 of the License, or
12
* (at your option) any later version.
13
*
14
* This program is distributed in the hope that it will be useful,
15
* but WITHOUT ANY WARRANTY; without even the implied warranty of
16
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17
* GNU General Public License for more details.
18
*
19
* You should have received a copy of the LSST License Statement and
20
* the GNU General Public License along with this program. If not,
21
* see <http://www.lsstcorp.org/LegalNotices/>.
22
*/
23
24
#ifndef LSST_AFW_MATH_TransformBoundedField_h_INCLUDED
25
#define LSST_AFW_MATH_TransformBoundedField_h_INCLUDED
26
27
#include "ndarray.h"
28
29
#include "lsst/pex/config.h"
30
#include "
lsst/afw/geom/Endpoint.h
"
31
#include "
lsst/afw/geom/Transform.h
"
32
#include "
lsst/afw/math/BoundedField.h
"
33
34
namespace
lsst
{
35
namespace
afw
{
36
namespace
math
{
37
43
class
TransformBoundedField
:
public
table::io::PersistableFacade
<TransformBoundedField>,
44
public
BoundedField
{
45
public
:
46
using
Transform
=
afw::geom::Transform<afw::geom::Point2Endpoint, afw::geom::GenericEndpoint>
;
47
51
TransformBoundedField
(
lsst::geom::Box2I
const
&bbox,
Transform
const
&transform);
52
53
~TransformBoundedField
()
override
=
default
;
54
55
TransformBoundedField
(
TransformBoundedField
const
&) =
default
;
56
TransformBoundedField
(
TransformBoundedField
&&) =
default
;
57
TransformBoundedField
&
operator=
(
TransformBoundedField
const
&) =
delete
;
58
TransformBoundedField
&
operator=
(
TransformBoundedField
&&) =
delete
;
59
61
Transform
getTransform
()
const
{
return
_transform; }
62
64
double
evaluate
(
lsst::geom::Point2D
const
&position)
const override
;
65
67
ndarray::Array<double, 1, 1>
evaluate
(ndarray::Array<double const, 1>
const
&x,
68
ndarray::Array<double const, 1>
const
&y)
const override
;
69
70
using
BoundedField::evaluate
;
71
73
bool
isPersistable
() const noexcept
override
{
return
true
; }
74
76
std::shared_ptr<BoundedField>
operator*
(
double
const
scale)
const override
;
77
79
bool
operator==
(
BoundedField
const
&rhs)
const override
;
80
81
protected
:
82
std::string
getPersistenceName
()
const override
;
83
84
std::string
getPythonModule
()
const override
;
85
86
void
write
(
OutputArchiveHandle
&handle)
const override
;
87
88
private
:
89
// Internal constructor for fit() routines: just initializes the transform,
90
// leaves coefficients empty.
91
explicit
TransformBoundedField
(
lsst::geom::Box2I
const
&bbox);
92
93
std::string
toString
()
const override
;
94
95
Transform
_transform;
96
};
97
}
// namespace math
98
}
// namespace afw
99
}
// namespace lsst
100
101
#endif
// !LSST_AFW_MATH_TransformBoundedField_h_INCLUDED
BoundedField.h
Endpoint.h
Transform.h
std::string
lsst::afw::geom::Transform
Transform LSST spatial data, such as lsst::geom::Point2D and lsst::geom::SpherePoint,...
Definition
Transform.h:68
lsst::afw::math::BoundedField
An abstract base class for 2-d functions defined on an integer bounding boxes.
Definition
BoundedField.h:56
lsst::afw::math::BoundedField::BoundedField
BoundedField(BoundedField const &)=default
lsst::afw::math::BoundedField::evaluate
virtual double evaluate(lsst::geom::Point2D const &position) const =0
Evaluate the field at the given point.
lsst::afw::math::TransformBoundedField::operator==
bool operator==(BoundedField const &rhs) const override
BoundedFields (of the same sublcass) are equal if their bounding boxes and parameters are equal.
Definition
TransformBoundedField.cc:148
lsst::afw::math::TransformBoundedField::TransformBoundedField
TransformBoundedField(TransformBoundedField &&)=default
lsst::afw::math::TransformBoundedField::getPythonModule
std::string getPythonModule() const override
Return the fully-qualified Python module that should be imported to guarantee that its factory is reg...
Definition
TransformBoundedField.cc:130
lsst::afw::math::TransformBoundedField::evaluate
double evaluate(lsst::geom::Point2D const &position) const override
Evaluate the field at the given point.
Definition
TransformBoundedField.cc:53
lsst::afw::math::TransformBoundedField::getPersistenceName
std::string getPersistenceName() const override
Return the unique name used to persist this object and look up its factory.
Definition
TransformBoundedField.cc:126
lsst::afw::math::TransformBoundedField::TransformBoundedField
TransformBoundedField(lsst::geom::Box2I const &bbox, Transform const &transform)
Create a TransformBoundedField from a bounding box and transform.
Definition
TransformBoundedField.cc:44
lsst::afw::math::TransformBoundedField::~TransformBoundedField
~TransformBoundedField() override=default
lsst::afw::math::TransformBoundedField::operator=
TransformBoundedField & operator=(TransformBoundedField const &)=delete
lsst::afw::math::TransformBoundedField::TransformBoundedField
TransformBoundedField(TransformBoundedField const &)=default
lsst::afw::math::TransformBoundedField::write
void write(OutputArchiveHandle &handle) const override
Write the object to one or more catalogs.
Definition
TransformBoundedField.cc:132
lsst::afw::math::TransformBoundedField::Transform
afw::geom::Transform< afw::geom::Point2Endpoint, afw::geom::GenericEndpoint > Transform
Definition
TransformBoundedField.h:46
lsst::afw::math::TransformBoundedField::getTransform
Transform getTransform() const
Get the contained Transform.
Definition
TransformBoundedField.h:61
lsst::afw::math::TransformBoundedField::operator=
TransformBoundedField & operator=(TransformBoundedField &&)=delete
lsst::afw::math::TransformBoundedField::toString
std::string toString() const override
Definition
TransformBoundedField.cc:156
lsst::afw::math::TransformBoundedField::operator*
std::shared_ptr< BoundedField > operator*(double const scale) const override
Return a scaled BoundedField.
Definition
TransformBoundedField.cc:141
lsst::afw::math::TransformBoundedField::isPersistable
bool isPersistable() const noexcept override
TransformBoundedField is always persistable.
Definition
TransformBoundedField.h:73
lsst::afw::table::io::PersistableFacade
A CRTP facade class for subclasses of Persistable.
Definition
Persistable.h:176
lsst::afw::table::io::Persistable::OutputArchiveHandle
io::OutputArchiveHandle OutputArchiveHandle
Definition
Persistable.h:108
lsst::geom::Box2I
lsst::afw::math
Definition
statistics.dox:6
lsst::afw
Definition
imageAlgorithm.dox:1
lsst::geom::Point2D
Point< double, 2 > Point2D
lsst
std::shared_ptr
Generated on
for lsst.afw by
1.17.0