38 #ifndef FCL_MATH_SAMPLERSE3EULER_INL_H 39 #define FCL_MATH_SAMPLERSE3EULER_INL_H 41 #include "fcl/math/sampler/sampler_se3_euler.h" 48 class SamplerSE3Euler<double>;
52 SamplerSE3Euler<S>::SamplerSE3Euler()
59 SamplerSE3Euler<S>::SamplerSE3Euler(
const Vector3<S>& lower_bound_,
const Vector3<S>& upper_bound_) : lower_bound(lower_bound_),
60 upper_bound(upper_bound_)
67 Vector6<S> SamplerSE3Euler<S>::sample()
const 70 q[0] = this->rng.uniformReal(lower_bound[0], upper_bound[0]);
71 q[1] = this->rng.uniformReal(lower_bound[1], upper_bound[1]);
72 q[2] = this->rng.uniformReal(lower_bound[2], upper_bound[2]);
75 this->rng.quaternion(s);
77 Quaternion<S> quat(s[0], s[1], s[2], s[3]);
78 Vector3<S> angles = quat.toRotationMatrix().eulerAngles(0, 1, 2);
89 void SamplerSE3Euler<S>::getBound(Vector3<S>& lower_bound_, Vector3<S>& upper_bound_)
const 91 lower_bound_ = lower_bound;
92 upper_bound_ = upper_bound;
97 void SamplerSE3Euler<S>::setBound(
const Vector3<S>& lower_bound_,
const Vector3<S>& upper_bound_)
100 lower_bound = lower_bound_;
101 upper_bound = upper_bound_;
Main namespace.
Definition: broadphase_bruteforce-inl.h:45