Commit Graph

132 Commits

Author SHA1 Message Date
Andreas Fabri 4581f1b7a8 Morte replacements 2019-06-05 08:39:55 +02:00
Sebastien Loriot 81b78d6a8b
Merge pull request #3810 from maxGimeno/temp_branch
Mesh_3: Simplify AABB_primitive of Polyhedral_mesh_domain_3
2019-04-12 15:32:49 +02:00
Sébastien Loriot f62624c4f9 replace cpp11::tuple by std::tuple 2019-03-29 13:28:33 +01:00
Sébastien Loriot 1d908c1c0b remove code for CGAL_INTERSECTION_VERSION 1 2019-03-29 13:28:32 +01:00
Sébastien Loriot d60f5645aa replace BOOST_FOREACH by c++ ranged-based for loop
some of the command used for the replacement:
ack --cpp  BOOST_FOREACH -l  | xargs sed -i -E "s/BOOST_FOREACH\(([a-zA-Z_:&0-9]+)\s(\w+)\,/for(\1 \2 :/"
ack --cpp  BOOST_FOREACH -l  | xargs sed -i -E "s/BOOST_FOREACH\((const [a-zA-Z_:&0-9]+)\s(\w+)\,/for(\1 \2 :/"
ack --cpp  BOOST_FOREACH -l  | xargs sed -i -E "s/BOOST_FOREACH\((const typename [a-zA-Z_:&0-9]+)\s(\w+)\,/for(\1 \2 :/"
ack --cpp  BOOST_FOREACH -l  | xargs sed -i -E "s/BOOST_FOREACH\((typename [<>a-zA-Z_:&0-9]+)\s(\w+)\,/for(\1 \2 :/"
ack "boost/foreach.hpp" -l --cpp | xargs sed -i '/boost\/foreach.hpp>/d'
2019-03-29 13:22:15 +01:00
Maxime Gimeno ec00f50eec Use the same primitive type for polyhedron_3 and other types 2019-03-28 11:37:16 +01:00
Maxime Gimeno fc5e966c20 Simplify the AABB_primitive used in Polyhedral_mesh_donain_3 2019-03-28 11:24:19 +01:00
Mael Rouxel-Labbé 27b6e03968 Added some missing header includes 2018-06-07 10:24:15 +02:00
Mael Rouxel-Labbé 7ea3a8044e Merge branch 'Periodic_3_mesh_3-Feature-MBogdanov-old' into Periodic_3_mesh_3-Feature-MBogdanov 2018-06-05 14:39:18 +02:00
Laurent Rineau 13518a0501 Fix check_headers 2018-05-16 17:38:39 +02:00
Laurent Rineau 0400eb6c4b Cleanup included header for Boost Parameters 2018-05-15 14:56:21 +02:00
Laurent Rineau 79829ffb99 Move Index_generator to another header 2018-05-15 14:56:21 +02:00
Mael Rouxel-Labbé 17d46e9211 Merge branch 'Periodic_3_mesh_3-Feature-MBogdanov-old' into Periodic_3_mesh_3-Feature-MBogdanov 2018-04-26 11:55:17 +02:00
Laurent Rineau c504ea3e9f Fixes
- cleanup
- be careful not to add things to the documentation
2018-03-22 17:23:28 +01:00
Andreas Fabri 8c41669fb7 move properties from Mesh_3 to BGL, Polyhedron_3 and Surface_mesh 2018-03-22 16:37:37 +01:00
Mael Rouxel-Labbé c28e05be0c Merge branch 'Periodic_3_mesh_3-Feature-MBogdanov-old' into Periodic_3_mesh_3-Feature-MBogdanov 2018-02-23 12:50:06 +01:00
Laurent Rineau 78e7060525 Merge pull request #2712 from afabri/CGAL-VC+warnlevel_4-GF
Deal with VC++ warnings of level /W4
2018-02-19 14:27:06 +01:00
Maxime Gimeno c3215b9331 Move graph_has_property from namespace boost to namespace CGAL and provide some doc for it. 2018-01-22 12:43:29 +01:00
Andreas Fabri 5efce459da Mesh_3 2018-01-18 08:49:52 +00:00
Mael Rouxel-Labbé ba3a59ed5a Merge branch 'Periodic_3_mesh_3-Feature-MBogdanov-old' into Periodic_3_mesh_3-Feature-MBogdanov 2017-11-30 15:54:00 +01:00
Mael Rouxel-Labbé 1078e00e7f Uniformized between Mesh_3::internal and internal::Mesh_3 2017-11-30 14:26:12 +01:00
Sébastien Loriot ee57fc2d6c add SPDX identifier for files under the GPL-3+ license 2017-11-12 10:17:51 +01:00
Laurent Rineau dc7c887436 Fix the compilation of <CGAL/Polyhedral_mesh_domain_3.h>
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.
2017-10-13 15:57:02 +02:00
Laurent Rineau 19519adeed Fix warnings 2017-09-26 16:12:45 +02:00
Laurent Rineau 8425cc01a9 Last fixes for BGL/Surface_mesh 2017-09-18 14:56:58 +02:00
Laurent Rineau f5a0f3a587 Add operator== to Primitive 2017-09-18 14:56:57 +02:00
Laurent Rineau 799666ca7a Duplicate the examples
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`
2017-09-18 14:56:57 +02:00
Laurent Rineau 578889e801 Fix compilation of mesh_polyhedral_domain.cpp with Polyhedron_3 2017-09-18 14:56:57 +02:00
Laurent Rineau 151be29572 No longer use Graph_with_descriptor_with_graph<SM>
The `Polyhedral_mesh_domain` template class, now uses a specific
`AABBPrimitive` type, when used with a `FaceGraph`.
2017-09-18 14:56:57 +02:00
Laurent Rineau 42ef37d773 Change the AABB tree of Side_of_triangle_mesh
That allows to use multiple face graph in the same AABB tree.
2017-09-18 14:56:56 +02:00
Jane Tournois 56cab9458c remove extra typename 2017-08-03 16:09:52 +02:00
Jane Tournois 0c2999da30 use forward declaration include 2017-08-03 16:09:52 +02:00
Jane Tournois 77896f38fe use the AABB_tree internal to Side_of_triangle_mesh
this avoids incompatibility issues,
and simplifies the code in Polyhedral_mesh_domain_3
2017-08-03 16:09:52 +02:00
Jane Tournois 862300b609 remove extra *
and improve indentation
2017-08-03 16:09:52 +02:00
Jane Tournois 9e388204e8 use Side_of_triangle_mesh in Polyhedral_mesh_domain_3 2017-08-03 16:09:52 +02:00
Laurent Rineau abc6c0697f Fix the stupid name lookup bug from Visual C++
```
...\include\CGAL/Polyhedral_complex_mesh_domain_3.h(283): error C2248: 'CGAL::Polyhedral_mesh_domain_3<Polyhedron,IGT,TriangleAccessor,CGAL::Tag_true,CGAL::Tag_true>::IGT': cannot access private typedef declared in class 'CGAL::Polyhedral_mesh_domain_3<Polyhedron,IGT,TriangleAccessor,CGAL::Tag_true,CGAL::Tag_true>'
        with
        [
            Polyhedron=CGAL::Polyhedron_3<K,CGAL::Mesh_3::Mesh_polyhedron_items<int>,CGAL::HalfedgeDS_default,std::allocator<int>>,
            IGT=K,
            TriangleAccessor=CGAL::Triangle_accessor_3<CGAL::Polyhedron_3<K,CGAL::Mesh_3::Mesh_polyhedron_items<int>,CGAL::HalfedgeDS_default,std::allocator<int>>,K>
        ]
