Euclid
Geometry Processing and Shape Analysis in C++
Holomorphic 1-forms

Global conformal parameterization using holomorphic 1-forms. More...

Classes

class  Euclid::Holomorphic_one_forms_parameterizer3< Mesh, SEM, SVM >
 Compute plane parameterization with holomorphic 1-forms. More...
 

Functions

template<typename Mesh , typename DerivedA , typename DerivedB >
void Euclid::holomorphic_one_form_basis (const Mesh &mesh, Eigen::MatrixBase< DerivedA > &primal, Eigen::MatrixBase< DerivedB > &conjugate)
 Compute the holomorphic basis. More...
 
template<typename Mesh , typename DerivedA , typename DerivedB >
void Euclid::holomorphic_one_form_basis (const Mesh &mesh, const VertexChains< Mesh > &homology_generators, Eigen::MatrixBase< DerivedA > &primal, Eigen::MatrixBase< DerivedB > &conjugate)
 Compute the holomorphic basis. More...
 
template<typename Mesh , typename Derived , typename SEM , typename SVM , typename VertexUVMap >
void Euclid::integrate_holomorphic_one_forms (const Mesh &mesh, const Eigen::MatrixBase< Derived > &one_forms, CGAL::Seam_mesh< Mesh, SEM, SVM > &seam_mesh, VertexUVMap uvmap)
 Integrate holomorphic 1-forms. More...
 

Detailed Description

Reference

[1] Gu, X., Yau, S.T. Global Conformal Surface Parameterization.

Function Documentation

template<typename Mesh , typename DerivedA , typename DerivedB >
void Euclid::holomorphic_one_form_basis ( const Mesh &  mesh,
Eigen::MatrixBase< DerivedA > &  primal,
Eigen::MatrixBase< DerivedB > &  conjugate 
)
Parameters
[in]meshInput mesh, genus has to be greater than 0.
[out]primalPrimal basis.
[out]conjugateConjugate basis.
template<typename Mesh , typename DerivedA , typename DerivedB >
void Euclid::holomorphic_one_form_basis ( const Mesh &  mesh,
const VertexChains< Mesh > &  homology_generators,
Eigen::MatrixBase< DerivedA > &  primal,
Eigen::MatrixBase< DerivedB > &  conjugate 
)
Parameters
[in]meshInput mesh, genus has to be greater than 0.
[in]homology_generatorsPrecomputed homology generators.
[out]primalPrimal basis.
[out]conjugateConjugate basis.
template<typename Mesh , typename Derived , typename SEM , typename SVM , typename VertexUVMap >
void Euclid::integrate_holomorphic_one_forms ( const Mesh &  mesh,
const Eigen::MatrixBase< Derived > &  one_forms,
CGAL::Seam_mesh< Mesh, SEM, SVM > &  seam_mesh,
VertexUVMap  uvmap 
)
Parameters
[in]meshInput mesh, genus has to be greater than 0.
[in]one_formsHolomorphic 1-forms.
[out]seam_meshThe 1-forms are integrated on the seam mesh.
[out]uvmapA property map storing the integrated 1-forms/uv-coordinates.