LSST Applications g0f08755f38+9c285cab97,g1635faa6d4+13f3999e92,g1653933729+a8ce1bb630,g1a0ca8cf93+bf6eb00ceb,g28da252d5a+0829b12dee,g29321ee8c0+5700dc9eac,g2bbee38e9b+9634bc57db,g2bc492864f+9634bc57db,g2cdde0e794+c2c89b37c4,g3156d2b45e+41e33cbcdc,g347aa1857d+9634bc57db,g35bb328faa+a8ce1bb630,g3a166c0a6a+9634bc57db,g3e281a1b8c+9f2c4e2fc3,g414038480c+077ccc18e7,g41af890bb2+fde0dd39b6,g5fbc88fb19+17cd334064,g781aacb6e4+a8ce1bb630,g80478fca09+55a9465950,g82479be7b0+d730eedb7d,g858d7b2824+9c285cab97,g9125e01d80+a8ce1bb630,g9726552aa6+10f999ec6a,ga5288a1d22+2a84bb7594,gacf8899fa4+c69c5206e8,gae0086650b+a8ce1bb630,gb58c049af0+d64f4d3760,gc28159a63d+9634bc57db,gcf0d15dbbd+4b7d09cae4,gda3e153d99+9c285cab97,gda6a2b7d83+4b7d09cae4,gdaeeff99f8+1711a396fd,ge2409df99d+5e831397f4,ge79ae78c31+9634bc57db,gf0baf85859+147a0692ba,gf3967379c6+41c94011de,gf3fb38a9a8+8f07a9901b,gfb92a5be7c+9c285cab97,w.2024.46
LSST Data Management Base Package
|
Interval
represents a closed interval of the real numbers by its upper and lower bounds.
More...
#include <Interval.h>
Public Member Functions | |
Interval () | |
This constructor creates an empty interval. | |
Interval (Scalar x) | |
This constructor creates a closed interval containing only x. | |
Interval (Scalar x, Scalar y) | |
This constructor creates an interval from the given endpoints. | |
bool | operator== (Interval const &i) const |
Two closed intervals are equal if their endpoints are the same, or both are empty. | |
bool | operator!= (Interval const &i) const |
bool | operator== (Scalar x) const |
A closed interval is equal to a point x if both endpoints equal x. | |
bool | operator!= (Scalar x) const |
Scalar | getA () const |
getA returns the lower endpoint of this interval. | |
Scalar | getB () const |
getB returns the upper endpoint of this interval. | |
bool | isEmpty () const |
isEmpty returns true if this interval does not contain any points. | |
Scalar | getCenter () const |
getCenter returns the center of this interval. | |
Scalar | getSize () const |
getSize returns the size (length, width) of this interval. | |
Interval & | dilateBy (Scalar x) |
For positive x, dilateBy morphologically dilates this interval by [-x,x], which is equivalent to the taking the Minkowski sum with [-x,x]. | |
Interval & | erodeBy (Scalar x) |
Derived | dilatedBy (Scalar x) const |
Derived | erodedBy (Scalar x) const |
bool | contains (Scalar x) const |
bool | contains (Interval const &x) const |
bool | isDisjointFrom (Scalar x) const |
bool | isDisjointFrom (Interval const &x) const |
bool | intersects (Scalar x) const |
bool | intersects (Interval const &x) const |
bool | isWithin (Scalar x) const |
bool | isWithin (Interval const &x) const |
Relationship | relate (Scalar x) const |
Relationship | relate (Interval const &x) const |
Interval & | clipTo (Scalar x) |
Interval & | clipTo (Interval const &x) |
Derived | clippedTo (Scalar x) const |
Derived | clippedTo (Interval const &x) const |
Interval & | expandTo (Scalar x) |
Interval & | expandTo (Interval const &x) |
Derived | expandedTo (Scalar x) const |
Derived | expandedTo (Interval const &x) const |
Interval
represents a closed interval of the real numbers by its upper and lower bounds.
It is parameterized by the Scalar type, which must be constructible from a double.
An interval with identical upper and lower bounds contains a single point, and is equal to that scalar bound.
An interval with an upper bound less than its lower bound is empty (contains no points), as are intervals with NaN as either bound.
Definition at line 55 of file Interval.h.
|
inline |
This constructor creates an empty interval.
Definition at line 58 of file Interval.h.
|
inlineexplicit |
This constructor creates a closed interval containing only x.
Definition at line 61 of file Interval.h.
|
inline |
This constructor creates an interval from the given endpoints.
Definition at line 64 of file Interval.h.
|
inline |
clippedTo
returns the intersection of this interval and x.
Definition at line 192 of file Interval.h.
|
inline |
clippedTo
returns the intersection of this interval and x.
Definition at line 190 of file Interval.h.
|
inline |
clipTo
shrinks this interval until all its points are in x.
Definition at line 177 of file Interval.h.
|
inline |
|
inline |
|
inline |
|
inline |
For positive x, dilateBy
morphologically dilates this interval by [-x,x], which is equivalent to the taking the Minkowski sum with [-x,x].
For negative x, it morphologically erodes this interval by [x,-x]. If x is zero or NaN, or this interval is empty, there is no effect.
Definition at line 237 of file Interval.h.
|
inline |
Definition at line 246 of file Interval.h.
|
inline |
Definition at line 245 of file Interval.h.
|
inline |
Definition at line 247 of file Interval.h.
|
inline |
expandedTo
returns the smallest interval containing the union of this interval and x.
Definition at line 227 of file Interval.h.
|
inline |
expandedTo
returns the smallest interval containing the union of this interval and x.
Definition at line 225 of file Interval.h.
|
inline |
|
inline |
|
inline |
getA
returns the lower endpoint of this interval.
The return value for empty intervals is arbitrary.
Definition at line 83 of file Interval.h.
|
inline |
getB
returns the upper endpoint of this interval.
The return value for empty intervals is arbitrary.
Definition at line 87 of file Interval.h.
|
inline |
getCenter
returns the center of this interval.
It is arbitrary for empty intervals.
Definition at line 96 of file Interval.h.
|
inline |
getSize
returns the size (length, width) of this interval.
It is zero for single-point intervals, and NaN or negative for empty intervals.
Definition at line 100 of file Interval.h.
|
inline |
intersects
returns true if the intersection of this interval and x is non-empty.
Definition at line 139 of file Interval.h.
|
inline |
intersects
returns true if the intersection of this interval and x is non-empty.
Definition at line 137 of file Interval.h.
|
inline |
|
inline |
isDisjointFrom
returns true if the intersection of this interval and x is empty.
Definition at line 122 of file Interval.h.
|
inline |
isEmpty
returns true if this interval does not contain any points.
Definition at line 90 of file Interval.h.
|
inline |
isWithin
returns true if the intersection of this interval and x is this interval.
Definition at line 151 of file Interval.h.
|
inline |
isWithin
returns true if the intersection of this interval and x is this interval.
Definition at line 147 of file Interval.h.
|
inline |
Definition at line 72 of file Interval.h.
|
inline |
Definition at line 79 of file Interval.h.
|
inline |
Two closed intervals are equal if their endpoints are the same, or both are empty.
Definition at line 68 of file Interval.h.
|
inline |
Relationship lsst::sphgeom::Interval< Derived, Scalar >::relate | ( | Interval< Derived, Scalar > const & | x | ) | const |
relate
returns a bitset S describing the spatial relationships between this interval and x. For each relation that holds, the bitwise AND of S and the corresponding Relationship will be non-zero.
Definition at line 276 of file Interval.h.
Relationship lsst::sphgeom::Interval< Derived, Scalar >::relate | ( | Scalar | x | ) | const |
relate
returns a bitset S describing the spatial relationships between this interval and x. For each relation that holds, the bitwise AND of S and the corresponding Relationship will be non-zero.
Definition at line 256 of file Interval.h.