cgal/Mesh_3/doc_tex/Mesh_3_ref/IntersectionGeometricTraits...

109 lines
3.3 KiB
TeX

% +------------------------------------------------------------------------+
% | Reference manual page: IntersectionGeometricTraits_3.tex
% +------------------------------------------------------------------------+
% | 23.02.2009 Author
% | Package: Package
% |
\RCSdef{\RCSIntersectionGeometricTraitsRev}{$Id: header.tex 40270 2007-09-07 15:29:10Z lsaboret $}
\RCSdefDate{\RCSIntersectionGeometricTraitsDate}{$Date: 2007-09-07 17:29:10 +0200 (Ven, 07 sep 2007) $}
% |
\ccRefPageBegin
%%RefPage: end of header, begin of main body
% +------------------------------------------------------------------------+
\begin{ccRefConcept}{IntersectionGeometricTraits_3}
%% \ccHtmlCrossLink{} %% add further rules for cross referencing links
%% \ccHtmlIndexC[concept]{} %% add further index entries
\ccDefinition
The concept \ccRefName\ provides types and functors
required to implement a model of \ccc{MeshDomain_3},
when the domain is described by a simplicial surface mesh
forming its boundary.
The concept \ccRefName\ mainly provides the detection
and construction of intersections between segments and triangles.
% \ccRefines
% ThisConcept \\
% ThatConcept
\ccTypes
\ccNestedType{Point_3} {Point type.}
\ccGlue
\ccNestedType{Segment_3}{Segment type.}
\ccGlue
\ccNestedType{Triangle_3}{Triangle type.}
\ccNestedType{Do_intersect_3}
{Function object that detects an intersection between a 3D segment and a 3D triangle.
Provides the operators: \\
\ccc{bool operator()(Segment_3 seg, Triangle_3 tr)} \\
\ccc{bool operator()(Triangle_3 tr, Segment_3 seg)} \\
which return \ccc{true}, iff the triangle and the segment
have a non empty intersection.}
\ccNestedType{Intersect_3}
{Function object that constructs the intersection
between a 3D segment and a 3D triangle.
Provides the operators: \\
\ccc{CGAL::Object operator()(Segment_3 seg, Triangle_3 tr)} \\
\ccc{CGAL::Object operator()(Triangle_3 tr, Segment_3 seg)} \\
which computes as a \ccc{CGAL::Object}
the intersection between the triangle and the segment.
\ccc{CGAL::Object} is either a point, a segment or
an empty object.}
\ccCreationVariable{traits} %% choose variable name
\ccOperations
%\ccMethod{void foo();}{some member functions}
\ccMethod{Do_intersect_3
do_intersect_3_object();}
{Returns the intersection detection functor.}
\ccMethod{Intersect_3
intersect_3_object();}
{Returns the intersection constructor.}
\ccHasModels
Any instantiation of \ccc{CGAL::Kernel} is a model of this traits concept.
\ccSeeAlso
\ccRefConceptPage{BisectionGeometricTraits_3}\\
\ccRefIdfierPage{CGAL::Polyhedral_mesh_domain_3<Polyhedron,IGT,TriangleAccessor>}
% \ccExample
% A short example program.
% Instead of a short program fragment, a full running program can be
% included using the
% \verb|\ccIncludeExampleCode{Package/IntersectionGeometricTraits_3.C}|
% macro. The program example would be part of the source code distribution and
% also part of the automatic test suite.
% \begin{ccExampleCode}
% void your_example_code() {
% }
% \end{ccExampleCode}
%% \ccIncludeExampleCode{Package/IntersectionGeometricTraits_3.C}
\end{ccRefConcept}
% +------------------------------------------------------------------------+
%%RefPage: end of main body, begin of footer
\ccRefPageEnd
% EOF
% +------------------------------------------------------------------------+