CGAL 6.2 - Planar Parameterization of Triangulated Surface Meshes

Loading...
Searching...
No Matches
List of all members | Public Member Functions | Protected Member Functions
CGAL::Surface_mesh_parameterization::Square_border_uniform_parameterizer_3< TriangleMesh_ > Class Template Reference
Reference Manual » Border Parameterization Methods

`#include <CGAL/Surface_mesh_parameterization/Square_border_parameterizer_3.h>`

## Inherits from

CGAL::Surface_mesh_parameterization::Square_border_parameterizer_3< TriangleMesh_ >.

## Definition

template<class TriangleMesh_>
class CGAL::Surface_mesh_parameterization::Square_border_uniform_parameterizer_3< TriangleMesh_ >

This class parameterizes the border of a 3D surface onto a square in a uniform manner: points are equally spaced.

Square_border_parameterizer_3 implements most of the border parameterization algorithm. This class implements only `compute_edge_length()` to compute a segment's length.

Attention
  The square border parameterizer may create degenerate faces in the parameterization: if an input border vertex has valence `1` and if it is mapped to the same edge of the square as its two adjacent (border) vertices, for example.

Is model of
  `Parameterizer_3`

See also
  `CGAL::Surface_mesh_parameterization::Square_border_parameterizer_3<TriangleMesh>`
  `CGAL::Surface_mesh_parameterization::Square_border_arc_length_parameterizer_3<TriangleMesh>`

Template Parameters

  TriangleMesh_ | must be a model of `FaceGraph`.

## Public Member Functions
| Square_border_uniform_parameterizer_3 ()
| Constructor.
| Square_border_uniform_parameterizer_3 (vertex_descriptor v0, vertex_descriptor v1, vertex_descriptor v2, vertex_descriptor v3)
| Constructor with user-defined corners: the user provides four vertices of the border of the mesh, which will be parameterized to the corners of the square.
Public Member Functions inherited from CGAL::Surface_mesh_parameterization::Square_border_parameterizer_3< TriangleMesh_ >
template<typename VertexUVMap , typename VertexIndexMap , typename VertexParameterizedMap >
Error_code | parameterize (const Triangle_mesh &mesh, halfedge_descriptor bhd, VertexUVMap uvmap, VertexIndexMap, VertexParameterizedMap vpmap)
| assigns to the vertices of the border of the mesh a 2D position (i.e. a (u,v) pair) on the border's shape.
bool | is_border_convex () const
| indicates if the border's shape is convex.
| Square_border_parameterizer_3 ()
| Constructor.
| Square_border_parameterizer_3 (vertex_descriptor v0, vertex_descriptor v1, vertex_descriptor v2, vertex_descriptor v3)
| Constructor with user-defined corners: the user provides four vertices of the border of the mesh, which will be parameterized to the corners of the square.

## Protected Member Functions
virtual NT | compute_edge_length (const Triangle_mesh &, vertex_descriptor, vertex_descriptor) const
| computes the length of an edge.

## Additional Inherited Members
Public Types inherited from CGAL::Surface_mesh_parameterization::Square_border_parameterizer_3< TriangleMesh_ >
typedef TriangleMesh_ | Triangle_mesh
| Triangle mesh type.
typedef boost::graph_traits< Triangle_mesh >::vertex_descriptor | vertex_descriptor
| Mesh vertex type.
typedef boost::graph_traits< Triangle_mesh >::halfedge_descriptor | halfedge_descriptor
| Mesh halfedge type.

## Constructor & Destructor Documentation

## ◆ Square_border_uniform_parameterizer_3()

template<class TriangleMesh_ >

CGAL::Surface_mesh_parameterization::Square_border_uniform_parameterizer_3< TriangleMesh_ >::Square_border_uniform_parameterizer_3 | ( | vertex_descriptor | v0,
|  | vertex_descriptor | v1,
|  | vertex_descriptor | v2,
|  | vertex_descriptor | v3
| ) |  |

Constructor with user-defined corners: the user provides four vertices of the border of the mesh, which will be parameterized to the corners of the square.

Precondition
  The given vertices must be on the border.

## Member Function Documentation

## ◆ compute_edge_length()

template<class TriangleMesh_ >

virtual NT CGAL::Surface_mesh_parameterization::Square_border_uniform_parameterizer_3< TriangleMesh_ >::compute_edge_length | ( | const Triangle_mesh & | ,
|  | vertex_descriptor | ,
|  | vertex_descriptor |
| ) |  | const
| protected virtual

computes the length of an edge.

Uniform border parameterization: points are equally spaced.