![]() |
ImFusion SDK 4.3
|
#include <AnatomyPlugin/include/ImFusion/AnatomyPlugin/AnatomicalStructurePointwiseDeformation.h>
Class for representing nonlinear transformations on a set of points e.g. More...
Class for representing nonlinear transformations on a set of points e.g.
the vertices of a Mesh or PointCloud In pseudocode: each vertex v on is transformed by v -> linearPart(v + nonlinearPart(v))
Public Member Functions | |
| AnatomicalStructurePointwiseDeformation (const vec3 ¢er) | |
| AnatomicalStructurePointwiseDeformation (const ScaledIso3 &linear, std::optional< std::vector< vec3 > > nonLinear=std::nullopt) | |
| AnatomicalStructurePointwiseDeformation (const Eigen::Matrix< double, 3, -1 > &fixed, const Eigen::Matrix< double, 3, -1 > &moving, bool rigid, double tol=1e-5) | |
Construct a deformation that maps moving to fixed. | |
| AnatomicalStructurePointwiseDeformation (const Mesh &fixed, const Mesh &moving, bool rigid) | |
| AnatomicalStructurePointwiseDeformation (const Graph &fixed, const Graph &moving, bool rigid) | |
| AnatomicalStructurePointwiseDeformation (const PointCloud &fixed, const PointCloud &moving, bool rigid) | |
| AnatomicalStructurePointwiseDeformation (const Spline &fixed, const Spline &moving, bool rigid) | |
| ScaledIso3 & | linearPart () |
| const ScaledIso3 & | linearPart () const |
| std::optional< std::vector< vec3 > > & | nonlinearPart () |
| const std::optional< std::vector< vec3 > > & | nonlinearPart () const |
| AnatomicalStructurePointwiseDeformation | ( | const Eigen::Matrix< double, 3, -1 > & | fixed, |
| const Eigen::Matrix< double, 3, -1 > & | moving, | ||
| bool | rigid, | ||
| double | tol = 1e-5 ) |
Construct a deformation that maps moving to fixed.
Assumes that such a deformation exists, i.e. fixed and moving must have the same number of vertices. A typical use case is to start with fixed, clone it into moving, manipulate vertices in moving, and then call this constructor.
| tol | gives the tolerance for the nonlinear part to be considered zero. |