Euclid
Geometry Processing and Shape Analysis in C++
SCP.h
1 
11 #pragma once
12 
13 #include <CGAL/Surface_mesh_parameterization/Error_code.h>
14 
15 namespace Euclid
16 {
24 template<typename Mesh, typename VertexUVMap>
25 void spectral_conformal_parameterization(Mesh& mesh, VertexUVMap uvm);
26 
27 template<typename Mesh>
29 {
30 public:
31  using TriangleMesh = Mesh;
32  using halfedge_descriptor =
33  typename boost::graph_traits<TriangleMesh>::halfedge_descriptor;
34  using Scalar = typename CGAL::Kernel_traits<typename boost::property_traits<
35  typename boost::property_map<Mesh, boost::vertex_point_t>::type>::
36  value_type>::Kernel::FT;
37 
38 public:
39  template<typename VertexUVMap,
40  typename VertexIndexMap,
41  typename VertexParameterizedMap>
42  CGAL::Surface_mesh_parameterization::Error_code parameterize(
43  TriangleMesh& mesh,
44  halfedge_descriptor bhd,
45  VertexUVMap uvmap,
46  VertexIndexMap vimap,
47  VertexParameterizedMap vpmap);
48 };
49 
51 } // namespace Euclid
52 
53 #include "src/SCP.cpp"
Definition: AABB.h:6
void spectral_conformal_parameterization(Mesh &mesh, VertexUVMap uvm)
Compute planar conformal parameterization with dcp algorithm.
Definition: SCP.cpp:53
Definition: SCP.h:28