hpp-fcl  3.0.0
HPP fork of FCL -- The Flexible Collision Library
geometric_shapes_traits.h
Go to the documentation of this file.
1 /*
2  * Software License Agreement (BSD License)
3  *
4  * Copyright (c) 2011-2014, Willow Garage, Inc.
5  * Copyright (c) 2014-2015, Open Source Robotics Foundation
6  * Copyright (c) 2015-2022, CNRS, Inria
7  * All rights reserved.
8  *
9  * Redistribution and use in source and binary forms, with or without
10  * modification, are permitted provided that the following conditions
11  * are met:
12  *
13  * * Redistributions of source code must retain the above copyright
14  * notice, this list of conditions and the following disclaimer.
15  * * Redistributions in binary form must reproduce the above
16  * copyright notice, this list of conditions and the following
17  * disclaimer in the documentation and/or other materials provided
18  * with the distribution.
19  * * Neither the name of Open Source Robotics Foundation nor the names of its
20  * contributors may be used to endorse or promote products derived
21  * from this software without specific prior written permission.
22  *
23  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
24  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
25  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
26  * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
27  * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
28  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
29  * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
30  * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
31  * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
32  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
33  * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
34  * POSSIBILITY OF SUCH DAMAGE.
35  */
36 
37 #ifndef HPP_FCL_GEOMETRIC_SHAPES_TRAITS_H
38 #define HPP_FCL_GEOMETRIC_SHAPES_TRAITS_H
39 
41 
42 namespace hpp {
43 namespace fcl {
44 
46  enum {
49  IsInflatable = false,
51  IsStrictlyConvex = false
52  };
53 };
54 
55 template <typename Shape>
57 
58 template <>
60  enum {
63  IsInflatable = true,
65  IsStrictlyConvex = false
66  };
67 };
68 
69 template <>
71  enum {
74  IsInflatable = true,
76  IsStrictlyConvex = false
77  };
78 };
79 
80 template <>
82  enum {
85  IsInflatable = true,
87  IsStrictlyConvex = true
88  };
89 };
90 
91 template <>
93  enum {
96  IsInflatable = true,
98  IsStrictlyConvex = true
99  };
100 };
101 
102 template <>
104  enum {
107  IsInflatable = true,
109  IsStrictlyConvex = false
110  };
111 };
112 
113 template <>
115  enum {
118  IsInflatable = true,
120  IsStrictlyConvex = false
121  };
122 };
123 
124 template <>
126  enum {
129  IsInflatable = true,
131  IsStrictlyConvex = false
132  };
133 };
134 
135 template <>
137  enum {
140  IsInflatable = true,
142  IsStrictlyConvex = false
143  };
144 };
145 
146 template <>
148  enum {
151  IsInflatable = true,
153  IsStrictlyConvex = false
154  };
155 };
156 
157 } // namespace fcl
158 } // namespace hpp
159 
160 #endif // ifndef HPP_FCL_GEOMETRIC_SHAPES_TRAITS_H
Center at zero point, axis aligned box.
Definition: geometric_shapes.h:164
Capsule It is where is the distance between the point x and the capsule segment AB,...
Definition: geometric_shapes.h:381
Cone The base of the cone is at and the top is at .
Definition: geometric_shapes.h:465
Base for convex polytope.
Definition: geometric_shapes.h:638
Cylinder along Z axis. The cylinder is defined at its centroid.
Definition: geometric_shapes.h:555
Ellipsoid centered at point zero.
Definition: geometric_shapes.h:303
Half Space: this is equivalent to the Plane in ODE. A Half space has a priviledged direction: the dir...
Definition: geometric_shapes.h:885
Center at zero point sphere.
Definition: geometric_shapes.h:238
Triangle stores the points instead of only indices of points.
Definition: geometric_shapes.h:109
Main namespace.
Definition: broadphase_bruteforce.h:44
Definition: geometric_shapes_traits.h:45
@ HasInflatedSupportFunction
Definition: geometric_shapes_traits.h:50
@ NeedNormalizedDir
Definition: geometric_shapes_traits.h:47
@ NeedNesterovNormalizeHeuristic
Definition: geometric_shapes_traits.h:48
@ IsStrictlyConvex
Definition: geometric_shapes_traits.h:51
@ IsInflatable
Definition: geometric_shapes_traits.h:49
Definition: geometric_shapes_traits.h:56