mirror of https://github.com/CGAL/cgal
130 lines
5.1 KiB
TeX
130 lines
5.1 KiB
TeX
% +------------------------------------------------------------------------+
|
|
% | Reference manual page: VisibilityComplexEdge.tex
|
|
% +------------------------------------------------------------------------+
|
|
% | Last revision: 09.07.2002
|
|
% | Author : Pierre Angelier <Pierre.Angelier@ens.fr>
|
|
% | Maintainer: Laurent Rineau <Laurent.Rineau@ens.fr>
|
|
% | Package: Visibility_complex
|
|
% +------------------------------------------------------------------------+
|
|
|
|
\ccRefPageBegin
|
|
|
|
%%RefPage: end of header, begin of main body
|
|
% +----------------------------------------------------------------------------+
|
|
|
|
\begin{ccRefConcept}{VisibilityComplexEdge}
|
|
\label{pageVCEdgeRef}
|
|
|
|
% +----------------------------------------------------------------------------+
|
|
\ccDefinition
|
|
|
|
The concept \ccRefName\ represents the edge class in the visibility complex.
|
|
It defines the minimal requirements for the \ccc{Edge} type in the
|
|
\ccc{VisibilityComplex} concept. It is also required in the
|
|
\ccc{Edge_wrapper<_Vc,_Tr>} member class template of an items class, see the
|
|
\ccc{VisibilityComplex_Items} concept. In addition to the requirement below, the
|
|
concept \ccRefName\ must inherit from the \ccc{Arc} concept
|
|
\ccIndexMainItem[c]{Arc}.
|
|
% +----------------------------------------------------------------------------+
|
|
|
|
% ------------------------------------------------------------------------------
|
|
\ccInheritsFrom
|
|
\ccRefConceptPage{Arc}\\
|
|
% ------------------------------------------------------------------------------
|
|
|
|
% ------------------------------------------------------------------------------
|
|
\ccTypes
|
|
\ccThree{typedef Edge::Vertex_handle}{Vertex_handle;}{}
|
|
\ccThreeToTwo
|
|
|
|
\ccNestedType{Gt} {geometric traits class. }
|
|
\ccGlue
|
|
\ccNestedType{Vertex}{model of \ccc{Vertex}.}
|
|
\ccGlue
|
|
\ccNestedType{Edge}{model of \ccc{Edge}.}
|
|
\ccGlue
|
|
\ccNestedType{Face}{model of \ccc{Face}.}
|
|
|
|
\ccNestedType{Vertex_handle}{handle to vertex.}
|
|
\ccGlue
|
|
\ccNestedType{Edge_handle}{handle to halfedge.}
|
|
\ccGlue
|
|
\ccNestedType{Face_handle}{handle to face.}
|
|
% ------------------------------------------------------------------------------
|
|
|
|
% ------------------------------------------------------------------------------
|
|
\ccThree{Vertex_handle}{void v.set_inf(Vertex_handle v);}{}
|
|
\ccThreeToTwo
|
|
|
|
% ------------------------------------------------------------------------------
|
|
\ccCreation
|
|
\ccCreationVariable{e}
|
|
|
|
\ccConstructor{Edge();}{default constructor.}
|
|
\ccConstructor{Edge(bool s, Disk_handle p);}
|
|
{ creates a edge with positive sign if $s$ is true and negative otherwise.
|
|
The underlying arc is the complete boundary of the disk $p$. }
|
|
\ccConstructor{Edge(Vertex_handle v, Vertex_handle w , Disk_handle p);}
|
|
{ creates an edge on disk $p$ whose source is $v$ and sink $w$. The underlying
|
|
arc is defined by the extremities of $v$ and $w$ on $p$. }
|
|
% ------------------------------------------------------------------------------
|
|
|
|
% ------------------------------------------------------------------------------
|
|
\ccOperations
|
|
|
|
\ccTagFullDeclarations
|
|
\ccMethod{Face_handle dl(); const}{}
|
|
\ccGlue
|
|
\ccMethod{Face_handle dr(); const}{}
|
|
\ccGlue
|
|
\ccMethod{Face_handle ul(); const}{}
|
|
\ccGlue
|
|
\ccMethod{Face_handle ur(); const}
|
|
{ returns a handle to one of the three faces adjacent to the edge \ccVar. For
|
|
a positive (resp. negative) edge, \ccc{dr()} and \ccc{dl()} (resp.
|
|
\ccc{ur()} and \ccc{ul()}) return the same \ccc{Face_handle}.}
|
|
\ccMethod{Face_handle face(); const}
|
|
{returns the unique face adjacent to \ccVar\ if \ccVar\ is a constraint edge.
|
|
Otherwise $0$ is returned.}
|
|
\ccMethod{void set_adjacent_faces(Face_handle f0,Face_handle f1,Face_handle f2);}
|
|
{set \ccc{f0,f1,f2} as the adjacent faces of \ccVar. For a positive edge,
|
|
\ccc{f0 = dl() = dr()}, \ccc{f1 = ur()} and \ccc{f2 = ul()}. For a negative
|
|
edge \ccc{f0 = dl()}, \ccc{f1 = dr()} and \ccc{f2 = ul() = ur()}.}
|
|
\ccMethod{Vertex_handle sup(); const}
|
|
{returns the sink vertex of \ccVar.}
|
|
\ccGlue
|
|
\ccMethod{Vertex_handle inf(); const}
|
|
{returns the source vertex of \ccVar.}
|
|
\ccGlue
|
|
\ccMethod{void set_inf(Vertex_handle v);}
|
|
{sets the source vertex of \ccVar\ to $v$ and sets the \ccc{ccw_edge}
|
|
of $v$ to \ccVar.}
|
|
\ccGlue
|
|
\ccMethod{void set_sup(Vertex_handle v);}
|
|
{sets the sink vertex of \ccVar\ to $v$ and sets the \ccc{cw_edge}
|
|
of $v$ to \ccVar.}
|
|
% ------------------------------------------------------------------------------
|
|
|
|
% ------------------------------------------------------------------------------
|
|
\ccHasModels
|
|
|
|
\ccRefIdfierPage{CGAL::Visibility_complex_edge_base<Vc>}
|
|
% ------------------------------------------------------------------------------
|
|
|
|
% ------------------------------------------------------------------------------
|
|
\ccSeeAlso
|
|
|
|
\ccRefConceptPage{Arc} \\
|
|
\ccRefConceptPage{VisibilityComplex} \\
|
|
\ccRefConceptPage{VisibilityComplexItems}\\
|
|
\ccRefConceptPage{VisibilityComplexVertex}\\
|
|
\ccRefConceptPage{VisibilityComplexFace}
|
|
% ------------------------------------------------------------------------------
|
|
|
|
% +----------------------------------------------------------------------------+
|
|
\ccTagDefaults
|
|
\end{ccRefConcept}
|
|
\ccRefPageEnd
|
|
% +----------------------------------------------------------------------------+
|
|
|