The class LSCM_parameterizer_3 implements the Least Squares Conformal Maps (LSCM) parameterization [LPRM02].
This is a conformal parameterization, i.e. it attempts to preserve angles.
This is a free border parameterization. No need to map the surface's border onto a convex polygon (only two pinned vertices are needed to ensure a unique solution), but one-to-one mapping is NOT guaranteed.
#include <CGAL/LSCM_parameterizer_3.h>
Parameterizer_traits_3<ParameterizationMesh_3>
Model of the ParameterizerTraits_3 concept.
LSCM_parameterizer_3 class is a Strategy [GHJV95]: it implements a strategy of surface parameterization for models of ParameterizationMesh_3.
The full template declaration is:
template
class ParameterizationMesh_3,
class BorderParameterizer_3 = Two_vertices_parameterizer_3<ParameterizationMesh_3>,
class SparseLinearAlgebraTraits_d = OpenNL::SymmetricLinearSolverTraits<typename ParameterizationMesh_3::NT>
class LSCM_parameterizer_3;
| |
Export BorderParameterizer_3 template parameter.
| |
| |
Export SparseLinearAlgebraTraits_d template parameter.
|
| |||
Constructor.
|
| ||
| ||
[virtual] Compute a one-to-one mapping from a triangular 3D surface mesh to a piece of the 2D space. The mapping is linear by pieces (linear in each triangle). The result is the (u,v) pair image of each vertex of the 3D surface. Preconditions:
|
CGAL::Parameterizer_traits_3<ParameterizationMesh_3>
CGAL::Fixed_border_parameterizer_3<ParameterizationMesh_3, BorderParameterizer_3, SparseLinearAlgebraTraits_d>
CGAL::Barycentric_mapping_parameterizer_3<ParameterizationMesh_3, BorderParameterizer_3, SparseLinearAlgebraTraits_d>
CGAL::Discrete_authalic_parameterizer_3<ParameterizationMesh_3, BorderParameterizer_3, SparseLinearAlgebraTraits_d>
CGAL::Discrete_conformal_map_parameterizer_3<ParameterizationMesh_3, BorderParameterizer_3, SparseLinearAlgebraTraits_d>
CGAL::Mean_value_coordinates_parameterizer_3<ParameterizationMesh_3, BorderParameterizer_3, SparseLinearAlgebraTraits_d>