39 #ifndef PCL_WARP_POINT_RIGID_6D_H_
40 #define PCL_WARP_POINT_RIGID_6D_H_
47 template <
class Po
intSourceT,
class Po
intTargetT>
54 virtual void setParam (
const Eigen::VectorXf& p)
57 Eigen::Matrix4f& trans = this->transform_matrix_;
59 trans = Eigen::Matrix4f::Zero ();
63 trans.block <4, 1> (0, 3) = Eigen::Vector4f(p[0], p[1], p[2], 1.0);
66 Eigen::Quaternionf q (0, p[3], p[4], p[5]);
67 q.w () =
sqrt (1 - q.dot (q));
68 trans.topLeftCorner<3, 3> () = q.toRotationMatrix();