Commit Graph

1654 Commits

Author SHA1 Message Date
Clement Jamin 319680fc97 Use unordered_set instead of set 2014-05-15 14:53:41 +02:00
Aymeric PELLE b899f9f346 Fix in the CMakeLists.txt file of Mesh_3 tests. 2014-05-15 13:55:54 +02:00
Laurent Rineau 4d8d5d8123 Conditionally protect sharp features
There is now an additional checkbox in the dialog UI.
2014-05-15 12:05:38 +02:00
Laurent Rineau 9753495637 Patch_id of Polyhedron is a pair<int,int> 2014-05-15 11:32:56 +02:00
Laurent Rineau cfb1ecb2d1 Use CGAL::internal::Mesh_3::C3t3_initializer
... instead of doing the job ourselves.
2014-05-15 11:31:48 +02:00
Laurent Rineau c73f2b99a6 Useless include 2014-05-15 10:57:19 +02:00
Laurent Rineau 1ec6cd429a Be able to deal with Patch_id=pair<int,int>
So far, the files
  <CGAL/Mesh_3/Detect_features_in_polyhedra.h>
  <CGAL/Mesh_polyhedron_3.h>
were assuming that the Patch_id was an integral type. Now they assumes
that it is either an integral type, or a pair of integral types.
2014-05-15 10:57:03 +02:00
Aymeric PELLE 09e56c5bfd Fix some warnings for Windows.
In the deprecated class Implicit_vector_to_labeled_function_wrapper,
an implicit conversion from an unsigned int to a signed int caused a warning.
On windows, pragma message needs parenthesis.
2014-05-14 19:42:04 +02:00
Clement Jamin f3c00442fd Merge branch 'Mesh_3-parallel-cjamin-old' into Mesh_3-parallel-cjamin 2014-05-14 19:05:40 +02:00
Clement Jamin 6682dc8781 Remove temporary error message. 2014-05-14 17:26:12 +02:00
Clement Jamin ee62a39a90 Add a test in the script 2014-05-14 17:25:30 +02:00
Clement Jamin 0155d59566 Code clean-up 2014-05-14 17:24:44 +02:00
Laurent Rineau 7889b90645 Demo: if you define
CGAL_MESH_3_DEMO_ACTIVATE_SHARP_FEATURES_IN_POLYHEDRAL_DOMAIN, the sharp
features are now detected and handled on polyhedral domains. The
drawback is that it disables the other oracles (implicit...) because
Triangulation and C3t3 are not compatible anymore (gives compilation
errors, which seem very difficult to solve).

Cherry-pick from:
  commit 416691ef8a
  Author: Clément Jamin <clement.jamin@inria.fr>
  Date:   Mon Sep 24 14:02:13 2012 +0000
from Mesh_3-parallel-cjamin
2014-05-14 15:41:54 +02:00
Aymeric PELLE 78261fcdc2 Function are wrapped into struct in two tests of Mesh_3.
Some compilers seems to not manage function reference.
2014-05-13 19:49:32 +02:00
Aymeric PELLE 0fd7474b06 Add two pragmas because the warning macro isn't available with all platforms. 2014-05-13 19:47:08 +02:00
Jane Tournois e97506adb7 Merge branch 'Triangulation_3-regular_cell_base_with_circumcenter-GF'
Resolve conflicts in Mesh_3/include/CGAL/Mesh_3/config.h

This branch implements the small feature described here :
https://cgal.geometryfactory.com/CGAL/Members/wiki/Features/Small_Features/circumcenter%28%29_in_RT3_cell_base

It makes consistent implementations of dual(cell) in RT3 and DT3 :
they both return cell->circumcenter(gt) now

Approved by the release manager
2014-05-13 14:52:13 +02:00
Laurent Rineau 80ec1ff80b Merge branch 'Mesh_3-fix_Mesh_3_CGAL_4.3-lrineau'
Fix bugs introduced in CGAL-4.3.

Tested in CGAL-4.5-Ic-35

Approved by the release manager
2014-05-12 14:42:40 +02:00
Laurent Rineau 3c3b0a013a Fix expected number of cells 2014-05-12 14:41:36 +02:00
Laurent Rineau 3224c40861 Fix the number of inserted balls
With CGAL_MESH_3_NO_PROTECTION_NON_LINEAR==1, the number of protecting
balls is higher.
2014-05-09 10:49:19 +02:00
Laurent Rineau cd94d98168 Revert "Revert an incorrect push I did"
This reverts commit 33cb60cc29.
2014-05-07 15:24:25 +02:00
Laurent Rineau 33cb60cc29 Revert an incorrect push I did 2014-05-07 15:18:53 +02:00
Laurent Rineau bcefbcb8bd Merge remote-tracking branch 'origin/Periodic_3_mesh_3-Extended_mesh_3-MBogdanov' into Periodic_3_mesh_3-Extended_mesh_3-MBogdanov 2014-05-07 13:56:27 +02:00
Laurent Rineau 68c367a2df Revert "Revert "Merge branch 'Periodic_3_mesh_3-Extended_mesh_3-MBogdanov'""
This reverts commit 2e58135751.
2014-05-07 13:56:20 +02:00
Laurent Rineau 57050c3470 Fix another bug introduced in CGAL-4.3
An assertion was added, but that assertion cannot work if the set of
initial points is collinear (dimension 1).
2014-05-07 12:05:43 +02:00
Laurent Rineau de44fdf27e Fix a bug introduced in CGAL-4.3
The Mesh_3 experimental feature "PROTECTION_NON_LINEAR" was not
correctly disabled when the development branch of Mesh_3 was merged into
CGAL-4.3.
2014-05-07 12:05:43 +02:00
Aymeric PELLE acc69fc3af Fix : modify the CMakeLists.txt file for tests of Mesh_3. 2014-04-29 21:14:57 +02:00
Aymeric PELLE 869223f06e Add an old example as a test for testing the retro-compatibility of Implicit_vector_to_labeled_function_wrapper. 2014-04-29 20:07:47 +02:00
Aymeric PELLE 0264e0a14c Add tests for old versions of Labeled_mesh_domain_3 and Implicit_vector_to_labeled_function_wrapper. 2014-04-29 19:44:09 +02:00
Aymeric PELLE 61ddfe3014 FT_to_point_function_wrapper has a new nested type : Point. 2014-04-23 19:50:07 +02:00
Clement Jamin 9ec6d6c248 Missing #include 2014-04-23 10:41:06 +02:00
Aymeric PELLE d3dc9be69c Adds two compatibilty headers.
CGAL/Mesh_3/Labeled_mesh_domain_3.h
CGAL/Mesh_3/Implicit_to_labeled_function_wrapper.h

