38 #ifndef FCL_CCD_TRIANGLEMOTIONBOUNDVISITOR_H 39 #define FCL_CCD_TRIANGLEMOTIONBOUNDVISITOR_H 41 #include "fcl/math/motion/taylor_model/taylor_matrix.h" 42 #include "fcl/math/motion/taylor_model/taylor_vector.h" 43 #include "fcl/math/bv/RSS.h" 44 #include "fcl/math/motion/bv_motion_bound_visitor.h" 45 #include "fcl/math/motion/spline_motion.h" 46 #include "fcl/math/motion/screw_motion.h" 47 #include "fcl/math/motion/interp_motion.h" 48 #include "fcl/math/motion/translation_motion.h" 66 class TranslationMotion;
68 template <
typename,
typename>
69 struct TriangleMotionBoundVisitorVisitImpl;
72 class TriangleMotionBoundVisitor
75 TriangleMotionBoundVisitor(
76 const Vector3<S>& a_,
const Vector3<S>& b_,
77 const Vector3<S>& c_,
const Vector3<S>& n_);
79 virtual S visit(
const MotionBase<S>& motion)
const {
return 0; }
80 virtual S visit(
const SplineMotion<S>& motion)
const;
81 virtual S visit(
const ScrewMotion<S>& motion)
const;
82 virtual S visit(
const InterpMotion<S>& motion)
const;
83 virtual S visit(
const TranslationMotion<S>& motion)
const;
86 template <
typename,
typename>
87 friend struct TriangleMotionBoundVisitorVisitImpl;
89 friend struct TriangleMotionBoundVisitorVisitImpl<double, SplineMotion<double>>;
90 friend struct TriangleMotionBoundVisitorVisitImpl<double, ScrewMotion<double>>;
91 friend struct TriangleMotionBoundVisitorVisitImpl<double, InterpMotion<double>>;
92 friend struct TriangleMotionBoundVisitorVisitImpl<double, TranslationMotion<double>>;
94 Vector3<S> a, b, c, n;
99 #include "fcl/math/motion/triangle_motion_bound_visitor-inl.h" Main namespace.
Definition: broadphase_bruteforce-inl.h:45