Class Acts::ObjectIntersection¶
-
template<typename object_t, typename representation_t = object_t>
class ObjectIntersection¶ class extensions to return also the object and a representation
Public Functions
-
ObjectIntersection() = default¶
Default constructor.
-
template<typename T = representation_t, std::enable_if_t<std::is_same<T, object_t>::value, int> = 0>
inline ObjectIntersection(const Intersection3D &sInter, const object_t *sObject)¶ Object intersection - symmetric setup.
- Parameters
sInter – is the intersection
sObject – is the object to be instersected
-
inline ObjectIntersection(const Intersection3D &sInter, const object_t *sObject, const representation_t *sRepresentation)¶
Object intersection.
- Parameters
sInter – is the intersection
sObject – is the object to be instersected
sRepresentation – is the object represenatation
-
inline explicit operator bool() const¶
Bool() operator for validity checking.
-
inline bool operator<(const ObjectIntersection<object_t, representation_t> &oi) const¶
Smaller operator for ordering & sorting.
This operator will ignore the alternative, but simply order the representing intersection
- Parameters
oi – is the source intersection for comparison
-
inline bool operator>(const ObjectIntersection<object_t, representation_t> &oi) const¶
Greater operator for ordering & sorting.
This operator will ignore the alternative, but simply order the representing intersection
- Parameters
oi – is the source intersection for comparison
-
inline void swapSolutions()¶
Allow swapping the intersection and the alternative.
Public Members
-
Intersection3D alternative = {}¶
The alternative intersections.
-
Intersection3D intersection = {}¶
The intersection itself.
-
const representation_t *representation = {nullptr}¶
The representation of this object.
-
ObjectIntersection() = default¶