All Polygon_2::erase() overloads now return an iterator or a circulator,
to make them more convenient (and STL-like).
That patch is a non-significant contribution (as regard the owernship of
code) from a CGAL-discuss user.
Tested in CGAL-4.4.-Ic-91.
Enhance test/Mesh_3/test_meshing_polylines_only.cpp
- It was far too verbose.
- It was not really testing anything but the absence of assertions.
Tested in CGAL-4.4-Ic-91.
The section 'Non const access' of the documentation of Triangulation_2
was including const methods. I move the const method in the section
'Access Functions'.
That function set_shared_data is never tested in CGAL, happened not to
be callable using its documented API. I do not understand why there is
an additional template parameter 'PrimtiveType'. That commit removes it.
(cherry picked from commit 99790a0d39864c3d2e72d18876f41603ab94a5a5)
Introduces the Triangulated Surface Mesh Segmentation Package
See also wiki/Features/Surface_mesh_segmentation
Tested in 4.4-Ic-84
Approved by the release manager
Conflicts:
Documentation/biblio/how_to_cite.html
Documentation/biblio/manual-4.3.bib
Manual/doc_tex/Manual/geom.bib
Small feature:
cgal.org/wiki/Features/Small_Features/Boolean_tag_is_a_Boost_Integral_Constant
Now CGAL::Boolean_tag<true> and CGAL::Boolean_tag<true> are model of the
Boost concept "Integral Constant".
Tested in CGAL-4.4-Ic-84.
The Intel Compiler 14.0, with -O2 or -O3, triggers a bug in the old
version of the code. After the construction of the filtered circulator,
`test(*this)` was not guaranteed. I am not sure if the bug is in the
code or in the compiler, but the constructor was an ugly piece of
code! (*this) was used in the body of the constructor in non obvious
ways. An object is reputed constructed once the internalizers are
evaluated, as far as I know, so probably the previous version of the
code was valid. However, that sound strange to copy an object inside the
body of the constructor of that object. Maybe that confused the
compiler.
Anyway, I have modified the implementation of that constructor in a
cleaner way, and I have added an assertion (that was failing with the
old implementation).
The algebraic structure tests are performed following the exactness of
the coefficient type (it was assumed before that the type was exact). If
it is inexact, the polynomial traits are not tested to avoid wrong
errors.
The test 'aabb_naive_vs_tree_distance_triangle_test' failed
something. It was due to a test using an epsilon, with a too-low epsilon
value (1e-8). I managed to reproduce the bug, and the quantity compared
to the epsilon value was about 1.8e-8. I increase the epsilon value to
1e-7, and add a few lines that show the compared values, when the test
fails.
Trivial bug-fix.