coal  3.0.1
Coal, The Collision Detection Library. Previously known as HPP-FCL, fork of FCL -- The Flexible Collision Library
coal::OBBRSS Struct Reference

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

#include <coal/BV/OBBRSS.h>

Collaboration diagram for coal::OBBRSS:

Public Member Functions

bool operator== (const OBBRSS &other) const
 Equality operator. More...
 
bool operator!= (const OBBRSS &other) const
 Difference operator. More...
 
bool contain (const Vec3s &p) const
 Check whether the OBBRSS contains a point. More...
 
bool overlap (const OBBRSS &other) const
 Check collision between two OBBRSS. More...
 
bool overlap (const OBBRSS &other, const CollisionRequest &request, Scalar &sqrDistLowerBound) const
 
Scalar 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. More...
 
OBBRSSoperator+= (const Vec3s &p)
 Merge the OBBRSS and a point. More...
 
OBBRSSoperator+= (const OBBRSS &other)
 Merge two OBBRSS. More...
 
OBBRSS operator+ (const OBBRSS &other) const
 Merge two OBBRSS. More...
 
Scalar size () const
 Size of the OBBRSS (used in BV_Splitter to order two OBBRSS) More...
 
const Vec3scenter () const
 Center of the OBBRSS. More...
 
Scalar width () const
 Width of the OBRSS. More...
 
Scalar height () const
 Height of the OBBRSS. More...
 
Scalar depth () const
 Depth of the OBBRSS. More...
 
Scalar volume () const
 Volume of the OBBRSS. More...
 

Public Attributes

EIGEN_MAKE_ALIGNED_OPERATOR_NEW OBB obb
 OBB member, for rotation. More...
 
RSS rss
 RSS member, for distance. More...
 

Detailed Description

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

Member Function Documentation

◆ center()

const Vec3s& coal::OBBRSS::center ( ) const
inline

Center of the OBBRSS.

◆ contain()

bool coal::OBBRSS::contain ( const Vec3s p) const
inline

Check whether the OBBRSS contains a point.

◆ depth()

Scalar coal::OBBRSS::depth ( ) const
inline

Depth of the OBBRSS.

◆ distance()

Scalar coal::OBBRSS::distance ( const OBBRSS other,
Vec3s P = NULL,
Vec3s Q = NULL 
) const
inline

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

◆ height()

Scalar coal::OBBRSS::height ( ) const
inline

Height of the OBBRSS.

◆ operator!=()

bool coal::OBBRSS::operator!= ( const OBBRSS other) const
inline

Difference operator.

◆ operator+()

OBBRSS coal::OBBRSS::operator+ ( const OBBRSS other) const
inline

Merge two OBBRSS.

◆ operator+=() [1/2]

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

Merge two OBBRSS.

◆ operator+=() [2/2]

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

Merge the OBBRSS and a point.

◆ operator==()

bool coal::OBBRSS::operator== ( const OBBRSS other) const
inline

Equality operator.

◆ overlap() [1/2]

bool coal::OBBRSS::overlap ( const OBBRSS other) const
inline

Check collision between two OBBRSS.

◆ overlap() [2/2]

bool coal::OBBRSS::overlap ( const OBBRSS other,
const CollisionRequest request,
Scalar sqrDistLowerBound 
) const
inline

Check collision between two OBBRSS

Return values
sqrDistLowerBoundsquared lower bound on distance between objects if they do not overlap.

◆ size()

Scalar coal::OBBRSS::size ( ) const
inline

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

◆ volume()

Scalar coal::OBBRSS::volume ( ) const
inline

Volume of the OBBRSS.

◆ width()

Scalar coal::OBBRSS::width ( ) const
inline

Width of the OBRSS.

Member Data Documentation

◆ obb

EIGEN_MAKE_ALIGNED_OPERATOR_NEW OBB coal::OBBRSS::obb

OBB member, for rotation.

◆ rss

RSS coal::OBBRSS::rss

RSS member, for distance.


The documentation for this struct was generated from the following file: