FCL  0.6.0
Flexible Collision Library
fcl::detail::MeshConservativeAdvancementTraversalNode< BV > Class Template Reference

continuous collision node using conservative advancement. when using this default version, must refit the BVH in current configuration (R_t, T_t) into default configuration More...

#include <mesh_conservative_advancement_traversal_node.h>

Inheritance diagram for fcl::detail::MeshConservativeAdvancementTraversalNode< BV >:
fcl::detail::MeshDistanceTraversalNode< BV > fcl::detail::BVHDistanceTraversalNode< BV > fcl::detail::DistanceTraversalNodeBase< BV::S > fcl::detail::TraversalNodeBase< BV::S >

Public Types

using S = typename BV::S
 
- Public Types inherited from fcl::detail::MeshDistanceTraversalNode< BV >
using S = typename BV::S
 
- Public Types inherited from fcl::detail::BVHDistanceTraversalNode< BV >
using S = typename BV::S
 

Public Member Functions

 MeshConservativeAdvancementTraversalNode (S w_=1)
 
BVTesting (int b1, int b2) const
 BV culling test in one BVTT node.
 
void leafTesting (int b1, int b2) const
 Conservative advancement testing between leaves (two triangles)
 
bool canStop (S c) const
 Whether the traversal process can stop early.
 
- Public Member Functions inherited from fcl::detail::MeshDistanceTraversalNode< BV >
void leafTesting (int b1, int b2) const
 Distance testing between leaves (two triangles)
 
bool canStop (S c) const
 Whether the traversal process can stop early.
 
- Public Member Functions inherited from fcl::detail::BVHDistanceTraversalNode< BV >
bool isFirstNodeLeaf (int b) const
 Whether the BV node in the first BVH tree is leaf.
 
bool isSecondNodeLeaf (int b) const
 Whether the BV node in the second BVH tree is leaf.
 
bool firstOverSecond (int b1, int b2) const
 Determine the traversal order, is the first BVTT subtree better.
 
int getFirstLeftChild (int b) const
 Obtain the left child of BV node in the first BVH.
 
int getFirstRightChild (int b) const
 Obtain the right child of BV node in the first BVH.
 
int getSecondLeftChild (int b) const
 Obtain the left child of BV node in the second BVH.
 
int getSecondRightChild (int b) const
 Obtain the right child of BV node in the second BVH.
 
- Public Member Functions inherited from fcl::detail::DistanceTraversalNodeBase< BV::S >
virtual bool canStop (BV::Sc) const
 Check whether the traversal can stop.
 
void enableStatistics (bool enable)
 Whether store some statistics information during traversal.
 
- Public Member Functions inherited from fcl::detail::TraversalNodeBase< BV::S >
virtual void preprocess ()
 
virtual void postprocess ()
 

Public Attributes

min_distance
 
Vector3< S > closest_p1
 
Vector3< S > closest_p2
 
int last_tri_id1
 
int last_tri_id2
 
w
 CA controlling variable: early stop for the early iterations of CA.
 
toc
 The time from beginning point.
 
t_err
 
delta_t
 The delta_t each step.
 
const MotionBase< S > * motion1
 Motions for the two objects in query.
 
const MotionBase< S > * motion2
 
std::vector< ConservativeAdvancementStackData< S > > stack
 
- Public Attributes inherited from fcl::detail::MeshDistanceTraversalNode< BV >
Vector3< S > * vertices1
 
Vector3< S > * vertices2
 
Triangletri_indices1
 
Triangletri_indices2
 
rel_err
 relative and absolute error, default value is 0.01 for both terms
 
abs_err
 
- Public Attributes inherited from fcl::detail::BVHDistanceTraversalNode< BV >
const BVHModel< BV > * model1
 The first BVH model.
 
const BVHModel< BV > * model2
 The second BVH model.
 
int num_bv_tests
 statistical information
 
int num_leaf_tests
 
query_time_seconds
 
- Public Attributes inherited from fcl::detail::DistanceTraversalNodeBase< BV::S >
DistanceRequest< BV::S > request
 request setting for distance
 
DistanceResult< BV::S > * result
 distance result kept during the traversal iteration
 
bool enable_statistics
 Whether stores statistics.
 
- Public Attributes inherited from fcl::detail::TraversalNodeBase< BV::S >
Transform3< BV::S > tf1
 configuation of first object
 
Transform3< BV::S > tf2
 configuration of second object
 

Friends

template<typename , typename >
struct CanStopImpl
 

Detailed Description

template<typename BV>
class fcl::detail::MeshConservativeAdvancementTraversalNode< BV >

continuous collision node using conservative advancement. when using this default version, must refit the BVH in current configuration (R_t, T_t) into default configuration


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