1 |
|
|
#ifndef DOXYGEN_AUTODOC_HPP_FCL_NARROWPHASE_GJK_H |
2 |
|
|
#define DOXYGEN_AUTODOC_HPP_FCL_NARROWPHASE_GJK_H |
3 |
|
|
|
4 |
|
|
#include "/root/robotpkg/path/py-hpp-fcl/work/hpp-fcl-2.4.1/doc/python/doxygen.hh" |
5 |
|
|
|
6 |
|
|
#include <hpp/fcl/narrowphase/gjk.h> |
7 |
|
|
|
8 |
|
|
namespace doxygen { |
9 |
|
|
|
10 |
|
|
template <> |
11 |
|
|
struct class_doc_impl< hpp::fcl::details::EPA > |
12 |
|
|
{ |
13 |
|
|
static inline const char* run () |
14 |
|
|
{ |
15 |
|
|
return "class for hpp::fcl::details::EPA algorithm "; |
16 |
|
|
} |
17 |
|
|
static inline const char* attribute (const char* attrib) |
18 |
|
|
{ |
19 |
|
|
(void)attrib; // turn off unused parameter warning. |
20 |
|
|
return ""; |
21 |
|
|
} |
22 |
|
|
}; |
23 |
|
|
|
24 |
|
|
template <> |
25 |
|
|
struct constructor_4_impl< hpp::fcl::details::EPA, unsigned int, unsigned int, unsigned int, hpp::fcl::FCL_REAL > |
26 |
|
|
{ |
27 |
|
|
static inline const char* doc () |
28 |
|
|
{ |
29 |
|
|
return ""; |
30 |
|
|
} |
31 |
|
|
static inline boost::python::detail::keywords<4+1> args () |
32 |
|
|
{ |
33 |
|
|
return (boost::python::arg("self"), boost::python::arg("max_face_num_"), boost::python::arg("max_vertex_num_"), boost::python::arg("max_iterations_"), boost::python::arg("tolerance_")); |
34 |
|
|
} |
35 |
|
|
}; |
36 |
|
|
|
37 |
|
|
template <> |
38 |
|
|
struct destructor_doc_impl < hpp::fcl::details::EPA > |
39 |
|
|
{ |
40 |
|
|
static inline const char* run () |
41 |
|
|
{ |
42 |
|
|
return ""; |
43 |
|
|
} |
44 |
|
|
}; |
45 |
|
|
|
46 |
|
|
inline const char* member_func_doc (void (hpp::fcl::details::EPA::*function_ptr) ()) |
47 |
|
|
{ |
48 |
|
|
if (function_ptr == static_cast<void (hpp::fcl::details::EPA::*) ()>(&hpp::fcl::details::EPA::initialize)) |
49 |
|
|
return ""; |
50 |
|
|
return ""; |
51 |
|
|
} |
52 |
|
|
|
53 |
|
|
inline boost::python::detail::keywords<1> member_func_args (void (hpp::fcl::details::EPA::*function_ptr) ()) |
54 |
|
|
{ |
55 |
|
|
if (function_ptr == static_cast<void (hpp::fcl::details::EPA::*) ()>(&hpp::fcl::details::EPA::initialize)) |
56 |
|
|
return (boost::python::arg("self")); |
57 |
|
|
return (boost::python::arg("self")); |
58 |
|
|
} |
59 |
|
|
|
60 |
|
|
inline const char* member_func_doc ( hpp::fcl::details::EPA::Status (hpp::fcl::details::EPA::*function_ptr) ( hpp::fcl::details::GJK &, const hpp::fcl::Vec3f &)) |
61 |
|
|
{ |
62 |
|
|
if (function_ptr == static_cast< hpp::fcl::details::EPA::Status (hpp::fcl::details::EPA::*) ( hpp::fcl::details::GJK &, const hpp::fcl::Vec3f &)>(&hpp::fcl::details::EPA::evaluate)) |
63 |
|
|
return "Return: a Status which can be demangled using (status & Valid) or (status & Failed). The other values provide a more detailled status "; |
64 |
|
|
return ""; |
65 |
|
|
} |
66 |
|
|
|
67 |
|
|
inline boost::python::detail::keywords<3> member_func_args ( hpp::fcl::details::EPA::Status (hpp::fcl::details::EPA::*function_ptr) ( hpp::fcl::details::GJK &, const hpp::fcl::Vec3f &)) |
68 |
|
|
{ |
69 |
|
|
if (function_ptr == static_cast< hpp::fcl::details::EPA::Status (hpp::fcl::details::EPA::*) ( hpp::fcl::details::GJK &, const hpp::fcl::Vec3f &)>(&hpp::fcl::details::EPA::evaluate)) |
70 |
|
|
return (boost::python::arg("self"), boost::python::arg("gjk"), boost::python::arg("guess")); |
71 |
|
|
return (boost::python::arg("self"), boost::python::arg("arg0"), boost::python::arg("arg1")); |
72 |
|
|
} |
73 |
|
|
|
74 |
|
|
inline const char* member_func_doc (bool (hpp::fcl::details::EPA::*function_ptr) (const hpp::fcl::details::MinkowskiDiff &, hpp::fcl::Vec3f &, hpp::fcl::Vec3f &)) |
75 |
|
|
{ |
76 |
|
|
if (function_ptr == static_cast<bool (hpp::fcl::details::EPA::*) (const hpp::fcl::details::MinkowskiDiff &, hpp::fcl::Vec3f &, hpp::fcl::Vec3f &)>(&hpp::fcl::details::EPA::getClosestPoints)) |
77 |
|
|
return "Get the closest points on each object. Return: true on success "; |
78 |
|
|
return ""; |
79 |
|
|
} |
80 |
|
|
|
81 |
|
|
inline boost::python::detail::keywords<4> member_func_args (bool (hpp::fcl::details::EPA::*function_ptr) (const hpp::fcl::details::MinkowskiDiff &, hpp::fcl::Vec3f &, hpp::fcl::Vec3f &)) |
82 |
|
|
{ |
83 |
|
|
if (function_ptr == static_cast<bool (hpp::fcl::details::EPA::*) (const hpp::fcl::details::MinkowskiDiff &, hpp::fcl::Vec3f &, hpp::fcl::Vec3f &)>(&hpp::fcl::details::EPA::getClosestPoints)) |
84 |
|
|
return (boost::python::arg("self"), boost::python::arg("shape"), boost::python::arg("w0"), boost::python::arg("w1")); |
85 |
|
|
return (boost::python::arg("self"), boost::python::arg("arg0"), boost::python::arg("arg1"), boost::python::arg("arg2")); |
86 |
|
|
} |
87 |
|
|
} // namespace doxygen |
88 |
|
|
#include <hpp/fcl/narrowphase/gjk.h> |
89 |
|
|
|
90 |
|
|
namespace doxygen { |
91 |
|
|
|
92 |
|
|
template <> |
93 |
|
|
struct class_doc_impl< hpp::fcl::details::GJK > |
94 |
|
|
{ |
95 |
|
5 |
static inline const char* run () |
96 |
|
|
{ |
97 |
|
|
return "class for hpp::fcl::details::GJK algorithm \n" |
98 |
|
|
"\n" |
99 |
|
5 |
"Note: The computations are performed in the frame of the first shape. "; |
100 |
|
|
} |
101 |
|
30 |
static inline const char* attribute (const char* attrib) |
102 |
|
|
{ |
103 |
✓✓ |
30 |
if (strcmp(attrib, "distance") == 0) |
104 |
|
|
return "The distance computed by hpp::fcl::details::GJK. The possible values are\n" |
105 |
|
|
"- $ d = - R - 1 $ when a collision is detected and hpp::fcl::details::GJK cannot compute penetration informations.\n" |
106 |
|
|
"- $ - R \le d \le 0 $ when a collision is detected and hpp::fcl::details::GJK can compute penetration informations.\n" |
107 |
|
|
"- $ 0 < d \le d_{ub} $ when there is no collision and hpp::fcl::details::GJK can compute the closest points.\n" |
108 |
|
|
"- $ d_{ub} < d $ when there is no collision and hpp::fcl::details::GJK cannot compute the closest points.\n" |
109 |
|
|
"\n" |
110 |
|
|
"\n" |
111 |
|
5 |
"where $ d $ is the GJK::distance, $ R $ is the sum of the shape MinkowskiDiff::inflation and $ d_{ub} $ is the GJK::distance_upper_bound. "; |
112 |
|
|
(void)attrib; // turn off unused parameter warning. |
113 |
|
25 |
return ""; |
114 |
|
|
} |
115 |
|
|
}; |
116 |
|
|
|
117 |
|
|
template <> |
118 |
|
|
struct constructor_2_impl< hpp::fcl::details::GJK, unsigned int, hpp::fcl::FCL_REAL > |
119 |
|
|
{ |
120 |
|
5 |
static inline const char* doc () |
121 |
|
|
{ |
122 |
|
|
return "Param\n" |
123 |
|
|
" - max_iterations_ number of iteration before hpp::fcl::details::GJK returns failure. \n" |
124 |
|
|
" - tolerance_ precision of the algorithm.\n" |
125 |
|
|
"\n" |
126 |
|
|
"The tolerance argument is useful for continuous shapes and for polyhedron with some vertices closer than this threshold.\n" |
127 |
|
5 |
"Suggested values are 100 iterations and a tolerance of 1e-6. "; |
128 |
|
|
} |
129 |
|
5 |
static inline boost::python::detail::keywords<2+1> args () |
130 |
|
|
{ |
131 |
✓✗✓✗ ✓✗✓✗
|
10 |
return (boost::python::arg("self"), boost::python::arg("max_iterations_"), boost::python::arg("tolerance_")); |
132 |
|
|
} |
133 |
|
|
}; |
134 |
|
|
|
135 |
|
|
inline const char* member_func_doc (void (hpp::fcl::details::GJK::*function_ptr) ()) |
136 |
|
|
{ |
137 |
|
|
if (function_ptr == static_cast<void (hpp::fcl::details::GJK::*) ()>(&hpp::fcl::details::GJK::initialize)) |
138 |
|
|
return ""; |
139 |
|
|
return ""; |
140 |
|
|
} |
141 |
|
|
|
142 |
|
|
inline boost::python::detail::keywords<1> member_func_args (void (hpp::fcl::details::GJK::*function_ptr) ()) |
143 |
|
|
{ |
144 |
|
|
if (function_ptr == static_cast<void (hpp::fcl::details::GJK::*) ()>(&hpp::fcl::details::GJK::initialize)) |
145 |
|
|
return (boost::python::arg("self")); |
146 |
|
|
return (boost::python::arg("self")); |
147 |
|
|
} |
148 |
|
|
|
149 |
|
|
inline const char* member_func_doc ( hpp::fcl::details::GJK::Status (hpp::fcl::details::GJK::*function_ptr) (const hpp::fcl::details::MinkowskiDiff &, const hpp::fcl::Vec3f &, const hpp::fcl::support_func_guess_t &)) |
150 |
|
|
{ |
151 |
|
|
if (function_ptr == static_cast< hpp::fcl::details::GJK::Status (hpp::fcl::details::GJK::*) (const hpp::fcl::details::MinkowskiDiff &, const hpp::fcl::Vec3f &, const hpp::fcl::support_func_guess_t &)>(&hpp::fcl::details::GJK::evaluate)) |
152 |
|
|
return "hpp::fcl::details::GJK algorithm, given the initial value guess. "; |
153 |
|
|
return ""; |
154 |
|
|
} |
155 |
|
|
|
156 |
|
|
inline boost::python::detail::keywords<4> member_func_args ( hpp::fcl::details::GJK::Status (hpp::fcl::details::GJK::*function_ptr) (const hpp::fcl::details::MinkowskiDiff &, const hpp::fcl::Vec3f &, const hpp::fcl::support_func_guess_t &)) |
157 |
|
|
{ |
158 |
|
|
if (function_ptr == static_cast< hpp::fcl::details::GJK::Status (hpp::fcl::details::GJK::*) (const hpp::fcl::details::MinkowskiDiff &, const hpp::fcl::Vec3f &, const hpp::fcl::support_func_guess_t &)>(&hpp::fcl::details::GJK::evaluate)) |
159 |
|
|
return (boost::python::arg("self"), boost::python::arg("shape"), boost::python::arg("guess"), boost::python::arg("supportHint")); |
160 |
|
|
return (boost::python::arg("self"), boost::python::arg("arg0"), boost::python::arg("arg1"), boost::python::arg("arg2")); |
161 |
|
|
} |
162 |
|
|
|
163 |
|
|
inline const char* member_func_doc (void (hpp::fcl::details::GJK::*function_ptr) (const hpp::fcl::Vec3f &, bool, hpp::fcl::details::GJK::SimplexV &, hpp::fcl::support_func_guess_t &) const) |
164 |
|
|
{ |
165 |
|
|
if (function_ptr == static_cast<void (hpp::fcl::details::GJK::*) (const hpp::fcl::Vec3f &, bool, hpp::fcl::details::GJK::SimplexV &, hpp::fcl::support_func_guess_t &) const>(&hpp::fcl::details::GJK::getSupport)) |
166 |
|
|
return "apply the support function along a direction, the result is return in sv "; |
167 |
|
|
return ""; |
168 |
|
|
} |
169 |
|
|
|
170 |
|
|
inline boost::python::detail::keywords<5> member_func_args (void (hpp::fcl::details::GJK::*function_ptr) (const hpp::fcl::Vec3f &, bool, hpp::fcl::details::GJK::SimplexV &, hpp::fcl::support_func_guess_t &) const) |
171 |
|
|
{ |
172 |
|
|
if (function_ptr == static_cast<void (hpp::fcl::details::GJK::*) (const hpp::fcl::Vec3f &, bool, hpp::fcl::details::GJK::SimplexV &, hpp::fcl::support_func_guess_t &) const>(&hpp::fcl::details::GJK::getSupport)) |
173 |
|
|
return (boost::python::arg("self"), boost::python::arg("d"), boost::python::arg("dIsNormalized"), boost::python::arg("sv"), boost::python::arg("hint")); |
174 |
|
|
return (boost::python::arg("self"), boost::python::arg("arg0"), boost::python::arg("arg1"), boost::python::arg("arg2"), boost::python::arg("arg3")); |
175 |
|
|
} |
176 |
|
|
|
177 |
|
|
inline const char* member_func_doc (bool (hpp::fcl::details::GJK::*function_ptr) ()) |
178 |
|
|
{ |
179 |
|
|
if (function_ptr == static_cast<bool (hpp::fcl::details::GJK::*) ()>(&hpp::fcl::details::GJK::encloseOrigin)) |
180 |
|
|
return "whether the simplex enclose the origin "; |
181 |
|
|
if (function_ptr == static_cast<bool (hpp::fcl::details::GJK::*) ()>(&hpp::fcl::details::GJK::hasClosestPoints)) |
182 |
|
|
return "Tells whether the closest points are available. "; |
183 |
|
|
return ""; |
184 |
|
|
} |
185 |
|
|
|
186 |
|
|
inline boost::python::detail::keywords<1> member_func_args (bool (hpp::fcl::details::GJK::*function_ptr) ()) |
187 |
|
|
{ |
188 |
|
|
if (function_ptr == static_cast<bool (hpp::fcl::details::GJK::*) ()>(&hpp::fcl::details::GJK::encloseOrigin)) |
189 |
|
|
return (boost::python::arg("self")); |
190 |
|
|
if (function_ptr == static_cast<bool (hpp::fcl::details::GJK::*) ()>(&hpp::fcl::details::GJK::hasClosestPoints)) |
191 |
|
|
return (boost::python::arg("self")); |
192 |
|
|
return (boost::python::arg("self")); |
193 |
|
|
} |
194 |
|
|
|
195 |
|
|
inline const char* member_func_doc ( hpp::fcl::details::GJK::Simplex * (hpp::fcl::details::GJK::*function_ptr) () const) |
196 |
|
|
{ |
197 |
|
|
if (function_ptr == static_cast< hpp::fcl::details::GJK::Simplex * (hpp::fcl::details::GJK::*) () const>(&hpp::fcl::details::GJK::getSimplex)) |
198 |
|
|
return "get the underlying simplex using in hpp::fcl::details::GJK, can be used for cache in next iteration "; |
199 |
|
|
return ""; |
200 |
|
|
} |
201 |
|
|
|
202 |
|
|
inline boost::python::detail::keywords<1> member_func_args ( hpp::fcl::details::GJK::Simplex * (hpp::fcl::details::GJK::*function_ptr) () const) |
203 |
|
|
{ |
204 |
|
|
if (function_ptr == static_cast< hpp::fcl::details::GJK::Simplex * (hpp::fcl::details::GJK::*) () const>(&hpp::fcl::details::GJK::getSimplex)) |
205 |
|
|
return (boost::python::arg("self")); |
206 |
|
|
return (boost::python::arg("self")); |
207 |
|
|
} |
208 |
|
|
|
209 |
|
|
inline const char* member_func_doc (bool (hpp::fcl::details::GJK::*function_ptr) (const hpp::fcl::details::MinkowskiDiff &)) |
210 |
|
|
{ |
211 |
|
|
if (function_ptr == static_cast<bool (hpp::fcl::details::GJK::*) (const hpp::fcl::details::MinkowskiDiff &)>(&hpp::fcl::details::GJK::hasPenetrationInformation)) |
212 |
|
|
return "Tells whether the penetration information.\n" |
213 |
|
|
"In such case, most indepth points and penetration depth can be retrieved from hpp::fcl::details::GJK. Calling hpp::fcl::details::EPA has an undefined behaviour. "; |
214 |
|
|
return ""; |
215 |
|
|
} |
216 |
|
|
|
217 |
|
|
inline boost::python::detail::keywords<2> member_func_args (bool (hpp::fcl::details::GJK::*function_ptr) (const hpp::fcl::details::MinkowskiDiff &)) |
218 |
|
|
{ |
219 |
|
|
if (function_ptr == static_cast<bool (hpp::fcl::details::GJK::*) (const hpp::fcl::details::MinkowskiDiff &)>(&hpp::fcl::details::GJK::hasPenetrationInformation)) |
220 |
|
|
return (boost::python::arg("self"), boost::python::arg("shape")); |
221 |
|
|
return (boost::python::arg("self"), boost::python::arg("arg0")); |
222 |
|
|
} |
223 |
|
|
|
224 |
|
|
inline const char* member_func_doc (bool (hpp::fcl::details::GJK::*function_ptr) (const hpp::fcl::details::MinkowskiDiff &, hpp::fcl::Vec3f &, hpp::fcl::Vec3f &)) |
225 |
|
|
{ |
226 |
|
|
if (function_ptr == static_cast<bool (hpp::fcl::details::GJK::*) (const hpp::fcl::details::MinkowskiDiff &, hpp::fcl::Vec3f &, hpp::fcl::Vec3f &)>(&hpp::fcl::details::GJK::getClosestPoints)) |
227 |
|
|
return "Get the closest points on each object. Return: true on success "; |
228 |
|
|
return ""; |
229 |
|
|
} |
230 |
|
|
|
231 |
|
|
inline boost::python::detail::keywords<4> member_func_args (bool (hpp::fcl::details::GJK::*function_ptr) (const hpp::fcl::details::MinkowskiDiff &, hpp::fcl::Vec3f &, hpp::fcl::Vec3f &)) |
232 |
|
|
{ |
233 |
|
|
if (function_ptr == static_cast<bool (hpp::fcl::details::GJK::*) (const hpp::fcl::details::MinkowskiDiff &, hpp::fcl::Vec3f &, hpp::fcl::Vec3f &)>(&hpp::fcl::details::GJK::getClosestPoints)) |
234 |
|
|
return (boost::python::arg("self"), boost::python::arg("shape"), boost::python::arg("w0"), boost::python::arg("w1")); |
235 |
|
|
return (boost::python::arg("self"), boost::python::arg("arg0"), boost::python::arg("arg1"), boost::python::arg("arg2")); |
236 |
|
|
} |
237 |
|
|
|
238 |
|
|
inline const char* member_func_doc ( hpp::fcl::Vec3f (hpp::fcl::details::GJK::*function_ptr) () const) |
239 |
|
|
{ |
240 |
|
|
if (function_ptr == static_cast< hpp::fcl::Vec3f (hpp::fcl::details::GJK::*) () const>(&hpp::fcl::details::GJK::getGuessFromSimplex)) |
241 |
|
|
return "get the guess from current simplex "; |
242 |
|
|
return ""; |
243 |
|
|
} |
244 |
|
|
|
245 |
|
|
inline boost::python::detail::keywords<1> member_func_args ( hpp::fcl::Vec3f (hpp::fcl::details::GJK::*function_ptr) () const) |
246 |
|
|
{ |
247 |
|
|
if (function_ptr == static_cast< hpp::fcl::Vec3f (hpp::fcl::details::GJK::*) () const>(&hpp::fcl::details::GJK::getGuessFromSimplex)) |
248 |
|
|
return (boost::python::arg("self")); |
249 |
|
|
return (boost::python::arg("self")); |
250 |
|
|
} |
251 |
|
|
|
252 |
|
|
inline const char* member_func_doc (void (hpp::fcl::details::GJK::*function_ptr) (const hpp::fcl::FCL_REAL &)) |
253 |
|
|
{ |
254 |
|
|
if (function_ptr == static_cast<void (hpp::fcl::details::GJK::*) (const hpp::fcl::FCL_REAL &)>(&hpp::fcl::details::GJK::setDistanceEarlyBreak)) |
255 |
|
|
return "Distance threshold for early break. hpp::fcl::details::GJK stops when it proved the distance is more than this threshold. \n" |
256 |
|
|
"\n" |
257 |
|
|
"Note: The closest points will be erroneous in this case. If you want the closest points, set this to infinity (the default). "; |
258 |
|
|
return ""; |
259 |
|
|
} |
260 |
|
|
|
261 |
|
|
inline boost::python::detail::keywords<2> member_func_args (void (hpp::fcl::details::GJK::*function_ptr) (const hpp::fcl::FCL_REAL &)) |
262 |
|
|
{ |
263 |
|
|
if (function_ptr == static_cast<void (hpp::fcl::details::GJK::*) (const hpp::fcl::FCL_REAL &)>(&hpp::fcl::details::GJK::setDistanceEarlyBreak)) |
264 |
|
|
return (boost::python::arg("self"), boost::python::arg("dup")); |
265 |
|
|
return (boost::python::arg("self"), boost::python::arg("arg0")); |
266 |
|
|
} |
267 |
|
|
|
268 |
|
|
inline const char* member_func_doc (bool (hpp::fcl::details::GJK::*function_ptr) (const hpp::fcl::Vec3f &, const hpp::fcl::FCL_REAL &, hpp::fcl::FCL_REAL &, const hpp::fcl::FCL_REAL &)) |
269 |
|
|
{ |
270 |
|
|
if (function_ptr == static_cast<bool (hpp::fcl::details::GJK::*) (const hpp::fcl::Vec3f &, const hpp::fcl::FCL_REAL &, hpp::fcl::FCL_REAL &, const hpp::fcl::FCL_REAL &)>(&hpp::fcl::details::GJK::checkConvergence)) |
271 |
|
|
return "Convergence check used to stop hpp::fcl::details::GJK when shapes are not in collision. "; |
272 |
|
|
return ""; |
273 |
|
|
} |
274 |
|
|
|
275 |
|
|
inline boost::python::detail::keywords<5> member_func_args (bool (hpp::fcl::details::GJK::*function_ptr) (const hpp::fcl::Vec3f &, const hpp::fcl::FCL_REAL &, hpp::fcl::FCL_REAL &, const hpp::fcl::FCL_REAL &)) |
276 |
|
|
{ |
277 |
|
|
if (function_ptr == static_cast<bool (hpp::fcl::details::GJK::*) (const hpp::fcl::Vec3f &, const hpp::fcl::FCL_REAL &, hpp::fcl::FCL_REAL &, const hpp::fcl::FCL_REAL &)>(&hpp::fcl::details::GJK::checkConvergence)) |
278 |
|
|
return (boost::python::arg("self"), boost::python::arg("w"), boost::python::arg("rl"), boost::python::arg("alpha"), boost::python::arg("omega")); |
279 |
|
|
return (boost::python::arg("self"), boost::python::arg("arg0"), boost::python::arg("arg1"), boost::python::arg("arg2"), boost::python::arg("arg3")); |
280 |
|
|
} |
281 |
|
|
|
282 |
|
|
inline const char* member_func_doc (size_t (hpp::fcl::details::GJK::*function_ptr) ()) |
283 |
|
|
{ |
284 |
|
|
if (function_ptr == static_cast<size_t (hpp::fcl::details::GJK::*) ()>(&hpp::fcl::details::GJK::getIterations)) |
285 |
|
|
return "Get hpp::fcl::details::GJK number of iterations. "; |
286 |
|
|
return ""; |
287 |
|
|
} |
288 |
|
|
|
289 |
|
|
inline boost::python::detail::keywords<1> member_func_args (size_t (hpp::fcl::details::GJK::*function_ptr) ()) |
290 |
|
|
{ |
291 |
|
|
if (function_ptr == static_cast<size_t (hpp::fcl::details::GJK::*) ()>(&hpp::fcl::details::GJK::getIterations)) |
292 |
|
|
return (boost::python::arg("self")); |
293 |
|
|
return (boost::python::arg("self")); |
294 |
|
|
} |
295 |
|
|
|
296 |
|
|
inline const char* member_func_doc ( hpp::fcl::FCL_REAL (hpp::fcl::details::GJK::*function_ptr) ()) |
297 |
|
|
{ |
298 |
|
|
if (function_ptr == static_cast< hpp::fcl::FCL_REAL (hpp::fcl::details::GJK::*) ()>(&hpp::fcl::details::GJK::getTolerance)) |
299 |
|
|
return "Get hpp::fcl::details::GJK tolerance. "; |
300 |
|
|
return ""; |
301 |
|
|
} |
302 |
|
|
|
303 |
|
|
inline boost::python::detail::keywords<1> member_func_args ( hpp::fcl::FCL_REAL (hpp::fcl::details::GJK::*function_ptr) ()) |
304 |
|
|
{ |
305 |
|
|
if (function_ptr == static_cast< hpp::fcl::FCL_REAL (hpp::fcl::details::GJK::*) ()>(&hpp::fcl::details::GJK::getTolerance)) |
306 |
|
|
return (boost::python::arg("self")); |
307 |
|
|
return (boost::python::arg("self")); |
308 |
|
|
} |
309 |
|
|
} // namespace doxygen |
310 |
|
|
#include <hpp/fcl/narrowphase/gjk.h> |
311 |
|
|
|
312 |
|
|
namespace doxygen { |
313 |
|
|
|
314 |
|
|
template <> |
315 |
|
|
struct class_doc_impl< hpp::fcl::details::MinkowskiDiff > |
316 |
|
|
{ |
317 |
|
5 |
static inline const char* run () |
318 |
|
|
{ |
319 |
|
|
return "Minkowski difference class of two shapes. \n" |
320 |
|
|
"\n" |
321 |
|
5 |
"Note: The Minkowski difference is expressed in the frame of the first shape. "; |
322 |
|
|
} |
323 |
|
10 |
static inline const char* attribute (const char* attrib) |
324 |
|
|
{ |
325 |
✗✓ |
10 |
if (strcmp(attrib, "shapes") == 0) |
326 |
|
|
return "points to two shapes "; |
327 |
✗✓ |
10 |
if (strcmp(attrib, "data") == 0) |
328 |
|
|
return "Store temporary data for the computation of the support point for each shape. "; |
329 |
✗✓ |
10 |
if (strcmp(attrib, "oR1") == 0) |
330 |
|
|
return "rotation from shape1 to shape0 such that $ p_in_0 = oR1 * p_in_1 + ot1 $. "; |
331 |
✗✓ |
10 |
if (strcmp(attrib, "ot1") == 0) |
332 |
|
|
return "translation from shape1 to shape0 such that $ p_in_0 = oR1 * p_in_1 + ot1 $. "; |
333 |
✓✓ |
10 |
if (strcmp(attrib, "inflation") == 0) |
334 |
|
5 |
return "The radius of the sphere swepted volume. The 2 values correspond to the inflation of shape 0 and shape 1/ These inflation values are used for hpp::fcl::Sphere and hpp::fcl::Capsule. "; |
335 |
✗✓ |
5 |
if (strcmp(attrib, "linear_log_convex_threshold") == 0) |
336 |
|
|
return "Number of points in a hpp::fcl::Convex object from which using a logarithmic support function is faster than a linear one. It defaults to 32. \n" |
337 |
|
|
"\n" |
338 |
|
|
"Note: It must set before the call to set. "; |
339 |
✓✗ |
5 |
if (strcmp(attrib, "normalize_support_direction") == 0) |
340 |
|
5 |
return "Wether or not to use the normalize heuristic in the hpp::fcl::details::GJK Nesterov acceleration. This setting is only applied if the Nesterov acceleration in the hpp::fcl::details::GJK class is active. "; |
341 |
|
|
(void)attrib; // turn off unused parameter warning. |
342 |
|
|
return ""; |
343 |
|
|
} |
344 |
|
|
}; |
345 |
|
|
|
346 |
|
|
template <> |
347 |
|
|
struct constructor_0_impl< hpp::fcl::details::MinkowskiDiff > |
348 |
|
|
{ |
349 |
|
5 |
static inline const char* doc () |
350 |
|
|
{ |
351 |
|
5 |
return ""; |
352 |
|
|
} |
353 |
|
5 |
static inline boost::python::detail::keywords<0+1> args () |
354 |
|
|
{ |
355 |
|
5 |
return (boost::python::arg("self")); |
356 |
|
|
} |
357 |
|
|
}; |
358 |
|
|
|
359 |
|
5 |
inline const char* member_func_doc (void (hpp::fcl::details::MinkowskiDiff::*function_ptr) (const hpp::fcl::ShapeBase *, const hpp::fcl::ShapeBase *)) |
360 |
|
|
{ |
361 |
✓✗✗✓ ✗✗ |
5 |
if (function_ptr == static_cast<void (hpp::fcl::details::MinkowskiDiff::*) (const hpp::fcl::ShapeBase *, const hpp::fcl::ShapeBase *)>(&hpp::fcl::details::MinkowskiDiff::set)) |
362 |
|
5 |
return "Set the two shapes, assuming the relative transformation between them is identity. "; |
363 |
|
|
return ""; |
364 |
|
|
} |
365 |
|
|
|
366 |
|
|
inline boost::python::detail::keywords<3> member_func_args (void (hpp::fcl::details::MinkowskiDiff::*function_ptr) (const hpp::fcl::ShapeBase *, const hpp::fcl::ShapeBase *)) |
367 |
|
|
{ |
368 |
|
|
if (function_ptr == static_cast<void (hpp::fcl::details::MinkowskiDiff::*) (const hpp::fcl::ShapeBase *, const hpp::fcl::ShapeBase *)>(&hpp::fcl::details::MinkowskiDiff::set)) |
369 |
|
|
return (boost::python::arg("self"), boost::python::arg("shape0"), boost::python::arg("shape1")); |
370 |
|
|
return (boost::python::arg("self"), boost::python::arg("arg0"), boost::python::arg("arg1")); |
371 |
|
|
} |
372 |
|
|
|
373 |
|
5 |
inline const char* member_func_doc (void (hpp::fcl::details::MinkowskiDiff::*function_ptr) (const hpp::fcl::ShapeBase *, const hpp::fcl::ShapeBase *, const hpp::fcl::Transform3f &, const hpp::fcl::Transform3f &)) |
374 |
|
|
{ |
375 |
✓✗✗✓ ✗✗ |
5 |
if (function_ptr == static_cast<void (hpp::fcl::details::MinkowskiDiff::*) (const hpp::fcl::ShapeBase *, const hpp::fcl::ShapeBase *, const hpp::fcl::Transform3f &, const hpp::fcl::Transform3f &)>(&hpp::fcl::details::MinkowskiDiff::set)) |
376 |
|
5 |
return "Set the two shapes, with a relative transformation. "; |
377 |
|
|
return ""; |
378 |
|
|
} |
379 |
|
|
|
380 |
|
|
inline boost::python::detail::keywords<5> member_func_args (void (hpp::fcl::details::MinkowskiDiff::*function_ptr) (const hpp::fcl::ShapeBase *, const hpp::fcl::ShapeBase *, const hpp::fcl::Transform3f &, const hpp::fcl::Transform3f &)) |
381 |
|
|
{ |
382 |
|
|
if (function_ptr == static_cast<void (hpp::fcl::details::MinkowskiDiff::*) (const hpp::fcl::ShapeBase *, const hpp::fcl::ShapeBase *, const hpp::fcl::Transform3f &, const hpp::fcl::Transform3f &)>(&hpp::fcl::details::MinkowskiDiff::set)) |
383 |
|
|
return (boost::python::arg("self"), boost::python::arg("shape0"), boost::python::arg("shape1"), boost::python::arg("tf0"), boost::python::arg("tf1")); |
384 |
|
|
return (boost::python::arg("self"), boost::python::arg("arg0"), boost::python::arg("arg1"), boost::python::arg("arg2"), boost::python::arg("arg3")); |
385 |
|
|
} |
386 |
|
|
|
387 |
|
|
inline const char* member_func_doc ( hpp::fcl::Vec3f (hpp::fcl::details::MinkowskiDiff::*function_ptr) (const hpp::fcl::Vec3f &, bool, int &) const) |
388 |
|
|
{ |
389 |
|
|
if (function_ptr == static_cast< hpp::fcl::Vec3f (hpp::fcl::details::MinkowskiDiff::*) (const hpp::fcl::Vec3f &, bool, int &) const>(&hpp::fcl::details::MinkowskiDiff::support0)) |
390 |
|
|
return "support function for shape0 "; |
391 |
|
|
if (function_ptr == static_cast< hpp::fcl::Vec3f (hpp::fcl::details::MinkowskiDiff::*) (const hpp::fcl::Vec3f &, bool, int &) const>(&hpp::fcl::details::MinkowskiDiff::support1)) |
392 |
|
|
return "support function for shape1 "; |
393 |
|
|
return ""; |
394 |
|
|
} |
395 |
|
|
|
396 |
|
|
inline boost::python::detail::keywords<4> member_func_args ( hpp::fcl::Vec3f (hpp::fcl::details::MinkowskiDiff::*function_ptr) (const hpp::fcl::Vec3f &, bool, int &) const) |
397 |
|
|
{ |
398 |
|
|
if (function_ptr == static_cast< hpp::fcl::Vec3f (hpp::fcl::details::MinkowskiDiff::*) (const hpp::fcl::Vec3f &, bool, int &) const>(&hpp::fcl::details::MinkowskiDiff::support0)) |
399 |
|
|
return (boost::python::arg("self"), boost::python::arg("d"), boost::python::arg("dIsNormalized"), boost::python::arg("hint")); |
400 |
|
|
if (function_ptr == static_cast< hpp::fcl::Vec3f (hpp::fcl::details::MinkowskiDiff::*) (const hpp::fcl::Vec3f &, bool, int &) const>(&hpp::fcl::details::MinkowskiDiff::support1)) |
401 |
|
|
return (boost::python::arg("self"), boost::python::arg("d"), boost::python::arg("dIsNormalized"), boost::python::arg("hint")); |
402 |
|
|
return (boost::python::arg("self"), boost::python::arg("arg0"), boost::python::arg("arg1"), boost::python::arg("arg2")); |
403 |
|
|
} |
404 |
|
|
|
405 |
|
|
inline const char* member_func_doc (void (hpp::fcl::details::MinkowskiDiff::*function_ptr) (const hpp::fcl::Vec3f &, bool, hpp::fcl::Vec3f &, hpp::fcl::Vec3f &, hpp::fcl::support_func_guess_t &) const) |
406 |
|
|
{ |
407 |
|
|
if (function_ptr == static_cast<void (hpp::fcl::details::MinkowskiDiff::*) (const hpp::fcl::Vec3f &, bool, hpp::fcl::Vec3f &, hpp::fcl::Vec3f &, hpp::fcl::support_func_guess_t &) const>(&hpp::fcl::details::MinkowskiDiff::support)) |
408 |
|
|
return "support function for the pair of shapes "; |
409 |
|
|
return ""; |
410 |
|
|
} |
411 |
|
|
|
412 |
|
|
inline boost::python::detail::keywords<6> member_func_args (void (hpp::fcl::details::MinkowskiDiff::*function_ptr) (const hpp::fcl::Vec3f &, bool, hpp::fcl::Vec3f &, hpp::fcl::Vec3f &, hpp::fcl::support_func_guess_t &) const) |
413 |
|
|
{ |
414 |
|
|
if (function_ptr == static_cast<void (hpp::fcl::details::MinkowskiDiff::*) (const hpp::fcl::Vec3f &, bool, hpp::fcl::Vec3f &, hpp::fcl::Vec3f &, hpp::fcl::support_func_guess_t &) const>(&hpp::fcl::details::MinkowskiDiff::support)) |
415 |
|
|
return (boost::python::arg("self"), boost::python::arg("d"), boost::python::arg("dIsNormalized"), boost::python::arg("supp0"), boost::python::arg("supp1"), boost::python::arg("hint")); |
416 |
|
|
return (boost::python::arg("self"), boost::python::arg("arg0"), boost::python::arg("arg1"), boost::python::arg("arg2"), boost::python::arg("arg3"), boost::python::arg("arg4")); |
417 |
|
|
} |
418 |
|
|
} // namespace doxygen |
419 |
|
|
#include <hpp/fcl/narrowphase/gjk.h> |
420 |
|
|
|
421 |
|
|
namespace doxygen { |
422 |
|
|
} // namespace doxygen |
423 |
|
|
#include <hpp/fcl/narrowphase/gjk.h> |
424 |
|
|
|
425 |
|
|
namespace doxygen { |
426 |
|
|
|
427 |
|
|
template <> |
428 |
|
|
struct class_doc_impl< hpp::fcl::details::GJK::Simplex > |
429 |
|
|
{ |
430 |
|
|
static inline const char* run () |
431 |
|
|
{ |
432 |
|
|
return ""; |
433 |
|
|
} |
434 |
|
|
static inline const char* attribute (const char* attrib) |
435 |
|
|
{ |
436 |
|
|
if (strcmp(attrib, "vertex") == 0) |
437 |
|
|
return "simplex vertex "; |
438 |
|
|
if (strcmp(attrib, "rank") == 0) |
439 |
|
|
return "size of simplex (number of vertices) "; |
440 |
|
|
(void)attrib; // turn off unused parameter warning. |
441 |
|
|
return ""; |
442 |
|
|
} |
443 |
|
|
}; |
444 |
|
|
|
445 |
|
|
template <> |
446 |
|
|
struct constructor_0_impl< hpp::fcl::details::GJK::Simplex > |
447 |
|
|
{ |
448 |
|
|
static inline const char* doc () |
449 |
|
|
{ |
450 |
|
|
return ""; |
451 |
|
|
} |
452 |
|
|
static inline boost::python::detail::keywords<0+1> args () |
453 |
|
|
{ |
454 |
|
|
return (boost::python::arg("self")); |
455 |
|
|
} |
456 |
|
|
}; |
457 |
|
|
} // namespace doxygen |
458 |
|
|
#include <hpp/fcl/narrowphase/gjk.h> |
459 |
|
|
|
460 |
|
|
namespace doxygen { |
461 |
|
|
|
462 |
|
|
template <> |
463 |
|
|
struct constructor_0_impl< hpp::fcl::details::EPA::SimplexF > |
464 |
|
|
{ |
465 |
|
|
static inline const char* doc () |
466 |
|
|
{ |
467 |
|
|
return ""; |
468 |
|
|
} |
469 |
|
|
static inline boost::python::detail::keywords<0+1> args () |
470 |
|
|
{ |
471 |
|
|
return (boost::python::arg("self")); |
472 |
|
|
} |
473 |
|
|
}; |
474 |
|
|
} // namespace doxygen |
475 |
|
|
#include <hpp/fcl/narrowphase/gjk.h> |
476 |
|
|
|
477 |
|
|
namespace doxygen { |
478 |
|
|
|
479 |
|
|
template <> |
480 |
|
|
struct constructor_0_impl< hpp::fcl::details::EPA::SimplexHorizon > |
481 |
|
|
{ |
482 |
|
|
static inline const char* doc () |
483 |
|
|
{ |
484 |
|
|
return ""; |
485 |
|
|
} |
486 |
|
|
static inline boost::python::detail::keywords<0+1> args () |
487 |
|
|
{ |
488 |
|
|
return (boost::python::arg("self")); |
489 |
|
|
} |
490 |
|
|
}; |
491 |
|
|
} // namespace doxygen |
492 |
|
|
#include <hpp/fcl/narrowphase/gjk.h> |
493 |
|
|
|
494 |
|
|
namespace doxygen { |
495 |
|
|
|
496 |
|
|
template <> |
497 |
|
|
struct constructor_0_impl< hpp::fcl::details::EPA::SimplexList > |
498 |
|
|
{ |
499 |
|
|
static inline const char* doc () |
500 |
|
|
{ |
501 |
|
|
return ""; |
502 |
|
|
} |
503 |
|
|
static inline boost::python::detail::keywords<0+1> args () |
504 |
|
|
{ |
505 |
|
|
return (boost::python::arg("self")); |
506 |
|
|
} |
507 |
|
|
}; |
508 |
|
|
|
509 |
|
|
inline const char* member_func_doc (void (hpp::fcl::details::EPA::SimplexList::*function_ptr) ( hpp::fcl::details::EPA::SimplexF *)) |
510 |
|
|
{ |
511 |
|
|
if (function_ptr == static_cast<void (hpp::fcl::details::EPA::SimplexList::*) ( hpp::fcl::details::EPA::SimplexF *)>(&hpp::fcl::details::EPA::SimplexList::append)) |
512 |
|
|
return ""; |
513 |
|
|
if (function_ptr == static_cast<void (hpp::fcl::details::EPA::SimplexList::*) ( hpp::fcl::details::EPA::SimplexF *)>(&hpp::fcl::details::EPA::SimplexList::remove)) |
514 |
|
|
return ""; |
515 |
|
|
return ""; |
516 |
|
|
} |
517 |
|
|
|
518 |
|
|
inline boost::python::detail::keywords<2> member_func_args (void (hpp::fcl::details::EPA::SimplexList::*function_ptr) ( hpp::fcl::details::EPA::SimplexF *)) |
519 |
|
|
{ |
520 |
|
|
if (function_ptr == static_cast<void (hpp::fcl::details::EPA::SimplexList::*) ( hpp::fcl::details::EPA::SimplexF *)>(&hpp::fcl::details::EPA::SimplexList::append)) |
521 |
|
|
return (boost::python::arg("self"), boost::python::arg("face")); |
522 |
|
|
if (function_ptr == static_cast<void (hpp::fcl::details::EPA::SimplexList::*) ( hpp::fcl::details::EPA::SimplexF *)>(&hpp::fcl::details::EPA::SimplexList::remove)) |
523 |
|
|
return (boost::python::arg("self"), boost::python::arg("face")); |
524 |
|
|
return (boost::python::arg("self"), boost::python::arg("arg0")); |
525 |
|
|
} |
526 |
|
|
} // namespace doxygen |
527 |
|
|
#include <hpp/fcl/narrowphase/gjk.h> |
528 |
|
|
|
529 |
|
|
namespace doxygen { |
530 |
|
|
|
531 |
|
|
template <> |
532 |
|
|
struct class_doc_impl< hpp::fcl::details::GJK::SimplexV > |
533 |
|
|
{ |
534 |
|
|
static inline const char* run () |
535 |
|
|
{ |
536 |
|
|
return ""; |
537 |
|
|
} |
538 |
|
|
static inline const char* attribute (const char* attrib) |
539 |
|
|
{ |
540 |
|
|
if (strcmp(attrib, "w0") == 0) |
541 |
|
|
return "support vector for shape 0 and 1. "; |
542 |
|
|
if (strcmp(attrib, "w") == 0) |
543 |
|
|
return "support vector (i.e., the furthest point on the shape along the support direction) "; |
544 |
|
|
(void)attrib; // turn off unused parameter warning. |
545 |
|
|
return ""; |
546 |
|
|
} |
547 |
|
|
}; |
548 |
|
|
} // namespace doxygen |
549 |
|
|
|
550 |
|
|
#endif // DOXYGEN_AUTODOC_HPP_FCL_NARROWPHASE_GJK_H |
551 |
|
|
|