Class merging the OBB and RSS, can handle collision and distance simultaneously. More...
#include <OBBRSS.h>
Public Types | |
using | S = S_ |
Public Member Functions | |
const Vector3< S > | center () const |
Center of the OBBRSS. More... | |
bool | contain (const Vector3< S > &p) const |
Check whether the OBBRSS contains a point. More... | |
S | depth () const |
Depth of the OBBRSS. More... | |
S | distance (const OBBRSS< S > &other, Vector3< S > *P=nullptr, Vector3< S > *Q=nullptr) const |
Distance between two OBBRSS; P and Q , is not nullptr, returns the nearest points. More... | |
S | height () const |
Height of the OBBRSS. More... | |
OBBRSS< S > | operator+ (const OBBRSS< S > &other) const |
Merge two OBBRSS. More... | |
OBBRSS< S > & | operator+= (const OBBRSS< S > &other) |
Merge two OBBRSS. More... | |
OBBRSS< S > & | operator+= (const Vector3< S > &p) |
Merge the OBBRSS and a point. More... | |
bool | overlap (const OBBRSS< S > &other) const |
Check collision between two OBBRSS. More... | |
bool | overlap (const OBBRSS< S > &other, OBBRSS< S > &overlap_part) const |
Check collision between two OBBRSS and return the overlap part. More... | |
S | size () const |
Size of the OBBRSS (used in BV_Splitter to order two OBBRSS) More... | |
S | volume () const |
Volume of the OBBRSS. More... | |
S | width () const |
Width of the OBRSS. More... | |
Public Attributes | |
OBB< S > | obb |
OBB member, for rotation. More... | |
RSS< S > | rss |
RSS member, for distance. More... | |
Class merging the OBB and RSS, can handle collision and distance simultaneously.
using fcl::OBBRSS< S_ >::S = S_ |
const Vector3< S > fcl::OBBRSS< S >::center |
Center of the OBBRSS.
Definition at line 140 of file OBBRSS-inl.h.
bool fcl::OBBRSS< S >::contain | ( | const Vector3< S > & | p | ) | const |
Check whether the OBBRSS contains a point.
Definition at line 71 of file OBBRSS-inl.h.
S fcl::OBBRSS< S >::depth |
Depth of the OBBRSS.
Definition at line 119 of file OBBRSS-inl.h.
S fcl::OBBRSS< S >::distance | ( | const OBBRSS< S > & | other, |
Vector3< S > * | P = nullptr , |
||
Vector3< S > * | Q = nullptr |
||
) | const |
Distance between two OBBRSS; P and Q , is not nullptr, returns the nearest points.
Definition at line 147 of file OBBRSS-inl.h.
S fcl::OBBRSS< S >::height |
Height of the OBBRSS.
Definition at line 112 of file OBBRSS-inl.h.
Merge two OBBRSS.
Definition at line 95 of file OBBRSS-inl.h.
Merge two OBBRSS.
Definition at line 87 of file OBBRSS-inl.h.
Merge the OBBRSS and a point.
Definition at line 78 of file OBBRSS-inl.h.
bool fcl::OBBRSS< S >::overlap | ( | const OBBRSS< S > & | other | ) | const |
Check collision between two OBBRSS.
Definition at line 56 of file OBBRSS-inl.h.
bool fcl::OBBRSS< S >::overlap | ( | const OBBRSS< S > & | other, |
OBBRSS< S > & | overlap_part | ||
) | const |
Check collision between two OBBRSS and return the overlap part.
Definition at line 63 of file OBBRSS-inl.h.
S fcl::OBBRSS< S >::size |
Size of the OBBRSS (used in BV_Splitter to order two OBBRSS)
Definition at line 133 of file OBBRSS-inl.h.
S fcl::OBBRSS< S >::volume |
Volume of the OBBRSS.
Definition at line 126 of file OBBRSS-inl.h.
S fcl::OBBRSS< S >::width |
Width of the OBRSS.
Definition at line 105 of file OBBRSS-inl.h.
OBB<S> fcl::OBBRSS< S_ >::obb |
RSS<S> fcl::OBBRSS< S_ >::rss |