hpp-fcl 2.3.6
HPP fork of FCL -- The Flexible Collision Library
Loading...
Searching...
No Matches
traits_traversal.h
Go to the documentation of this file.
1/*
2 * Software License Agreement (BSD License)
3 *
4 * Copyright (c) 2019, CNRS-LAAS
5 * All rights reserved.
6 */
7
12#include <../src/collision_node.h>
15
16namespace hpp {
17namespace fcl {
18
19// TraversalTraitsCollision for collision_func_matrix.cpp
20
21template <typename TypeA, typename TypeB>
23
24#ifdef HPP_FCL_HAS_OCTOMAP
25
26template <typename T_SH>
28 typedef ShapeOcTreeCollisionTraversalNode<T_SH> CollisionTraversal_t;
29};
30
31template <typename T_SH>
32struct HPP_FCL_LOCAL TraversalTraitsCollision<OcTree, T_SH> {
33 typedef OcTreeShapeCollisionTraversalNode<T_SH> CollisionTraversal_t;
34};
35
36template <>
37struct HPP_FCL_LOCAL TraversalTraitsCollision<OcTree, OcTree> {
38 typedef OcTreeCollisionTraversalNode CollisionTraversal_t;
39};
40
41template <typename T_BVH>
42struct HPP_FCL_LOCAL TraversalTraitsCollision<OcTree, BVHModel<T_BVH> > {
43 typedef OcTreeMeshCollisionTraversalNode<T_BVH> CollisionTraversal_t;
44};
45
46template <typename T_BVH>
47struct HPP_FCL_LOCAL TraversalTraitsCollision<BVHModel<T_BVH>, OcTree> {
48 typedef MeshOcTreeCollisionTraversalNode<T_BVH> CollisionTraversal_t;
49};
50
51#endif
52
53// TraversalTraitsDistance for distance_func_matrix.cpp
54
55template <typename TypeA, typename TypeB>
57
58#ifdef HPP_FCL_HAS_OCTOMAP
59
60template <typename T_SH>
62 typedef ShapeOcTreeDistanceTraversalNode<T_SH> CollisionTraversal_t;
63};
64
65template <typename T_SH>
66struct HPP_FCL_LOCAL TraversalTraitsDistance<OcTree, T_SH> {
67 typedef OcTreeShapeDistanceTraversalNode<T_SH> CollisionTraversal_t;
68};
69
70template <>
71struct HPP_FCL_LOCAL TraversalTraitsDistance<OcTree, OcTree> {
72 typedef OcTreeDistanceTraversalNode CollisionTraversal_t;
73};
74
75template <typename T_BVH>
76struct HPP_FCL_LOCAL TraversalTraitsDistance<OcTree, BVHModel<T_BVH> > {
77 typedef OcTreeMeshDistanceTraversalNode<T_BVH> CollisionTraversal_t;
78};
79
80template <typename T_BVH>
81struct HPP_FCL_LOCAL TraversalTraitsDistance<BVHModel<T_BVH>, OcTree> {
82 typedef MeshOcTreeDistanceTraversalNode<T_BVH> CollisionTraversal_t;
83};
84
85#endif
86
87} // namespace fcl
88
89} // namespace hpp
Octree is one type of collision geometry which can encode uncertainty information in the sensor data.
Definition: octree.h:53
#define HPP_FCL_LOCAL
Definition: config.hh:66
Main namespace.
Definition: broadphase_bruteforce.h:44
Definition: traits_traversal.h:22
Definition: traits_traversal.h:56