Public Types | Public Member Functions | Public Attributes | List of all members
fcl::OBBRSS< S_ > Class Template Reference

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< Scenter () 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< Soperator+ (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< Sobb
 OBB member, for rotation. More...
 
RSS< Srss
 RSS member, for distance. More...
 

Detailed Description

template<typename S_>
class fcl::OBBRSS< S_ >

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

Definition at line 50 of file OBBRSS.h.

Member Typedef Documentation

◆ S

template<typename S_ >
using fcl::OBBRSS< S_ >::S = S_

Definition at line 54 of file OBBRSS.h.

Member Function Documentation

◆ center()

template<typename S >
const Vector3< S > fcl::OBBRSS< S >::center

Center of the OBBRSS.

Definition at line 140 of file OBBRSS-inl.h.

◆ contain()

template<typename S >
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.

◆ depth()

template<typename S >
S fcl::OBBRSS< S >::depth

Depth of the OBBRSS.

Definition at line 119 of file OBBRSS-inl.h.

◆ distance()

template<typename S >
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.

◆ height()

template<typename S >
S fcl::OBBRSS< S >::height

Height of the OBBRSS.

Definition at line 112 of file OBBRSS-inl.h.

◆ operator+()

template<typename S >
OBBRSS< S > fcl::OBBRSS< S >::operator+ ( const OBBRSS< S > &  other) const

Merge two OBBRSS.

Definition at line 95 of file OBBRSS-inl.h.

◆ operator+=() [1/2]

template<typename S >
OBBRSS< S > & fcl::OBBRSS< S >::operator+= ( const OBBRSS< S > &  other)

Merge two OBBRSS.

Definition at line 87 of file OBBRSS-inl.h.

◆ operator+=() [2/2]

template<typename S >
OBBRSS< S > & fcl::OBBRSS< S >::operator+= ( const Vector3< S > &  p)

Merge the OBBRSS and a point.

Definition at line 78 of file OBBRSS-inl.h.

◆ overlap() [1/2]

template<typename S >
bool fcl::OBBRSS< S >::overlap ( const OBBRSS< S > &  other) const

Check collision between two OBBRSS.

Definition at line 56 of file OBBRSS-inl.h.

◆ overlap() [2/2]

template<typename S >
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.

◆ size()

template<typename S >
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.

◆ volume()

template<typename S >
S fcl::OBBRSS< S >::volume

Volume of the OBBRSS.

Definition at line 126 of file OBBRSS-inl.h.

◆ width()

template<typename S >
S fcl::OBBRSS< S >::width

Width of the OBRSS.

Definition at line 105 of file OBBRSS-inl.h.

Member Data Documentation

◆ obb

template<typename S_ >
OBB<S> fcl::OBBRSS< S_ >::obb

OBB member, for rotation.

Definition at line 57 of file OBBRSS.h.

◆ rss

template<typename S_ >
RSS<S> fcl::OBBRSS< S_ >::rss

RSS member, for distance.

Definition at line 60 of file OBBRSS.h.


The documentation for this class was generated from the following files:


fcl
Author(s):
autogenerated on Tue Dec 5 2023 03:40:50