#include <CGAL/Simple_cartesian.h>
#include <CGAL/Polyhedron_incremental_builder_3.h>
#include <CGAL/Polyhedron_3.h>
#include <cassert>
template <class HDS>
class Build_triangle : public CGAL::Modifier_base<HDS> {
public:
Build_triangle() {}
void operator()( HDS& hds) {
typedef typename HDS::Vertex Vertex;
typedef typename Vertex::Point Point;
}
};
typedef CGAL::Simple_cartesian<double> Kernel;
typedef Polyhedron::HalfedgeDS HalfedgeDS;
int main() {
Polyhedron P;
Build_triangle<HalfedgeDS> triangle;
assert( P.is_triangle( P.halfedges_begin()));
return 0;
}
A polyhedral surface Polyhedron_3 consists of vertices V, edges E, facets F and an incidence relation...
Definition Polyhedron_3.h:113
void delegate(CGAL::Modifier_base< HDS > &m)
This is an advanced function.
The auxiliary class Polyhedron_incremental_builder_3 supports the incremental construction of polyhed...
Definition Polyhedron_incremental_builder_3.h:62
Halfedge_handle end_facet()
ends a newly constructed facet.
void add_vertex_to_facet(size_type i)
adds a vertex with index i to the current facet.
Facet_handle begin_facet()
starts a new facet and returns its handle.
void end_surface()
ends the construction.
void begin_surface(size_type v, size_type f, size_type h=0, int mode=RELATIVE_INDEXING)
starts the construction.
Vertex_handle add_vertex(const Point_3 &p)
adds a new vertex for p and returns its handle.