24 #ifndef LSST_MEAS_ASTROM_SipTransform_INCLUDED 25 #define LSST_MEAS_ASTROM_SipTransform_INCLUDED 27 #include "lsst/afw/geom/LinearTransform.h" 28 #include "lsst/afw/geom/AffineTransform.h" 29 #include "lsst/afw/geom/Box.h" 30 #include "lsst/afw/geom/Angle.h" 34 namespace lsst {
namespace afw {
namespace image {
48 namespace meas {
namespace astrom {
68 afw::geom::LinearTransform
const &
getCDMatrix()
const {
return _cdMatrix; }
90 afw::geom::Point2D
const & pixelOrigin,
91 afw::geom::LinearTransform
const & cdMatrix,
93 ) : _pixelOrigin(pixelOrigin),
106 _poly.swap(other.
_poly);
109 void transformPixelsInPlace(afw::geom::AffineTransform
const & s);
167 afw::geom::Point2D
const & pixelOrigin,
168 afw::geom::LinearTransform
const & cdMatrix
180 afw::geom::Point2D
const & pixelOrigin,
181 afw::geom::LinearTransform
const & cdMatrix
206 afw::geom::Point2D
const & pixelOrigin,
207 afw::geom::LinearTransform
const & cdMatrix,
222 SipTransformBase::swap(other);
228 afw::geom::AffineTransform linearize(afw::geom::Point2D
const & in)
const;
233 afw::geom::Point2D operator()(afw::geom::Point2D
const & uv)
const;
296 afw::geom::Point2D
const & pixelOrigin,
297 afw::geom::LinearTransform
const & cdMatrix
309 afw::geom::Point2D
const & pixelOrigin,
310 afw::geom::LinearTransform
const & cdMatrix
335 afw::geom::Point2D
const & pixelOrigin,
336 afw::geom::LinearTransform
const & cdMatrix,
339 _cdInverse(cdMatrix.invert())
351 SipTransformBase::swap(other);
352 std::swap(_cdInverse, other._cdInverse);
358 afw::geom::AffineTransform linearize(afw::geom::Point2D
const & in)
const;
363 afw::geom::Point2D operator()(afw::geom::Point2D
const & xy)
const;
374 afw::geom::LinearTransform _cdInverse;
391 std::shared_ptr<afw::image::TanWcs>
makeWcs(
394 afw::coord::Coord
const & skyOrigin
414 afw::image::TanWcs
const & wcs,
415 afw::geom::AffineTransform
const & s
427 afw::image::TanWcs
const & wcs,
429 afw::geom::Extent2I
const & dimensions
435 #endif // !LSST_MEAS_ASTROM_SipTransform_INCLUDED
std::shared_ptr< afw::image::TanWcs > transformWcsPixels(afw::image::TanWcs const &wcs, afw::geom::AffineTransform const &s)
Create a new TanWcs whose pixel coordinate system has been transformed via an affine transform...
std::shared_ptr< afw::image::TanWcs > rotateWcsPixelsBy90(afw::image::TanWcs const &wcs, int nQuarter, afw::geom::Extent2I const &dimensions)
Return a new TanWcs that represents a rotation of the image it corresponds to about the image's cente...
std::shared_ptr< afw::image::TanWcs > makeWcs(SipForwardTransform const &sipForward, SipReverseTransform const &sipReverse, afw::coord::Coord const &skyOrigin)
Create a new TAN SIP Wcs from a pair of SIP transforms and the sky origin.