CGAL 6.2 - Polygon Mesh Processing

Loading...
Searching...
No Matches
Modules | Files
Reference Manual

##

David Coeurjolly, Jacques-Olivier Lachaud, Konstantinos Katrioplas, Sébastien Loriot, Ivan Pađen, Mael Rouxel-Labbé, Hossam Saeed, Jane Tournois, Sébastien Valette, and Ilker O. Yaz
This package provides a collection of methods and classes for polygon mesh processing, ranging from basic operations on simplices such as the computation of an edge length, to complex geometry processing algorithms such as collision and intersection detection, computation of distances between meshes, and more.
Introduced in: CGAL 4.7
Depends on: documented for each function
BibTeX: cgal:lty-pmp-26a
License: GPL
Windows Demo: CGAL Lab

## Classified Reference Pages

## Parameters

Optional parameters of the functions of this package are implemented as Named Parameters. The page Named Parameters describes their usage.

## Corefinement and Boolean Operation Functions

- see Chapter Boolean Operations On Polygonal Meshes

## Meshing Functions

- see Chapter Remeshing of Polygonal Meshes

## Combinatorial and Geometric Repair Functions

- see Chapter Polygonal Mesh Repair

## Polygon Soup Orientation Functions

- see Chapter Polygonal Mesh Repair

## Predicate Functions

- `CGAL::Polygon_mesh_processing::is_degenerate_edge()`
- `CGAL::Polygon_mesh_processing::degenerate_edges()`
- `CGAL::Polygon_mesh_processing::is_degenerate_triangle_face()`
- `CGAL::Polygon_mesh_processing::degenerate_faces()`
- `CGAL::Polygon_mesh_processing::is_needle_triangle_face()`
- `CGAL::Polygon_mesh_processing::is_cap_triangle_face()`
- `CGAL::Polyhedral_envelope`
- `CGAL::Side_of_triangle_mesh`

## Connected Components

- `CGAL::Polygon_mesh_processing::connected_component()`
- `CGAL::Polygon_mesh_processing::connected_components()`
- `CGAL::Polygon_mesh_processing::keep_large_connected_components()`
- `CGAL::Polygon_mesh_processing::keep_largest_connected_components()`
- `CGAL::Polygon_mesh_processing::split_connected_components()`
- `CGAL::Polygon_mesh_processing::keep_connected_components()`
- `CGAL::Polygon_mesh_processing::remove_connected_components()`
- `CGAL::Polygon_mesh_processing::remove_connected_components_of_negligible_size()`

## Location Functions

- Point Location
- Location Predicates
- Nearest Face Location Queries
- Random Location Generation

## Elementary Geometric Functions

- `CGAL::Polygon_mesh_processing::angle_sum()`
- `CGAL::Polygon_mesh_processing::edge_length()`
- `CGAL::Polygon_mesh_processing::squared_edge_length()`
- `CGAL::Polygon_mesh_processing::face_area()`
- `CGAL::Polygon_mesh_processing::squared_face_area()`
- `CGAL::Polygon_mesh_processing::area()`
- `CGAL::Polygon_mesh_processing::volume()`
- `CGAL::Polygon_mesh_processing::face_border_length()`
- `CGAL::Polygon_mesh_processing::longest_border()`
- `CGAL::Polygon_mesh_processing::centroid()`
- `CGAL::Polygon_mesh_processing::bbox()`
- `CGAL::Polygon_mesh_processing::vertex_bbox()`
- `CGAL::Polygon_mesh_processing::edge_bbox()`
- `CGAL::Polygon_mesh_processing::face_bbox()`
- `CGAL::Polygon_mesh_processing::triangle()`
- `CGAL::Polygon_mesh_processing::transform()`

## Normal Computation Functions

- `CGAL::Polygon_mesh_processing::compute_face_normal()`
- `CGAL::Polygon_mesh_processing::compute_face_normals()`
- `CGAL::Polygon_mesh_processing::compute_vertex_normal()`
- `CGAL::Polygon_mesh_processing::compute_vertex_normals()`
- `CGAL::Polygon_mesh_processing::compute_normals()`

