LSSTApplications  17.0+10,17.0+51,17.0+90,18.0.0+10,18.0.0+15,18.0.0+36,18.0.0+4,18.0.0+6,18.0.0-2-ge43143a+6,18.1.0-1-g0001055+2,18.1.0-1-g1349e88+12,18.1.0-1-g2505f39+9,18.1.0-1-g380d4d4+12,18.1.0-1-g5e4b7ea+2,18.1.0-1-g7e8fceb,18.1.0-1-g85f8cd4+9,18.1.0-1-g9a6769a+3,18.1.0-1-ga1a4c1a+8,18.1.0-1-gc037db8+2,18.1.0-1-gd55f500+3,18.1.0-1-ge10677a+9,18.1.0-10-g73b8679e+15,18.1.0-13-g451e75588,18.1.0-13-gbfe7f7f+3,18.1.0-14-g2e73c10,18.1.0-2-g31c43f9+9,18.1.0-2-g9c63283+12,18.1.0-2-gdf0b915+12,18.1.0-2-gf03bb23+2,18.1.0-2-gfefb8b5,18.1.0-3-g52aa583+3,18.1.0-3-g8f4a2b1+3,18.1.0-3-g9cb968e+11,18.1.0-4-g7bbbad0+2,18.1.0-5-g510c42a+11,18.1.0-5-gaeab27e+12,18.1.0-6-gc4bdb98,18.1.0-6-gdda7f3e+14,18.1.0-9-g9613d271,w.2019.34
LSSTDataManagementBasePackage
orientation.cc
Go to the documentation of this file.
1 /*
2  * LSST Data Management System
3  * See COPYRIGHT file at the top of the source tree.
4  *
5  * This product includes software developed by the
6  * LSST Project (http://www.lsst.org/).
7  *
8  * This program is free software: you can redistribute it and/or modify
9  * it under the terms of the GNU General Public License as published by
10  * the Free Software Foundation, either version 3 of the License, or
11  * (at your option) any later version.
12  *
13  * This program is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16  * GNU General Public License for more details.
17  *
18  * You should have received a copy of the LSST License Statement and
19  * the GNU General Public License along with this program. If not,
20  * see <https://www.lsstcorp.org/LegalNotices/>.
21  */
22 
23 #include <pybind11/pybind11.h>
24 //#include <pybind11/operators.h>
25 //#include <pybind11/stl.h>
26 
28 
29 namespace py = pybind11;
30 using namespace py::literals;
31 
32 namespace lsst {
33 namespace afw {
34 namespace cameraGeom {
35 
37  py::module::import("lsst.geom");
38 
39  /* Module level */
40  py::class_<Orientation> cls(mod, "Orientation");
41 
42  /* Member types and enums */
43 
44  /* Constructors */
45  cls.def(py::init<lsst::geom::Point2D, lsst::geom::Point2D, lsst::geom::Angle, lsst::geom::Angle, lsst::geom::Angle>(),
46  "fpPosition"_a = lsst::geom::Point2D(0, 0), "refPoint"_a = lsst::geom::Point2D(-0.5, -0.5),
47  "yaw"_a = lsst::geom::Angle(0), "pitch"_a = lsst::geom::Angle(0), "roll"_a = lsst::geom::Angle(0));
48 
49  /* Operators */
50 
51  /* Members */
52  cls.def("getFpPosition", &Orientation::getFpPosition);
53  cls.def("getReferencePoint", &Orientation::getReferencePoint);
54  cls.def("getYaw", &Orientation::getYaw);
55  cls.def("getPitch", &Orientation::getPitch);
56  cls.def("getRoll", &Orientation::getRoll);
57  cls.def("getNQuarter", &Orientation::getNQuarter);
58  cls.def("makePixelFpTransform", &Orientation::makePixelFpTransform, "pixelSizeMm"_a);
59  cls.def("makeFpPixelTransform", &Orientation::makeFpPixelTransform, "pixelSizeMm"_a);
60  cls.def("getFpPosition", &Orientation::getFpPosition);
61  cls.def("getFpPosition", &Orientation::getFpPosition);
62  cls.def("getFpPosition", &Orientation::getFpPosition);
63  cls.def("getFpPosition", &Orientation::getFpPosition);
64 }
65 }
66 }
67 }
A class representing an angle.
Definition: Angle.h:127
A base class for image defects.
PYBIND11_MODULE(orientation, mod)
Definition: orientation.cc:36