From 712ed586aeaabced9c8875f39eeb8ef6b142203e Mon Sep 17 00:00:00 2001 From: Susan Hert Date: Tue, 18 Apr 2000 17:57:31 +0000 Subject: [PATCH] updated rcs_spec.tex to fix the example program. --- .../doc_tex/Generator/generators.tex | 51 ++++++++++++------- .../doc_tex/support/Generator/generators.tex | 51 ++++++++++++------- 2 files changed, 64 insertions(+), 38 deletions(-) diff --git a/Packages/Generator/doc_tex/Generator/generators.tex b/Packages/Generator/doc_tex/Generator/generators.tex index 2c44b42d687..ceded899a24 100644 --- a/Packages/Generator/doc_tex/Generator/generators.tex +++ b/Packages/Generator/doc_tex/Generator/generators.tex @@ -66,8 +66,8 @@ sets with multiple entries of identical items. % +------------------------------------------------------------------------+ \section{2D Point Generators} \label{sectionPointGenerators} -\ccIndexSubitemBegin[c]{generator}{2D point} -\ccIndexSubitemBegin[c]{point, 2D}{generator} +\lcTex{\ccIndexSubitemBegin[c]{generator}{2D point}} +\lcTex{\ccIndexSubitemBegin[c]{point, 2D}{generator}} Two kinds of point generators are provided: first, random point generators and second deterministic point generators. Most random @@ -83,7 +83,7 @@ iterators. Further functions add degeneracies or random perturbations. % +------------------------------------------------------------------------+ \subsection{Point Generators as Input Iterators} -\ccIndexSubsubitemBegin[c]{generator}{2D point}{as input iterator} +\lcTex{\ccIndexSubsubitemBegin[c]{generator}{2D point}{as input iterator}} \ccDefinition @@ -204,22 +204,27 @@ denoted by \ccc{P} here. \ccOperations \ccThree{double}{g.source();}{} -\ccAutoIndexingOff +\lcTex{\ccAutoIndexingOff} \ccMethod{double range();}{returns the range in which the point coordinates lie, i.e.~$\forall x: |x| \leq $\ccc{range()} and - $\forall y: |y| \leq $\ccc{range()}.}\ccIndexSubitem[C]{range}{\ccFont Random_points_*_2} + $\forall y: |y| \leq $\ccc{range()}.}% +\lcTex{\ccIndexSubitem[C]{range}{\ccFont Random_points_*_2}} The generators \ccc{Random_points_on_segment_2} and \ccc{Points_on_segment_2} have two additional methods. \ccMethod{const P& source();}{returns the source point of the segment.}% +\lcTex{ \ccIndexSubitem[C]{source}{\ccFont Random_points_on_segment_2}% \ccIndexSubitem[C]{source}{\ccFont Points_on_segment_2}% +}% \ccGlue \ccMethod{const P& target();}{returns the target point of the segment.} +\lcTex{ \ccIndexSubitem[C]{target}{\ccFont Random_points_on_segment_2}% \ccIndexSubitem[C]{target}{\ccFont Points_on_segment_2}% \ccAutoIndexingOn +}% \end{ccClassTemplate} @@ -230,16 +235,16 @@ The generators \ccc{Random_points_on_segment_2} and \ccc{copy_n}, \ccc{Counting_iterator}, \ccTexHtml{\\}{} \ccc{Join_input_iterator_1}. -\ccIndexSubsubitemEnd[c]{generator}{2D point}{as input iterator} +\lcTex{\ccIndexSubsubitemEnd[c]{generator}{2D point}{as input iterator}} % +------------------------------------------------------------------------+ \subsection{Point Generators as Functions} -\ccIndexSubsubitemBegin[c]{generator}{2D point}{as function} +\lcTex{\ccIndexSubsubitemBegin[c]{generator}{2D point}{as function}} \ccHeading{Grid Points} \ccThree{OutputIterator}{rand}{} -\ccIndexSubsubitem[c]{generator}{2D point}{on grid} +\lcTex{\ccIndexSubsubitem[c]{generator}{2D point}{on grid}} Grid points are generated by functions that write to output iterators. @@ -274,7 +279,7 @@ Grid points are generated by functions that write to output iterators. the $n$ points.} \ccHeading{Random Perturbations} -\ccIndexMainItem{random perturbations} +\lcTex{\ccIndexMainItem{random perturbations}} Degenerate input sets like grid points can be randomly perturbed by a small amount to produce {\em quasi}-degenerate test sets. This @@ -303,7 +308,7 @@ exact predicates to compute the sign of expressions slightly off from zero. } \ccHeading{Adding Degeneracies} -\ccIndexMainItem{degeneracies in input, adding} +\lcTex{\ccIndexMainItem{degeneracies in input, adding}} For a given point set certain kinds of degeneracies can be produced adding new points. The \ccc{random_selection()} function is @@ -339,7 +344,7 @@ a point set. coordinate values. } \def\ccLongParamLayout{\ccFalse} -\ccIndexSubsubitemEnd[c]{generator}{2D point}{as function} +\lcTex{\ccIndexSubsubitemEnd[c]{generator}{2D point}{as function}} \ccSeeAlso @@ -416,15 +421,19 @@ for the example output. alt="Integer Point Generator Example Output"> \end{ccHtmlOnly}% +\lcTex{ \ccIndexSubitemEnd[c]{generator}{2D point}% \ccIndexSubitemEnd[c]{point, 2D}{generator}% +} % +------------------------------------------------------------------------+ \newpage \section{3D Point Generators} +\lcTex{ \ccIndexSubitemBegin[c]{generator}{3D point} \ccIndexSubitemBegin[c]{point, 3D}{generator} +} One kind of point generator is currently provided for 3D points: Random point generators implemented as input iterators. The input iterators model @@ -504,9 +513,10 @@ include local type declarations including \ccc{value_type}, denoted by Three random numbers are needed from \ccc{rnd} for each point. } \end{ccClassTemplate} +\lcTex{ \ccIndexSubitemEnd[c]{generator}{3D point} \ccIndexSubitemEnd[c]{point, 3D}{generator} -%\ccIndexSubitemEnd[c]{generator}{3D point} +} \ccSeeAlso @@ -520,11 +530,12 @@ include local type declarations including \ccc{value_type}, denoted by % +------------------------------------------------------------------------+ \newpage \section{Examples Generating Segments} -\ccIndexSubitemBegin[c]{generator}{segment} +\lcTex{\ccIndexSubitemBegin[c]{generator}{segment}} The following two examples illustrate the use of the generic functions from Section~\ref{sectionGenericFunctions} like -\ccc{Join_input_iterator_2}\ccIndexGlobalFunction{Join_input_iterator_2} to generate +\ccc{Join_input_iterator_2}% +\lcTex{\ccIndexGlobalFunction{Join_input_iterator_2}} to generate composed objects from other generators -- here two-dimensional segments from two point generators. @@ -574,10 +585,12 @@ The second example generates a regular structure of 100 segments; see \ccTexHtml{Figure~\ref{figureSegmentGeneratorFan}}{Figure reference arrow} for the example -output. It uses the \ccc{Points_on_segment_2}\ccIndexGlobalFunction{Points_on_segment_2} iterator, -\ccc{Join_input_iterator_2}\ccIndexGlobalFunction{Join_input_iterator_2} -and \ccc{Counting_iterator}\ccIndexGlobalFunction{Counting_iterator} to -avoid any intermediate storage of the generated objects until they are +output. It uses the \ccc{Points_on_segment_2}% +\lcTex{\ccIndexGlobalFunction{Points_on_segment_2}} iterator, +\ccc{Join_input_iterator_2}% +\lcTex{\ccIndexGlobalFunction{Join_input_iterator_2}} +and \ccc{Counting_iterator}%\lcTex{\ccIndexGlobalFunction{Counting_iterator}} +to avoid any intermediate storage of the generated objects until they are used, which in this example means copied to a window stream. \ccIncludeVerbatim{Segment_generator_prog2.C} @@ -595,7 +608,7 @@ used, which in this example means copied to a window stream. alt="Segment Generator Example Output 2"> \end{ccHtmlOnly} -\ccIndexSubitemEnd[c]{generator}{segment} +\lcTex{\ccIndexSubitemEnd[c]{generator}{segment}} % +--------------------------------------------------------+ diff --git a/Packages/Generator/doc_tex/support/Generator/generators.tex b/Packages/Generator/doc_tex/support/Generator/generators.tex index 2c44b42d687..ceded899a24 100644 --- a/Packages/Generator/doc_tex/support/Generator/generators.tex +++ b/Packages/Generator/doc_tex/support/Generator/generators.tex @@ -66,8 +66,8 @@ sets with multiple entries of identical items. % +------------------------------------------------------------------------+ \section{2D Point Generators} \label{sectionPointGenerators} -\ccIndexSubitemBegin[c]{generator}{2D point} -\ccIndexSubitemBegin[c]{point, 2D}{generator} +\lcTex{\ccIndexSubitemBegin[c]{generator}{2D point}} +\lcTex{\ccIndexSubitemBegin[c]{point, 2D}{generator}} Two kinds of point generators are provided: first, random point generators and second deterministic point generators. Most random @@ -83,7 +83,7 @@ iterators. Further functions add degeneracies or random perturbations. % +------------------------------------------------------------------------+ \subsection{Point Generators as Input Iterators} -\ccIndexSubsubitemBegin[c]{generator}{2D point}{as input iterator} +\lcTex{\ccIndexSubsubitemBegin[c]{generator}{2D point}{as input iterator}} \ccDefinition @@ -204,22 +204,27 @@ denoted by \ccc{P} here. \ccOperations \ccThree{double}{g.source();}{} -\ccAutoIndexingOff +\lcTex{\ccAutoIndexingOff} \ccMethod{double range();}{returns the range in which the point coordinates lie, i.e.~$\forall x: |x| \leq $\ccc{range()} and - $\forall y: |y| \leq $\ccc{range()}.}\ccIndexSubitem[C]{range}{\ccFont Random_points_*_2} + $\forall y: |y| \leq $\ccc{range()}.}% +\lcTex{\ccIndexSubitem[C]{range}{\ccFont Random_points_*_2}} The generators \ccc{Random_points_on_segment_2} and \ccc{Points_on_segment_2} have two additional methods. \ccMethod{const P& source();}{returns the source point of the segment.}% +\lcTex{ \ccIndexSubitem[C]{source}{\ccFont Random_points_on_segment_2}% \ccIndexSubitem[C]{source}{\ccFont Points_on_segment_2}% +}% \ccGlue \ccMethod{const P& target();}{returns the target point of the segment.} +\lcTex{ \ccIndexSubitem[C]{target}{\ccFont Random_points_on_segment_2}% \ccIndexSubitem[C]{target}{\ccFont Points_on_segment_2}% \ccAutoIndexingOn +}% \end{ccClassTemplate} @@ -230,16 +235,16 @@ The generators \ccc{Random_points_on_segment_2} and \ccc{copy_n}, \ccc{Counting_iterator}, \ccTexHtml{\\}{} \ccc{Join_input_iterator_1}. -\ccIndexSubsubitemEnd[c]{generator}{2D point}{as input iterator} +\lcTex{\ccIndexSubsubitemEnd[c]{generator}{2D point}{as input iterator}} % +------------------------------------------------------------------------+ \subsection{Point Generators as Functions} -\ccIndexSubsubitemBegin[c]{generator}{2D point}{as function} +\lcTex{\ccIndexSubsubitemBegin[c]{generator}{2D point}{as function}} \ccHeading{Grid Points} \ccThree{OutputIterator}{rand}{} -\ccIndexSubsubitem[c]{generator}{2D point}{on grid} +\lcTex{\ccIndexSubsubitem[c]{generator}{2D point}{on grid}} Grid points are generated by functions that write to output iterators. @@ -274,7 +279,7 @@ Grid points are generated by functions that write to output iterators. the $n$ points.} \ccHeading{Random Perturbations} -\ccIndexMainItem{random perturbations} +\lcTex{\ccIndexMainItem{random perturbations}} Degenerate input sets like grid points can be randomly perturbed by a small amount to produce {\em quasi}-degenerate test sets. This @@ -303,7 +308,7 @@ exact predicates to compute the sign of expressions slightly off from zero. } \ccHeading{Adding Degeneracies} -\ccIndexMainItem{degeneracies in input, adding} +\lcTex{\ccIndexMainItem{degeneracies in input, adding}} For a given point set certain kinds of degeneracies can be produced adding new points. The \ccc{random_selection()} function is @@ -339,7 +344,7 @@ a point set. coordinate values. } \def\ccLongParamLayout{\ccFalse} -\ccIndexSubsubitemEnd[c]{generator}{2D point}{as function} +\lcTex{\ccIndexSubsubitemEnd[c]{generator}{2D point}{as function}} \ccSeeAlso @@ -416,15 +421,19 @@ for the example output. alt="Integer Point Generator Example Output"> \end{ccHtmlOnly}% +\lcTex{ \ccIndexSubitemEnd[c]{generator}{2D point}% \ccIndexSubitemEnd[c]{point, 2D}{generator}% +} % +------------------------------------------------------------------------+ \newpage \section{3D Point Generators} +\lcTex{ \ccIndexSubitemBegin[c]{generator}{3D point} \ccIndexSubitemBegin[c]{point, 3D}{generator} +} One kind of point generator is currently provided for 3D points: Random point generators implemented as input iterators. The input iterators model @@ -504,9 +513,10 @@ include local type declarations including \ccc{value_type}, denoted by Three random numbers are needed from \ccc{rnd} for each point. } \end{ccClassTemplate} +\lcTex{ \ccIndexSubitemEnd[c]{generator}{3D point} \ccIndexSubitemEnd[c]{point, 3D}{generator} -%\ccIndexSubitemEnd[c]{generator}{3D point} +} \ccSeeAlso @@ -520,11 +530,12 @@ include local type declarations including \ccc{value_type}, denoted by % +------------------------------------------------------------------------+ \newpage \section{Examples Generating Segments} -\ccIndexSubitemBegin[c]{generator}{segment} +\lcTex{\ccIndexSubitemBegin[c]{generator}{segment}} The following two examples illustrate the use of the generic functions from Section~\ref{sectionGenericFunctions} like -\ccc{Join_input_iterator_2}\ccIndexGlobalFunction{Join_input_iterator_2} to generate +\ccc{Join_input_iterator_2}% +\lcTex{\ccIndexGlobalFunction{Join_input_iterator_2}} to generate composed objects from other generators -- here two-dimensional segments from two point generators. @@ -574,10 +585,12 @@ The second example generates a regular structure of 100 segments; see \ccTexHtml{Figure~\ref{figureSegmentGeneratorFan}}{Figure reference arrow} for the example -output. It uses the \ccc{Points_on_segment_2}\ccIndexGlobalFunction{Points_on_segment_2} iterator, -\ccc{Join_input_iterator_2}\ccIndexGlobalFunction{Join_input_iterator_2} -and \ccc{Counting_iterator}\ccIndexGlobalFunction{Counting_iterator} to -avoid any intermediate storage of the generated objects until they are +output. It uses the \ccc{Points_on_segment_2}% +\lcTex{\ccIndexGlobalFunction{Points_on_segment_2}} iterator, +\ccc{Join_input_iterator_2}% +\lcTex{\ccIndexGlobalFunction{Join_input_iterator_2}} +and \ccc{Counting_iterator}%\lcTex{\ccIndexGlobalFunction{Counting_iterator}} +to avoid any intermediate storage of the generated objects until they are used, which in this example means copied to a window stream. \ccIncludeVerbatim{Segment_generator_prog2.C} @@ -595,7 +608,7 @@ used, which in this example means copied to a window stream. alt="Segment Generator Example Output 2"> \end{ccHtmlOnly} -\ccIndexSubitemEnd[c]{generator}{segment} +\lcTex{\ccIndexSubitemEnd[c]{generator}{segment}} % +--------------------------------------------------------+