From a2d107946aeb0b408cb92ed75f6113a6bb9350dc Mon Sep 17 00:00:00 2001 From: Monique Teillaud Date: Wed, 13 Aug 2008 08:41:44 +0000 Subject: [PATCH] Do_intersect added manual for global functions intersection and do_intersect prepared but not included yet (problem of name clash with the same Kernel global functions to be solved first) --- .../Circular_kernel_2_ref/CircularKernel.tex | 2 + .../FunctorsOtherPredicates.tex | 28 +++++ .../Global_functions.tex | 101 +++--------------- .../doc_tex/Circular_kernel_2_ref/intro.tex | 27 ++--- 4 files changed, 48 insertions(+), 110 deletions(-) diff --git a/Circular_kernel_2/doc_tex/Circular_kernel_2_ref/CircularKernel.tex b/Circular_kernel_2/doc_tex/Circular_kernel_2_ref/CircularKernel.tex index ab7ff71e352..4e56e8c375f 100644 --- a/Circular_kernel_2/doc_tex/Circular_kernel_2_ref/CircularKernel.tex +++ b/Circular_kernel_2/doc_tex/Circular_kernel_2_ref/CircularKernel.tex @@ -64,6 +64,8 @@ constructions and other functionalities. \ccNestedType{Do_overlap_2}{Model of \ccc{CircularKernel::DoOverlap_2}.} +\ccNestedType{Do_intersect_2}{Model of \ccc{CircularKernel::DoIntersect_2}.} + \ccNestedType{Bounded_side_2}{Model of \ccc{CircularKernel::BoundedSide_2}.} \ccGlue \ccNestedType{Has_on_bounded_side_2}{Model of \ccc{CircularKernel::HasOnBoundedSide_2}.} diff --git a/Circular_kernel_2/doc_tex/Circular_kernel_2_ref/FunctorsOtherPredicates.tex b/Circular_kernel_2/doc_tex/Circular_kernel_2_ref/FunctorsOtherPredicates.tex index efd483d87b1..d7e14f66710 100644 --- a/Circular_kernel_2/doc_tex/Circular_kernel_2_ref/FunctorsOtherPredicates.tex +++ b/Circular_kernel_2/doc_tex/Circular_kernel_2_ref/FunctorsOtherPredicates.tex @@ -57,6 +57,34 @@ An object \ccVar\ of this type must provide: const CircularKernel::Circular_arc_2 & a1);} {For two circular arcs.} +\end{ccRefFunctionObjectConcept} +\begin{ccRefFunctionObjectConcept}{CircularKernel::DoIntersect_2} + +\ccDefinition + +Testing whether two curves intersect. + +\ccRefines + +\ccc{Kernel::DoIntersect_2} + +\ccCreationVariable{fo} + +An object \ccVar\ of this type must provide: + +\ccMemberFunction{bool operator() + (const Type1 & obj1, const Type2 & obj2);} +{determines if two geometric objects of type Type1 and Type2 intersect or not.} + +for all pairs \ccc{Type1} and \ccc{Type2}, where the types +\ccc{Type1} and \ccc{Type2} can be any of the following: +\begin{itemize} +\item {} \ccc{CircularKernel::Line_2} +\item {} \ccc{CircularKernel::Line_arc_2} +\item {} \ccc{CircularKernel::Circle_2} +\item {} \ccc{CircularKernel::Circular_arc_2} +\end{itemize} + \end{ccRefFunctionObjectConcept} \begin{ccRefFunctionObjectConcept}{CircularKernel::BoundedSide_2} diff --git a/Circular_kernel_2/doc_tex/Circular_kernel_2_ref/Global_functions.tex b/Circular_kernel_2/doc_tex/Circular_kernel_2_ref/Global_functions.tex index 469fae15417..71fbb91bc74 100644 --- a/Circular_kernel_2/doc_tex/Circular_kernel_2_ref/Global_functions.tex +++ b/Circular_kernel_2/doc_tex/Circular_kernel_2_ref/Global_functions.tex @@ -1,95 +1,18 @@ -\begin{ccRefFunction}{compare_x} +\begin{ccRefFunction}{intersection} -\ccDefinition +\ccFunction{template < class OutputIterator > + OutputIterator + intersection(Type1 obj1, Type2 obj2, + OutputIterator result);} +{Calls the operator() of \ccc{CircularKernel::Intersect_2.} -\ccFunction{template < class CircularKernel > - Comparison_result compare_x - (const Circular_arc_point_2 &p, - const Circular_arc_point_2 &q);} - {Calls the operator() of \ccc{CircularKernel::CompareX_2}.} - -\ccSeeAlso - -\ccRefConceptPage{CircularKernel::CompareX_2} \end{ccRefFunction} -\begin{ccRefFunction}{compare_y} +\begin{ccRefFunction}{do_intersect} -\ccDefinition +\ccFunction{template < class OutputIterator > + OutputIterator + do_intersect(Type1 obj1, Type2 obj2, + OutputIterator result);} +{Calls the operator() of \ccc{CircularKernel::DoIntersect_2.} -\ccFunction{template < class CircularKernel > - Comparison_result compare_y - (const Circular_arc_point_2 &p, - const Circular_arc_point_2 &q);} - {Calls the operator() of \ccc{CircularKernel::CompareY_2}.} - -\ccSeeAlso - -\ccRefConceptPage{CircularKernel::CompareY_2} -\end{ccRefFunction} -\begin{ccRefFunction}{compare_xy} - -\ccDefinition - -\ccFunction{template < class CircularKernel > - Comparison_result compare_xy - (const Circular_arc_point_2 &p, - const Circular_arc_point_2 &q);} - {Calls the operator() of \ccc{CircularKernel::CompareXY_2}.} - -\ccSeeAlso - -\ccRefConceptPage{CircularKernel::CompareXY_2} -\end{ccRefFunction} -%\begin{ccRefFunction}{make_x_monotone} - -%\ccDefinition - -%\ccFunction{template < class CircularKernel, class OutputIterator > -% OutputIterator make_x_monotone -% (const Circular_arc_2 &ca, -% OutputIterator res);} -% {Calls the operator() of \ccc{CircularKernel::MakeXMonotone_2}.} - -%\ccSeeAlso - -%\ccRefConceptPage{CircularKernel::MakeXMonotone_2} -%\end{ccRefFunction} -%\begin{ccRefFunction}{intersect} - -%\ccDefinition - -%\ccFunction{template < class CircularKernel, class OutputIterator > -% OutputIterator intersect -% (const Circle_2 &ca1, -% const Circle_2 &ca2, -% OutputIterator res);} -% {Calls the operator() of \ccc{CircularKernel::Intersect_2}.} - -%\ccFunction{template < class CircularKernel, class OutputIterator > -% OutputIterator intersect -% (const Circular_arc_2 &ca1, -% const Circular_arc_2 &ca2, -% OutputIterator res);} -% {Calls the operator() of \ccc{CircularKernel::Intersect_2}.} - -%\ccSeeAlso - -%\ccRefConceptPage{CircularKernel::Intersect_2} -%\end{ccRefFunction} - -\begin{ccRefFunction}{get_equation} - -\ccFunction{template < class CircularKernel > - CircularKernel::Polynomial_1_2 - get_equation(const Line_2 & c);} - {Calls the operator() of \ccc{CircularKernel::GetEquation}.} - -\ccFunction{template < class CircularKernel > - CircularKernel::Polynomial_for_circles_2_2 - get_equation(const Circle_2 & c);} - {Calls the operator() of \ccc{CircularKernel::GetEquation}.} - -\ccSeeAlso - -\ccRefConceptPage{CircularKernel::GetEquation} \end{ccRefFunction} diff --git a/Circular_kernel_2/doc_tex/Circular_kernel_2_ref/intro.tex b/Circular_kernel_2/doc_tex/Circular_kernel_2_ref/intro.tex index 2ac74a6ff2a..43bbcbcad2b 100644 --- a/Circular_kernel_2/doc_tex/Circular_kernel_2_ref/intro.tex +++ b/Circular_kernel_2/doc_tex/Circular_kernel_2_ref/intro.tex @@ -40,6 +40,8 @@ \ccRefConceptPage{CircularKernel::DoOverlap_2} +\ccRefConceptPage{CircularKernel::DoIntersect_2} + \ccRefConceptPage{CircularKernel::BoundedSide_2}\\ \ccRefConceptPage{CircularKernel::HasOnBoundedSide_2}\\ \ccRefConceptPage{CircularKernel::HasOnUnboundedSide_2} @@ -60,6 +62,10 @@ \ccRefConceptPage{CircularKernel::GetEquation} +% \subsubsection*{Global functions} + +%\ccRefIdfierPage{CGAL::intersection} +%\ccRefIdfierPage{CGAL::do_intersect} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \section{Algebraic Concepts} @@ -133,24 +139,3 @@ \ccRefIdfierPage{CGAL::Root_for_circles_2_2} \ccRefIdfierPage{CGAL::Root_of_traits_2} - - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%\section{Geometric global functions} - -% \subsubsection*{Predicates} -%\ccRefIdfierPage{CGAL::compare_x}\\ -%\ccRefIdfierPage{CGAL::compare_y}\\ -%\ccRefIdfierPage{CGAL::compare_xy} - -%%\ccRefIdfierPage{CGAL::compare_y_at_x}\\ -%%\ccRefIdfierPage{CGAL::compare_y_to_right} - -% \subsubsection*{Constructions} -%%\ccRefIdfierPage{CGAL::make_x_monotone}\\ -%%\ccRefIdfierPage{CGAL::intersect} - -%\ccRefIdfierPage{CGAL::make_root_of_2} - -% \subsubsection*{Accessors} -%\ccRefIdfierPage{CGAL::get_equation}