All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
traversal_node_setup.h File Reference
Include dependency graph for traversal_node_setup.h:

Namespaces

 fcl
 Main namespace.
 
 fcl::details
 FCL internals.
 

Functions

template<typename S1 , typename S2 , typename NarrowPhaseSolver >
bool fcl::initialize (ShapeCollisionTraversalNode< S1, S2, NarrowPhaseSolver > &node, const S1 &shape1, const Transform3f &tf1, const S2 &shape2, const Transform3f &tf2, const NarrowPhaseSolver *nsolver, const CollisionRequest &request, CollisionResult &result)
 Initialize traversal node for collision between two geometric shapes, given current object transform. More...
 
template<typename BV , typename S , typename NarrowPhaseSolver >
bool fcl::initialize (MeshShapeCollisionTraversalNode< BV, S, NarrowPhaseSolver > &node, BVHModel< BV > &model1, Transform3f &tf1, const S &model2, const Transform3f &tf2, const NarrowPhaseSolver *nsolver, const CollisionRequest &request, CollisionResult &result, bool use_refit=false, bool refit_bottomup=false)
 Initialize traversal node for collision between one mesh and one shape, given current object transform. More...
 
template<typename S , typename BV , typename NarrowPhaseSolver >
bool fcl::initialize (ShapeMeshCollisionTraversalNode< S, BV, NarrowPhaseSolver > &node, const S &model1, const Transform3f &tf1, BVHModel< BV > &model2, Transform3f &tf2, const NarrowPhaseSolver *nsolver, const CollisionRequest &request, CollisionResult &result, bool use_refit=false, bool refit_bottomup=false)
 Initialize traversal node for collision between one mesh and one shape, given current object transform. More...
 
template<typename S , typename NarrowPhaseSolver >
bool fcl::initialize (MeshShapeCollisionTraversalNodeOBB< S, NarrowPhaseSolver > &node, const BVHModel< OBB > &model1, const Transform3f &tf1, const S &model2, const Transform3f &tf2, const NarrowPhaseSolver *nsolver, const CollisionRequest &request, CollisionResult &result)
 Initialize the traversal node for collision between one mesh and one shape, specialized for OBB type. More...
 
template<typename S , typename NarrowPhaseSolver >
bool fcl::initialize (MeshShapeCollisionTraversalNodeRSS< S, NarrowPhaseSolver > &node, const BVHModel< RSS > &model1, const Transform3f &tf1, const S &model2, const Transform3f &tf2, const NarrowPhaseSolver *nsolver, const CollisionRequest &request, CollisionResult &result)
 Initialize the traversal node for collision between one mesh and one shape, specialized for RSS type. More...
 
template<typename S , typename NarrowPhaseSolver >
bool fcl::initialize (MeshShapeCollisionTraversalNodekIOS< S, NarrowPhaseSolver > &node, const BVHModel< kIOS > &model1, const Transform3f &tf1, const S &model2, const Transform3f &tf2, const NarrowPhaseSolver *nsolver, const CollisionRequest &request, CollisionResult &result)
 Initialize the traversal node for collision between one mesh and one shape, specialized for kIOS type. More...
 
template<typename S , typename NarrowPhaseSolver >
bool fcl::initialize (MeshShapeCollisionTraversalNodeOBBRSS< S, NarrowPhaseSolver > &node, const BVHModel< OBBRSS > &model1, const Transform3f &tf1, const S &model2, const Transform3f &tf2, const NarrowPhaseSolver *nsolver, const CollisionRequest &request, CollisionResult &result)
 Initialize the traversal node for collision between one mesh and one shape, specialized for OBBRSS type. More...
 
template<typename S , typename NarrowPhaseSolver >
bool fcl::initialize (ShapeMeshCollisionTraversalNodeOBB< S, NarrowPhaseSolver > &node, const S &model1, const Transform3f &tf1, const BVHModel< OBB > &model2, const Transform3f &tf2, const NarrowPhaseSolver *nsolver, const CollisionRequest &request, CollisionResult &result)
 Initialize the traversal node for collision between one mesh and one shape, specialized for OBB type. More...
 
template<typename S , typename NarrowPhaseSolver >
bool fcl::initialize (ShapeMeshCollisionTraversalNodeRSS< S, NarrowPhaseSolver > &node, const S &model1, const Transform3f &tf1, const BVHModel< RSS > &model2, const Transform3f &tf2, const NarrowPhaseSolver *nsolver, const CollisionRequest &request, CollisionResult &result)
 Initialize the traversal node for collision between one mesh and one shape, specialized for RSS type. More...
 
template<typename S , typename NarrowPhaseSolver >
bool fcl::initialize (ShapeMeshCollisionTraversalNodekIOS< S, NarrowPhaseSolver > &node, const S &model1, const Transform3f &tf1, const BVHModel< kIOS > &model2, const Transform3f &tf2, const NarrowPhaseSolver *nsolver, const CollisionRequest &request, CollisionResult &result)
 Initialize the traversal node for collision between one mesh and one shape, specialized for kIOS type. More...
 
template<typename S , typename NarrowPhaseSolver >
bool fcl::initialize (ShapeMeshCollisionTraversalNodeOBBRSS< S, NarrowPhaseSolver > &node, const S &model1, const Transform3f &tf1, const BVHModel< OBBRSS > &model2, const Transform3f &tf2, const NarrowPhaseSolver *nsolver, const CollisionRequest &request, CollisionResult &result)
 Initialize the traversal node for collision between one mesh and one shape, specialized for OBBRSS type. More...
 
template<typename BV >
bool fcl::initialize (MeshCollisionTraversalNode< BV > &node, BVHModel< BV > &model1, Transform3f &tf1, BVHModel< BV > &model2, Transform3f &tf2, const CollisionRequest &request, CollisionResult &result, bool use_refit=false, bool refit_bottomup=false)
 Initialize traversal node for collision between two meshes, given the current transforms. More...
 
bool fcl::initialize (MeshCollisionTraversalNodeOBB &node, const BVHModel< OBB > &model1, const Transform3f &tf1, const BVHModel< OBB > &model2, const Transform3f &tf2, const CollisionRequest &request, CollisionResult &result)
 Initialize traversal node for collision between two meshes, specialized for OBB type. More...
 
bool fcl::initialize (MeshCollisionTraversalNodeRSS &node, const BVHModel< RSS > &model1, const Transform3f &tf1, const BVHModel< RSS > &model2, const Transform3f &tf2, const CollisionRequest &request, CollisionResult &result)
 Initialize traversal node for collision between two meshes, specialized for RSS type. More...
 
bool fcl::initialize (MeshCollisionTraversalNodeOBBRSS &node, const BVHModel< OBBRSS > &model1, const Transform3f &tf1, const BVHModel< OBBRSS > &model2, const Transform3f &tf2, const CollisionRequest &request, CollisionResult &result)
 Initialize traversal node for collision between two meshes, specialized for OBBRSS type. More...
 
bool fcl::initialize (MeshCollisionTraversalNodekIOS &node, const BVHModel< kIOS > &model1, const Transform3f &tf1, const BVHModel< kIOS > &model2, const Transform3f &tf2, const CollisionRequest &request, CollisionResult &result)
 Initialize traversal node for collision between two meshes, specialized for kIOS type. More...
 
template<typename S1 , typename S2 , typename NarrowPhaseSolver >
bool fcl::initialize (ShapeDistanceTraversalNode< S1, S2, NarrowPhaseSolver > &node, const S1 &shape1, const Transform3f &tf1, const S2 &shape2, const Transform3f &tf2, const NarrowPhaseSolver *nsolver, const DistanceRequest &request, DistanceResult &result)
 Initialize traversal node for distance between two geometric shapes. More...
 
template<typename BV >
bool fcl::initialize (MeshDistanceTraversalNode< BV > &node, BVHModel< BV > &model1, Transform3f &tf1, BVHModel< BV > &model2, Transform3f &tf2, const DistanceRequest &request, DistanceResult &result, bool use_refit=false, bool refit_bottomup=false)
 Initialize traversal node for distance computation between two meshes, given the current transforms. More...
 
bool fcl::initialize (MeshDistanceTraversalNodeRSS &node, const BVHModel< RSS > &model1, const Transform3f &tf1, const BVHModel< RSS > &model2, const Transform3f &tf2, const DistanceRequest &request, DistanceResult &result)
 Initialize traversal node for distance computation between two meshes, specialized for RSS type. More...
 
bool fcl::initialize (MeshDistanceTraversalNodekIOS &node, const BVHModel< kIOS > &model1, const Transform3f &tf1, const BVHModel< kIOS > &model2, const Transform3f &tf2, const DistanceRequest &request, DistanceResult &result)
 Initialize traversal node for distance computation between two meshes, specialized for kIOS type. More...
 
bool fcl::initialize (MeshDistanceTraversalNodeOBBRSS &node, const BVHModel< OBBRSS > &model1, const Transform3f &tf1, const BVHModel< OBBRSS > &model2, const Transform3f &tf2, const DistanceRequest &request, DistanceResult &result)
 Initialize traversal node for distance computation between two meshes, specialized for OBBRSS type. More...
 
template<typename BV , typename S , typename NarrowPhaseSolver >
bool fcl::initialize (MeshShapeDistanceTraversalNode< BV, S, NarrowPhaseSolver > &node, BVHModel< BV > &model1, Transform3f &tf1, const S &model2, const Transform3f &tf2, const NarrowPhaseSolver *nsolver, const DistanceRequest &request, DistanceResult &result, bool use_refit=false, bool refit_bottomup=false)
 Initialize traversal node for distance computation between one mesh and one shape, given the current transforms. More...
 
template<typename S , typename BV , typename NarrowPhaseSolver >
bool fcl::initialize (ShapeMeshDistanceTraversalNode< S, BV, NarrowPhaseSolver > &node, const S &model1, const Transform3f &tf1, BVHModel< BV > &model2, Transform3f &tf2, const NarrowPhaseSolver *nsolver, const DistanceRequest &request, DistanceResult &result, bool use_refit=false, bool refit_bottomup=false)
 Initialize traversal node for distance computation between one shape and one mesh, given the current transforms. More...
 
template<typename S , typename NarrowPhaseSolver >
bool fcl::initialize (MeshShapeDistanceTraversalNodeRSS< S, NarrowPhaseSolver > &node, const BVHModel< RSS > &model1, const Transform3f &tf1, const S &model2, const Transform3f &tf2, const NarrowPhaseSolver *nsolver, const DistanceRequest &request, DistanceResult &result)
 Initialize traversal node for distance computation between one mesh and one shape, specialized for RSS type. More...
 
template<typename S , typename NarrowPhaseSolver >
bool fcl::initialize (MeshShapeDistanceTraversalNodekIOS< S, NarrowPhaseSolver > &node, const BVHModel< kIOS > &model1, const Transform3f &tf1, const S &model2, const Transform3f &tf2, const NarrowPhaseSolver *nsolver, const DistanceRequest &request, DistanceResult &result)
 Initialize traversal node for distance computation between one mesh and one shape, specialized for kIOS type. More...
 
template<typename S , typename NarrowPhaseSolver >
bool fcl::initialize (MeshShapeDistanceTraversalNodeOBBRSS< S, NarrowPhaseSolver > &node, const BVHModel< OBBRSS > &model1, const Transform3f &tf1, const S &model2, const Transform3f &tf2, const NarrowPhaseSolver *nsolver, const DistanceRequest &request, DistanceResult &result)
 Initialize traversal node for distance computation between one mesh and one shape, specialized for OBBRSS type. More...
 
template<typename S , typename BV , typename NarrowPhaseSolver , template< typename, typename > class OrientedNode>
static bool fcl::details::setupShapeMeshDistanceOrientedNode (OrientedNode< S, NarrowPhaseSolver > &node, const S &model1, const Transform3f &tf1, const BVHModel< BV > &model2, const Transform3f &tf2, const NarrowPhaseSolver *nsolver, const DistanceRequest &request, DistanceResult &result)
 
template<typename S , typename NarrowPhaseSolver >
bool fcl::initialize (ShapeMeshDistanceTraversalNodeRSS< S, NarrowPhaseSolver > &node, const S &model1, const Transform3f &tf1, const BVHModel< RSS > &model2, const Transform3f &tf2, const NarrowPhaseSolver *nsolver, const DistanceRequest &request, DistanceResult &result)
 Initialize traversal node for distance computation between one shape and one mesh, specialized for RSS type. More...
 
template<typename S , typename NarrowPhaseSolver >
bool fcl::initialize (ShapeMeshDistanceTraversalNodekIOS< S, NarrowPhaseSolver > &node, const S &model1, const Transform3f &tf1, const BVHModel< kIOS > &model2, const Transform3f &tf2, const NarrowPhaseSolver *nsolver, const DistanceRequest &request, DistanceResult &result)
 Initialize traversal node for distance computation between one shape and one mesh, specialized for kIOS type. More...
 
