CGAL 6.0.2 - 3D Polyhedral Surface

Loading...
Searching...
No Matches
Modules | Classes
3D Polyhedral Surface Reference

##

Lutz Kettner
Polyhedral surfaces in three dimensions are composed of vertices, edges, facets and an incidence relationship on them. The organization beneath is a halfedge data structure, which restricts the class of representable surfaces to orientable 2-manifolds - with and without boundary. If the surface is closed we call it a polyhedron.
Introduced in: CGAL 1.0
Depends on: Halfedge Data Structures
BibTeX: cgal:k-ps-25b
License: GPL
Windows Demo: CGAL Lab

Polyhedral surfaces in three dimensions are composed of vertices, edges, facets and an incidence relationship on them. The organization beneath is a halfedge data structure, which restricts the class of representable surfaces to orientable 2-manifolds - with and without boundary. If the surface is closed we call it a polyhedron.

The polyhedral surface is realized as a container class managing vertices, halfedges, facets with their incidences, and maintaining the combinatorial integrity of them. Its local types for the vertices, halfedges and facets are documented separately. A default traits class, a default items class and an incremental builder conclude the references. The polyhedral surface is based on the highly flexible design of the halfedge data structure, see the reference for `HalfedgeDS` in Chapter Halfedge Data Structures or [3], but the default instantiation of the polyhedral surface can be used without knowing the halfedge data structure.

## Classified Reference Pages

## Concepts

- `PolyhedronTraits_3`
- `PolyhedronItems_3`

## Classes

- `CGAL::Polyhedron_3<Traits>`
- `CGAL::Polyhedron_3<Traits>::Vertex`
- `CGAL::Polyhedron_3<Traits>::Halfedge`
- `CGAL::Polyhedron_3<Traits>::Facet`
- `CGAL::Polyhedron_traits_3<Kernel>`
- `CGAL::Polyhedron_traits_with_normals_3<Kernel>`
- `CGAL::Polyhedron_items_3`
- `CGAL::Polyhedron_min_items_3`
- `CGAL::Polyhedron_incremental_builder_3<HDS>`

## I/O Functions

- `CGAL::operator<<()`
- `CGAL::operator>>()`
- `write_OFF()`
- `read_OFF()`

## Draw a Polyhedron 3

- CGAL::draw<POLY>()

## Modules
| Concepts
| I/O Functions
| Draw a Polyhedron 3
| `#include<CGAL/draw_polyhedron.h>`

## Classes
class | CGAL::Polyhedron_3< Traits >
| A polyhedral surface `Polyhedron_3` consists of vertices `V`, edges `E`, facets `F` and an incidence relation on them. More...
class | CGAL::Polyhedron_3< Traits >::Halfedge
| A halfedge is an oriented edge between two vertices. More...
class | CGAL::Polyhedron_3< Traits >::Facet
| A facet optionally stores a plane equation, and a reference to an incident halfedge that points to the facet. More...
class | CGAL::Polyhedron_3< Traits >::Vertex
| A vertex optionally stores a point and a reference to an incident halfedge that points to the vertex. More...
class | CGAL::Polyhedron_incremental_builder_3< HDS >
| The auxiliary class `Polyhedron_incremental_builder_3` supports the incremental construction of polyhedral surfaces, which is for example convenient when constructing polyhedral surfaces from file formats, such as the Object File Format (OFF) [5], OpenInventor [7] or VRML [1], [6]. More...
class | CGAL::Polyhedron_items_3
| The class `Polyhedron_items_3` is a model of the `PolyhedronItems_3` concept. More...
class | CGAL::Polyhedron_min_items_3
| The class `Polyhedron_min_items_3` is a minimal model of the `PolyhedronItems_3` concept. More...
class | CGAL::Polyhedron_traits_3< Kernel >
| The class `Polyhedron_traits_3` is a model of the `PolyhedronTraits_3` concept. More...
class | CGAL::Polyhedron_traits_with_normals_3< Kernel >
| The class `Polyhedron_traits_with_normals_3` is a model of the `PolyhedronTraits_3` concept. More...