Remove whitespace

This commit is contained in:
Andreas Fabri 2012-08-20 18:30:46 +00:00
parent d409ffdd7f
commit 3dfd7031c2
17 changed files with 35 additions and 35 deletions

View File

@ -165,7 +165,7 @@ concepts `Field` and `RealEmbeddable`, while
`RingNumberType` combines `IntegralDomainWithoutDivision` and `RingNumberType` combines `IntegralDomainWithoutDivision` and
`RealEmbeddable`. Algebraically, the real number types do not form `RealEmbeddable`. Algebraically, the real number types do not form
distinct structures and are therefore not listed in the concept distinct structures and are therefore not listed in the concept
hierarchy of Figure \ref figConceptHierarchyOfAlgebraicStructures . hierarchy of Figure \ref figConceptHierarchyOfAlgebraicStructures.
# Interoperability # # Interoperability #

View File

@ -146,7 +146,7 @@ such that the alpha shape satisfies the following two properties
(i) all data points are either on the boundary or in the interior (i) all data points are either on the boundary or in the interior
of the regularized version of the alpha shape (no singular faces). of the regularized version of the alpha shape (no singular faces).
(ii) The number of components is equal or less than a given number .<BR> (ii) The number of components is equal or less than a given number.
The current implementation is static, that is after its construction The current implementation is static, that is after its construction
points cannot be inserted or removed. points cannot be inserted or removed.

View File

