CGAL 5.6.3 - 3D Alpha Wrapping

Loading...
Searching...
No Matches
Functions
Free Functions
3D Alpha Wrapping

##

Functions to create a wrap from point clouds, triangle soups, and triangle meshes.

## Functions
template<typename PointRange , typename FaceRange , typename OutputMesh , typename InputNamedParameters , typename OutputNamedParameters >
void | CGAL::alpha_wrap_3 (const PointRange &points, const FaceRange &faces, const double alpha, const double offset, OutputMesh &alpha_wrap, const InputNamedParameters &in_np, const OutputNamedParameters &out_np)
| computes a watertight, 2-manifold, and intersection-free triangulated surface mesh that strictly contains an input triangle soup.
template<typename TriangleMesh , typename OutputMesh , typename InputNamedParameters , typename OutputNamedParameters >
void | CGAL::alpha_wrap_3 (const TriangleMesh &tmesh, const double alpha, const double offset, OutputMesh &alpha_wrap, const InputNamedParameters &in_np, const OutputNamedParameters &out_np)
| computes a watertight, 2-manifold, and intersection-free triangulated surface mesh that strictly contains an input triangle mesh.
template<typename PointRange , typename OutputMesh , typename InputNamedParameters , typename OutputNamedParameters >
void | CGAL::alpha_wrap_3 (const PointRange &points, const double alpha, const double offset, OutputMesh &alpha_wrap, const InputNamedParameters &in_np, const OutputNamedParameters &out_np)
| computes a watertight, 2-manifold, and intersection-free triangulated surface mesh that strictly contains an input point set.

## Function Documentation

## ◆ alpha_wrap_3() [1/3]

template<typename PointRange , typename OutputMesh , typename InputNamedParameters , typename OutputNamedParameters >

void CGAL::alpha_wrap_3 | ( | const PointRange & | points,
|  | const double | alpha,
|  | const double | offset,
|  | OutputMesh & | alpha_wrap,
|  | const InputNamedParameters & | in_np,
|  | const OutputNamedParameters & | out_np
| ) |  |

`#include <CGAL/alpha_wrap_3.h>`

computes a watertight, 2-manifold, and intersection-free triangulated surface mesh that strictly contains an input point set.

The parameters `alpha` and `offset` respectively control which features will appear in the output, and the distance from the input. See Section Choosing Parameters for a detailed breakdown of their influence.

Template Parameters

  PointRange | model of `Range` whose value type is a point type.
  OutputMesh | model of `MutableFaceGraph`.
  InputNamedParameters | a sequence of Named Parameters
  OutputNamedParameters | a sequence of Named Parameters

Parameters

  points | the input points
  alpha | the value of the parameter `alpha`
  offset | the value of the parameter `offset`
  alpha_wrap | the output surface mesh
  in_np | an optional sequence of Named Parameters among the ones listed below

Optional Named Parameters

  a property map associating points to the elements of the point range Type: a model of `ReadablePropertyMap` with value type `geom_traits::Point_3` Default: `CGAL::Identity_property_map<geom_traits::Point_3>` |
  an instance of a geometric traits class Type: a class model of `Kernel` Default: a CGAL Kernel deduced from the point type, using `CGAL::Kernel_traits` Extra: The geometric traits class must be compatible with the point type. The geometric traits should use a floating point number type (see Interface). |

Parameters

  out_np | an optional sequence of Named Parameters among the ones listed below

Optional Named Parameters

  a property map associating points to the vertices of `alpha_wrap` Type: a class model of `ReadWritePropertyMap` with `boost::graph_traits<OutputMesh>::vertex_descriptor` as key type and `Point_3` as value type Default: `boost::get(CGAL::vertex_point, alpha_wrap)` Extra: If this parameter is omitted, an internal property map for `CGAL::vertex_point_t` must be available in `OutputMesh`. |

Precondition
  `alpha` and `offset` are strictly positive values.

## ◆ alpha_wrap_3() [2/3]

template<typename PointRange , typename FaceRange , typename OutputMesh , typename InputNamedParameters , typename OutputNamedParameters >

void CGAL::alpha_wrap_3 | ( | const PointRange & | points,
|  | const FaceRange & | faces,
|  | const double | alpha,
|  | const double | offset,
|  | OutputMesh & | alpha_wrap,
|  | const InputNamedParameters & | in_np,
|  | const OutputNamedParameters & | out_np
| ) |  |

`#include <CGAL/alpha_wrap_3.h>`

computes a watertight, 2-manifold, and intersection-free triangulated surface mesh that strictly contains an input triangle soup.

The parameters `alpha` and `offset` respectively control which features will appear in the output, and the distance from the input. See Section Choosing Parameters for a detailed breakdown of their influence.

