LSST Applications g070148d5b3+33e5256705,g0d53e28543+25c8b88941,g0da5cf3356+2dd1178308,g1081da9e2a+62d12e78cb,g17e5ecfddb+7e422d6136,g1c76d35bf8+ede3a706f7,g295839609d+225697d880,g2e2c1a68ba+cc1f6f037e,g2ffcdf413f+853cd4dcde,g38293774b4+62d12e78cb,g3b44f30a73+d953f1ac34,g48ccf36440+885b902d19,g4b2f1765b6+7dedbde6d2,g5320a0a9f6+0c5d6105b6,g56b687f8c9+ede3a706f7,g5c4744a4d9+ef6ac23297,g5ffd174ac0+0c5d6105b6,g6075d09f38+66af417445,g667d525e37+2ced63db88,g670421136f+2ced63db88,g71f27ac40c+2ced63db88,g774830318a+463cbe8d1f,g7876bc68e5+1d137996f1,g7985c39107+62d12e78cb,g7fdac2220c+0fd8241c05,g96f01af41f+368e6903a7,g9ca82378b8+2ced63db88,g9d27549199+ef6ac23297,gabe93b2c52+e3573e3735,gb065e2a02a+3dfbe639da,gbc3249ced9+0c5d6105b6,gbec6a3398f+0c5d6105b6,gc9534b9d65+35b9f25267,gd01420fc67+0c5d6105b6,geee7ff78d7+a14128c129,gf63283c776+ede3a706f7,gfed783d017+0c5d6105b6,w.2022.47
LSST Data Management Base Package
|
Box3d
represents a box in ℝ³.
More...
#include <Box3d.h>
Public Member Functions | |
Box3d () | |
This constructor creates an empty 3D box. More... | |
Box3d (Vector3d const &v) | |
This constructor creates a box containing a single point. More... | |
Box3d (Vector3d const &v1, Vector3d const &v2) | |
This constructor creates a box spanning the intervals [v1.x(), v2.x()], [v1.y(), v2.y()], and [v1.z(), v2.z()]. More... | |
Box3d (Vector3d const &v, double w, double h, double d) | |
This constructor creates a box with center v, half-width w, half-height h, and half-depth d. More... | |
Box3d (Interval1d const &x, Interval1d const &y, Interval1d const &z) | |
This constructor creates a box spanning the given x, y, and z intervals. More... | |
bool | operator== (Box3d const &b) const |
Two 3D boxes are equal if they contain the same points. More... | |
bool | operator!= (Box3d const &b) const |
bool | operator== (Vector3d const &v) const |
A box is equal to a point if it contains only that point. More... | |
bool | operator!= (Vector3d const &v) const |
Interval1d | operator() (int i) const |
The function call operator returns the i -th interval of this box. More... | |
Interval1d const & | x () const |
Interval1d const & | y () const |
Interval1d const & | z () const |
bool | isEmpty () const |
isEmpty returns true if this box does not contain any points. More... | |
bool | isFull () const |
isFull returns true if this box contains all points in ℝ³. More... | |
Vector3d | getCenter () const |
getCenter returns the center of this box. More... | |
double | getWidth () const |
getWidth returns the width (x-axis extent) of this box. More... | |
double | getHeight () const |
getHeight returns the height (y-axis extent) of this box. More... | |
double | getDepth () const |
getDepth returns the depth (z-axis extent) of this box. More... | |
Box3d & | dilateBy (double r) |
dilateBy minimally expands or shrinks this Box to include or remove all points within distance |r| of its boundary. More... | |
Box3d | dilatedBy (double r) const |
Box3d & | dilateBy (double w, double h, double d) |
dilateBy morphologically dilates or erodes the x, y, and z intervals of this box by w, h, and d. More... | |
Box3d | dilatedBy (double w, double h, double d) const |
Box3d & | erodeBy (double r) |
Box3d | erodedBy (double r) const |
Box3d & | erodeBy (double w, double h, double d) |
Box3d | erodedBy (double w, double h, double d) const |
Relationship | relate (Vector3d const &v) const |
Relationship | relate (Box3d const &b) const |
bool | contains (Vector3d const &b) const |
bool | contains (Box3d const &b) const |
bool | contains (double x_, double y_, double z_) const |
bool | isDisjointFrom (Vector3d const &b) const |
bool | isDisjointFrom (Box3d const &b) const |
bool | intersects (Vector3d const &b) const |
bool | intersects (Box3d const &b) const |
bool | isWithin (Vector3d const &b) const |
bool | isWithin (Box3d const &b) const |
Box3d & | clipTo (Vector3d const &b) |
Box3d & | clipTo (Box3d const &b) |
Box3d | clippedTo (Vector3d const &b) const |
Box3d | clippedTo (Box3d const &b) const |
Box3d & | expandTo (Vector3d const &b) |
Box3d & | expandTo (Box3d const &b) |
Box3d | expandedTo (Vector3d const &b) const |
Box3d | expandedTo (Box3d const &b) const |
Static Public Member Functions | |
static Box3d | empty () |
static Box3d | full () |
static Box3d | aroundUnitSphere () |
aroundUnitSphere returns a minimal Box3d containing the unit sphere. More... | |
Box3d
represents a box in ℝ³.
It is the Cartesian product of three intervals of ℝ.
|
inline |
|
inlineexplicit |
This constructor creates a box spanning the intervals [v1.x(), v2.x()], [v1.y(), v2.y()], and [v1.z(), v2.z()].
Definition at line 76 of file Box3d.h.
|
inline |
|
inline |
|
inlinestatic |
|
inline |
contains
returns true iff the intersection of this box and b is equal to b.
|
inline |
|
inline |
|
inline |
dilateBy
minimally expands or shrinks this Box to include or remove all points within distance |r| of its boundary.
If this box is empty or full, or if r is zero, there is no effect. If r is positive, points are added, and if r is negative they are removed.
Definition at line 280 of file Box3d.h.
|
inline |
dilateBy
morphologically dilates or erodes the x, y, and z intervals of this box by w, h, and d.
If w is positive, the x interval is dilated by [-w,w]. If w is zero, the corresponding interval is not modified, and if it is negative, the longitude interval is eroded by [w,-w]. The action of h and d on the y and z intervals is analogous.
If this box is empty or full, there is no effect.
Definition at line 290 of file Box3d.h.
|
inline |
|
inline |
|
inlinestatic |
|
inline |
|
inline |
|
inline |
|
inline |
|
inlinestatic |
|
inline |
getCenter
returns the center of this box.
An arbitrary vector is returned for boxes that are empty or full.
Definition at line 139 of file Box3d.h.
|
inline |
getDepth
returns the depth (z-axis extent) of this box.
It is negative or NaN for empty boxes, and infinite for full boxes.
Definition at line 153 of file Box3d.h.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
isEmpty
returns true if this box does not contain any points.
Definition at line 128 of file Box3d.h.
|
inline |
isFull
returns true if this box contains all points in ℝ³.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Definition at line 311 of file Box3d.h.
|
inline |
|
inline |
|
inline |
|
inline |