@ -10,9 +10,9 @@ namespace CGAL {
This chapter describes the two-dimensional Apollonius graph This chapter describes the two-dimensional Apollonius graph
of \cgal. We start with a few definitions in of \cgal. We start with a few definitions in
Section \ref secapollonius2definitions . Section \ref secapollonius2definitions.
The software design of the 2D Apollonius graph package is described The software design of the 2D Apollonius graph package is described
in Section \ref secapollonius2design . in Section \ref secapollonius2design.
In Section \ref secapollonius2traits we discuss the geometric In Section \ref secapollonius2traits we discuss the geometric
traits of the 2D Apollonius graph package and in Section traits of the 2D Apollonius graph package and in Section
\ref secapollonius2hierarchy the Apollonius graph hierarchy, a data \ref secapollonius2hierarchy the Apollonius graph hierarchy, a data

View File

@ -18,7 +18,7 @@
The optimization code uses infix `OPTIMISATION` in the assertions, The optimization code uses infix `OPTIMISATION` in the assertions,
e.g. defining the compiler flag e.g. defining the compiler flag
`CGAL_OPTIMISATION_NO_PRECONDITIONS` switches precondition `CGAL_OPTIMISATION_NO_PRECONDITIONS` switches precondition
checking off, cf. Section \ref secchecks . checking off, cf. Section \ref secchecks.
*/ */

View File

@ -289,7 +289,7 @@ otherwise the box might shrink and one might miss intersections.
\section secboxintersparams Example Using the topology and the cutoff Parameters \section secboxintersparams Example Using the topology and the cutoff Parameters
Boxes can be interpreted by the box intersection algorithm as closed Boxes can be interpreted by the box intersection algorithm as closed
or as half-open boxes, see also Section \ref secboxintersdef . Closed or as half-open boxes, see also Section \ref secboxintersdef. Closed
boxes support zero-width boxes and they can intersect at their boxes support zero-width boxes and they can intersect at their
boundaries, while half-open boxes always have a positive volume and boundaries, while half-open boxes always have a positive volume and
they only intersect iff their interiors overlap. The choice between they only intersect iff their interiors overlap. The choice between
@ -304,7 +304,7 @@ parameter and its two values:
The example program uses a two-dimensional box with `int` The example program uses a two-dimensional box with `int`
coordinates and `id`-numbers that are by default explicitly coordinates and `id`-numbers that are by default explicitly
stored. We create the same boxes as in the minimal example in stored. We create the same boxes as in the minimal example in
Section \ref secboxintersectminimal . We create a \f$ 3 \times 3\f$ grid Section \ref secboxintersectminimal. We create a \f$ 3 \times 3\f$ grid
of `boxes`, and two boxes for the `query` sequence, namely the of `boxes`, and two boxes for the `query` sequence, namely the
box at the center and the box from the upper-right corner of the grid. box at the center and the box from the upper-right corner of the grid.
@ -379,7 +379,7 @@ box intersection is reported to an empty dummy callback.
For each box set, a near-optimal cutoff parameter is determined using For each box set, a near-optimal cutoff parameter is determined using
an adaptive approximation. The runtime required for streaming is an adaptive approximation. The runtime required for streaming is
compared against usual scanning. Results on a Xeon 2.4GHz with 4GB compared against usual scanning. Results on a Xeon 2.4GHz with 4GB
main memory can be seen in Figure \ref fig_benchmark . For a small main memory can be seen in Figure \ref fig_benchmark. For a small
number of boxes, pure scanning is still faster than streaming with number of boxes, pure scanning is still faster than streaming with
optimal cutoff, which would just delegate the box sets to the scanning optimal cutoff, which would just delegate the box sets to the scanning
algorithm. As there are more and more boxes, the overhead becomes less algorithm. As there are more and more boxes, the overhead becomes less

View File

@ -66,10 +66,10 @@ polyhedron and therefore selected, but in case of the open unit cube
which allows the correct representation of Nef polyhedra, which are which allows the correct representation of Nef polyhedra, which are
closed under Boolean and topological operations. Details can be found closed under Boolean and topological operations. Details can be found
in the chapter on 3D Boolean operations on Nef in the chapter on 3D Boolean operations on Nef
polyhedra \ref chapterNef3 . polyhedra \ref chapterNef3.
Usually, an instance of `Nef_polyhedron_3` does not contain any Usually, an instance of `Nef_polyhedron_3` does not contain any
redundant items. However, the function `convex_decomposition_3` redundant items. However, the function `::convex_decomposition_3`
subdivides selected volumes of a given `Nef_polyhedron_3` by subdivides selected volumes of a given `Nef_polyhedron_3` by
selected facets. These additional facets are therefore redundant, selected facets. These additional facets are therefore redundant,
i.e., their insertion alters the representation of the polyhedron, but i.e., their insertion alters the representation of the polyhedron, but

View File

@ -10,7 +10,7 @@ and the plane equations of each face are not computed.
\pre There are at least four points in the range \pre There are at least four points in the range
[`first`, `last`) not all of which are collinear. [`first`, `last`) not all of which are collinear.
The function `convex_hull_3` computes the convex hull of a given set of The function `::convex_hull_3` computes the convex hull of a given set of
three-dimensional points three-dimensional points
Two versions of this function Two versions of this function
are available. The first can be used when it is known that the result are available. The first can be used when it is known that the result
@ -44,7 +44,7 @@ and for the second, it is required that
For both versions, if the kernel `R` of the points determined by `InputIterator::value_type` For both versions, if the kernel `R` of the points determined by `InputIterator::value_type`
is a kernel with exact predicates but inexact constructions is a kernel with exact predicates but inexact constructions
(in practice we check `R::Has_filtered_predicates_tag` is `Tag_true` and `R::FT` is a floating point type), (in practice we check `R::Has_filtered_predicates_tag` is `Tag_true` and `R::FT` is a floating point type),
then the default traits class of `convex_hull_3` is `Convex_hull_traits_3<R>`, and `R` otherwise. then the default traits class of `::convex_hull_3` is `Convex_hull_traits_3<R>`, and `R` otherwise.
\sa `CGAL::convex_hull_incremental_3` \sa `CGAL::convex_hull_incremental_3`
\sa `CGAL::ch_eddy` \sa `CGAL::ch_eddy`
@ -62,7 +62,7 @@ Example
The following program computes the convex hull of a set of 250 random The following program computes the convex hull of a set of 250 random
points chosen from a sphere of radius 100. It then determines if the resulting points chosen from a sphere of radius 100. It then determines if the resulting
hull is a segment or a polyhedron. Notice that the traits class is not hull is a segment or a polyhedron. Notice that the traits class is not
necessary in the call to `convex_hull_3` but is used in the definition necessary in the call to `::convex_hull_3` but is used in the definition
of `Polyhedron_3`. of `Polyhedron_3`.
\cgalexample{Convex_hull_3/quickhull_3.cpp} \cgalexample{Convex_hull_3/quickhull_3.cpp}

View File

@ -192,7 +192,7 @@ Convex_hull_d<R>(int d, R Kernel = R());
/// @{ /// @{
/*! /*!
returns the dimension of ambient space returns the dimension of ambient space.
*/ */
int dimension() ; int dimension() ;

View File

@ -42,7 +42,7 @@ The convex hull class is parameterized by a traits class that provides
model <I>e.g.</I>, `Homogeneous<RT>` or `Cartesian<FT>` for use model <I>e.g.</I>, `Homogeneous<RT>` or `Cartesian<FT>` for use
with `Convex_hull_d`, where the dimension is fixed to three. with `Convex_hull_d`, where the dimension is fixed to three.
The validity of the computed convex hull can be checked using the The validity of the computed convex hull can be checked using the
member function `is_valid`, which implements the algorithm member function `::is_valid`, which implements the algorithm
of Mehlhorn <I>et al.</I>\cite mnssssu-cgpvg-96 to determine if of Mehlhorn <I>et al.</I>\cite mnssssu-cgpvg-96 to determine if
the vertices of a given polytope constitute a strongly convex point the vertices of a given polytope constitute a strongly convex point
set or not. set or not.

View File

@ -18,9 +18,9 @@ generators and second deterministic point generators. Most random
point generators and a few deterministic point generators are provided point generators and a few deterministic point generators are provided
as input iterators. The input iterators model an infinite sequence of as input iterators. The input iterators model an infinite sequence of
points. The function `CGAL::cpp0x::copy_n()` can be used to copy a points. The function `CGAL::cpp0x::copy_n()` can be used to copy a
finite sequence; see Section \ref sectionCopyN . The iterator adaptor finite sequence; see Section \ref sectionCopyN. The iterator adaptor
`Counting_iterator` can be used to create finite iterator `Counting_iterator` can be used to create finite iterator
ranges; see Section \ref sectionCountingIterator . ranges; see Section \ref sectionCountingIterator.
Other generators are provided as functions that write to output Other generators are provided as functions that write to output
iterators. Further functions add degeneracies or random perturbations. iterators. Further functions add degeneracies or random perturbations.
@ -40,7 +40,7 @@ distributed in a sphere (`Random_points_in_sphere_3`)
or cube (`Random_points_in_cube_3`) or on the boundary of a sphere or cube (`Random_points_in_cube_3`) or on the boundary of a sphere
(`Random_points_on_sphere_3`). (`Random_points_on_sphere_3`).
For generating 3D grid points, we provide the function For generating 3D grid points, we provide the function
`points_on_cube_grid_3` that writes to `::points_on_cube_grid_3` that writes to
an output iterator. an output iterator.
For higher dimensions, input iterators are provided for random points uniformly For higher dimensions, input iterators are provided for random points uniformly

View File

@ -224,7 +224,7 @@ In addition, the class `Monge_via_jet_fitting` stores
This concept provides the types for the input sample points, together This concept provides the types for the input sample points, together
with \f$ 3d\f$ vectors and a number type. It is used as template for the with \f$ 3d\f$ vectors and a number type. It is used as template for the
class `Monge_via_jet_fitting<DataKernel, LocalKernel, SvdTraits>` . Typically, one can use class `Monge_via_jet_fitting<DataKernel, LocalKernel, SvdTraits>`. Typically, one can use
`CGAL::Cartesian<double>`. `CGAL::Cartesian<double>`.
## Template parameter <TT>LocalKernel</TT> ## ## Template parameter <TT>LocalKernel</TT> ##

View File

@ -32,7 +32,7 @@
The optimization code uses infix `OPTIMISATION` in the assertions, The optimization code uses infix `OPTIMISATION` in the assertions,
e.g. defining the compiler flag e.g. defining the compiler flag
`CGAL_OPTIMISATION_NO_PRECONDITIONS` switches precondition `CGAL_OPTIMISATION_NO_PRECONDITIONS` switches precondition
checking off, cf. Section \ref secchecks . checking off, cf. Section \ref secchecks.
# Classified References Pages # # Classified References Pages #

View File

@ -316,12 +316,12 @@ parameters::internal::Perturb_options perturb = parameters::perturb(),
parameters::internal::Exude_options exude = parameters::exude()); parameters::internal::Exude_options exude = parameters::exude());
\endcode \endcode
The function `make_mesh_3` generates from scratch a mesh The function `::make_mesh_3` generates from scratch a mesh
of the input domain, while of the input domain, while
the function `refine_mesh_3` refines the function `::refine_mesh_3` refines
an existing mesh of the input domain. Note that as the protection an existing mesh of the input domain. Note that as the protection
of 0- and 1-dimensional features does not rely on Delaunay of 0- and 1-dimensional features does not rely on Delaunay
refinement, the function `refine_mesh_3` has no parameter refinement, the function `r::efine_mesh_3` has no parameter
to preserve features. to preserve features.
## The data structure ## ## The data structure ##
@ -499,8 +499,8 @@ appropriate values of these types:
These parameters are optional and can be passed in any order. These parameters are optional and can be passed in any order.
If one parameter is not passed the default value is used. By default, If one parameter is not passed the default value is used. By default,
only the perturber and the exuder are activated. only the perturber and the exuder are activated.
Note that whatever may be the optimization processes activated by `make_mesh_3` Note that whatever may be the optimization processes activated by `::make_mesh_3`
or `refine_mesh_3`, or `::refine_mesh_3`,
they are always launched in the order that is a suborder they are always launched in the order that is a suborder
of the following: of the following:
`odt smoother`, `Lloyd smoother`, `perturber` and `odt smoother`, `Lloyd smoother`, `perturber` and
@ -590,7 +590,7 @@ where each subdomain corresponds to a specific tissue.
In the following example, the image is read from the file In the following example, the image is read from the file
`liner.inr.gz` which is encoded in the format of the library Inrimage `liner.inr.gz` which is encoded in the format of the library Inrimage
`http://inrimage.gforge.inria.fr/`. `http://inrimage.gforge.inria.fr/`.
The resulting mesh is shown in Figure \ref figureliver_3d_image_mesh . The resulting mesh is shown in Figure \ref figureliver_3d_image_mesh.
\cgalexample{Mesh_3/mesh_3D_image.cpp} \cgalexample{Mesh_3/mesh_3D_image.cpp}
@ -657,7 +657,7 @@ domain. We add by hand the intersection of the spheres as a sharp feature.
\anchor Mesh_3_subsection_examples_optimization \anchor Mesh_3_subsection_examples_optimization
In the previous examples, the mesh generation is launched through a call In the previous examples, the mesh generation is launched through a call
`make_mesh_3(domain,criteria)` with a minimal number of parameters. In such cases, `::make_mesh_3(domain,criteria)` with a minimal number of parameters. In such cases,
the default optimization strategy is applied: after the Delaunay refinement process the default optimization strategy is applied: after the Delaunay refinement process
two optimization steps are performed, a perturbation and a sliver exudation. two optimization steps are performed, a perturbation and a sliver exudation.
The following examples show how to disable default optimization steps The following examples show how to disable default optimization steps
@ -671,10 +671,10 @@ a perturbation phase which is launched with no time bound
and an objective of 10 degrees for the minimum dihedral angle and an objective of 10 degrees for the minimum dihedral angle
of the mesh. of the mesh.
The example shows two ways of achieving the same result. The first way The example shows two ways of achieving the same result. The first way
issues a single call to `make_mesh_3` with the required optimization issues a single call to `::make_mesh_3` with the required optimization
process activated and tuned. In the second way, `make_mesh_3` is first called process activated and tuned. In the second way, `::make_mesh_3` is first called
without any optimization process and the resulting mesh is next optimized without any optimization process and the resulting mesh is next optimized
through a call to `perturb_mesh_3` with tuned parameters. through a call to `::perturb_mesh_3` with tuned parameters.
\cgalexample{Mesh_3/mesh_optimization_example.cpp} \cgalexample{Mesh_3/mesh_optimization_example.cpp}

