1. Create <CGAL/boost/graph/Graph_with_descriptor_with_graph_fwd.h>
... a forward-declaration header.
2. Include the forward-declarations of `CGAL::Surface_mesher` and
`CGAL::Graph_with_descriptor_with_graph`, so that the header compiles.
Now we have a `Polyhedron_3` and a `Surface_mesh` version of the
following examples:
- `examples/Mesh_3/mesh_polyhedral_complex.cpp`
- `examples/Mesh_3/mesh_polyhedral_domain.cpp`
- In `Polyhedral_mesh_domain_3`:
- The handling of `p_rng_` is now simpler: the `Random` generator is
only created just before its use. That reduces code duplication
between constructors.
- Use `add_primitives()` and `add_primitives_to_bounding_tree()`, and
`build()` to reduce the code duplication between all constructors.
- In `Polyhedral_mesh_domain_with_features_3`:
- All polyhedra are stored in a data member `this->stored_polyhedra`.
- Always construct the base class without any polyhedron, then use
`add_primitives()` and `add_primitives_to_bounding_tree()`, from
polyhedra of `this->stored_polyhedra`.
- All constructors are inlined in the class (now that their code is
shorter).
- Fix the compilation of `detect_borders()`.
Create an integration branch for 'Mesh_3-compare_index-GF': a new branch
created from 'master', where I merged the previous version of
'Mesh_3-compare_index-GF'.
There was a conflict with two features recently merged into 'master' for
CGAL-4.5:
- the move of two files from include/CGAL/Mesh_3/ to include/CGAL/. See
the small feature:
http://cgal.org/wiki/Features/Small_Features/New_constructor_in_Label_mesh_domain_3_and_new_function_wrapper
- parallelism for Triangulation_3 and Mesh_3:
http://cgal.org/wiki/Features/Parallel_Mesh_3
Conflicts:
Combinatorial_map/include/CGAL/Cell_attribute.h
Mesh_3/include/CGAL/Implicit_mesh_domain_3.h
Mesh_3/include/CGAL/Labeled_image_mesh_domain_3.h
Mesh_3/include/CGAL/Mesh_3/Sliver_perturber.h
Mesh_3/include/CGAL/Polyhedral_mesh_domain_3.h
Mesh_3/test/Mesh_3/test_meshing_3D_image.cpp
Mesh_3/test/Mesh_3/test_meshing_polyhedron.cpp
Mesh_3/test/Mesh_3/test_meshing_polyhedron_with_features.cpp
Polyhedron/demo/Polyhedron/Polyhedron_type.h
STL_Extension/include/CGAL/Compact_container.h
STL_Extension/test/STL_Extension/test_Compact_container.cpp
I also modified the following files during the conflict resolution:
Linear_cell_complex/include/CGAL/Cell_attribute_with_point.h
Mesh_3/include/CGAL/Labeled_mesh_domain_3.h
Mesh_3/include/CGAL/Polyhedral_mesh_domain_with_features_3.h
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)