38 #ifndef FCL_TRAVERSAL_SHAPEBVHCOLLISIONTRAVERSALNODE_INL_H 39 #define FCL_TRAVERSAL_SHAPEBVHCOLLISIONTRAVERSALNODE_INL_H 41 #include "fcl/narrowphase/detail/traversal/collision/shape_bvh_collision_traversal_node.h" 50 template <
typename Shape,
typename BV>
51 ShapeBVHCollisionTraversalNode<Shape, BV>::ShapeBVHCollisionTraversalNode()
52 : CollisionTraversalNodeBase<typename BV::S>()
59 query_time_seconds = 0.0;
63 template <
typename Shape,
typename BV>
70 template <
typename Shape,
typename BV>
73 return model2->getBV(b).isLeaf();
77 template <
typename Shape,
typename BV>
80 return model2->getBV(b).leftChild();
84 template <
typename Shape,
typename BV>
87 return model2->getBV(b).rightChild();
91 template <
typename Shape,
typename BV>
95 return !model2->getBV(b2).bv.overlap(model1_bv);
int getSecondRightChild(int b) const
Obtain the right child of BV node in the second BVH.
Definition: shape_bvh_collision_traversal_node-inl.h:85
bool enable_statistics
Whether stores statistics.
Definition: collision_traversal_node_base.h:78
Main namespace.
Definition: broadphase_bruteforce-inl.h:45
bool isSecondNodeLeaf(int b) const
Whether the BV node in the second BVH tree is leaf.
Definition: shape_bvh_collision_traversal_node-inl.h:71
bool BVTesting(int b1, int b2) const
BV culling test in one BVTT node.
Definition: shape_bvh_collision_traversal_node-inl.h:92
int getSecondLeftChild(int b) const
Obtain the left child of BV node in the second BVH.
Definition: shape_bvh_collision_traversal_node-inl.h:78
bool firstOverSecond(int, int) const
Alway extend the second model, which is a BVH model.
Definition: shape_bvh_collision_traversal_node-inl.h:64