lsst.afw
g3a5ebb7d8a+28b83bf6a5
Toggle main menu visibility
Loading...
Searching...
No Matches
include
lsst
afw
image
python
indexing.h
Go to the documentation of this file.
1
// This file is part of afw.
2
//
3
// Developed for the LSST Data Management System.
4
// This product includes software developed by the LSST Project
5
// (http://www.lsst.org).
6
// See the COPYRIGHT file at the top-level directory of this distribution
7
// for details of code ownership.
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 GNU General Public License
20
// along with this program. If not, see <http://www.gnu.org/licenses/>.
21
22
#ifndef LSST_AFW_IMAGE_PYTHON_INDEXING_H
23
#define LSST_AFW_IMAGE_PYTHON_INDEXING_H
24
25
#include "pybind11/pybind11.h"
26
#include "
lsst/geom/Box.h
"
27
28
namespace
lsst
{
namespace
afw
{
namespace
image
{
namespace
python
{
29
30
inline
void
checkBounds
(
geom::Point2I
const
& index,
geom::Box2I
const
& bbox) {
31
if
(!bbox.
contains
(index)) {
32
std::string
msg = (boost::format(
"Index (%d, %d) outside image bounds (%d, %d) to (%d, %d)."
)
33
% index.getX() % index.getY() % bbox.
getMinX
() % bbox.
getMinY
()
34
% bbox.
getMaxX
() % bbox.
getMaxY
()).str();
35
if
(index.getX() < 0 || index.getY() < 0) {
36
msg +=
" Note that negative indices are only interpreted as relative to the upper bound "
37
"when LOCAL coordinates are used."
;
38
}
39
PyErr_SetString(PyExc_IndexError, msg.
c_str
());
40
throw
pybind11::error_already_set();
41
}
42
}
43
44
}}}}
// namespace lsst::afw::image::python
45
46
#endif
47
Box.h
std::string
std::string::c_str
T c_str(T... args)
lsst::geom::Box2I
lsst::geom::Box2I::getMinY
int getMinY() const noexcept
lsst::geom::Box2I::getMinX
int getMinX() const noexcept
lsst::geom::Box2I::getMaxX
int getMaxX() const noexcept
lsst::geom::Box2I::contains
bool contains(Point2I const &point) const noexcept
lsst::geom::Box2I::getMaxY
int getMaxY() const noexcept
lsst::afw::image::python
Definition
indexing.h:28
lsst::afw::image::python::checkBounds
void checkBounds(geom::Point2I const &index, geom::Box2I const &bbox)
Definition
indexing.h:30
lsst::afw::image
Definition
imageAlgorithm.dox:1
lsst::afw
Definition
imageAlgorithm.dox:1
lsst::geom::Point2I
Point< int, 2 > Point2I
lsst
Generated on
for lsst.afw by
1.17.0