hpp-fcl  2.4.1
HPP fork of FCL -- The Flexible Collision Library
hpp::fcl::HFNode< BV > Struct Template Reference

#include <hpp/fcl/hfield.h>

Inheritance diagram for hpp::fcl::HFNode< BV >:
Collaboration diagram for hpp::fcl::HFNode< BV >:

Public Types

typedef HFNodeBase Base
 

Public Member Functions

bool operator== (const HFNode &other) const
 Equality operator. More...
 
bool operator!= (const HFNode &other) const
 Difference operator. More...
 
bool overlap (const HFNode &other) const
 Check whether two BVNode collide. More...
 
bool overlap (const HFNode &other, const CollisionRequest &request, FCL_REAL &sqrDistLowerBound) const
 Check whether two BVNode collide. More...
 
FCL_REAL distance (const HFNode &other, Vec3f *P1=NULL, Vec3f *P2=NULL) const
 Compute the distance between two BVNode. P1 and P2, if not NULL and the underlying BV supports distance, return the nearest points. More...
 
Vec3f getCenter () const
 Access to the center of the BV. More...
 
const Matrix3fgetOrientation () const
 Access to the orientation of the BV. More...
 
virtual ~HFNode ()
 
- Public Member Functions inherited from hpp::fcl::HFNodeBase
 HFNodeBase ()
 Default constructor. More...
 
bool operator== (const HFNodeBase &other) const
 Comparison operator. More...
 
bool operator!= (const HFNodeBase &other) const
 Difference operator. More...
 
bool isLeaf () const
 Whether current node is a leaf node (i.e. contains a primitive index) More...
 
size_t leftChild () const
 Return the index of the first child. The index is referred to the bounding volume array (i.e. bvs) in BVHModel. More...
 
size_t rightChild () const
 Return the index of the second child. The index is referred to the bounding volume array (i.e. bvs) in BVHModel. More...
 
Eigen::Vector2i leftChildIndexes () const
 
Eigen::Vector2i rightChildIndexes () const
 

Public Attributes

BV bv
 bounding volume storing the geometry More...
 
- Public Attributes inherited from hpp::fcl::HFNodeBase
size_t first_child
 An index for first child node or primitive If the value is positive, it is the index of the first child bv node If the value is negative, it is -(primitive index + 1) Zero is not used. More...
 
Eigen::DenseIndex x_id
 
Eigen::DenseIndex x_size
 
Eigen::DenseIndex y_id
 
Eigen::DenseIndex y_size
 
FCL_REAL max_height
 

Member Typedef Documentation

◆ Base

template<typename BV >
typedef HFNodeBase hpp::fcl::HFNode< BV >::Base

Constructor & Destructor Documentation

◆ ~HFNode()

template<typename BV >
virtual hpp::fcl::HFNode< BV >::~HFNode ( )
inlinevirtual

Member Function Documentation

◆ distance()

template<typename BV >
FCL_REAL hpp::fcl::HFNode< BV >::distance ( const HFNode< BV > &  other,
Vec3f P1 = NULL,
Vec3f P2 = NULL 
) const
inline

Compute the distance between two BVNode. P1 and P2, if not NULL and the underlying BV supports distance, return the nearest points.

◆ getCenter()

template<typename BV >
Vec3f hpp::fcl::HFNode< BV >::getCenter ( ) const
inline

Access to the center of the BV.

◆ getOrientation()

template<typename BV >
const Matrix3f& hpp::fcl::HFNode< BV >::getOrientation ( ) const
inline

Access to the orientation of the BV.

◆ operator!=()

template<typename BV >
bool hpp::fcl::HFNode< BV >::operator!= ( const HFNode< BV > &  other) const
inline

Difference operator.

◆ operator==()

template<typename BV >
bool hpp::fcl::HFNode< BV >::operator== ( const HFNode< BV > &  other) const
inline

Equality operator.

◆ overlap() [1/2]

template<typename BV >
bool hpp::fcl::HFNode< BV >::overlap ( const HFNode< BV > &  other) const
inline

Check whether two BVNode collide.

◆ overlap() [2/2]

template<typename BV >
bool hpp::fcl::HFNode< BV >::overlap ( const HFNode< BV > &  other,
const CollisionRequest request,
FCL_REAL sqrDistLowerBound 
) const
inline

Check whether two BVNode collide.

Member Data Documentation

◆ bv

template<typename BV >
BV hpp::fcl::HFNode< BV >::bv

bounding volume storing the geometry


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