LSST Applications 28.0.0,g1653933729+a8ce1bb630,g1a997c3884+a8ce1bb630,g28da252d5a+5bd70b7e6d,g2bbee38e9b+638fca75ac,g2bc492864f+638fca75ac,g3156d2b45e+07302053f8,g347aa1857d+638fca75ac,g35bb328faa+a8ce1bb630,g3a166c0a6a+638fca75ac,g3e281a1b8c+7bbb0b2507,g4005a62e65+17cd334064,g414038480c+5b5cd4fff3,g41af890bb2+4ffae9de63,g4e1a3235cc+0f1912dca3,g6249c6f860+3c3976f90c,g80478fca09+46aba80bd6,g82479be7b0+77990446f6,g858d7b2824+78ba4d1ce1,g89c8672015+f667a5183b,g9125e01d80+a8ce1bb630,ga5288a1d22+2a6264e9ca,gae0086650b+a8ce1bb630,gb58c049af0+d64f4d3760,gc22bb204ba+78ba4d1ce1,gc28159a63d+638fca75ac,gcf0d15dbbd+32ddb6096f,gd6b7c0dfd1+3e339405e9,gda3e153d99+78ba4d1ce1,gda6a2b7d83+32ddb6096f,gdaeeff99f8+1711a396fd,gdd5a9049c5+b18c39e5e3,ge2409df99d+a5e4577cdc,ge33fd446bb+78ba4d1ce1,ge79ae78c31+638fca75ac,gf0baf85859+64e8883e75,gf5289d68f6+e1b046a8d7,gfa443fc69c+91d9ed1ecf,gfda6b12a05+8419469a56
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 |
|
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 |