7 template<
typename TDataType>
class Frame;
8 template<
typename TDataType>
class PointSet;
10template<
typename TDataType>
14 typedef typename TDataType::Real
Real;
15 typedef typename TDataType::Coord
Coord;
16 typedef typename TDataType::Rigid
Rigid;
17 typedef typename TDataType::Matrix
Matrix;
35 std::shared_ptr<Frame<TDataType>>
m_from =
nullptr;
36 std::shared_ptr<PointSet<TDataType>>
m_to =
nullptr;
A frame represents a point equipped with the orientation.
std::shared_ptr< Frame< TDataType > > m_from
void initialize(const Rigid &rigid, DArray< Coord > &points)
bool initializeImpl() override
void applyTransform(const Rigid &rigid, DArray< Coord > &points)
~FrameToPointSet() override
std::shared_ptr< PointSet< TDataType > > m_initTo
DArray< Coord > m_refPoints
FrameToPointSet(std::shared_ptr< Frame< TDataType > > from, std::shared_ptr< PointSet< TDataType > > to)
std::shared_ptr< Frame< TDataType > > m_initFrom
void match(std::shared_ptr< Frame< TDataType > > from, std::shared_ptr< PointSet< TDataType > > to)
std::shared_ptr< PointSet< TDataType > > m_to
A PointSet stores the coordinates for a set of independent points.
This is an implementation of AdditiveCCD based on peridyno.
Array< T, DeviceType::GPU > DArray