Navigation: Up, Table of Contents, Bibliography, Index, Title Page

A Halfedge Data Structure Using Vectors

Definition

CGAL_Halfedge_data_structure_using_vector<V,H,F> is a model of the Halfedge_data_structure concept. It is parameterized with a model V of the Vertex_base concept, a model H of the Halfedge_base concept, and a model F of the Facet_base concept, whose requirements can be found in Section reference arrow. Predefined models can be found in Section reference arrow.

CGAL_Halfedge_data_structure_using_vector<V,H,F> uses an STL vector to store the elements. This implies random access iterators to access the elements, but no support for random insertions and deletions. The capacity is restricted to the reserved size. Allocations are not possible beyond the capacity without calling reserve again. All pointers, iterators and circulators are invalidated upon a reserve call that increases the capacity. (This restriction might be dropped in the future and the polyhedron will automatically reallocate if the capacity exceeds.)

#include <CGAL/Halfedge_data_structure_using_vector.h>

Types

It supports all types required for the Halfedge_data_structure concept, specifically the following two types are fixed.

typedef CGAL_Tag_false
Supports_removal;
typedef random_access_iterator_tag
iterator_category;

Operations

CGAL_Halfedge_data_structure_using_vector<V,H,F> complies to the requirements for the concept Halfedge_data_structure as stated in Section reference arrow.

Implementation

It uses STL vector to implement the internal storage.


Next: Class declaration of Vertex_base
Navigation: Up, Table of Contents, Bibliography, Index, Title Page
The CGAL Project. 22 January, 1999.