So, some branches in development using theses features won't be broken.
2014-04-16 20:05:53 +02:00
Aymeric PELLE a12fe7b728 Some classes are moved from the namespace CGAL::Mesh_3 to the namespace CGAL.
Labeled_mesh_domain_3.
Implicit_to_labeling_function_wrapper.
Implicit_vector_to_labeling_function_wrapper.
Implicit_multi_domain_to_labeling_function_wrapper.
2014-04-16 19:57:21 +02:00
Laurent Rineau 2e58135751 Revert "Merge branch 'Periodic_3_mesh_3-Extended_mesh_3-MBogdanov'"
This reverts commit 2ec2fb3c8e, reversing
changes made to 2ed7784521.
2014-04-16 17:37:04 +02:00
Aymeric PELLE 2ec2fb3c8e Merge branch 'Periodic_3_mesh_3-Extended_mesh_3-MBogdanov'
- This small feature adds a method to locate point with inexact predicates in
  Periodic_3_triangulation_3.
  (cf. https://cgal.geometryfactory.com/CGAL/Members/wiki/Features/Small_Features/Add_inexact_locate_in_Periodic_3_triangulation_3)
- Tested in CGAL-4.5-Ic-12
- Approved by the Release Manager.
2014-04-16 16:22:31 +02:00
Laurent Rineau bcdfdf5335 Cleanup trailing spaces 2014-04-16 15:42:46 +02:00
Laurent Rineau 14563753b7 Fix the test 2014-04-16 15:35:13 +02:00
Laurent Rineau 76e6325e50 Check the equality using the operator<< to a stringstream 2014-04-16 15:27:13 +02:00
Laurent Rineau aeb1d17cf6 "fix" the test
It seems that 700 was not a correct lower bound for the number of
protecting balls.
2014-04-16 14:59:54 +02:00
Aymeric PELLE 57a709ef09 Fix for windows : Polyline is renamed Polyline_3 in a example. 2014-04-16 13:45:59 +02:00
Laurent Rineau cf3eee72ae Add comments 2014-04-16 12:22:49 +02:00
Clement Jamin e07baefb17 Change the way we compute the exact circumcenter when needed
In some rare cases, we need to switch to exact computation for the circumcenter.
Some code for this computation is now moved from RT3 to Refine_facets.
2014-04-15 18:54:12 +02:00
Laurent Rineau 75c61a687d New implementation of Has_timestamp 2014-04-15 18:07:23 +02:00
Laurent Rineau 3c69735dde Fix the deletion of p_rng_ 2014-04-15 18:00:18 +02:00
Aymeric PELLE 3de04a47de We construct explictly wrappers in test_labeled_mesh_domain_3. 2014-04-15 17:22:10 +02:00
Jane Tournois 16d8494018 fix the use of namespaces in previous commits
in particular, fix commit 490a79566f
2014-04-15 16:24:31 +02:00
Jane Tournois 97b6fc5dcf fix include 2014-04-15 16:20:58 +02:00
Jane Tournois 490a79566f add Has_timestamp partial specialization for primitives in Mesh_polyhedron_3
they are needed to have determinism since commit
b7b1d297e9
2014-04-15 15:56:44 +02:00
Jane Tournois b7b1d297e9 fix compilation of Polyhedron demo
and make use of any Polyhedron possible
(note that if you're not using Mesh_polyhedron_3, then Mesh_3 will not be
deterministic)
2014-04-15 14:14:38 +02:00
Aymeric PELLE f008c28f7f The implicit wrapper had bad template parameter in test_labeled_mesh_domain_3.
Fix a warning : explicit conversion for the return value in
Implicit_multi_domain_to_labeling_function_wrapper.
2014-04-14 18:41:16 +02:00
Laurent Rineau 5a05ba0577 Fix Doxygen bug in the documentation of Mesh_triangulation_3 2014-04-14 15:22:41 +02:00
Laurent Rineau 60016bec63 Remove an extra ';', added by error in previous commits 2014-04-14 14:13:11 +02:00
Laurent Rineau e8134e5f25 Merge branch 'Mesh_3-fix_warnings-lrineau'
Fix warnings about unused variables/parameters

Use pragmas, when that is needed (for Boost named parameters)

Tested in CGAL-4.5-Ic-7.

Approved by the Release Manager.
2014-04-11 11:33:11 +02:00
Laurent Rineau cf5d6e041e Use pragmas to fix warnings 2014-04-10 20:06:04 +02:00
Aymeric PELLE 260a4b1bf3 Fix : Use CGAL::cpp11::get<> instead of the tuple::get<> method.
Indeed, tuple::get<> doen't exist for all configurations. (c++11, ...)
2014-04-09 14:18:12 +02:00
Aymeric PELLE 8ae6dd8ad4 Fix : Remove 'typename' in the test of the wrapper for multi domain. 2014-04-09 13:35:41 +02:00
Clement Jamin 45ea888972 Missing template parameter 2014-04-08 10:27:05 +02:00
Clement Jamin 6e8625845b Code and comments clean-up 2014-04-08 10:26:00 +02:00
Aymeric PELLE 30e71be043 Labeled_mesh_domain_3.h and Implicit_to_labeling_function_wrapper are moved.
These files are moved to Mesh_3/include/CGAL/ because they are documented,
so they can be used by users.
2014-04-07 19:12:30 +02:00
Aymeric PELLE 477f0a4ac1 Add a test for Implicit_multi_domain_to_labeling_function_wrapper.
Fix a bug with the constructor taking one parameter only.
2014-04-01 16:30:32 +02:00
Laurent Rineau ba05c364a6 Tweak the values of the test 2014-04-01 11:51:39 +02:00
Aymeric PELLE 0e9e80b872 Point type is deduced from the ImplicitFunction in the new wrapper.
In Implicit_multi_domain_to_labeling_function_wrapper, the point
type is deduced if ImplicitFunction is a pointer function, else it must
be a nested type of ImplicitFunction.
BGT isn't required anymore for this wrapper.
The constructor of Implicit_multi_domain_to_labeling_function_wrapper taking
only one argument has a new way for auto-making the vector of vector of
positions. In this case, the union of the components equals to the union
of the functions.
2014-03-31 18:42:47 +02:00
Laurent Rineau b2dd650449 Add a new test 2014-03-31 17:52:15 +02:00
Laurent Rineau 6649036c80 Fix a bug in Mesh_3
Benjamin Kehlet reported on CGAL-discuss (Tue, 25 Mar 2014 13:45:24
+0100) that Mesh_3 was not able to mesh the simple following OFF:

OFF
4 4 0

0 0 0
0 0 1
0 1 0
1 0 0
3  3 1 2
3  0 1 3
3  0 3 2
3  0 2 1

The unit tetrahedron!!

The bug was in the robust weighted circumcenter traits. The traits
checks that the circumcenter of four points is at least in the circum
sphere of the four points. But for weighted points, that is
"power_test" that must be tested, instead of "side_of_oriented_sphere".
2014-03-31 15:44:59 +02:00
Aymeric PELLE d41b708958 Add some precision in the documentation. 2014-03-28 15:39:56 +01:00
Jane Tournois 1b0323c8b8 Merge branch 'Mesh_3-add_random_generator_to_mesh_domain-GF' into Mesh_3-compare_index-GF 2014-03-28 11:01:40 +01:00
Aymeric PELLE ae84316d52 Some correction in the documentation.
Labeled_mesh_domain_3 : LabelingFunction template parameter.
Implicit_multi_domain_to_labeling_function_wrapper :
Function template parameter.
2014-03-27 14:24:52 +01:00
Jane Tournois 993541644c move Has_timestamp to STL_extension/include/CGAL directory
to avoid that Compact_container depends on Mesh_3
2014-03-27 13:57:47 +01:00
Jane Tournois 673d1f03cd Merge branch 'Mesh_3-fix_set_facet_surface_center-jtournois'
This branch fixes a potential bug, that the facet surface center
is sometimes not updated properly in mirror_facet(f) when it is in f.

Tested in testsuite CGAL-4.4-Ic-155

Approved by the release manager
2014-03-27 11:16:36 +01:00
Jane Tournois 1e7633d863 add the display of the seed to make tests reproducible
will be debugging
2014-03-27 10:41:17 +01:00
Aymeric PELLE c15ff1c19c New implementation of Implicit_multi_domain_to_labeling_function_wrapper.
The user can indicate more precisely which components he wants.
For each component that the user want, he must provide the matching
vector of signs. All these vector of positions must be put in a vector
passed as second parameter to the constructor of that wrapper.
Doc and examples are updated.
2014-03-26 19:02:27 +01:00
Jane Tournois 533fa556d6 reorder parameters to keep old code valid (error_bound is documented) 2014-03-25 18:21:11 +01:00
Jane Tournois 215b463812 use CGAL::Random* as member variable
it avoids using temporary CGAL::Random(0) that would be deleted
as soon as we get out of the constructor

+ make examples deterministic and tests not (all but test_meshing_determinism)
2014-03-25 17:47:15 +01:00
Aymeric PELLE 31767a8411 Rename ..._labeled_function_wrapper to ..._labeling_function_wrapper.
Implicit_vector_to_labeled_function_wrapper is deprecated.
Examples, tests, docs are updated.
2014-03-25 15:25:42 +01:00
Jane Tournois 98e8e85364 remove wrong 'const' 2014-03-25 15:16:02 +01:00
Jane Tournois 7e51ed917f re-introduce non-determinism
by using CGAL::default_random as random generator
2014-03-25 13:16:37 +01:00
Jane Tournois 6521f8d474 Revert "replace CGAL::Random& by mutable CGAL::Random for member variable type"
This reverts commit 1c1b65ae39.
The random generator member variable should be a CGAL::Random&, as in generators.h and
in the STL.

Also fix two constructors
2014-03-25 12:43:53 +01:00
Jane Tournois 1c1b65ae39 replace CGAL::Random& by mutable CGAL::Random for member variable type
and make use of const everywhere else
2014-03-25 11:39:12 +01:00
Jane Tournois 1916ecf872 re-introduce non-determinism in tests
to test a different case every day
2014-03-24 17:25:49 +01:00
Jane Tournois 6792a899de fix compilation of Polyhedral_mesh_domain_with_features_3
when a random generator which does not have the default value is chosen
2014-03-24 17:25:10 +01:00
Aymeric PELLE 6691e2e332 Fix : wrappers documentation indicated wrong header files.
Documention:
Implicit_multi_domain_to_labeled_function_wrapper and
Implicit_vector_to_labeled_function are located in the file
Implicit_to_labeled_function.h.
2014-03-24 13:55:05 +01:00
Jane Tournois 6566c592c2 remove new template parameter RNG
using CGAL::Random everywhere is simpler and definitely enough
note we are using CGAL::Random& as in Random_generator_base
(see CGAL/generators.h)
2014-03-24 12:50:18 +01:00
Aymeric PELLE 1d72710e24 Documentation for a new domain and two wrapers.
- Labeled_mesh_domain_3
- Implicit_vector_to_labeled_function_wrapper
- Implicit_multi_domain_to_labeled_function_wrapper
2014-03-24 11:01:02 +01:00
Jane Tournois a3341d0ec2 seeding is not needed anymore, it is done by default inside mesh domain class 2014-03-21 10:45:09 +01:00
Jane Tournois 61c245e0ea add a random number generator (RNG) template parameter to mesh domains
a default value (CGAL::Random(0)) is given to avoid non-determinism
2014-03-21 10:35:01 +01:00
Andreas Fabri 5c5aa5d702 Workaround for an ICE with VC12
The return type optional<tuple...> leads to the crash
One workaround had been to move the body of the function
into the class.
As the function is private I instead return through a reference instead.
2014-03-21 10:27:59 +01:00
Andreas Fabri e4b2e1997e Workaround for VC12' new (and not yet well understood) problem with 'using' 2014-03-21 10:26:51 +01:00
Andreas Fabri b80f5f6ef4 Move the default constructor in the section with hand written variadic templates 2014-03-21 10:24:27 +01:00
Aymeric PELLE 91343af22b Two new examples for illustrating features with Labeled_mesh_domain_3.
An example meshes two intersected cubes.
The other one meshes the two same cubes, but we add some feature edges.
2014-03-20 18:36:48 +01:00
Aymeric PELLE 0d1f136b85 New constructor for Implicit_multi_domain_to_labeled_function_wrapper.
This new constructor takes only one parameter : a vector of functions.
The mask will be automatically built with positive signs.
2014-03-20 16:18:18 +01:00
Jane Tournois 3974278a3f Merge branch 'Mesh_3-compare_index-GF' into Mesh_3-add_random_generator_to_mesh_domain-GF 2014-03-20 15:16:12 +01:00
Jane Tournois ea1c29e9d3 bug fix : set_facet_surface_center needs to be done in mirror_facet too 2014-03-20 10:16:22 +01:00
Jane Tournois 9f67ee99c7 Revert "sort facets and tetrahedra with indices, to get always the same file for the same mesh"
This reverts commit 2ab45a8514.
It is not needed anymore because cells and vertices come in deterministic order
2014-03-18 16:45:23 +01:00
Jane Tournois 1fd86adab6 remove useless include 2014-03-18 15:37:47 +01:00
Jane Tournois 8e3bef2e87 remove useless sort (and useless diff with master) 2014-03-18 15:32:05 +01:00
Jane Tournois c515a414e6 get verbose stuff back (it was a mistake to commit this) 2014-03-18 15:27:46 +01:00
Laurent Rineau 0554bfc6e8 Fix compilation on Linux
Template explicit specialization cannot be nested in a class.

http://stackoverflow.com/questions/3052579/explicit-specialization-in-non-namespace-scope
2014-03-14 14:46:14 +01:00
Jane Tournois 6b141cc848 replace hashing function when time_stamp is available
it used to be computed in the address of the Vertex_handle
--> not deterministic
2014-03-11 17:56:28 +01:00
Clement Jamin 52202b63bf Fix parameters order 2014-03-10 18:59:38 +01:00
Clement Jamin 157cd0465f Merge branch 'Mesh_3-parallel-cjamin-old' into Mesh_3-parallel-cjamin
Conflicts:
	Mesh_3/demo/Mesh_3/Mesh_3_optimization_plugin_cgal_code.cpp
	Mesh_3/doc/Mesh_3/Concepts/MeshCellBase_3.h
	Mesh_3/include/CGAL/Mesh_3/C3T3_helpers.h
	Mesh_3/include/CGAL/Mesh_3/Mesh_complex_3_in_triangulation_3_base.h
	Mesh_3/include/CGAL/Mesh_3/Mesh_global_optimizer.h
	Mesh_3/include/CGAL/Mesh_3/Sliver_perturber.h
	Mesh_3/include/CGAL/Mesh_3/Slivers_exuder.h
	Mesh_3/include/CGAL/Mesh_3/Triangulation_helpers.h
	Mesh_3/include/CGAL/Mesh_3/config.h
	Mesh_3/include/CGAL/Mesh_3/vertex_perturbation.h
	Mesh_3/include/CGAL/Polyhedral_mesh_domain_3.h
	Mesh_3/include/CGAL/exude_mesh_3.h
	Mesh_3/test/Mesh_3/test_meshing_utilities.h
	Triangulation_3/include/CGAL/Triangulation_cell_base_with_circumcenter_3.h
2014-03-10 17:01:03 +01:00
Aymeric PELLE d235c37835 Add a test for Labeled_mesh_domain_3.
All constructors, construct_initial_points, is_in_domain,
do_intersect_surface and construct_intersection are tested.
2014-03-05 22:00:50 +01:00
Aymeric PELLE 4891e7dadb Fix : Remove periodic_cuboid method in Labeled_mesh_domain_3. 2014-03-05 21:37:08 +01:00
Aymeric PELLE 095f99afb8 Add a new example using Implicit_multi_domain_to_labeled_function_wrapper.
This example shows two domains having points satisfying f(p) < 0.
2014-03-04 18:35:35 +01:00
Aymeric PELLE 3c0316e3a2 Add a new type in Implicit_multi_domain_to_labeled_function_wrapper.
Add the type definition Function_vector in the wrapper
Implicit_multi_domain_to_labeled_function_wrapper.
2014-03-04 18:30:50 +01:00
Laurent Rineau 6f20e044cc Fix compilation errors with recent libQGLViewer 2014-03-04 18:20:47 +01:00
Aymeric PELLE 355ab2d8cf Fix : #include <boost/dynamic_bitset.hpp> was missing.
boost::dynamic_bitset was used in Implicit_to_labeled_function_wrapper.h,
but the header file wasn't never included.
2014-03-03 10:57:09 +01:00
Aymeric PELLE 5df506fe5b A new wrapper is added : Implicit_multi_domain_to_labeled_function_wrapper.
This wrapper allow the user to define a domain following several functions.
A point will be in the domain if the result sign of each function
matches the ones expected by the user.
2014-02-28 14:07:46 +01:00
Aymeric PELLE 1515e3bb76 The old changes in Implicit_mesh_domain_3 are obsolete.
Periodic domain isn't based on Implicit_mesh_domain_3 anymore.
So, these modifications making Implicit_mesh_domain_3 compatible with
periodic cases are obsolete.
2014-02-28 12:46:42 +01:00
Aymeric PELLE 5964ef650f Labeled_mesh_domain_3 has a new constructor taking an Iso_cuboid.
In periodic cases, we may want to pass an bouding box with exact coordinates.
But, this is impossible to do with Bbox_3 which always has double
coordinates.
2014-02-28 07:58:01 +01:00
Aymeric PELLE 922d7cd439 A new wrapper is added : Implicit_multi_domain_to_labeled_function_wrapper.
This wrapper allow the user to define a domain following several functions.
A point will be in the domain if the result sign of each function
matches the ones expected by the user.
2014-02-28 07:55:35 +01:00
Jane Tournois 11ecfe7943 these sorts are not needed anymore
because everything else is deterministic
2014-02-25 17:48:45 +01:00
Jane Tournois cd901e5b6a Revert "cancel useless change"
This reverts commit e7d8421818.
2014-02-25 16:03:38 +01:00
Jane Tournois e7d8421818 cancel useless change 2014-02-25 15:59:56 +01:00
Jane Tournois 6c0ee83719 remove more useless diffs with integration 2014-02-24 16:20:56 +01:00
Jane Tournois bf03d6964d remove useless diff with integration 2014-02-24 14:37:20 +01:00
Jane Tournois 4a83e56066 remove compare.h. It is not needed anymore 2014-02-21 17:29:55 +01:00
Jane Tournois 4212eb5cf7 fix warnings about ordering variables in constructor 2014-02-21 17:19:08 +01:00
Jane Tournois 01ac548489 add a test that checks determinism
make_mesh_3 and optimizers are checked to generate the same mesh
in 2 successive runs (made in a for loop)
note parameters are not very stressful for the algorithms
2014-02-21 16:54:31 +01:00
Jane Tournois d16f83ab97 output_to_medit : write in a ostream instead of ofstream (more general) 2014-02-21 16:40:39 +01:00
Jane Tournois fc8a81f344 remove "example" (will turn it to a test) 2014-02-21 14:38:49 +01:00
Jane Tournois 454e7c686b cleanup the example 2014-02-21 14:36:47 +01:00
Jane Tournois 28f68bbfe9 add a default time_stamp_
to Mesh_vertex_base_3, Mesh_cell_base_3 and Compact_mesh_cell_base_3
2014-02-21 14:35:37 +01:00
Laurent Rineau 06dac30143 Fix 'const static <type>'
The storage specified (static) is not allowed inside the type
specifier. It must be prefix or postfix (but not infix).

That is strange no C++ compiler gives an error on such a construction.

s/const static/static const/
2014-02-20 19:14:26 +01:00
Laurent Rineau eca3673069 Fix several warnings
Examples:
test/Mesh_3/test_meshing_utilities.h:266:46: warning: unused parameter 'c3t3' [-Wunused-parameter]
demo/Mesh_3/Scene_segmented_image_item.h:52:7: warning: private field 'm_voxel_scale' is not used [-Wunused-private-field]
2014-02-20 18:02:40 +01:00
Jane Tournois 22153ac273 make private the time_stamp_ variable
and add time_stamp() and set_time_stamp() methods everywhere
2014-02-20 16:18:49 +01:00
Jane Tournois 0740b3652f add class Has_timestamp not to modify the API of Compact_container
- use the Has_timestamp operator in Compact_container
- add partial specialization to classes that need the time stamp (i.e.
Mesh_vertex_base, Compact_mesh_cell_base_3 and Mesh_cell_base_3)
- remove "ts" from classes where they were actually needed for compilation
purpose only (i.e. Kd_tree_node and Triangulation_ds_cell_base_3)
- rename "ts" to time_stamp_
2014-02-20 15:53:36 +01:00
Jane Tournois c7eabc4f64 rename ts to time_stamp_ 2014-02-20 15:46:10 +01:00
Clement Jamin b00eb1ffa2 Fixes the doc according to Monique's review 2014-02-17 08:06:49 +01:00
Jane Tournois f8df426d1a add a macro to mesh_determinism_example to choose mesh domain
define or undef the macro CGAL_MESH_3_EXAMPLE_POLYHEDRAL_DOMAIN
to mesh a polyhedral or image domain
2014-02-14 17:19:23 +01:00
Jane Tournois 3ec781ccd2 remove useless cout's 2014-02-14 17:18:11 +01:00
Jane Tournois 2034529d10 remove useless cout 2014-02-14 17:16:50 +01:00
Jane Tournois 6f88ef05c0 get perturbers back 2014-02-14 17:16:18 +01:00
Jane Tournois 0e7ddc7fe7 make ts local 2014-02-14 13:12:59 +01:00
Jane Tournois 5d40dcfd4a remove cout 2014-02-14 12:54:13 +01:00
Andreas Fabri 422c7b87f7 debug printouts 2014-02-13 19:46:40 +01:00
Andreas Fabri 1fb697f162 Add compare.h 2014-02-13 19:46:39 +01:00
Andreas Fabri 39056d49b5 Add a template function to dump incident_facets 2014-02-13 19:46:38 +01:00
Jane Tournois 23ee946776 add timers and more options to example 2014-02-13 19:46:37 +01:00
Jane Tournois 723281d3ec make facet dual segment orientation deterministic, to compute always exactly the same intersection with domain 2014-02-13 19:46:37 +01:00
Jane Tournois 44fa8f7a93 compute distances in a canonical order to make ODT deterministic 2014-02-13 19:46:36 +01:00
Jane Tournois f4ae054d81 compute volume and centroid of cell by taking the points always in the same order to improve consistency 2014-02-13 19:46:35 +01:00
Andreas Fabri 83546c53b1 Add a time stamp in vertices and cells of triangulations and polyhedra
and use this for operator< of handles in order to make mesh generation
 deterministic
2014-02-13 19:46:34 +01:00
Jane Tournois 25e8ae5472 complete determinism example
- add prefixing of output files names
- seed each loop with default_random = CGAL::Random(0)
2014-02-13 19:46:33 +01:00
Jane Tournois 8741c0ea80 implement more options 2014-02-13 19:46:32 +01:00
Jane Tournois 97fd5634fd implement options 2014-02-13 19:46:32 +01:00
Jane Tournois 2018dd2b9f add example to "bench" determinism 2014-02-13 19:46:31 +01:00
Jane Tournois 2ab45a8514 sort facets and tetrahedra with indices, to get always the same file for the same mesh 2014-02-13 19:46:30 +01:00
Jane Tournois 75771bacb3 rename Regular_triangulation_cell_base_with_circumcenter_3
to Regular_triangulation_cell_base_with_weighted_circumcenter_3
2014-02-06 15:50:38 +01:00
Jane Tournois 4d47194a7b Merge branch 'Mesh_3-fix_perturber_slivers_empty_bug-GF-rebased'
This branch fixes a bug in the sliver perturber.
It introduces some new data structures to backup the metadata
stored in cells before each perturbation. This allows to
recover these data without recomputing them in case the move
is reverted.

The bug fix comes from the fact that rec-omputed values might
have been different after the move from what they were before the
move, in a tetrahedron which is the same but for which the
Cell_handle is new.

Approved by the release manager.
2014-02-06 11:24:41 +01:00
Jane Tournois f5f37dfb48 add a test for Hausdorff distance
at every step of the meshing algorithm, it is allowed to decrease
but not to increase more than 1%
2014-02-04 16:42:53 +01:00
Laurent Rineau bfbe63275a Define macros to 1 instead of empty values
In <CGAL/Mesh_3/config.h>, the macro are defined to 1, and no longer
defined to empty values.
2014-02-04 14:31:28 +01:00
Jane Tournois de8a2fe41c Merge branch 'Mesh_3-add_tests-GF' of ssh://scm.cgal.org/var/git/cgal into Mesh_3-add_tests-GF
Conflicts:
	Mesh_3/test/Mesh_3/test_meshing_polyhedron.cpp
2014-02-04 14:22:44 +01:00
Laurent Rineau 8116ea99c6 Better verify() function
verify_c3t3_combinatorics() is moved into test_meshing_utilities.h, and
called by verify_c3t3(), when the "domain_type" is Bissection_tag().
2014-02-04 14:06:59 +01:00
Jane Tournois 2fe1944126 additional volume test for a polyhedral domain 2014-02-04 13:08:18 +01:00
Jane Tournois 14665290bf Merge branch 'Mesh_3-add_tests-GF' of ssh://scm.cgal.org/var/git/cgal into Mesh_3-add_tests-GF 2014-02-04 12:40:38 +01:00
Jane Tournois c729dc7706 complete the test about volume and apply it to every mesh domain type 2014-02-04 12:34:59 +01:00
Laurent Rineau 874e96a553 Fix a bug of the bissection oracle (Labeled_mesh_domain_3)
In CGAL-4.2 and previous, when a facet f was between finite cells c1,
and c2, with different subdomain indices, the surface patch index of f
was the pair { c1->subdomain_index(), c2->subdomain_index() }, say the
pair (1, 2). Since CGAL-4.3, with
CGAL_MESH_3_NO_LONGER_CALLS_DO_INTERSECT_3, the Do_intersect functor of
the domain is no longer called, and only Construct_intersection. If the
bissection eventually found out that the bissection ended up between the
volumes labeled 1 and 3, then the returned surface patch index was
{1,3}, instead of {1,2}. That commit fixes that "bug", and restores
the behavior of CGAL-4.2.
2014-02-04 12:33:59 +01:00
Jane Tournois 08e091cfb4 add test about volume 2014-02-03 18:34:33 +01:00
Laurent Rineau 2a86c88732 Add an assertion 2014-02-03 18:18:05 +01:00
Laurent Rineau 777b7e8800 Fix whitespace, in three lines 2014-02-03 17:44:27 +01:00
Laurent Rineau 2189f6e3d3 Fix a warning (unused local typedef) 2014-02-03 17:43:48 +01:00
Laurent Rineau 9fd6f2c539 Fix a compilation error
When CGAL_MESH_3_NO_LONGER_CALLS_DO_INTERSECT_3 is not defined (it is
defined by default by <CGAL/Mesh_3/config.h>), there was a compilation
error.
2014-02-03 17:40:41 +01:00
Jane Tournois f0b11abe87 Merge branch 'Mesh_3-fix_perturber_slivers_empty_bug-GF-rebased' of ssh://scm.cgal.org/var/git/cgal into Mesh_3-fix_perturber_slivers_empty_bug-GF-rebased 2014-01-31 17:33:43 +01:00
Jane Tournois 136f0ef1d1 avoid removing cells and facets twice from c3t3
these will be removed by move_point_topo_change_conflict_zone_known
anyway
2014-01-31 17:32:17 +01:00
Jane Tournois c0423f1da0 remove a function which has become useless 2014-01-31 17:24:33 +01:00
Laurent Rineau 652347ba8d Better version of verify_surface()
It now checks if the surface patch index of a facet has changed. And it
only call the checker once per facet, instead of two.
2014-01-31 16:47:13 +01:00
Laurent Rineau 680e0bfe49 New options and result types for Update_c3t3::operator()
- Update_c3t3::operator()(Cell_handle) returns a
  boost::optional<Subdomain_index> instead of a Boolean.

- Update_c3t3::operator()(Facet) returns a
  boost::optional<Surface_patch_index> instead of a Boolean.

- Update_c3t3::operator()(Facet) gets a new option that allows to update
  the facet surface center, without updating the c3t3 itself.
2014-01-31 16:39:08 +01:00
Jane Tournois a8a74bd729 in an image, add testing of consistency between indices
in an image, make sure that surface_patch_index(facet)
== pair(subdomain_index(neighbor1), subdomain_index(neighbor2))
2014-01-31 16:17:00 +01:00
Laurent Rineau c833ffc2e1 Additional assertion in restore_from_cells_backup
When restore_from_cells_backup() is called, one verifies that all the
backuped values are used.
2014-01-31 14:43:18 +01:00
Laurent Rineau 7b9a9ce50c Merge remote-tracking branch 'origin/Mesh_3-fix_perturber_slivers_empty_bug-GF-rebased' into Mesh_3-fix_perturber_slivers_empty_bug-GF-rebased
Conflicts:
	Mesh_3/include/CGAL/Mesh_3/C3T3_helpers.h
2014-01-31 14:29:38 +01:00
Jane Tournois 53b5ea0a27 complete Update_c3t3 with remove_from_complex when appropriate 2014-01-31 14:27:57 +01:00
Laurent Rineau d497281da1 Rename a variable 'vertex' to 'old_vertex' for consistency 2014-01-31 14:27:52 +01:00
Jane Tournois 93d89ed8c4 complete update of c3t3
using Update_c3t3 or restore_from_cells_backup, allow updaters
to remove cells and facets from the c3t3
2014-01-31 11:41:27 +01:00
Jane Tournois c2d55d967e fix update_mesh_no_topo_change
valid_move(c3t3_cells(conflict_cells)) was computed using the outdated
c3t3-ness of cells
Now c3t3 update is done iff the surface has not been broken, and
new sliver_criterion values are computed on updated cells
2014-01-31 11:31:01 +01:00
Jane Tournois 2bbf85a79f remove useless function 2014-01-31 10:37:49 +01:00
Jane Tournois 0b1b21bbc2 reverse comparison 2014-01-31 10:32:04 +01:00
Jane Tournois 9d64447700 fix Cell_data_backup
vertex indices in Cell_from_ids should not be sorted,
otherwise, what is stored in surface_patch_index[i]
does not correspond to the right i.
Copy indices to have them :
- in the original order
- and sorted (for set::find)
2014-01-30 18:36:49 +01:00
Jane Tournois e576b213b0 move testing code to CGAL_assertion_code 2014-01-30 18:31:29 +01:00
Jane Tournois 3e395078c3 backup of cells should not be done entirely for newly created cells 2014-01-30 18:30:09 +01:00
Jane Tournois 2cf4d6fa62 complete Update_c3t3 with remove_from_complex when appropriate 2014-01-30 18:25:21 +01:00
Laurent Rineau 271ae30833 Fix a warning about an unused type 2014-01-30 17:14:19 +01:00
Jane Tournois 9ac3121293 attempts to fix the bug
- move fill_cells_backup to before computing anything
- cells backup of sliver_value only needs cache to be valid
- comment improvement
2014-01-28 09:56:35 +01:00
Jane Tournois 976b73e1e5 make assertion stronger, and code simpler 2014-01-27 14:17:14 +01:00
Jane Tournois 385090cc72 remove break statement
it should have been removed at the same time as the double loop.
Improve the use of std::set::find,
and add assertion code.
2014-01-24 15:25:24 +01:00
Clement Jamin 5b6fc4b5a3 Doc: add a "todo" to add a reference to the future paper. 2014-01-23 11:41:07 +01:00
Jane Tournois 5096f05990 remove commented assertion 2014-01-23 10:59:43 +01:00
Laurent Rineau af6d87353c Merge branch 'Mesh_3-fix_poly_only-lrineau'
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.
2014-01-22 11:31:49 +01:00
Jane Tournois a48a0d36b7 remove useless end of lines whitespaces 2014-01-17 17:19:51 +01:00
Jane Tournois 24a5d601aa order IDs in Cell_from_ids to improve recovery (avoid quadratic searching) 2014-01-17 16:39:03 +01:00
Jane Tournois 88666391da introduce weighted_circumcenter() for RegularTriangulationCellBase_3
weighted_circumcenter() replaces circumcenter() in the regular framework,
which is not a member of TriangulationCellBase_3 anymore.

Triangulation_cell_base_with_circumcenter_3 is deprecated and replaced by:
Delaunay_triangulation_cell_base_with_circumcenter_3
and
Regular_triangulation_cell_base_with_circumcenter_3.

Implement the changes in documentation, Triangulation_3 code and Mesh_3 code.
2014-01-16 16:55:19 +01:00
Jane Tournois fa21907b3d fix the use of cpp11, and warnings.
note : use a array<std::size_t,4> instead of a map<std::size_t, std::size_t>
2014-01-16 11:35:05 +01:00
Jane Tournois bae5f52c03 remove template parameter that allows not to store c3t3 info. It is actually always needed to do so 2014-01-16 11:35:05 +01:00
Jane Tournois aa61073ef5 make the assertion more precise 2014-01-16 11:35:04 +01:00
Jane Tournois 122db0e026 don't backup infinite cells 2014-01-16 11:35:04 +01:00
Jane Tournois 8f778be277 comment the assertion that checks if sliver_cache has the same value as the computed sliverity value, because it goes against the cells meta-data backup that we are doing to speed-up and add consistency to revert_move (used when perturber failed to improve the quality of the mesh locally (sliverity may have changed of 10^-15 or so, unfortunately)) 2014-01-16 11:35:04 +01:00
Jane Tournois 14ac2ccc09 add comment 2014-01-16 11:35:03 +01:00
Jane Tournois 0798f093d4 hardcode the use of std::size_t as id_type for PVertex 2014-01-16 11:35:03 +01:00
Jane Tournois 43113876bd fix documentation of concept MeshCellBase_3 2014-01-16 11:35:02 +01:00
Jane Tournois 11a8050381 add a template parameter to decide whether we store c3t3 info or not in the cells meta-data backup 2014-01-16 11:35:02 +01:00
Jane Tournois 0609558919 avoid recomputing the c3t3 after each revert_move in sliver perturber.
The meta-data such as sliver_cache and c3t3 info are stored in an
auxiliary data, and restored after revert_move
2014-01-16 11:35:02 +01:00
Sébastien Loriot db43325f3a fix doc typo 2014-01-16 07:34:29 +01:00
Jane Tournois 7b55c30ba5 fix the use of Triangulation_cell_base_with_circumcenter
Triangulation_cell_base_with_circumcenter should not be responsible for
computing the circumcenter value. It is only responsible for its caching.
The Cell_base used as second template parameter should make the construction,
in the circumcenter() function.

Also fix the order of derivation in Mesh_cell_base_3
2014-01-10 14:31:02 +01:00
Laurent Rineau 972befcc01 Merge branch 'CGAL-fix_io_bad-lrineau'
Fix the uses of std::basic_ios::bad() across the whole CGAL code, and
use fail() instead.

Tested in CGAL-4.4-Ic-84.
2014-01-09 17:52:46 +01:00
Jane Tournois bf9e964f0e remove macro CGAL_REGULAR_TRIANGULATION_3_USE_CIRCUMCENTER_CACHE
has been checked and is always activated
2014-01-09 12:05:50 +01:00
Jane Tournois f809cce4f5 fix documentation bug 2013-12-20 15:37:59 +01:00
Jane Tournois dc2ef137fb documentation bug fix 2013-12-20 14:03:47 +01:00
Jane Tournois 5a8edd3dd0 Revert "add example before modifying sliver perturbation"
This reverts commit 6dbc94ed77.

Conflicts:
	Mesh_3/examples/Mesh_3/mesh_perturbation_example.cpp
2013-12-17 14:49:52 +01:00
Laurent Rineau 269ae1ca61 Fix the uses of std::basic_ios::bad(), and use fail() instead.
bad() implies fail() but std::basic_ios::operator! is actually equivalent
to std::basic_ios::fail(), not bad().

For example,
    std::ifstream is(argv[1]);
    if (is.bad()) {
is probably wrong because, in case the file does not exist, only the failbit it set,
and not the badbit.

Other example:
   double x;
   is >> x;
If the stream 'is' does not contains a string that can represent a double,
then failbit is set (and maybe the eofbit if the stream is actually too
short), but not the badbit.

bad() can be used, in case fail() returned true, to discriminate between a
I/O error and a logical error.

See:
  http://en.cppreference.com/w/cpp/io/basic_ios/operator_bool
  http://en.cppreference.com/w/cpp/io/ios_base/iostate
2013-12-12 16:13:40 +01:00
Clement Jamin 4f7174c0f7 Add comments to examples 2013-12-12 07:29:09 +01:00
Clement Jamin 5d1eacf16f rename get_erase_counter => erase_counter
And add it to the concept ObjectWithEraseCounter
2013-12-12 07:23:07 +01:00
Jane Tournois 7ad8520d8f Merge branch 'Mesh_3-add_sliver_perturber_criteria-GF-old' into Mesh_3-add_sliver_perturber_criteria-GF 2013-12-10 15:58:46 +01:00
Jane Tournois 3d3bad7734 attempt to fix the bug about CGAL_assertion(!slivers.empty()) in Sliver_perturber.h
there might be inconsistencies (of a few bits) between sliver cached values (64 bits) and values computed on the fly (potentially 80 bit on some 32 bits platforms)
2013-12-10 15:49:52 +01:00
Laurent Rineau 2a345ad60a Fix an assertion when the x86 coprocessor is used
See the comment in the file
2013-12-10 15:20:34 +01:00
Laurent Rineau 675f5b8b14 Fix a warning (unused variable) 2013-12-10 15:20:34 +01:00
Jane Tournois 7061eee190 fix a warning about missing virtual destructor 2013-12-10 14:54:28 +01:00
Jane Tournois 747ef0eade fix access to number_of_cells() and number_of_facets() in C3t3 (these functions are documented) 2013-12-06 10:54:48 +01:00
Clement Jamin bdd16dccdb Doc: typos and minor changes following Monique's review. 2013-12-05 17:45:40 +01:00
Sébastien Loriot 0fa2cacb60 remove doc_tex documentation (including developer manual) and old manual tools 2013-12-03 17:27:02 +01:00
Jane Tournois 87704e5369 fix compilation 2013-12-03 11:25:39 +01:00
Clement Jamin 02b0090b42 MeshCellBase_3 must be copy constructible 2013-11-25 14:35:30 +01:00
Clement Jamin 545a7cea4a The copy-constructor was not copying V and N 2013-11-22 18:21:28 +01:00
Clement Jamin ec8e949d21 Merge branch 'Mesh_3-parallel-cjamin-old' into Mesh_3-parallel-cjamin 2013-11-21 10:50:55 +01:00
Jane Tournois a78c94b81b fix compilation of Mesh_3 demo using new features 2013-11-18 16:11:32 +01:00
Laurent Rineau a0ff220885 Remove PROTECTION_DEBUG, and add assertions 2013-11-05 16:01:29 +01:00
Laurent Rineau 74e1bad5a4 fix a warning 2013-10-31 11:08:30 +01:00
Laurent Rineau 6561b0d811 Fix warnings
- Twice unused typedefs (because their uses were commented)
- Once member variables initialized in wrong order
2013-10-24 17:22:42 +02:00
Jane Tournois 9f90f2a7de remove useless const in return types 2013-10-24 17:11:42 +02:00
Jane Tournois c557164a44 Merge branch 'Mesh_3-add_sliver_perturber_criteria-GF-old' into Mesh_3-add_sliver_perturber_criteria-GF 2013-10-24 16:28:10 +02:00
Jane Tournois 0a7ea58e1f rename K to Gt because it does not need to be a kernel 2013-10-24 14:22:36 +02:00
Jane Tournois 6f47edcbef fix use of K (defined in Sliver_criterion) 2013-10-24 11:53:54 +02:00
Sébastien Loriot 5f495e579e fix gcc compilation issues 2013-10-24 11:14:04 +02:00
Jane Tournois 145f01a8f6 reset sliver_cache at the end of perturbation to have them free to perturb wrt another criterion now 2013-10-22 12:50:39 +02:00
Jane Tournois a5f7c5ab7f add boolean template parameter to Sliver_criterion, that decides if
the sliver_cache should be updated by operator()(cell_handle).

It can be useful when we write a complex criterion that implies two simpler
criteria for example, and we want the cache to be updated for only one of them
(to avoid inconsistencies)

+ add a sliver_cache reset because valid_move does re-compute the cache
2013-10-21 15:24:24 +02:00
Jane Tournois 064225638b Revert "fix compilation of my previous commit in debug mode"
This reverts commit 36f92c50a3.

And fix it for compilation on debug mode
2013-10-18 14:33:55 +02:00
Jane Tournois 5b50dfad86 make use of the sliver_cache in sliver_criteria
warning : this assumes that sliver_cache stores the value corresponding to this criterion!
2013-10-18 13:01:57 +02:00
Jane Tournois 36f92c50a3 fix compilation of my previous commit in debug mode 2013-10-18 13:00:55 +02:00
Jane Tournois ca249eb5f9 add an operator()(Cell_handle) to Sliver_criterion
this implies changing the template parameters of Sliver_criterion,
which now needs to know the Triangulation type
2013-10-18 12:38:21 +02:00
Jane Tournois ec2b35e398 make sure the same default values as in master are used
- default_value (=12) for perturber,
- max_value (=90) for exuder
2013-10-17 15:48:39 +02:00
Jane Tournois 80f3618be8 complete previous commit 2013-10-17 12:18:04 +02:00
Jane Tournois ae851c9747 remove sliver_bound_ member variable from the perturber and exuder
This variable is now stored exclusively in the sliver_criterion choosen for optimization.
And - remove some default parameters to avoid inconsistencies
2013-10-17 11:19:37 +02:00
Laurent Rineau 3ad8f223cd Fix the documentation of the Tds parameters of cell base classes
And add see also between Compact_mesh_cell_base_3 and Mesh_cell_base_3.
2013-10-16 16:34:41 +02:00
Laurent Rineau fcbbe713d5 No longer deprecate Mesh_cell_base_3
Compact_mesh_cell_base_3 has a different API than Mesh_cell_base_3. Unless
one uses the default template parameters, the new API is less
convenient. We cannot deprecate Mesh_cell_base_3 so easily.
2013-10-16 16:34:41 +02:00
Clement Jamin c30ec5bcee Typos, spelling mistakes, sentence order... 2013-10-16 13:50:54 +02:00
Clement Jamin b00bed59c3 Typo 2013-10-16 13:04:15 +02:00
Clement Jamin b0d85423e1 Doc: added line breaks + minor corrections 2013-10-16 12:19:27 +02:00
Jane Tournois 864fbaae36 Merge remote-tracking branch 'remotes/origin/Mesh_3-fix_perturber-GF' into Mesh_3-add_sliver_perturber_criteria-GF
Conflicts:
	Mesh_3/include/CGAL/Mesh_3/C3T3_helpers.h
2013-10-15 11:56:25 +02:00
Clement Jamin 29525dfcb7 Back-quotes for could_lock_zone and true + minor fixes + replace 0 by NULL 2013-10-15 10:27:35 +02:00
Clement Jamin e03b9aa762 get_cc_iterator => cc_iterator 2013-10-14 17:50:37 +02:00
Laurent Rineau 1855c174d6 Reverting "a second intrusive list of cells should not be used this would induce some bugs in global optimizers (because modified_cells should be an intrusive list, and we should not modify previous_intrusive and next_intrusive for cells that are not inside this list"
Revert "a second intrusive list of cells should not be used"

This reverts commit 8674523d10.
2013-10-14 17:16:52 +02:00
Laurent Rineau 924aa6a01e Fix whitespace in recent commits 2013-10-14 17:12:54 +02:00
Laurent Rineau 240385d011 Add expensive assertions to check the circumcenter cache 2013-10-14 17:12:54 +02:00