CGAL 6.1 - Polygon Mesh Processing

Loading...
Searching...
No Matches
List of all members | Public Types | Public Member Functions
CGAL::Polygon_mesh_processing::Uniform_sizing_field< PolygonMesh, VPMap > Class Template Reference
Reference Manual » Meshing

`#include <CGAL/Polygon_mesh_processing/Uniform_sizing_field.h>`

## Definition

template<class PolygonMesh, class VPMap = typename boost::property_map<PolygonMesh, CGAL::vertex_point_t>::const_type>
class CGAL::Polygon_mesh_processing::Uniform_sizing_field< PolygonMesh, VPMap >

a sizing field describing a uniform target edge length for `CGAL::Polygon_mesh_processing::isotropic_remeshing()`.

Edges longer than 4/3 of the target edge length will be split in half, while edges shorter than 4/5 of the target edge length will be collapsed.

Is model of
  `PMPSizingField`

See also
  `isotropic_remeshing()`
  `Adaptive_sizing_field`

Template Parameters

  PolygonMesh | model of `MutableFaceGraph` that has an internal property map for `CGAL::vertex_point_t`.
  VPMap | property map associating points to the vertices of `pmesh`, model of `ReadWritePropertyMap` with `boost::graph_traits<PolygonMesh>::vertex_descriptor` as key type and `Point_3` as value type. Default is `boost::get(CGAL::vertex_point, pmesh)`.

## Public Types
typedef Base::FT | FT
typedef Base::Point_3 | Point_3
typedef Base::halfedge_descriptor | halfedge_descriptor
typedef Base::vertex_descriptor | vertex_descriptor

## Public Member Functions
FT | at (const vertex_descriptor, const PolygonMesh &) const
std::optional< FT > | is_too_long (const vertex_descriptor va, const vertex_descriptor vb, const PolygonMesh &) const
std::optional< FT > | is_too_short (const halfedge_descriptor h, const PolygonMesh &pmesh) const
Point_3 | split_placement (const halfedge_descriptor h, const PolygonMesh &pmesh) const
void | register_split_vertex (const vertex_descriptor, const PolygonMesh &)

## Creation
| Uniform_sizing_field (const FT size, const VPMap &vpmap)
| Constructor.
| Uniform_sizing_field (const FT size, const PolygonMesh &pmesh)
| Constructor using internal vertex point map of the input polygon mesh.

## Constructor & Destructor Documentation

## ◆ Uniform_sizing_field() [1/2]

template<class PolygonMesh , class VPMap = typename boost::property_map<PolygonMesh, CGAL::vertex_point_t>::const_type>

CGAL::Polygon_mesh_processing::Uniform_sizing_field< PolygonMesh, VPMap >::Uniform_sizing_field | ( | const FT | size,
|  | const VPMap & | vpmap
| ) |  |

Constructor.

Parameters

  size | the target edge length for isotropic remeshing. If set to 0, the criterion for edge length is ignored and edges are neither split nor collapsed.
  vpmap | is the input vertex point map that associates points to the vertices of the input mesh.

## ◆ Uniform_sizing_field() [2/2]

template<class PolygonMesh , class VPMap = typename boost::property_map<PolygonMesh, CGAL::vertex_point_t>::const_type>

CGAL::Polygon_mesh_processing::Uniform_sizing_field< PolygonMesh, VPMap >::Uniform_sizing_field | ( | const FT | size,
|  | const PolygonMesh & | pmesh
| ) |  |

Constructor using internal vertex point map of the input polygon mesh.

Parameters

  size | the target edge length for isotropic remeshing. If set to 0, the criterion for edge length is ignored and edges are neither split nor collapsed.
  pmesh | a polygon mesh with triangulated surface patches to be remeshed. The default vertex point map of `pmesh` is used to construct the class.