39 #ifndef HPP_FCL_GEOMETRIC_SHAPES_UTILITY_H 40 #define HPP_FCL_GEOMETRIC_SHAPES_UTILITY_H 56 HPP_FCL_DLLAPI std::vector<Vec3f> getBoundVertices(
const Box& box,
const Transform3f& tf);
57 HPP_FCL_DLLAPI std::vector<Vec3f> getBoundVertices(
const Sphere& sphere,
const Transform3f& tf);
58 HPP_FCL_DLLAPI std::vector<Vec3f> getBoundVertices(
const Capsule& capsule,
const Transform3f& tf);
59 HPP_FCL_DLLAPI std::vector<Vec3f> getBoundVertices(
const Cone& cone,
const Transform3f& tf);
60 HPP_FCL_DLLAPI std::vector<Vec3f> getBoundVertices(
const Cylinder& cylinder,
const Transform3f& tf);
61 HPP_FCL_DLLAPI std::vector<Vec3f> getBoundVertices(
const ConvexBase& convex,
const Transform3f& tf);
62 HPP_FCL_DLLAPI std::vector<Vec3f> getBoundVertices(
const TriangleP& triangle,
const Transform3f& tf);
68 template<
typename BV,
typename S>
71 std::vector<Vec3f> convex_bound_vertices = details::getBoundVertices(s, tf);
72 fit(&convex_bound_vertices[0], (
unsigned int)convex_bound_vertices.size(), bv);
135 HPP_FCL_DLLAPI void computeBV<KDOP<16>, Halfspace>(
const Halfspace& s,
const Transform3f& tf, KDOP<16>& bv);
138 HPP_FCL_DLLAPI void computeBV<KDOP<18>, Halfspace>(
const Halfspace& s,
const Transform3f& tf, KDOP<18>& bv);
141 HPP_FCL_DLLAPI void computeBV<KDOP<24>, Halfspace>(
const Halfspace& s,
const Transform3f& tf, KDOP<24>& bv);
156 HPP_FCL_DLLAPI void computeBV<KDOP<16>, Plane>(
const Plane& s,
const Transform3f& tf, KDOP<16>& bv);
159 HPP_FCL_DLLAPI void computeBV<KDOP<18>, Plane>(
const Plane& s,
const Transform3f& tf, KDOP<18>& bv);
162 HPP_FCL_DLLAPI void computeBV<KDOP<24>, Plane>(
const Plane& s,
const Transform3f& tf, KDOP<24>& bv);
void computeBV< OBB, ConvexBase >(const ConvexBase &s, const Transform3f &tf, OBB &bv)
void computeBV< AABB, Box >(const Box &s, const Transform3f &tf, AABB &bv)
void computeBV< AABB, Plane >(const Plane &s, const Transform3f &tf, AABB &bv)
void computeBV< OBBRSS, Plane >(const Plane &s, const Transform3f &tf, OBBRSS &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:69
Main namespace.
Definition: AABB.h:43
void computeBV< OBB, Sphere >(const Sphere &s, const Transform3f &tf, OBB &bv)
void computeBV< OBB, Capsule >(const Capsule &s, const Transform3f &tf, OBB &bv)
void computeBV< OBB, Cylinder >(const Cylinder &s, const Transform3f &tf, OBB &bv)
void computeBV< OBB, Cone >(const Cone &s, const Transform3f &tf, OBB &bv)
void computeBV< OBB, Halfspace >(const Halfspace &s, const Transform3f &tf, OBB &bv)
void computeBV< OBB, Plane >(const Plane &s, const Transform3f &tf, OBB &bv)
void computeBV< AABB, TriangleP >(const TriangleP &s, const Transform3f &tf, AABB &bv)
void computeBV< RSS, Plane >(const Plane &s, const Transform3f &tf, RSS &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:54
Definition: traversal_node_setup.h:851
void computeBV< AABB, Cylinder >(const Cylinder &s, const Transform3f &tf, AABB &bv)
void computeBV< AABB, Sphere >(const Sphere &s, const Transform3f &tf, AABB &bv)
void computeBV< kIOS, Halfspace >(const Halfspace &s, const Transform3f &tf, kIOS &bv)
void computeBV< kIOS, Plane >(const Plane &s, const Transform3f &tf, kIOS &bv)
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< AABB, Cone >(const Cone &s, const Transform3f &tf, AABB &bv)
void computeBV< RSS, Halfspace >(const Halfspace &s, const Transform3f &tf, RSS &bv)
void computeBV< OBBRSS, Halfspace >(const Halfspace &s, const Transform3f &tf, OBBRSS &bv)
void computeBV< AABB, ConvexBase >(const ConvexBase &s, 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
Halfspace transform(const Halfspace &a, const Transform3f &tf)
void computeBV< AABB, Capsule >(const Capsule &s, const Transform3f &tf, AABB &bv)
#define HPP_FCL_DLLAPI
Definition: config.hh:64