Bounds
A conservative convex enclosure described by support bounds.
Defined in Rodin/Geometry/Bounds.h
class Bounds;
For an enclosed set , getSupport() bounds . Directions need not be normalized.
Architecture
Native first-order maps use their vertex hull without allocation. Higher orders convert a certified reference-space representation into a positive partition of unity, including the rational collapsed pyramid basis. Reference conversions are shared; physical coefficients are owned. Conversion roundoff is included in every support query. An unreliable conversion gives infinite support, never a sampled membership filter.
Constructors, destructors, conversion operators
-
Bounds(const PolytopeTransformation& transformation,
Polytope::
Type geometry, size_t degree) - Constructs the enclosure of a certified reference-space map.
Public functions
-
auto getSupport(const Math::
SpatialVector<Real>& direction) const -> Real - Returns an outward-rounded support bound.
Function documentation
Bounds(const PolytopeTransformation& transformation,
Polytope:: Type geometry,
size_t degree)
Constructs the enclosure of a certified reference-space map.
| Parameters | |
|---|---|
| transformation | Coordinate map to enclose. |
| geometry | Reference geometry of that map. |
| degree | Certified degree of the containing control space. |
The caller must establish containment in the degree-p Bernstein reference space: simplex, tensor, triangle-segment product, or rational collapsed pyramid. This is a representation bound, not a family index inferred from an arbitrary transformation's samples.
Real getSupport(const Math:: SpatialVector<Real>& direction) const
Returns an outward-rounded support bound.
| Parameters | |
|---|---|
| direction | Physical direction, not necessarily normalized. |
| Returns | An upper support bound, or infinity for an uncertified conversion. |