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>
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 | |
S | BVTesting (int b1, int b2) const |
BV culling test in one BVTT node. More... | |
bool | canStop (S c) const |
Whether the traversal process can stop early. More... | |
void | leafTesting (int b1, int b2) const |
Conservative advancement testing between leaves (two triangles) More... | |
MeshConservativeAdvancementTraversalNode (S w_=1) | |
Public Member Functions inherited from fcl::detail::MeshDistanceTraversalNode< BV > | |
bool | canStop (S c) const |
Whether the traversal process can stop early. More... | |
void | leafTesting (int b1, int b2) const |
Distance testing between leaves (two triangles) More... | |
MeshDistanceTraversalNode () | |
Public Member Functions inherited from fcl::detail::BVHDistanceTraversalNode< BV > | |
BVHDistanceTraversalNode () | |
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::DistanceTraversalNodeBase< BV::S > | |
virtual bool | canStop (BV::S c) const |
Check whether the traversal can stop. More... | |
DistanceTraversalNodeBase () | |
void | enableStatistics (bool enable) |
Whether store some statistics information during traversal. More... | |
virtual | ~DistanceTraversalNodeBase () |
Public Member Functions inherited from fcl::detail::TraversalNodeBase< BV::S > | |
virtual void | postprocess () |
virtual void | preprocess () |
virtual | ~TraversalNodeBase () |
Public Attributes | |
Vector3< S > | closest_p1 |
Vector3< S > | closest_p2 |
S | delta_t |
The delta_t each step. More... | |
int | last_tri_id1 |
int | last_tri_id2 |
S | min_distance |
const MotionBase< S > * | motion1 |
Motions for the two objects in query. More... | |
const MotionBase< S > * | motion2 |
std::vector< ConservativeAdvancementStackData< S > > | stack |
S | t_err |
S | toc |
The time from beginning point. More... | |
S | w |
CA controlling variable: early stop for the early iterations of CA. More... | |
Public Attributes inherited from fcl::detail::MeshDistanceTraversalNode< BV > | |
S | abs_err |
S | rel_err |
relative and absolute error, default value is 0.01 for both terms More... | |
Triangle * | tri_indices1 |
Triangle * | tri_indices2 |
Vector3< S > * | vertices1 |
Vector3< S > * | vertices2 |
Public Attributes inherited from fcl::detail::BVHDistanceTraversalNode< BV > | |
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::DistanceTraversalNodeBase< BV::S > | |
bool | enable_statistics |
Whether stores statistics. More... | |
DistanceRequest< BV::S > | request |
request setting for distance More... | |
DistanceResult< BV::S > * | result |
distance 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... | |
Friends | |
template<typename , typename > | |
struct | CanStopImpl |
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
Definition at line 53 of file mesh_conservative_advancement_traversal_node.h.
using fcl::detail::MeshConservativeAdvancementTraversalNode< BV >::S = typename BV::S |
Definition at line 58 of file mesh_conservative_advancement_traversal_node.h.
fcl::detail::MeshConservativeAdvancementTraversalNode< BV >::MeshConservativeAdvancementTraversalNode | ( | S | w_ = 1 | ) |
Definition at line 83 of file mesh_conservative_advancement_traversal_node-inl.h.
|
virtual |
BV culling test in one BVTT node.
Reimplemented from fcl::detail::BVHDistanceTraversalNode< BV >.
Definition at line 99 of file mesh_conservative_advancement_traversal_node-inl.h.
bool fcl::detail::MeshConservativeAdvancementTraversalNode< BV >::canStop | ( | S | c | ) | const |
Whether the traversal process can stop early.
Definition at line 234 of file mesh_conservative_advancement_traversal_node-inl.h.
|
virtual |
Conservative advancement testing between leaves (two triangles)
Reimplemented from fcl::detail::DistanceTraversalNodeBase< BV::S >.
Definition at line 112 of file mesh_conservative_advancement_traversal_node-inl.h.
Definition at line 94 of file mesh_conservative_advancement_traversal_node.h.
|
mutable |
Definition at line 73 of file mesh_conservative_advancement_traversal_node.h.
Vector3<S> fcl::detail::MeshConservativeAdvancementTraversalNode< BV >::closest_p2 |
Definition at line 73 of file mesh_conservative_advancement_traversal_node.h.
|
mutable |
The delta_t each step.
Definition at line 85 of file mesh_conservative_advancement_traversal_node.h.
|
mutable |
Definition at line 75 of file mesh_conservative_advancement_traversal_node.h.
int fcl::detail::MeshConservativeAdvancementTraversalNode< BV >::last_tri_id2 |
Definition at line 75 of file mesh_conservative_advancement_traversal_node.h.
|
mutable |
Definition at line 71 of file mesh_conservative_advancement_traversal_node.h.
const MotionBase<S>* fcl::detail::MeshConservativeAdvancementTraversalNode< BV >::motion1 |
Motions for the two objects in query.
Definition at line 88 of file mesh_conservative_advancement_traversal_node.h.
const MotionBase<S>* fcl::detail::MeshConservativeAdvancementTraversalNode< BV >::motion2 |
Definition at line 89 of file mesh_conservative_advancement_traversal_node.h.
|
mutable |
Definition at line 91 of file mesh_conservative_advancement_traversal_node.h.
S fcl::detail::MeshConservativeAdvancementTraversalNode< BV >::t_err |
Definition at line 82 of file mesh_conservative_advancement_traversal_node.h.
S fcl::detail::MeshConservativeAdvancementTraversalNode< BV >::toc |
The time from beginning point.
Definition at line 81 of file mesh_conservative_advancement_traversal_node.h.
S fcl::detail::MeshConservativeAdvancementTraversalNode< BV >::w |
CA controlling variable: early stop for the early iterations of CA.
Definition at line 78 of file mesh_conservative_advancement_traversal_node.h.