Traversal node for collision between BVH models. More...
#include <bvh_collision_traversal_node.h>
Public Types | |
using | S = typename BV::S |
Public Member Functions | |
BVHCollisionTraversalNode () | |
bool | BVTesting (int b1, int b2) const |
BV culling test in one BVTT node. More... | |
bool | firstOverSecond (int b1, int b2) const |
Determine the traversal order, is the first BVTT subtree better. More... | |
int | getFirstLeftChild (int b) const |
Obtain the left child of BV node in the first BVH. More... | |
int | getFirstRightChild (int b) const |
Obtain the right child of BV node in the first BVH. More... | |
int | getSecondLeftChild (int b) const |
Obtain the left child of BV node in the second BVH. More... | |
int | getSecondRightChild (int b) const |
Obtain the right child of BV node in the second BVH. More... | |
bool | isFirstNodeLeaf (int b) const |
Whether the BV node in the first BVH tree is leaf. More... | |
bool | isSecondNodeLeaf (int b) const |
Whether the BV node in the second BVH tree is leaf. More... | |
Public Member Functions inherited from fcl::detail::CollisionTraversalNodeBase< BV::S > | |
virtual bool | canStop () const |
Check whether the traversal can stop. More... | |
CollisionTraversalNodeBase () | |
void | enableStatistics (bool enable) |
Whether store some statistics information during traversal. More... | |
virtual void | leafTesting (int b1, int b2) const |
Leaf test between node b1 and b2, if they are both leafs. More... | |
virtual | ~CollisionTraversalNodeBase () |
Public Member Functions inherited from fcl::detail::TraversalNodeBase< BV::S > | |
virtual void | postprocess () |
virtual void | preprocess () |
virtual | ~TraversalNodeBase () |
Public Attributes | |
const BVHModel< BV > * | model1 |
The first BVH model. More... | |
const BVHModel< BV > * | model2 |
The second BVH model. More... | |
int | num_bv_tests |
statistical information More... | |
int | num_leaf_tests |
S | query_time_seconds |
Public Attributes inherited from fcl::detail::CollisionTraversalNodeBase< BV::S > | |
bool | enable_statistics |
Whether stores statistics. More... | |
CollisionRequest< BV::S > | request |
request setting for collision More... | |
CollisionResult< BV::S > * | result |
collision result kept during the traversal iteration More... | |
Public Attributes inherited from fcl::detail::TraversalNodeBase< BV::S > | |
Transform3< BV::S > | tf1 |
configuation of first object More... | |
Transform3< BV::S > | tf2 |
configuration of second object More... | |
Traversal node for collision between BVH models.
Definition at line 52 of file bvh_collision_traversal_node.h.
using fcl::detail::BVHCollisionTraversalNode< BV >::S = typename BV::S |
Definition at line 57 of file bvh_collision_traversal_node.h.
fcl::detail::BVHCollisionTraversalNode< BV >::BVHCollisionTraversalNode |
Definition at line 51 of file bvh_collision_traversal_node-inl.h.
|
virtual |
BV culling test in one BVTT node.
Reimplemented from fcl::detail::CollisionTraversalNodeBase< BV::S >.
Definition at line 121 of file bvh_collision_traversal_node-inl.h.
|
virtual |
Determine the traversal order, is the first BVTT subtree better.
Reimplemented from fcl::detail::TraversalNodeBase< BV::S >.
Definition at line 78 of file bvh_collision_traversal_node-inl.h.
|
virtual |
Obtain the left child of BV node in the first BVH.
Reimplemented from fcl::detail::TraversalNodeBase< BV::S >.
Definition at line 93 of file bvh_collision_traversal_node-inl.h.
|
virtual |
Obtain the right child of BV node in the first BVH.
Reimplemented from fcl::detail::TraversalNodeBase< BV::S >.
Definition at line 100 of file bvh_collision_traversal_node-inl.h.
|
virtual |
Obtain the left child of BV node in the second BVH.
Reimplemented from fcl::detail::TraversalNodeBase< BV::S >.
Definition at line 107 of file bvh_collision_traversal_node-inl.h.
|
virtual |
Obtain the right child of BV node in the second BVH.
Reimplemented from fcl::detail::TraversalNodeBase< BV::S >.
Definition at line 114 of file bvh_collision_traversal_node-inl.h.
|
virtual |
Whether the BV node in the first BVH tree is leaf.
Reimplemented from fcl::detail::TraversalNodeBase< BV::S >.
Definition at line 64 of file bvh_collision_traversal_node-inl.h.
|
virtual |
Whether the BV node in the second BVH tree is leaf.
Reimplemented from fcl::detail::TraversalNodeBase< BV::S >.
Definition at line 71 of file bvh_collision_traversal_node-inl.h.
const BVHModel<BV>* fcl::detail::BVHCollisionTraversalNode< BV >::model1 |
The first BVH model.
Definition at line 86 of file bvh_collision_traversal_node.h.
const BVHModel<BV>* fcl::detail::BVHCollisionTraversalNode< BV >::model2 |
The second BVH model.
Definition at line 89 of file bvh_collision_traversal_node.h.
|
mutable |
statistical information
Definition at line 92 of file bvh_collision_traversal_node.h.
|
mutable |
Definition at line 93 of file bvh_collision_traversal_node.h.
|
mutable |
Definition at line 94 of file bvh_collision_traversal_node.h.