View File

@ -125,7 +125,7 @@ contains `S.number_of_holes()` holes in its interior).
</center> </center>
The following example program constructs the Minkowski sum of two triangles, The following example program constructs the Minkowski sum of two triangles,
as depicted in Figure \ref mink_figsum_tri . The result in this case is as depicted in Figure \ref mink_figsum_tri. The result in this case is
a convex hexagon. This program, as other example programs in this chapter, a convex hexagon. This program, as other example programs in this chapter,
includes the auxiliary header file `ms_rational_nt.h` which defines includes the auxiliary header file `ms_rational_nt.h` which defines
`Number_type` as either `Gmpq` or `Quotient<MP_Float>`, `Number_type` as either `Gmpq` or `Quotient<MP_Float>`,

View File

@ -16,7 +16,7 @@ the class `CGAL::Real\_timer` is the version for the real time.
Instantiations of both classes are objects with a state. The state is Instantiations of both classes are objects with a state. The state is
either <I>running/</I> or it is <I>stopped</I>. The state of an object either <I>running/</I> or it is <I>stopped</I>. The state of an object
`t` is controlled `t` is controlled
with `t.start()` and `t.stop()` . The timer counts the with `t.start()` and `t.stop()`. The timer counts the
time elapsed since its creation or last reset. It counts only the time time elapsed since its creation or last reset. It counts only the time
where it is in the running state. The time information is given in seconds. where it is in the running state. The time information is given in seconds.
The timer counts also the number of intervals it was running, i.e. it The timer counts also the number of intervals it was running, i.e. it
@ -80,7 +80,7 @@ of the polyhedron.
The solution provided here is inspired by the strategy The solution provided here is inspired by the strategy
pattern \cite cgal:ghjv-dpero-95, though it serves a different intent, see pattern \cite cgal:ghjv-dpero-95, though it serves a different intent, see
Figure \ref figureModifierDesign . The abstract base class Figure \ref figureModifierDesign. The abstract base class
`Modifier_base<R>` declares a pure virtual member function `Modifier_base<R>` declares a pure virtual member function
`operator()` that accepts a single reference parameter of the `operator()` that accepts a single reference parameter of the
internal representation type. The member function `delegate()` of internal representation type. The member function `delegate()` of

