Public Types | Public Member Functions | Public Attributes | List of all members
fcl::BVNode< BV > Struct Template Reference

A class describing a bounding volume node. It includes the tree structure providing in BVNodeBase and also the geometry data provided in BV template parameter. More...

#include <BV_node.h>

Inheritance diagram for fcl::BVNode< BV >:
Inheritance graph
[legend]

Public Types

using S = typename BV::S
 

Public Member Functions

S distance (const BVNode &other, Vector3< S > *P1=nullptr, Vector3< S > *P2=nullptr) const
 Compute the distance between two BVNode. P1 and P2, if not nullptr and the underlying BV supports distance, return the nearest points. More...
 
Vector3< SgetCenter () const
 Access the center of the BV. More...
 
Matrix3< SgetOrientation () const
 Access the orientation of the BV. More...
 
bool overlap (const BVNode &other) const
 Check whether two BVNode collide. More...
 
- Public Member Functions inherited from fcl::BVNodeBase
bool isLeaf () const
 Whether current node is a leaf node (i.e. contains a primitive index. More...
 
int leftChild () const
 Return the index of the first child. The index is referred to the bounding volume array (i.e. bvs) in BVHModel. More...
 
int primitiveId () const
 Return the primitive index. The index is referred to the original data (i.e. vertices or tri_indices) in BVHModel. More...
 
int rightChild () const
 Return the index of the second child. The index is referred to the bounding volume array (i.e. bvs) in BVHModel. More...
 

Public Attributes

BV bv
 bounding volume storing the geometry More...
 
- Public Attributes inherited from fcl::BVNodeBase
int 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...
 
int first_primitive
 The start id the primitive belonging to the current node. The index is referred to the primitive_indices in BVHModel and from that we can obtain the primitive's index in original data indirectly. More...
 
int num_primitives
 The number of primitives belonging to the current node. More...
 

Detailed Description

template<typename BV>
struct fcl::BVNode< BV >

A class describing a bounding volume node. It includes the tree structure providing in BVNodeBase and also the geometry data provided in BV template parameter.

Definition at line 52 of file BV_node.h.

Member Typedef Documentation

◆ S

template<typename BV >
using fcl::BVNode< BV >::S = typename BV::S

Definition at line 54 of file BV_node.h.

Member Function Documentation

◆ distance()

template<typename BV >
BVNode< BV >::S fcl::BVNode< BV >::distance ( const BVNode< BV > &  other,
Vector3< S > *  P1 = nullptr,
Vector3< S > *  P2 = nullptr 
) const

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

Definition at line 55 of file BV_node-inl.h.

◆ getCenter()

template<typename BV >
Vector3< typename BVNode< BV >::S > fcl::BVNode< BV >::getCenter

Access the center of the BV.

Definition at line 63 of file BV_node-inl.h.

◆ getOrientation()

template<typename BV >
Matrix3< typename BV::S > fcl::BVNode< BV >::getOrientation

Access the orientation of the BV.

Definition at line 80 of file BV_node-inl.h.

◆ overlap()

template<typename BV >
bool fcl::BVNode< BV >::overlap ( const BVNode< BV > &  other) const

Check whether two BVNode collide.

Definition at line 48 of file BV_node-inl.h.

Member Data Documentation

◆ bv

template<typename BV >
BV fcl::BVNode< BV >::bv

bounding volume storing the geometry

Definition at line 57 of file BV_node.h.


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


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