HDK
|
#include <range2f.h>
Public Types | |
typedef GfVec2f | MinMaxType |
Helper typedef. More... | |
typedef GfVec2f::ScalarType | ScalarType |
Public Member Functions | |
void | SetEmpty () |
Sets the range to an empty interval. More... | |
GfRange2f () | |
The default constructor creates an empty range. More... | |
GfRange2f (const GfVec2f &min, const GfVec2f &max) | |
This constructor initializes the minimum and maximum points. More... | |
GF_API | GfRange2f (class GfRange2d const &other) |
Construct from GfRange2d. More... | |
const GfVec2f & | GetMin () const |
Returns the minimum value of the range. More... | |
const GfVec2f & | GetMax () const |
Returns the maximum value of the range. More... | |
GfVec2f | GetSize () const |
Returns the size of the range. More... | |
GfVec2f | GetMidpoint () const |
void | SetMin (const GfVec2f &min) |
Sets the minimum value of the range. More... | |
void | SetMax (const GfVec2f &max) |
Sets the maximum value of the range. More... | |
bool | IsEmpty () const |
Returns whether the range is empty (max < min). More... | |
void | ExtendBy (const GfVec2f &point) |
void | ExtendBy (const GfRange2f &range) |
bool | Contains (const GfVec2f &point) const |
bool | Contains (const GfRange2f &range) const |
bool | IsInside (const GfVec2f &point) const |
bool | IsInside (const GfRange2f &range) const |
bool | IsOutside (const GfRange2f &range) const |
const GfRange2f & | UnionWith (const GfRange2f &b) |
Extend this to include b . More... | |
const GfRange2f & | UnionWith (const GfVec2f &b) |
Extend this to include b . More... | |
const GfRange2f & | Union (const GfRange2f &b) |
const GfRange2f & | Union (const GfVec2f &b) |
const GfRange2f & | IntersectWith (const GfRange2f &b) |
const GfRange2f & | Intersection (const GfRange2f &b) |
GfRange2f & | operator+= (const GfRange2f &b) |
unary sum. More... | |
GfRange2f & | operator-= (const GfRange2f &b) |
unary difference. More... | |
GfRange2f & | operator*= (double m) |
unary multiply. More... | |
GfRange2f & | operator/= (double m) |
unary division. More... | |
GfRange2f | operator+ (const GfRange2f &b) const |
binary sum. More... | |
GfRange2f | operator- (const GfRange2f &b) const |
binary difference. More... | |
bool | operator== (const GfRange2f &b) const |
The min and max points must match exactly for equality. More... | |
bool | operator!= (const GfRange2f &b) const |
GF_API bool | operator== (const GfRange2d &other) const |
GF_API bool | operator!= (const GfRange2d &other) const |
GF_API double | GetDistanceSquared (const GfVec2f &p) const |
Compute the squared distance from a point to the range. More... | |
GF_API GfVec2f | GetCorner (size_t i) const |
GF_API GfRange2f | GetQuadrant (size_t i) const |
Static Public Member Functions | |
static GfRange2f | GetUnion (const GfRange2f &a, const GfRange2f &b) |
Returns the smallest GfRange2f which contains both a and b . More... | |
static GfRange2f | Union (const GfRange2f &a, const GfRange2f &b) |
static GfRange2f | GetIntersection (const GfRange2f &a, const GfRange2f &b) |
Returns a GfRange2f that describes the intersection of a and b . More... | |
static GfRange2f | Intersection (const GfRange2f &a, const GfRange2f &b) |
Static Public Attributes | |
static const size_t | dimension = GfVec2f::dimension |
static GF_API const GfRange2f | UnitSquare |
The unit square. More... | |
Friends | |
GfRange2f | operator* (double m, const GfRange2f &r) |
scalar multiply. More... | |
GfRange2f | operator* (const GfRange2f &r, double m) |
scalar multiply. More... | |
GfRange2f | operator/ (const GfRange2f &r, double m) |
scalar divide. More... | |
size_t | hash_value (const GfRange2f &r) |
hash. More... | |
Basic type: 2-dimensional floating point range.
This class represents a 2-dimensional range (or interval) All operations are component-wise and conform to interval mathematics. An empty range is one where max < min. The default empty is [FLT_MAX,-FLT_MAX]
typedef GfVec2f GfRange2f::MinMaxType |
|
inline |
|
inline |
|
inline |
Modifies the range if necessary to surround the given value.
Modifies the range if necessary to surround the given range.
Returns the ith corner of the range, in the following order: SW, SE, NW, NE.
Compute the squared distance from a point to the range.
|
inline |
|
inline |
Returns the midpoint of the range, that is, 0.5*(min+max). Note: this returns zero in the case of default-constructed ranges, or ranges set via SetEmpty().
|
inline |
Returns the ith quadrant of the range, in the following order: SW, SE, NW, NE.
|
inline |
Returns a GfRange2f
that describes the intersection of a
and b
.
Modifies this range to hold its intersection with b
and returns the result.
|
inline |
|
inline |
Returns true if the point
is located inside the range. As with all operations of this type, the range is assumed to include its extrema.
|
inline |
Returns true if the range
is located entirely inside the range. As with all operations of this type, the ranges are assumed to include their extrema.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Returns the smallest GfRange2f
which contains both a
and b
Extend this
to include b
.
Extend this
to include b
.
|
static |