View File

@ -15,7 +15,7 @@ uses three-valued comparisons and offers additional functionality,
generic algorithms, iterators, functor adaptors for binding and swapping generic algorithms, iterators, functor adaptors for binding and swapping
arguments and for composition, functors for projection and creation and arguments and for composition, functors for projection and creation and
adaptor classes around iterators and circulators. See also circulators in adaptor classes around iterators and circulators. See also circulators in
Chapter \ref chapterCirculators . A class storing polymorphic objects Chapter \ref chapterCirculators. A class storing polymorphic objects
is also provided, as well as a class to manage the uncertainty of some values. is also provided, as well as a class to manage the uncertainty of some values.
Finally, tags and policy classes to specify complexity trade-offs of data-structures, Finally, tags and policy classes to specify complexity trade-offs of data-structures,
and a class which helps specifying that the default types in template and a class which helps specifying that the default types in template

View File

@ -398,7 +398,7 @@ Therefore, the `Exact_predicates_inexact_constructions_kernel` should be used.
\cgalexample{Straight_skeleton_2/Low_level_API.cpp} \cgalexample{Straight_skeleton_2/Low_level_API.cpp}
## Exterior Skeletons and Exterior Offset contours ## ## Exterior Skeletons and Exterior Offset Contours ##
This \cgal package can only construct the straight skeleton and offset contours in the <I>interior</I> of a polygon with holes. However, constructing exterior skeletons and exterior offsets is possible: This \cgal package can only construct the straight skeleton and offset contours in the <I>interior</I> of a polygon with holes. However, constructing exterior skeletons and exterior offsets is possible: