hpp-fcl
2.4.1
HPP fork of FCL -- The Flexible Collision Library
|
Go to the documentation of this file.
38 #ifndef HPP_FCL_GEOMETRIC_SHAPES_UTILITY_H
39 #define HPP_FCL_GEOMETRIC_SHAPES_UTILITY_H
54 const Transform3f& tf);
55 HPP_FCL_DLLAPI std::vector<Vec3f> getBoundVertices(
const Sphere& sphere,
56 const Transform3f& tf);
57 HPP_FCL_DLLAPI std::vector<Vec3f> getBoundVertices(
const Ellipsoid& ellipsoid,
58 const Transform3f& tf);
59 HPP_FCL_DLLAPI std::vector<Vec3f> getBoundVertices(
const Capsule& capsule,
60 const Transform3f& tf);
61 HPP_FCL_DLLAPI std::vector<Vec3f> getBoundVertices(
const Cone& cone,
62 const Transform3f& tf);
63 HPP_FCL_DLLAPI std::vector<Vec3f> getBoundVertices(
const Cylinder& cylinder,
64 const Transform3f& tf);
65 HPP_FCL_DLLAPI std::vector<Vec3f> getBoundVertices(
const ConvexBase& convex,
66 const Transform3f& tf);
67 HPP_FCL_DLLAPI std::vector<Vec3f> getBoundVertices(
const TriangleP& triangle,
68 const Transform3f& tf);
73 template <
typename BV,
typename S>
75 std::vector<Vec3f> convex_bound_vertices = details::getBoundVertices(s, tf);
76 fit(&convex_bound_vertices[0], (
unsigned int)convex_bound_vertices.size(),
86 const Transform3f& tf, AABB& bv);
90 const Transform3f& tf, AABB& bv);
94 const Transform3f& tf, AABB& bv);
102 const Transform3f& tf, AABB& bv);
106 const Transform3f& tf,
111 const Transform3f& tf, AABB& bv);
115 const Transform3f& tf, AABB& bv);
119 const Transform3f& tf, AABB& bv);
127 const Transform3f& tf, OBB& bv);
131 const Transform3f& tf, OBB& bv);
139 const Transform3f& tf, OBB& bv);
143 const Transform3f& tf, OBB& bv);
147 const Transform3f& tf, OBB& bv);
151 const Transform3f& tf, RSS& bv);
155 const Transform3f& tf,
160 const Transform3f& tf, kIOS& bv);
163 HPP_FCL_DLLAPI void computeBV<KDOP<16>, Halfspace>(
const Halfspace& s,
164 const Transform3f& tf,
168 HPP_FCL_DLLAPI void computeBV<KDOP<18>, Halfspace>(
const Halfspace& s,
169 const Transform3f& tf,
173 HPP_FCL_DLLAPI void computeBV<KDOP<24>, Halfspace>(
const Halfspace& s,
174 const Transform3f& tf,
187 const Transform3f& tf, OBBRSS& bv);
191 const Transform3f& tf, kIOS& bv);
195 const Transform3f& tf,
200 const Transform3f& tf,
205 const Transform3f& tf,
227 Box& box, Transform3f& tf);
230 Box& box, Transform3f& tf);
233 Box& box, Transform3f& tf);
236 Box& box, Transform3f& tf);
239 Box& box, Transform3f& tf);
242 Box& box, Transform3f& tf);
245 Box& box, Transform3f& tf);
248 Box& box, Transform3f& tf);
#define HPP_FCL_DLLAPI
Definition: config.hh:88
void computeBV< AABB, TriangleP >(const TriangleP &s, const Transform3f &tf, AABB &bv)
Halfspace transform(const Halfspace &a, const Transform3f &tf)
void computeBV< AABB, Box >(const Box &s, const Transform3f &tf, AABB &bv)
void computeBV< OBB, Sphere >(const Sphere &s, const Transform3f &tf, OBB &bv)
void computeBV< AABB, Sphere >(const Sphere &s, const Transform3f &tf, AABB &bv)
void computeBV< OBB, Halfspace >(const Halfspace &s, const Transform3f &tf, OBB &bv)
void computeBV< OBBRSS, Halfspace >(const Halfspace &s, const Transform3f &tf, OBBRSS &bv)
void computeBV< OBB, Cone >(const Cone &s, const Transform3f &tf, OBB &bv)
void computeBV(const S &s, const Transform3f &tf, BV &bv)
calculate a bounding volume for a shape in a specific configuration
Definition: geometric_shapes_utility.h:74
void computeBV< kIOS, Halfspace >(const Halfspace &s, const Transform3f &tf, kIOS &bv)
void computeBV< AABB, Cylinder >(const Cylinder &s, const Transform3f &tf, AABB &bv)
void computeBV< OBB, Cylinder >(const Cylinder &s, const Transform3f &tf, OBB &bv)
void fit(Vec3f *ps, unsigned int n, BV &bv)
Compute a bounding volume that fits a set of n points.
Definition: BV_fitter.h:52
void computeBV< OBB, Capsule >(const Capsule &s, const Transform3f &tf, OBB &bv)
Definition: traversal_node_setup.h:792
void computeBV< RSS, Plane >(const Plane &s, const Transform3f &tf, RSS &bv)
void computeBV< OBB, ConvexBase >(const ConvexBase &s, const Transform3f &tf, OBB &bv)
void computeBV< AABB, Ellipsoid >(const Ellipsoid &e, const Transform3f &tf, AABB &bv)
void constructBox(const AABB &bv, Box &box, Transform3f &tf)
construct a box shape (with a configuration) from a given bounding volume
void computeBV< AABB, Cone >(const Cone &s, const Transform3f &tf, AABB &bv)
Main namespace.
Definition: broadphase_bruteforce.h:44
void computeBV< AABB, Halfspace >(const Halfspace &s, const Transform3f &tf, AABB &bv)
void computeBV< OBB, Box >(const Box &s, const Transform3f &tf, OBB &bv)
void computeBV< OBB, Plane >(const Plane &s, const Transform3f &tf, OBB &bv)
void computeBV< AABB, Plane >(const Plane &s, const Transform3f &tf, AABB &bv)
void computeBV< RSS, Halfspace >(const Halfspace &s, const Transform3f &tf, RSS &bv)
void computeBV< kIOS, Plane >(const Plane &s, const Transform3f &tf, kIOS &bv)
void computeBV< AABB, ConvexBase >(const ConvexBase &s, const Transform3f &tf, AABB &bv)
void computeBV< AABB, Capsule >(const Capsule &s, const Transform3f &tf, AABB &bv)
void computeBV< OBBRSS, Plane >(const Plane &s, const Transform3f &tf, OBBRSS &bv)