12 #include <../src/collision_node.h>
20 template <
typename TypeA,
typename TypeB>
23 #ifdef COAL_HAS_OCTOMAP
25 template <
typename T_SH>
27 typedef ShapeOcTreeCollisionTraversalNode<T_SH> CollisionTraversal_t;
30 template <
typename T_SH>
31 struct COAL_LOCAL TraversalTraitsCollision<OcTree, T_SH> {
32 typedef OcTreeShapeCollisionTraversalNode<T_SH> CollisionTraversal_t;
36 struct COAL_LOCAL TraversalTraitsCollision<OcTree, OcTree> {
37 typedef OcTreeCollisionTraversalNode CollisionTraversal_t;
40 template <
typename T_BVH>
41 struct COAL_LOCAL TraversalTraitsCollision<OcTree, BVHModel<T_BVH> > {
42 typedef OcTreeMeshCollisionTraversalNode<T_BVH> CollisionTraversal_t;
45 template <
typename T_BVH>
46 struct COAL_LOCAL TraversalTraitsCollision<BVHModel<T_BVH>, OcTree> {
47 typedef MeshOcTreeCollisionTraversalNode<T_BVH> CollisionTraversal_t;
50 template <
typename T_HF>
51 struct COAL_LOCAL TraversalTraitsCollision<OcTree, HeightField<T_HF> > {
52 typedef OcTreeHeightFieldCollisionTraversalNode<T_HF> CollisionTraversal_t;
55 template <
typename T_HF>
56 struct COAL_LOCAL TraversalTraitsCollision<HeightField<T_HF>, OcTree> {
57 typedef HeightFieldOcTreeCollisionTraversalNode<T_HF> CollisionTraversal_t;
64 template <
typename TypeA,
typename TypeB>
67 #ifdef COAL_HAS_OCTOMAP
69 template <
typename T_SH>
71 typedef ShapeOcTreeDistanceTraversalNode<T_SH> CollisionTraversal_t;
74 template <
typename T_SH>
75 struct COAL_LOCAL TraversalTraitsDistance<OcTree, T_SH> {
76 typedef OcTreeShapeDistanceTraversalNode<T_SH> CollisionTraversal_t;
80 struct COAL_LOCAL TraversalTraitsDistance<OcTree, OcTree> {
81 typedef OcTreeDistanceTraversalNode CollisionTraversal_t;
84 template <
typename T_BVH>
85 struct COAL_LOCAL TraversalTraitsDistance<OcTree, BVHModel<T_BVH> > {
86 typedef OcTreeMeshDistanceTraversalNode<T_BVH> CollisionTraversal_t;
89 template <
typename T_BVH>
90 struct COAL_LOCAL TraversalTraitsDistance<BVHModel<T_BVH>, OcTree> {
91 typedef MeshOcTreeDistanceTraversalNode<T_BVH> CollisionTraversal_t;