LSST Applications g0b6bd0c080+a72a5dd7e6,g1182afd7b4+2a019aa3bb,g17e5ecfddb+2b8207f7de,g1d67935e3f+06cf436103,g38293774b4+ac198e9f13,g396055baef+6a2097e274,g3b44f30a73+6611e0205b,g480783c3b1+98f8679e14,g48ccf36440+89c08d0516,g4b93dc025c+98f8679e14,g5c4744a4d9+a302e8c7f0,g613e996a0d+e1c447f2e0,g6c8d09e9e7+25247a063c,g7271f0639c+98f8679e14,g7a9cd813b8+124095ede6,g9d27549199+a302e8c7f0,ga1cf026fa3+ac198e9f13,ga32aa97882+7403ac30ac,ga786bb30fb+7a139211af,gaa63f70f4e+9994eb9896,gabf319e997+ade567573c,gba47b54d5d+94dc90c3ea,gbec6a3398f+06cf436103,gc6308e37c7+07dd123edb,gc655b1545f+ade567573c,gcc9029db3c+ab229f5caf,gd01420fc67+06cf436103,gd877ba84e5+06cf436103,gdb4cecd868+6f279b5b48,ge2d134c3d5+cc4dbb2e3f,ge448b5faa6+86d1ceac1d,gecc7e12556+98f8679e14,gf3ee170dca+25247a063c,gf4ac96e456+ade567573c,gf9f5ea5b4d+ac198e9f13,gff490e6085+8c2580be5c,w.2022.27
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()].
|
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 |
|
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 ℝ³.
Definition at line 133 of file Box3d.h.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Definition at line 311 of file Box3d.h.
|
inline |
|
inline |
|
inline |
|
inline |