Template Parameters

  PointRange | a model of `Range` whose value type is the point type
  FaceRange | a model of `RandomAccessContainer` whose value type is a model of `RandomAccessContainer` whose value type is an integral type
  OutputMesh | model of `MutableFaceGraph`.
  InputNamedParameters | a sequence of Named Parameters
  OutputNamedParameters | a sequence of Named Parameters

Parameters

  points | the input points
  faces | the input faces, with each element of the range being a range of indices corresponding to points in `points`
  alpha | the value of the parameter `alpha`
  offset | the value of the parameter `offset`
  alpha_wrap | the output surface mesh
  in_np | an optional sequence of Named Parameters among the ones listed below

Optional Named Parameters

  a property map associating points to the elements of the point set `points` Type: a model of `ReadablePropertyMap` whose key type is the value type of the iterator of `PointRange` and whose value type is `geom_traits::Point_3` Default: `CGAL::Identity_property_map<geom_traits::Point_3>` |
  an instance of a geometric traits class Type: a class model of `Kernel` Default: a CGAL Kernel deduced from the point type, using `CGAL::Kernel_traits` Extra: The geometric traits class must be compatible with the point type. The geometric traits should use a floating point number type (see Interface). |

Parameters

  out_np | an optional sequence of Named Parameters among the ones listed below

Optional Named Parameters

  a property map associating points to the vertices of `alpha_wrap` Type: a class model of `ReadWritePropertyMap` with `boost::graph_traits<OutputMesh>::vertex_descriptor` as key type and `Point_3` as value type Default: `boost::get(CGAL::vertex_point, alpha_wrap)` Extra: If this parameter is omitted, an internal property map for `CGAL::vertex_point_t` must be available in `OutputMesh`. |

Precondition
  The elements of `faces` are triangles.
  `alpha` and `offset` are strictly positive values.

Examples
  Alpha_wrap_3/point_set_wrap.cpp, Alpha_wrap_3/triangle_mesh_wrap.cpp, and Alpha_wrap_3/triangle_soup_wrap.cpp.

## ◆ alpha_wrap_3() [3/3]

template<typename TriangleMesh , typename OutputMesh , typename InputNamedParameters , typename OutputNamedParameters >

void CGAL::alpha_wrap_3 | ( | const TriangleMesh & | tmesh,
|  | const double | alpha,
|  | const double | offset,
|  | OutputMesh & | alpha_wrap,
|  | const InputNamedParameters & | in_np,
|  | const OutputNamedParameters & | out_np
| ) |  |

`#include <CGAL/alpha_wrap_3.h>`

computes a watertight, 2-manifold, and intersection-free triangulated surface mesh that strictly contains an input triangle mesh.

The parameters `alpha` and `offset` respectively control which features will appear in the output, and the distance from the input. See Section Choosing Parameters for a detailed breakdown of their influence.

Template Parameters

  TriangleMesh | model of `FaceListGraph`.
  OutputMesh | model of `MutableFaceGraph`.
  InputNamedParameters | a sequence of Named Parameters
  OutputNamedParameters | a sequence of Named Parameters

Parameters

  tmesh | a triangle mesh
  alpha | the value of the parameter `alpha`
  offset | the value of the parameter `offset`
  alpha_wrap | the output surface mesh
  in_np | an optional sequence of Named Parameters among the ones listed below

Optional Named Parameters

  a property map associating points to the vertices of `tmesh` Type: a class model of `ReadablePropertyMap` with `boost::graph_traits<TriangleMesh>::vertex_descriptor` as key type and `Point_3` as value type Default: `boost::get(CGAL::vertex_point, tmesh)` Extra: If this parameter is omitted, an internal property map for `CGAL::vertex_point_t` must be available in `TriangleMesh`. |
  an instance of a geometric traits class Type: a class model of `Kernel` Default: a CGAL Kernel deduced from the point type, using `CGAL::Kernel_traits` Extra: The geometric traits class must be compatible with the point type. The geometric traits should use a floating point number type (see Interface). |

Parameters

  out_np | an optional sequence of Named Parameters among the ones listed below

Optional Named Parameters

  a property map associating points to the vertices of `alpha_wrap` Type: a class model of `ReadWritePropertyMap` with `boost::graph_traits<OutputMesh>::vertex_descriptor` as key type and `Point_3` as value type Default: `boost::get(CGAL::vertex_point, alpha_wrap)` Extra: If this parameter is omitted, an internal property map for `CGAL::vertex_point_t` must be available in `OutputMesh`. |

Precondition
  `tmesh` is a triangle mesh.
  `alpha` and `offset` are strictly positive values.