39 #ifndef HPP_FCL_BV_NODE_H 40 #define HPP_FCL_BV_NODE_H 73 inline bool isLeaf()
const {
return first_child < 0; }
82 inline int rightChild()
const {
return first_child + 1; }
95 return bv.overlap(other.
bv);
101 return bv.overlap(other.
bv, request, sqrDistLowerBound);
107 return bv.distance(other.
bv, P1, P2);
116 static const Matrix3f id3 = Matrix3f::Identity();
121 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
bool overlap(const BVNode &other) const
Check whether two BVNode collide.
Definition: BV_node.h:93
Main namespace.
Definition: AABB.h:43
BV bv
bounding volume storing the geometry
Definition: BV_node.h:90
Eigen::Matrix< FCL_REAL, 3, 3 > Matrix3f
Definition: data_types.h:74
Vec3f getCenter() const
Access to the center of the BV.
Definition: BV_node.h:111
int primitiveId() const
Return the primitive index. The index is referred to the original data (i.e. vertices or tri_indices)...
Definition: BV_node.h:76
int first_primitive
The start id the primitive belonging to the current node. The index is referred to the primitive_indi...
Definition: BV_node.h:67
int first_child
An index for first child node or primitive If the value is positive, it is the index of the first chi...
Definition: BV_node.h:63
request to the collision algorithm
Definition: collision_data.h:150
double FCL_REAL
Definition: data_types.h:68
bool overlap(const BVNode &other, const CollisionRequest &request, FCL_REAL &sqrDistLowerBound) const
Check whether two BVNode collide.
Definition: BV_node.h:98
const Matrix3f & getOrientation() const
Access to the orientation of the BV.
Definition: BV_node.h:114
FCL_REAL distance(const BVNode &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 distan...
Definition: BV_node.h:105
A class describing a bounding volume node. It includes the tree structure providing in BVNodeBase and...
Definition: BV_node.h:87
int leftChild() const
Return the index of the first child. The index is referred to the bounding volume array (i...
Definition: BV_node.h:79
bool isLeaf() const
Whether current node is a leaf node (i.e. contains a primitive index.
Definition: BV_node.h:73
int num_primitives
The number of primitives belonging to the current node.
Definition: BV_node.h:70
Eigen::Matrix< FCL_REAL, 3, 1 > Vec3f
Definition: data_types.h:73
int rightChild() const
Return the index of the second child. The index is referred to the bounding volume array (i...
Definition: BV_node.h:82
BVNodeBase encodes the tree structure for BVH.
Definition: BV_node.h:57