CGAL 6.2 - 3D Skin Surface Meshing: SkinSurface_3 Concept Reference

CGAL 6.2 - 3D Skin Surface Meshing

Loading...
Searching...
No Matches
List of all members
SkinSurface_3 Concept Reference
Reference Manual » Concepts

## Definition

The concept `SkinSurface_3` defines a skin surface and provides an interface for the dedicated skin surface mesher. The concept requires a constructor from an iterator range of weighted points and a shrink factor. By default the input balls are grown in such that the skin surface wraps around the input balls.

Has models
  `CGAL::Skin_surface_3<SkinSurfaceTraits_3>`
  `CGAL::Union_of_balls_3<SkinSurfaceTraits_3>`

## Types
typedef unspecified_type | Geometric_traits
| The geometric traits used for the construction of the regular triangulation.
typedef Geometric_traits::Weighted_point_3 | Weighted_point
| The `Weighted_point` type.
typedef Geometric_traits::Point_3 | Bare_point
| The `Bare_point` type.
typedef unspecified_type | FT
| The `FT` type defined by the `Geometric_traits`.

## Creation
template<class WP_iterator >
| Skin_surface_3 (WP_iterator begin, WP_iterator end, RT shrink_factor)
| The mandatory arguments to the constructor are an iterator range `[begin,end)` of weighted points and a shrink factor between 0 and 1.

## Operations
template<class Polyhedron >
void | mesh_skin_surface_3 (Polyhedron &p)
| Constructs a coarse mesh in `p`.
template<class Polyhedron >
void | subdivide_skin_surface_mesh_3 (Polyhedron &p, int nSubdiv=1)
| Subdivides the skin surface using `nSubdiv` 1-4 split operations (each triangle is split into four sub-triangles) and the new vertices are moved towards the skin surface.

## Member Typedef Documentation

## ◆ FT

typedef unspecified_type SkinSurface_3::FT

The `FT` type defined by the `Geometric_traits`.

This is the number type used by the weighted points.

## Member Function Documentation

## ◆ mesh_skin_surface_3()

template<class Polyhedron >

void SkinSurface_3::mesh_skin_surface_3 | ( | Polyhedron & | p | ) |

Constructs a coarse mesh in `p`.

Template Parameters

  Polyhedron | must be an instance of `Polyhedron_3`.

Precondition
  `Polyhedron::HDS` can be used as the template argument of the `CGAL::Polyhedron_incremental_builder_3<HDS>`.

## ◆ subdivide_skin_surface_mesh_3()

template<class Polyhedron >

void SkinSurface_3::subdivide_skin_surface_mesh_3 | ( | Polyhedron & | p,
|  | int | nSubdiv = `1`
| ) |  |

Subdivides the skin surface using `nSubdiv` 1-4 split operations (each triangle is split into four sub-triangles) and the new vertices are moved towards the skin surface.

Template Parameters

  Polyhedron | must be an instance of `Polyhedron_3`.