Public Member Functions | Protected Member Functions | List of all members
mirtk::ConformalSurfaceFlattening Class Reference

#include <ConformalSurfaceFlattening.h>

Inheritance diagram for mirtk::ConformalSurfaceFlattening:
Inheritance graph
Collaboration diagram for mirtk::ConformalSurfaceFlattening:
Collaboration graph

Public Member Functions

 ConformalSurfaceFlattening ()
 Default constructor.
 
 ConformalSurfaceFlattening (const ConformalSurfaceFlattening &)
 Copy constructor.
 
ConformalSurfaceFlatteningoperator= (const ConformalSurfaceFlattening &)
 Assignment operator.
 
virtual ~ConformalSurfaceFlattening ()
 Destructor.
 
- Public Member Functions inherited from mirtk::SphericalSurfaceMapper
int NumberOfComponents () const
 Dimension of map codomain.
 
virtual ~SphericalSurfaceMapper ()
 Destructor.
 
- Public Member Functions inherited from mirtk::SurfaceMapper
void Run ()
 Compute surface map.
 
virtual ~SurfaceMapper ()
 Destructor.
 
- Public Member Functions inherited from mirtk::Object
virtual const char * NameOfClass () const =0
 Get name of class, which this object is an instance of.
 
virtual ParameterList Parameter () const
 Get parameter name/value pairs.
 
bool Parameter (const ParameterList &)
 Set parameters from name/value pairs.
 
virtual bool Set (const char *name, const char *value)
 
virtual ~Object ()
 Destructor.
 

Protected Member Functions

virtual void ComputeMap ()
 Construct and solve symmetric system of linear equations.
 
virtual void Finalize ()
 Finalize filter execution.
 
virtual void Initialize ()
 Initialize filter after input and parameters are set.
 
- Protected Member Functions inherited from mirtk::SphericalSurfaceMapper
SphericalSurfaceMapperoperator= (const SphericalSurfaceMapper &)
 Assignment operator.
 
 SphericalSurfaceMapper ()
 Default constructor.
 
 SphericalSurfaceMapper (const SphericalSurfaceMapper &)
 Copy constructor.
 
- Protected Member Functions inherited from mirtk::SurfaceMapper
int GetEdgeNeighborPoints (int i, int j, int &k, int &l) const
 
void GetPoint (int ptId, double p[3]) const
 
int NumberOfInteriorPoints () const
 Number of surface points minus the number of boundary points.
 
int NumberOfPoints () const
 Number of surface points.
 
SurfaceMapperoperator= (const SurfaceMapper &)
 Assignment operator.
 
class Point Point (int ptId) const
 
 SurfaceMapper ()
 Default constructor.
 
 SurfaceMapper (const SurfaceMapper &)
 Copy constructor.
 
- Protected Member Functions inherited from mirtk::Object
template<typename... Args>
void Throw (ErrorType err, const char *func, Args... args) const
 

Additional Inherited Members

- Static Public Member Functions inherited from mirtk::Object
static const char * NameOfType ()
 Get name of this class type.
 
- Static Protected Member Functions inherited from mirtk::Object
template<typename... Args>
static void ThrowStatic (ErrorType err, const char *cls, const char *func, Args... args)
 

Detailed Description

Computes discrete conformal map of (closed) surface to the complex plane

The conformal map is the solution of a sparse system of linear equations, where the edge weights are identical to those used by Pinkall and Polthier (1993) and later Eck et al. (1995). These cotangent weights are well known in the finite element method (FEM) literature and correspond to a discretization of the Laplace operator. The main difference of the method by Angenent et al. (1999-2000) and Haker et al. (2000) compared to the discrete conformal mapping of Eck et al. (1995) and Desbrun et al. (2002) are the boundary constraints. While all these methods minimize the discrete Dirichlet energy, the latter methods fix the boundary values of a non-closed surface, whereas the method by Angenent and Haker is designed for closed genus-0 surface meshes with a subsequent inverse stereographic projection to the sphere. The intermediate parametric domain is a triangular subdomain of the complex plane.

Note
This implementation is based on the corresponding ITK implementation originally contributed to by Gao et al. https://hdl.handle.net/1926/225 which was later extended and integrated into ITK version 4 as https://itk.org/Doxygen/html/classitk_1_1ConformalFlatteningMeshFilter.html.

Definition at line 63 of file ConformalSurfaceFlattening.h.


The documentation for this class was generated from the following file: