Commit Graph
815 Commits
Author SHA1 Message Date
Mael Rouxel-Labbé 1a693a0e89 Deduce Triangulation_3's point type from the TDS
Since we have a distinc vertex_base for regular triangulations and that this
regular vertex base defines a type Point, it is redundant to get the Point
type from the Geom_traits.

This also allows to remove the Weighted_point_mapper trick, and pass more easily
custom point types.
2017-05-22 11:27:02 +02:00
Mael Rouxel-Labbé 84d7f97975 Fixed Regular_traits_adaptor
The functor members cannot be references because the Regular_triangulation
might be templated by a traits class that is not simply a Kernel (that is
the case in the package Interpolation).

When that is the case, calling this->K::function_object() might be a call
to a constructor in the base traits class. Thus, the functor members
of Reg_traits_adaptors get initialized to temporaries, which is problematic
because these temporaries are at a much lower scope and thus are quickly
cleaned, leaving us with references to nothing in Reg_traits_adaptor.
2017-05-22 11:27:02 +02:00
Mael Rouxel-Labbé 729c054871 Do not provide Bare_point overloads in Regular_triangulation 2017-05-22 11:20:45 +02:00
Mael Rouxel-Labbé 5833272bd0 Fixed usage of Bare point and Weighted point across Triangulation_3 2017-05-22 11:20:45 +02:00
Mael Rouxel-Labbé e041870954 Trimmed Regular triangulation euclidean traits
-- Code added as consequence of disabling implicit conversion between points and
   weighted points implies that defining
     typedef weighted_point point;
   creates ambiguous functors.

   This typedef is nevertheless still used, in Weighted_point_mappers.

-- The traits are not supposed to define Bare_point
2017-05-22 11:20:45 +02:00
Mael Rouxel-Labbé 4f81c8c794 Added CGAL_NO_DEPRECATED_CODE macros to Regular_triangulation_euclidean_traits 2017-05-22 11:20:45 +02:00
Mael Rouxel-Labbé ea14f683d7 Cleaned #if 0 code 2017-05-22 11:20:45 +02:00
Mael Rouxel-Labbé 62b90dd86b Fixed hide_point()
Hide weighted points since they can be re-inserted afterwards
2017-05-22 11:20:45 +02:00
Mael Rouxel-Labbé 83ab007236 Fixed initialization order warning 2017-05-22 11:20:45 +02:00
Sébastien Loriot 51bc69cca3 version without partial specialization
the norms says that partial specialization should be
done in a namespace (not inside a class)
2017-05-22 11:20:45 +02:00
Jane Tournois a4ee219f99 remove hybrid operators, that use Bare points and Weighted points in an ambiguous manner
this commit only fixes the testsuite of Mesh_3
2017-05-22 11:20:45 +02:00
Andreas Fabri 81ae80c465 WIP: test_meshing_polyhedron_with_features compiles and crashes in odt 2017-05-22 11:20:45 +02:00
Andreas Fabri c6f741c379 Changes after making Weighted_point_3(const Point_3) explicit 2017-05-22 11:20:45 +02:00
Andreas Fabri 57e6083b29 Disable Point_3(const Weighted_point_3&) 2017-05-22 11:20:45 +02:00
Andreas Fabri ea5f9934e2 The Weighted_point_mapper becomes a traits class; test_regular_3.cpp passes 2017-05-22 11:20:45 +02:00
Mael Rouxel-Labbé aaed0f6737 Fixed using default templated member functions 2017-05-16 17:49:32 +02:00
Mael Rouxel-Labbé 91c35808f9 Fixed using default templated member functions 2017-05-16 17:49:32 +02:00
Mael Rouxel-Labbé f45c008721 Merge branch 'Periodic_3_Regular_triangulation_3-APelle-old' into Periodic_3_Regular_triangulation_3-APelle
Using afabri/Kernel_Weighted_point_without_conversion-GF
  @ 5c2a089e3e
2017-05-16 17:48:07 +02:00
Mael Rouxel-Labbé dbc98ac410 Merge branch 'Periodic_3_Regular_triangulation_3-APelle-old' into Periodic_3_Regular_triangulation_3-APelle
Using afabri/Kernel_Weighted_point_without_conversion-GF
  @ 5c2a089e3e
2017-05-16 17:48:07 +02:00
Andreas Fabri 40d6a3e68a Change comment to avoid warning 2017-05-16 10:17:41 +02:00
Mael Rouxel-Labbé 266775bafa Silenced depreciation warnings from Regular_triangulation_euclidean_traits_23 2017-05-16 10:17:41 +02:00
Mael Rouxel-Labbé cd2a562ffa Fixed improper guards against the inclusion of deprecated headers 2017-05-16 10:17:41 +02:00
Mael Rouxel-Labbé c353f0f49c Added CGAL_NO_DEPRECATED_CODE macros to Regular_triangulation_euclidean_traits 2017-05-16 10:17:41 +02:00
Mael Rouxel-Labbé d07976b2ac All triangulations now use Perturbation_order in tests using symbolic perturbations 2017-05-15 17:13:38 +02:00
Mael Rouxel-Labbé de3874f1ef All triangulations now use Perturbation_order in tests using symbolic perturbations 2017-05-15 17:13:38 +02:00
Mael Rouxel-Labbé 5c2a089e3e Fixed boost/core/is_same.hpp > boost/type_traits/is_same.hpp 2017-05-13 22:21:59 +02:00
Mael Rouxel-Labbé 01b2d61493 (Re)-added the unhide_point() function that is required for P3T3 2017-05-12 17:08:36 +02:00
Mael Rouxel-Labbé 23bd6c65ea (Re)-added the unhide_point() function that is required for P3T3 2017-05-12 17:08:36 +02:00
Mael Rouxel-Labbé 2f0f955a59 Merge branch 'Kernel_Weighted_point_without_conversion-GF' of github.com:afabri/cgal into Kernel_Weighted_point_without_conversion-GF 2017-05-12 13:12:47 +02:00
Jane Tournois 6ed6af00a0 really use the GT given as a parameter
When the geom_traits given as parameter of `circumcenter` and/or
`weighted_circumcenter` was deriving from the cell base GT
(first template parameter), the gt was up-casted to the
cell base GT, and the function construct_circumcenter_3_object()
(or construct_weighted_circumcenter_3_object()) not
called on the right geom traits type --> possibly missing
the actual input of the function (the robust_circumcenter_traits in Mesh_3)

we add a static assert to check at compile time that point types are the same
2017-05-12 13:07:00 +02:00
Mael Rouxel-Labbé b88bee84b2 Fixed using default templated class functions 2017-05-12 12:23:49 +02:00
Mael Rouxel-Labbé 9f865e87bb Fixed wrong template type (which induced taking references of references) 2017-05-12 12:21:39 +02:00
Mael Rouxel-Labbé bf425a46e6 Merge branch 'Periodic_3_Regular_triangulation_3-APelle-old' into Periodic_3_Regular_triangulation_3-APelle
Strongly breaks P3T3, will be fixed in the next commits
2017-05-11 17:45:15 +02:00
Mael Rouxel-Labbé 37fad1a242 Merge branch 'Periodic_3_Regular_triangulation_3-APelle-old' into Periodic_3_Regular_triangulation_3-APelle
Strongly breaks P3T3, will be fixed in the next commits
2017-05-11 17:45:15 +02:00
Mael Rouxel-Labbé 13d8a6879f Changed boost/core/enable_if.hpp to boost/utility/enable_if.hpp 2017-05-11 14:25:18 +02:00
Mael Rouxel-Labbé f2a308d9f1 Fixed regular cell bases so they actually model the concept
Also, they should not use Bare_point / Weighted_point types, which are defined
in the triangulation (much later during compilation).
2017-05-10 16:35:28 +02:00
Mael Rouxel-Labbé 46b489b2b5 Fixed Has_nested_type_Bare_point includes 2017-05-10 12:33:43 +02:00
Mael Rouxel-Labbé 97b789a741 Merge branch 'Kernel_Weighted_point_without_conversion-GF-old' into Kernel_Weighted_point_without_conversion-GF 2017-05-10 12:32:46 +02:00
Mael Rouxel-Labbé be441f8dd1 Removed an ugly static_cast 2017-05-01 16:15:40 +02:00
Mael Rouxel-Labbé 169d0be212 Misc minor changes 2017-05-01 16:15:31 +02:00
Mael Rouxel-Labbé d6576d1857 Use boost::function_property_map to apply spatial_sort to weighted points 2017-05-01 16:14:57 +02:00
Mael Rouxel-Labbé 6610dc7116 Moved facet dual computation functions from Mesh_3 to Regular_triangulation_3
... and improved them and gave them more overloads
2017-04-28 17:51:22 +02:00
Mael Rouxel-Labbé 5e9bad8e5d Avoid copies by using result_of in boost::bind() return type
Copies were previously done on purpose to go around the Lazy kernel, but this
can be done without copies (for all kernels) by using result_of.
2017-04-28 17:30:37 +02:00
Mael Rouxel-Labbé 37d7d0ab2e Removed obsolete file: Regular_traits_adaptor.h 2017-04-28 17:26:19 +02:00
Mael Rouxel-Labbé 2e78fee32e Removed useless include 2017-04-28 17:24:44 +02:00
Mael Rouxel-Labbé 31f82720e8 Reorganized Regular_triangulation_3 dual functions 2017-04-28 15:00:29 +02:00
Mael Rouxel-Labbé fe3c728a42 Copy boost::bind return object
The lazy kernel returns temporaries and gives garbage to compare_xyz_3...
2017-04-28 14:38:27 +02:00
Mael Rouxel-Labbé 88f97d2974 Renamed Regular_triangulation base typedef (Base > Tr_Base) 2017-04-27 16:31:35 +02:00
Mael Rouxel-Labbé 3681ec4460 Removed useless construct_point_3
Construct_weighted_circumcenter_3 already returns a Bare_point
2017-04-27 16:13:48 +02:00
Mael Rouxel-Labbé 4c96e75a8d Comparison result should be of type Comparison_result
(it worked anyway since Comparison_result is a Sign internally)
2017-04-27 14:23:41 +02:00