% +------------------------------------------------------------------------+ % | Reference manual page: VisibilityComplex.tex % +------------------------------------------------------------------------+ % | Last revision: 09.07.2002 % | Author : Pierre Angelier % | Maintainer: Laurent Rineau % | Package: Visibility_complex % +------------------------------------------------------------------------+ \ccRefPageBegin %%RefPage: end of header, begin of main body % +----------------------------------------------------------------------------+ \begin{ccRefConcept}{VisibilityComplex} \label{pageVisibilityComplexRef} % +----------------------------------------------------------------------------+ \ccDefinition The class \ccRefName\ defines a vertex centered data structure capable of maintaining the incidence between vertices, edges and faces of the visibility complex of a collection of $n$ disks. In addition the \ccRefName\ maintains an \ccc{VisibilityComplexAntichain} used for sweeping the visibility complex. The \ccRefName\ offers iterators pairs for traversing the vertices,edges and faces of the visibilty complex. % +----------------------------------------------------------------------------+ % +----------------------------------------------------------------------------+ \ccTypes \ccTwo{VisibilityComplex:: Vertex_iterator }{} \ccNestedType{Gt} {the geometric traits class.} \ccGlue \ccNestedType{Items} {items class, model of the \ccc{VisibilityComplex_items} concept.} \ccGlue \ccNestedType{Antichain} {the antichain used for sweeping the visibility complex, model for the \ccc{VisibilityComplexAntichain} concept.} \ccGlue \ccNestedType{Vertex}{vertex type. Model of \ccc{VisibilityComplexVertex}.} \ccGlue \ccNestedType{Edge}{edge type. Model of \ccc{VisibilityComplexEdge}.} \ccGlue \ccNestedType{Face}{face type. Model of \ccc{VisibilityComplexFace}.} \ccNestedType{Vertex_handle}{handle to vertex.} \ccGlue \ccNestedType{Edge_handle}{handle to edge.} \ccGlue \ccNestedType{Face_handle}{handle to face.} \ccNestedType{Vertex_iterator}{iterator over all vertex.} \ccGlue \ccNestedType{Edge_iterator}{iterator over all edges.} \ccGlue \ccNestedType{Face_iterator}{iterator over all faces.} % +----------------------------------------------------------------------------+ % +----------------------------------------------------------------------------+ \ccCreation \ccCreationVariable{v} \ccConstructor{VisibilityComplex();}{default constructor.} \ccConstructor{ template < class InputIterator , class ConstraintIt > VisibilityComplex(InputIterator first, InputIterator last, ConstraintIt firstc,ConstraintIt lastc);} {creates the visibility complex of the disks in the range $[$\ccc{first,last}$)$ and constraints in the range $[$\ccc{firstc,lastc}$)$. The value type of \ccc{InputIterator} is \ccc{Disk}. The value type of \ccc{ConstraintIt} is \ccc{Vertex}. } % +----------------------------------------------------------------------------+ % +----------------------------------------------------------------------------+ \ccOperations \ccTagFullDeclarations \ccMethod{Vertex_iterator vertices_begin();}{} \ccGlue \ccMethod{Vertex_iterator vertices_end();}{iterator over all vertices.} \ccGlue \ccMethod{Edge_iterator edges_begin();}{} \ccGlue \ccMethod{Edge_iterator edges_end();}{iterator over all edges.} \ccGlue \ccMethod{Face_iterator faces_begin();}{} \ccGlue \ccMethod{Face_iterator faces_end();}{iterator over all faces.} \ccGlue \ccTagDefaults % +----------------------------------------------------------------------------+ % ------------------------------------------------------------------------------ \ccHasModels \ccRefIdfierPage{CGAL::Visibility_complex_2} % ------------------------------------------------------------------------------ % +----------------------------------------------------------------------------+ \ccSeeAlso \ccRefConceptPage{VisibilityComplexAntichain} \\ \ccRefConceptPage{VisibilityComplexTraits} \\ \ccRefConceptPage{VisibilityComplexVertex}\\ \ccRefConceptPage{VisibilityComplexEdge}\\ \ccRefConceptPage{VisibilityComplexFace} % +----------------------------------------------------------------------------+ % +----------------------------------------------------------------------------+ \end{ccRefConcept} \ccRefPageEnd % +----------------------------------------------------------------------------+