LSST Applications g0fba68d861+05816baf74,g1ec0fe41b4+f536777771,g1fd858c14a+a9301854fb,g35bb328faa+fcb1d3bbc8,g4af146b050+a5c07d5b1d,g4d2262a081+6e5fcc2a4e,g53246c7159+fcb1d3bbc8,g56a49b3a55+9c12191793,g5a012ec0e7+3632fc3ff3,g60b5630c4e+ded28b650d,g67b6fd64d1+ed4b5058f4,g78460c75b0+2f9a1b4bcd,g786e29fd12+cf7ec2a62a,g8352419a5c+fcb1d3bbc8,g87b7deb4dc+7b42cf88bf,g8852436030+e5453db6e6,g89139ef638+ed4b5058f4,g8e3bb8577d+d38d73bdbd,g9125e01d80+fcb1d3bbc8,g94187f82dc+ded28b650d,g989de1cb63+ed4b5058f4,g9d31334357+ded28b650d,g9f33ca652e+50a8019d8c,gabe3b4be73+1e0a283bba,gabf8522325+fa80ff7197,gb1101e3267+d9fb1f8026,gb58c049af0+f03b321e39,gb665e3612d+2a0c9e9e84,gb89ab40317+ed4b5058f4,gcf25f946ba+e5453db6e6,gd6cbbdb0b4+bb83cc51f8,gdd1046aedd+ded28b650d,gde0f65d7ad+941d412827,ge278dab8ac+d65b3c2b70,ge410e46f29+ed4b5058f4,gf23fb2af72+b7cae620c0,gf5e32f922b+fcb1d3bbc8,gf67bdafdda+ed4b5058f4,w.2025.16
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. | |
Box3d (Vector3d const &v) | |
This constructor creates a box containing a single point. | |
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()]. | |
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. | |
Box3d (Interval1d const &x, Interval1d const &y, Interval1d const &z) | |
This constructor creates a box spanning the given x, y, and z intervals. | |
bool | operator== (Box3d const &b) const |
Two 3D boxes are equal if they contain the same points. | |
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. | |
bool | operator!= (Vector3d const &v) const |
Interval1d | operator() (int i) const |
The function call operator returns the i -th interval of this box. | |
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. | |
bool | isFull () const |
isFull returns true if this box contains all points in ℝ³. | |
Vector3d | getCenter () const |
getCenter returns the center of this box. | |
double | getWidth () const |
getWidth returns the width (x-axis extent) of this box. | |
double | getHeight () const |
getHeight returns the height (y-axis extent) of this box. | |
double | getDepth () const |
getDepth returns the depth (z-axis extent) of this box. | |
Box3d & | dilateBy (double r) |
dilateBy minimally expands or shrinks this Box to include or remove all points within distance |r| of its boundary. | |
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. | |
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. | |
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 83 of file Box3d.h.
|
inline |
This constructor creates a box with center v, half-width w, half-height h, and half-depth d.
Definition at line 93 of file Box3d.h.
|
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 287 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 297 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 146 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 160 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 135 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 318 of file Box3d.h.
|
inline |
|
inline |
|
inline |
|
inline |