LSST Applications
21.0.0-172-gfb10e10a+18fedfabac,22.0.0+297cba6710,22.0.0+80564b0ff1,22.0.0+8d77f4f51a,22.0.0+a28f4c53b1,22.0.0+dcf3732eb2,22.0.1-1-g7d6de66+2a20fdde0d,22.0.1-1-g8e32f31+297cba6710,22.0.1-1-geca5380+7fa3b7d9b6,22.0.1-12-g44dc1dc+2a20fdde0d,22.0.1-15-g6a90155+515f58c32b,22.0.1-16-g9282f48+790f5f2caa,22.0.1-2-g92698f7+dcf3732eb2,22.0.1-2-ga9b0f51+7fa3b7d9b6,22.0.1-2-gd1925c9+bf4f0e694f,22.0.1-24-g1ad7a390+a9625a72a8,22.0.1-25-g5bf6245+3ad8ecd50b,22.0.1-25-gb120d7b+8b5510f75f,22.0.1-27-g97737f7+2a20fdde0d,22.0.1-32-gf62ce7b1+aa4237961e,22.0.1-4-g0b3f228+2a20fdde0d,22.0.1-4-g243d05b+871c1b8305,22.0.1-4-g3a563be+32dcf1063f,22.0.1-4-g44f2e3d+9e4ab0f4fa,22.0.1-42-gca6935d93+ba5e5ca3eb,22.0.1-5-g15c806e+85460ae5f3,22.0.1-5-g58711c4+611d128589,22.0.1-5-g75bb458+99c117b92f,22.0.1-6-g1c63a23+7fa3b7d9b6,22.0.1-6-g50866e6+84ff5a128b,22.0.1-6-g8d3140d+720564cf76,22.0.1-6-gd805d02+cc5644f571,22.0.1-8-ge5750ce+85460ae5f3,master-g6e05de7fdc+babf819c66,master-g99da0e417a+8d77f4f51a,w.2021.48
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. More... | |
Interval (Scalar x) | |
This constructor creates a closed interval containing only x. More... | |
Interval (Scalar x, Scalar y) | |
This constructor creates an interval from the given endpoints. More... | |
bool | operator== (Interval const &i) const |
Two closed intervals are equal if their endpoints are the same, or both are empty. More... | |
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. More... | |
bool | operator!= (Scalar x) const |
Scalar | getA () const |
getA returns the lower endpoint of this interval. More... | |
Scalar | getB () const |
getB returns the upper endpoint of this interval. More... | |
bool | isEmpty () const |
isEmpty returns true if this interval does not contain any points. More... | |
Scalar | getCenter () const |
getCenter returns the center of this interval. More... | |
Scalar | getSize () const |
getSize returns the size (length, width) of this interval. More... | |
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]. More... | |
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 48 of file Interval.h.
|
inline |
This constructor creates an empty interval.
Definition at line 51 of file Interval.h.
|
inlineexplicit |
This constructor creates a closed interval containing only x.
Definition at line 54 of file Interval.h.
|
inline |
This constructor creates an interval from the given endpoints.
Definition at line 57 of file Interval.h.
|
inline |
clippedTo
returns the intersection of this interval and x.
Definition at line 185 of file Interval.h.
|
inline |
clippedTo
returns the intersection of this interval and x.
Definition at line 183 of file Interval.h.
|
inline |
clipTo
shrinks this interval until all its points are in x.
Definition at line 170 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 230 of file Interval.h.
|
inline |
Definition at line 239 of file Interval.h.
|
inline |
Definition at line 238 of file Interval.h.
|
inline |
Definition at line 240 of file Interval.h.
|
inline |
expandedTo
returns the smallest interval containing the union of this interval and x.
Definition at line 220 of file Interval.h.
|
inline |
expandedTo
returns the smallest interval containing the union of this interval and x.
Definition at line 218 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 76 of file Interval.h.
|
inline |
getB
returns the upper endpoint of this interval.
The return value for empty intervals is arbitrary.
Definition at line 80 of file Interval.h.
|
inline |
getCenter
returns the center of this interval.
It is arbitrary for empty intervals.
Definition at line 89 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 93 of file Interval.h.
|
inline |
intersects
returns true if the intersection of this interval and x is non-empty.
Definition at line 132 of file Interval.h.
|
inline |
intersects
returns true if the intersection of this interval and x is non-empty.
Definition at line 130 of file Interval.h.
|
inline |
|
inline |
isDisjointFrom
returns true if the intersection of this interval and x is empty.
Definition at line 115 of file Interval.h.
|
inline |
isEmpty
returns true if this interval does not contain any points.
Definition at line 83 of file Interval.h.
|
inline |
isWithin
returns true if the intersection of this interval and x is this interval.
Definition at line 144 of file Interval.h.
|
inline |
isWithin
returns true if the intersection of this interval and x is this interval.
Definition at line 140 of file Interval.h.
|
inline |
Definition at line 65 of file Interval.h.
|
inline |
Definition at line 72 of file Interval.h.
|
inline |
Two closed intervals are equal if their endpoints are the same, or both are empty.
Definition at line 61 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 269 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 249 of file Interval.h.