38 #ifndef FCL_GEOMETRY_SHAPE_UTILITY_H 39 #define FCL_GEOMETRY_SHAPE_UTILITY_H 44 #include "fcl/common/types.h" 46 #include "fcl/math/bv/AABB.h" 47 #include "fcl/math/bv/kDOP.h" 48 #include "fcl/math/bv/kIOS.h" 49 #include "fcl/math/bv/OBB.h" 50 #include "fcl/math/bv/OBBRSS.h" 51 #include "fcl/math/bv/RSS.h" 53 #include "fcl/geometry/shape/box.h" 59 template <
typename BV,
typename Shape>
60 void computeBV(
const Shape& s,
const Transform3<typename BV::S>& tf, BV& bv);
64 void constructBox(
const AABB<S>& bv, Box<S>& box, Transform3<S>& tf);
67 void constructBox(
const OBB<S>& bv, Box<S>& box, Transform3<S>& tf);
70 void constructBox(
const OBBRSS<S>& bv, Box<S>& box, Transform3<S>& tf);
73 void constructBox(
const kIOS<S>& bv, Box<S>& box, Transform3<S>& tf);
76 void constructBox(
const RSS<S>& bv, Box<S>& box, Transform3<S>& tf);
79 void constructBox(
const KDOP<S, 16>& bv, Box<S>& box, Transform3<S>& tf);
82 void constructBox(
const KDOP<S, 18>& bv, Box<S>& box, Transform3<S>& tf);
85 void constructBox(
const KDOP<S, 24>& bv, Box<S>& box, Transform3<S>& tf);
88 void constructBox(
const AABB<S>& bv,
const Transform3<S>& tf_bv, Box<S>& box, Transform3<S>& tf);
91 void constructBox(
const OBB<S>& bv,
const Transform3<S>& tf_bv, Box<S>& box, Transform3<S>& tf);
94 void constructBox(
const OBBRSS<S>& bv,
const Transform3<S>& tf_bv, Box<S>& box, Transform3<S>& tf);
97 void constructBox(
const kIOS<S>& bv,
const Transform3<S>& tf_bv, Box<S>& box, Transform3<S>& tf);
100 void constructBox(
const RSS<S>& bv,
const Transform3<S>& tf_bv, Box<S>& box, Transform3<S>& tf);
102 template <
typename S>
103 void constructBox(
const KDOP<S, 16>& bv,
const Transform3<S>& tf_bv, Box<S>& box, Transform3<S>& tf);
105 template <
typename S>
106 void constructBox(
const KDOP<S, 18>& bv,
const Transform3<S>& tf_bv, Box<S>& box, Transform3<S>& tf);
108 template <
typename S>
109 void constructBox(
const KDOP<S, 24>& bv,
const Transform3<S>& tf_bv, Box<S>& box, Transform3<S>& tf);
113 #include "fcl/geometry/shape/utility-inl.h" Main namespace.
Definition: broadphase_bruteforce-inl.h:45
void computeBV(const Shape &s, const Transform3< typename BV::S > &tf, BV &bv)
calculate a bounding volume for a shape in a specific configuration
Definition: utility-inl.h:1049