Struct OBBRSS

Struct Documentation

struct OBBRSS

Class merging the OBB and RSS, can handle collision and distance simultaneously.

Public Functions

inline bool operator==(const OBBRSS &other) const

Equality operator.

inline bool operator!=(const OBBRSS &other) const

Difference operator.

inline bool contain(const Vec3s &p) const

Check whether the OBBRSS contains a point.

inline bool overlap(const OBBRSS &other) const

Check collision between two OBBRSS.

inline bool overlap(const OBBRSS &other, const CollisionRequest &request, CoalScalar &sqrDistLowerBound) const

Check collision between two OBBRSS

Return values:

sqrDistLowerBound – squared lower bound on distance between objects if they do not overlap.

inline CoalScalar distance(const OBBRSS &other, Vec3s *P = NULL, Vec3s *Q = NULL) const

Distance between two OBBRSS; P and Q , is not NULL, returns the nearest points.

inline OBBRSS &operator+=(const Vec3s &p)

Merge the OBBRSS and a point.

inline OBBRSS &operator+=(const OBBRSS &other)

Merge two OBBRSS.

inline OBBRSS operator+(const OBBRSS &other) const

Merge two OBBRSS.

inline CoalScalar size() const

Size of the OBBRSS (used in BV_Splitter to order two OBBRSS)

inline const Vec3s &center() const

Center of the OBBRSS.

inline CoalScalar width() const

Width of the OBRSS.

inline CoalScalar height() const

Height of the OBBRSS.

inline CoalScalar depth() const

Depth of the OBBRSS.

inline CoalScalar volume() const

Volume of the OBBRSS.

Public Members

EIGEN_MAKE_ALIGNED_OPERATOR_NEW OBB obb

OBB member, for rotation.

RSS rss

RSS member, for distance.