...\include\CGAL/Polyhedral_mesh_domain_3.h(169): note: see declaration of 'CGAL::Polyhedral_mesh_domain_3<Polyhedron,IGT,TriangleAccessor,CGAL::Tag_true,CGAL::Tag_true>::IGT'
        with
        [
            Polyhedron=CGAL::Polyhedron_3<K,CGAL::Mesh_3::Mesh_polyhedron_items<int>,CGAL::HalfedgeDS_default,std::allocator<int>>,
            IGT=K,
            TriangleAccessor=CGAL::Triangle_accessor_3<CGAL::Polyhedron_3<K,CGAL::Mesh_3::Mesh_polyhedron_items<int>,CGAL::HalfedgeDS_default,std::allocator<int>>,K>
        ]
```
2017-07-07 10:15:10 +02:00
Mael Rouxel-Labbé 1043965fe8 Removed useless includes 2017-06-28 10:14:35 +02:00
Laurent Rineau 8693ab4d1d Merge pull request #2152 from lrineau/Mesh_3-small_fixes-GF
Mesh 3: small fixes
2017-06-16 12:06:41 +02:00
Laurent Rineau f6b8ad199d More the "compatibility" specializations after the others 2017-06-12 16:45:07 +02:00
Laurent Rineau ffa9d59e5e Fix polyhedral mesh domain in untested cases 2017-06-02 17:57:08 +02:00
Andreas Fabri e77f1d4d78 Fix the demo 2017-05-31 19:50:02 +02:00
Laurent Rineau 7d34fc5dbd Add compatibility: support when Patch_id is Tag_true/Tag_false 2017-05-29 13:24:07 +02:00
Maxime Gimeno 9a3dde95ba Fix missing headers and definitions, SFINAE problems and ambiguous specialisation. 2017-05-29 13:24:06 +02:00
Maxime Gimeno 5db694c154 polyhedral domain with features works for Surface_mesh and cheese.off (Polyhedron does no longer :(
Conflicts:
	Mesh_3/include/CGAL/Polyhedral_mesh_domain_with_features_3.h
	Surface_mesh/include/CGAL/boost/graph/PMP_properties_Surface_mesh.h
2017-05-29 13:22:37 +02:00
Maxime Gimeno 451af8f3ef bglize and add property maps. polyhedral domain with features works almost for Surface_mesh
Conflicts:
	Mesh_3/include/CGAL/Mesh_polyhedron_3.h
	Mesh_3/include/CGAL/Polyhedral_mesh_domain_with_features_3.h
	Surface_mesh/include/CGAL/boost/graph/PMP_properties_Surface_mesh.h
2017-05-29 13:22:37 +02:00
Andreas Fabri 5a302c805d Make make_mesh_3() work for Surface_mesh 2017-05-29 13:22:37 +02:00
Laurent Rineau 760076510c Merge pull request #1845 from lrineau/Mesh_3-fix_detect_features-GF
Various modifications of Mesh_3
2017-02-06 15:19:31 +01:00
Sébastien Loriot 50510c05ea add include directive for license of all GPL header files
done using:
ack-grep "^GPL" */package_info/*/license.txt -l | awk -F "/" '{print $1}' > /tmp/gpl_packages
for i in `cat /tmp/gpl_packages | \
          grep -v Operations_on_polyhedra | \
          grep -v Algebraic_kernel_for_circles | \
          grep -v Algebraic_kernel_for_spheres | \
          grep -v Polyhedron_IO`;
do
  echo $i
  python Scripts/developer_scripts/add_license_in_pkg_header.py $i
done
python Scripts/developer_scripts/add_license_in_pkg_header.py Operations_on_polyhedra Polygon_mesh_processing
python Scripts/developer_scripts/add_license_in_pkg_header.py Algebraic_kernel_for_circles Circular_kernel_2
python Scripts/developer_scripts/add_license_in_pkg_header.py Algebraic_kernel_for_spheres Circular_kernel_3
python Scripts/developer_scripts/add_license_in_pkg_header.py Polyhedron_IO Polyhedron
2017-01-19 15:20:25 +01:00
Laurent Rineau dfe8703b21 Access the bounding AABB tree 2017-01-19 11:29:42 +01:00
Laurent Rineau 2016805734 Reimplement constructors
- 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()`.
2017-01-04 15:45:22 +01:00