43 #include <pcl/memory.h>
44 #include <pcl/pcl_macros.h>
45 #include <pcl/registration/eigen.h>
49 namespace registration
57 template <
typename Po
intSourceT,
typename Po
intTargetT,
typename Scalar =
float>
61 using Matrix4 = Eigen::Matrix<Scalar, 4, 4>;
62 using VectorX = Eigen::Matrix<Scalar, Eigen::Dynamic, 1>;
63 using Vector4 = Eigen::Matrix<Scalar, 4, 1>;
65 using Ptr = shared_ptr<WarpPointRigid<PointSourceT, PointTargetT, Scalar> >;
66 using ConstPtr = shared_ptr<const WarpPointRigid<PointSourceT, PointTargetT, Scalar> >;
92 warpPoint (
const PointSourceT& pnt_in, PointSourceT& pnt_out)
const
const Matrix4 & getTransform() const
Get the Transform used.
shared_ptr< WarpPointRigid< PointSource, PointTarget, Scalar > > Ptr
Eigen::Matrix< Scalar, 4, 4 > Matrix4
shared_ptr< const WarpPointRigid< PointSource, PointTarget, Scalar > > ConstPtr
#define PCL_MAKE_ALIGNED_OPERATOR_NEW
Macro to signal a class requires a custom allocator.
void warpPoint(const PointSourceT &pnt_in, Vector4 &pnt_out) const
Warp a point given a transformation matrix.
WarpPointRigid(int nr_dim)
Constructor.
virtual ~WarpPointRigid()
Destructor.
Eigen::Matrix< Scalar, Eigen::Dynamic, 1 > VectorX
Eigen::Matrix< Scalar, 4, 1 > Vector4
int getDimension() const
Get the number of dimensions.
void warpPoint(const PointSourceT &pnt_in, PointSourceT &pnt_out) const
Warp a point given a transformation matrix.
virtual void setParam(const VectorX &p)=0
Set warp parameters.
Matrix4 transform_matrix_