template<typename S , typename NarrowPhaseSolver >
bool fcl::initialize (ShapeMeshDistanceTraversalNodeOBBRSS< S, NarrowPhaseSolver > &node, const S &model1, const Transform3f &tf1, const BVHModel< OBBRSS > &model2, const Transform3f &tf2, const NarrowPhaseSolver *nsolver, const DistanceRequest &request, DistanceResult &result)
 Initialize traversal node for distance computation between one shape and one mesh, specialized for OBBRSS type. More...
 
template<typename BV >
bool fcl::initialize (MeshContinuousCollisionTraversalNode< BV > &node, const BVHModel< BV > &model1, const Transform3f &tf1, const BVHModel< BV > &model2, const Transform3f &tf2, const CollisionRequest &request)
 Initialize traversal node for continuous collision detection between two meshes. More...
 
template<typename BV >
bool fcl::initialize (MeshConservativeAdvancementTraversalNode< BV > &node, BVHModel< BV > &model1, const Transform3f &tf1, BVHModel< BV > &model2, const Transform3f &tf2, FCL_REAL w=1, bool use_refit=false, bool refit_bottomup=false)
 Initialize traversal node for conservative advancement computation between two meshes, given the current transforms. More...
 
bool fcl::initialize (MeshConservativeAdvancementTraversalNodeRSS &node, const BVHModel< RSS > &model1, const Transform3f &tf1, const BVHModel< RSS > &model2, const Transform3f &tf2, FCL_REAL w=1)
 Initialize traversal node for conservative advancement computation between two meshes, given the current transforms, specialized for RSS. More...
 
bool fcl::initialize (MeshConservativeAdvancementTraversalNodeOBBRSS &node, const BVHModel< OBBRSS > &model1, const Transform3f &tf1, const BVHModel< OBBRSS > &model2, const Transform3f &tf2, FCL_REAL w=1)
 
template<typename S1 , typename S2 , typename NarrowPhaseSolver >
bool fcl::initialize (ShapeConservativeAdvancementTraversalNode< S1, S2, NarrowPhaseSolver > &node, const S1 &shape1, const Transform3f &tf1, const S2 &shape2, const Transform3f &tf2, const NarrowPhaseSolver *nsolver)
 
template<typename BV , typename S , typename NarrowPhaseSolver >
bool fcl::initialize (MeshShapeConservativeAdvancementTraversalNode< BV, S, NarrowPhaseSolver > &node, BVHModel< BV > &model1, const Transform3f &tf1, const S &model2, const Transform3f &tf2, const NarrowPhaseSolver *nsolver, FCL_REAL w=1, bool use_refit=false, bool refit_bottomup=false)
 
template<typename S , typename NarrowPhaseSolver >
bool fcl::initialize (MeshShapeConservativeAdvancementTraversalNodeRSS< S, NarrowPhaseSolver > &node, const BVHModel< RSS > &model1, const Transform3f &tf1, const S &model2, const Transform3f &tf2, const NarrowPhaseSolver *nsolver, FCL_REAL w=1)
 
template<typename S , typename NarrowPhaseSolver >
bool fcl::initialize (MeshShapeConservativeAdvancementTraversalNodeOBBRSS< S, NarrowPhaseSolver > &node, const BVHModel< OBBRSS > &model1, const Transform3f &tf1, const S &model2, const Transform3f &tf2, const NarrowPhaseSolver *nsolver, FCL_REAL w=1)
 
template<typename S , typename BV , typename NarrowPhaseSolver >
bool fcl::initialize (ShapeMeshConservativeAdvancementTraversalNode< S, BV, NarrowPhaseSolver > &node, const S &model1, const Transform3f &tf1, BVHModel< BV > &model2, const Transform3f &tf2, const NarrowPhaseSolver *nsolver, FCL_REAL w=1, bool use_refit=false, bool refit_bottomup=false)
 
template<typename S , typename NarrowPhaseSolver >
bool fcl::initialize (ShapeMeshConservativeAdvancementTraversalNodeRSS< S, NarrowPhaseSolver > &node, const S &model1, const Transform3f &tf1, const BVHModel< RSS > &model2, const Transform3f &tf2, const NarrowPhaseSolver *nsolver, FCL_REAL w=1)
 
template<typename S , typename NarrowPhaseSolver >
bool fcl::initialize (ShapeMeshConservativeAdvancementTraversalNodeOBBRSS< S, NarrowPhaseSolver > &node, const S &model1, const Transform3f &tf1, const BVHModel< OBBRSS > &model2, const Transform3f &tf2, const NarrowPhaseSolver *nsolver, FCL_REAL w=1)