35 int minOutCoord,
int maxOutCoord)
38 minOutCoord(minOutCoord),
39 maxOutCoord(maxOutCoord),
48 int minOutCoord,
int maxOutCoord) {
49 int const nin = map.
getNIn();
58 os <<
"maxOutCoord = " <<
maxOutCoord <<
" not in range [1, " << nout <<
"], or 0 for all remaining";
69 xl = ndarray::allocate(ndarray::makeVector(npoints, nout));
70 xu = ndarray::allocate(ndarray::makeVector(npoints, nout));
77 astMapBox(map.
getRawPtr(), lbnd.
data(), ubnd.
data(), forward, outcoord, &lbndOut_i, &ubndOut_i,
78 xlrow.getData(), xurow.getData());
int minOutCoord
Minimum output coordinate axis for which to compute an output bounding box, starting from 1.
MapBox(Mapping const &map, std::vector< double > const &lbnd, std::vector< double > const &ubnd, int minOutCoord=1, int maxOutCoord=0)
Find a bounding box for a Mapping.
Array2D xu
2-d array of [out coord, an input point at which the upper bound occurred]
std::vector< double > ubndOut
Upper bound of the output box.
int maxOutCoord
Maximum output coordinate axis for which to compute an output bounding box, starting from 1.
Array2D xl
2-d array of [out coord, an input point at which the lower bound occurred]
std::vector< double > lbndOut
Lower bound of the output box.
An abstract base class for objects which transform one set of coordinates to another.
int getNOut() const
Get NOut: the number of output axes.
int getNIn() const
Get NIn: the number of input axes.
AstObject const * getRawPtr() const
Get the raw AST pointer.
void assertEqual(T1 val1, std::string const &descr1, T2 val2, std::string const &descr2)
void astBadToNan(std::vector< double > &p)
Replace AST__BAD with a quiet NaN in a vector.
AST wrapper classes and functions.
void assertOK(AstObject *rawPtr1=nullptr, AstObject *rawPtr2=nullptr)
Throw std::runtime_error if AST's state is bad.