## Curvature Computation Functions

- `CGAL::Polygon_mesh_processing::discrete_Gaussian_curvatures()`
- `CGAL::Polygon_mesh_processing::discrete_Gaussian_curvature()`
- `CGAL::Polygon_mesh_processing::discrete_mean_curvature()`
- `CGAL::Polygon_mesh_processing::discrete_mean_curvatures()`
- `CGAL::Polygon_mesh_processing::interpolated_corrected_curvatures()`
- `CGAL::Polygon_mesh_processing::Principal_curvatures_and_directions`

## Feature Detection Functions

- `CGAL::Polygon_mesh_processing::sharp_edges_segmentation()`
- `CGAL::Polygon_mesh_processing::detect_sharp_edges()`
- `CGAL::Polygon_mesh_processing::detect_vertex_incident_patches()`
- `CGAL::Polygon_mesh_processing::region_growing_of_planes_on_faces()`
- `CGAL::Polygon_mesh_processing::detect_corners_of_regions()`

## Distance Functions

- `CGAL::Polygon_mesh_processing::bounded_error_Hausdorff_distance()`
- `CGAL::Polygon_mesh_processing::bounded_error_symmetric_Hausdorff_distance()`
- `CGAL::Polygon_mesh_processing::is_Hausdorff_distance_larger()`
- `CGAL::Polygon_mesh_processing::approximate_Hausdorff_distance()`
- `CGAL::Polygon_mesh_processing::approximate_symmetric_Hausdorff_distance()`
- `CGAL::Polygon_mesh_processing::approximate_max_distance_to_point_set()`
- `CGAL::Polygon_mesh_processing::max_distance_to_triangle_mesh()`
- `CGAL::Polygon_mesh_processing::sample_triangle_soup()`
- `CGAL::Polygon_mesh_processing::sample_triangle_mesh()`

## Intersection and Collision Detection

- `CGAL::Polygon_mesh_processing::does_self_intersect()`
- `CGAL::Polygon_mesh_processing::self_intersections()`
- `CGAL::Polygon_mesh_processing::does_triangle_soup_self_intersect()`
- `CGAL::Polygon_mesh_processing::triangle_soup_self_intersections()`
- `CGAL::Polygon_mesh_processing::do_intersect()`
- `CGAL::Polygon_mesh_processing::intersecting_meshes()`
- `CGAL::Rigid_triangle_mesh_collision_detection`

## Miscellaneous

- `CGAL::Polygon_mesh_processing::border_halfedges()` (deprecated)
- `CGAL::Polygon_mesh_processing::extract_boundary_cycles()` (deprecated)

## I/O Functions

- `CGAL::Polygon_mesh_processing::IO::read_polygon_mesh()`

## Modules
| Concepts
| Predicates
| Classes and functions that answer queries about a polygon mesh or its elements.
| Connected Components
| Two faces are in the same connected component if there is a path of adjacent faces such that all edges between two consecutive faces of the path are not marked as constrained.
| Location Functions
| Functions to locate points on a mesh, and manipulate such locations.
| Geometric Measure Functions
| Functions to compute discrete curvatures, lengths of edges and borders, areas of faces and patches, volumes of closed meshes.
| Normal Computation
| Functions to compute unit normals for individual/all vertices or faces.
| Corrected Curvature Computation
| Functions to compute the corrected curvatures of a polygon mesh.
| Feature Detection Functions
| Functions to detect sharp edges and surface patches of polygon meshes.
| Distance Functions
| Functions to compute the distance between meshes, between a mesh and a point set and between a point set and a mesh.
| Intersection Functions
| Functions to test if there are self intersections, and to report faces that do intersect.
| Miscellaneous Functions
| Deprecated Functions

## Files
file | polygon_mesh_processing.h
| Convenience header file including the headers for all the free functions of this package.