CGAL 6.1.1 - 3D Isosurfacing

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

##

Mael Rouxel-Labbé, Julian Stahl, Daniel Zint, and Pierre Alliez
This package implements several grid-based isosurfacing algorithms (Marching Cubes, its topologically correct variant, and Dual Contouring) that enable generating surface meshes from 3D value and gradient fields. The methods are generic with respect to the definition of the grid and the fields, and all methods offer parallel implementations. The output is a polygon soup (i.e., a container of 3D point coordinates and indexed faces).
Introduced in: CGAL 6.1
BibTeX: cgal:sz-mc-26a
License: GPL
Windows Demo: Polyhedron demo

## Classified Reference Pages

## Concepts

- `IsosurfacingTraits_3`
- `IsosurfacingPartition_3`
- `IsosurfacingValueField_3`
- `IsosurfacingGradientField_3`
- `IsosurfacingInterpolationScheme_3`
- `IsosurfacingEdgeIntersectionOracle_3`
- `IsosurfacingDomain_3`
- `IsosurfacingDomainWithGradient_3`

## Space Partitioning Data Structures

- `CGAL::Isosurfacing::Cartesian_grid_3`

## Value and Gradient Fields

- `CGAL::Isosurfacing::Value_function_3`
- `CGAL::Isosurfacing::Gradient_function_3`
- `CGAL::Isosurfacing::Finite_difference_gradient_3`
- `CGAL::Isosurfacing::Interpolated_discrete_values_3`
- `CGAL::Isosurfacing::Interpolated_discrete_gradients_3`
- `CGAL::Isosurfacing::Trilinear_interpolation`

## Isosurfacing Domains Helpers

- `CGAL::Isosurfacing::Dichotomy_edge_intersection`
- `CGAL::Isosurfacing::Linear_interpolation_edge_intersection`

## Isosurfacing Domains

- `CGAL::Isosurfacing::Marching_cubes_domain_3`
- `CGAL::Isosurfacing::Dual_contouring_domain_3`
- `CGAL::Isosurfacing::create_marching_cubes_domain_3()`
- `CGAL::Isosurfacing::create_dual_contouring_domain_3()`

## Isosurfacing Methods

- `CGAL::Isosurfacing::marching_cubes()`
- `CGAL::Isosurfacing::dual_contouring()`

## I/O

- `CGAL::Isosurfacing::IO::convert_image_to_grid()`
- `CGAL::Isosurfacing::IO::convert_grid_to_image()`

## Modules
| Concepts
| Space Partitioning Data Structures
| This group encapsulates classes that represent a spatial discretization of space, which will be the scaffolding for the construction of the isosurface.
| Value and Gradient Fields Helpers
| The following classes and functions are parameters or template parameters of value and gradient fields.
| Value and Gradient Fields
| The following classes represent the data that defines the isosurface.
| Isosurfacing Domains
| This group encapsulates the classes that can be used to represent a complete domain (partition and fields), to be used by the isosurfacing methods of this package.
| Isosurfacing Methods
| I/O Functions