42 #ifndef PCL_WARP_POINT_RIGID_6D_H_
43 #define PCL_WARP_POINT_RIGID_6D_H_
45 #include <pcl/registration/warp_point_rigid.h>
49 namespace registration
58 template <
typename Po
intSourceT,
typename Po
intTargetT,
typename Scalar =
float>
67 typedef boost::shared_ptr<WarpPointRigid6D<PointSourceT, PointTargetT, Scalar> >
Ptr;
68 typedef boost::shared_ptr<const WarpPointRigid6D<PointSourceT, PointTargetT, Scalar> >
ConstPtr;
82 assert (p.rows () == this->getDimension ());
92 Eigen::Quaternion<Scalar> q (0, p[3], p[4], p[5]);
93 q.w () =
static_cast<Scalar
> (sqrt (1 - q.dot (q)));