Mael Rouxel-Labbé
08da170d1b
Improved Alpha shapes 2 examples
...
-- Added a weighted point data set
-- Readability (indentation, typedefs, etc.)
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
a9a016a5c0
Fixed not getting Alpha shapes 2 predicates and constructions from Lazy alpha NT
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
8cdcdf90c0
Changed some template parameters to work with 1b75558
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
cd42867fc9
Changed the weights of points in examples/tests of weighted alpha shapes 2
...
Non-uniform is better
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
4b05448ddf
Modified alpha_shapes_2's Vb and Fb to work with the Lazy_alpha_nt modifs
...
from commit 1b75558
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
03b4847378
Fixed Lazy_alpha_NT_2
...
-- Aligned with the improvements that exist in Alpha_shapes_3
-- Actually define proper overloads for side_of_bounded_circle for weighted
points (was broken)
-- Minor stuff
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
0ac5f1c7f0
Do not use the obsolete and useless class Weighted_alpha_shape_euclidean_traits_2
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
3292753f48
Use Kernel_traits<Traits::Pt> to deduce the kernel rather than Traits::Kernel
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
637c046f91
AG's vertex base must define a Point type to be a model of the Vertex base concept
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
18e854e95f
Triangulation_2 test traits must define Construct_point_2
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
f54ec34d1a
Projection traits must define Construct_point_2 and Construct_weighted_point_2
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
be154515fc
Fixed point type in the line face circulator 2
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
0181e353dd
Changed some output from french to english
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
a45325a20e
Fixed Triangulation_2's spatial_sorts on weighted points
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
50670b1303
Triangulation_2's point type is deduced from the TDS::Vb, not from the traits
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
3a48794d5c
Removed obsolete Weighted_point_mapper trick for Regular_triangulation_2
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
a54d9c9148
Removed useless class Regular_traits_adaptor_2.h
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
ec9c8e6d8b
Periodic construct_point_2 must have access to the base construct_point_2 operator()
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
a42cde8431
Removed an ugly static_cast
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
2130ba057e
Misc minor changes
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
da8f194b20
Use boost::function_property_map to apply spatial_sort to weighted points
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
5ddf953b69
Revert "Added the Unary_function_to_property_map property map"
...
This reverts commit 1913b94ebe .
This property map actually already exists with almost exactly the same
implementation in boost, as boost::function_property_map...
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
dea58ffe38
Fixed various Bare_point / Weighted_point usage across Mesh_3
...
Hopefully, this is the last batch
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
c3b8870b5b
Moved facet dual computation functions from Mesh_3 to Regular_triangulation_3
...
... and improved them and gave them more overloads
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
6e8de5d6d3
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-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
799db0cc7c
Removed obsolete file: Regular_traits_adaptor.h
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
550793cca9
Removed useless include
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
e4f17b2ff5
Reorganized Regular_triangulation_3 dual functions
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
b669bb2d13
Copy boost::bind return object
...
The lazy kernel returns temporaries and gives garbage to compare_xyz_3...
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
88577013a0
Avoided a default traits construction
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
0709641a4c
Periodic_3 construct point 3 needs access to its base operator()
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
192821fe85
Periodic_3 remove traits must overwrite construct_point_3()
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
07bbe7fa0a
Removed Regular_triangulation_euclidean_traits_3 usage in Lazy_alpha_nt_3
...
Regular_triangulation_euclidean_traits are deprecated (and do not do anything).
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
a79e3c3e8a
Fixed some Bare_point / Weighted_point typedefs in Alpha_shapes_3
...
The triangulation defines those types, not the traits
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
fd0108697c
Made some typedefs readable for people without a 30" screen (no real changes)
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
fb62429904
Fixed test_fixed_alpha_shape_3 Point_3/Weighted_point_3 usage
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
e45be9e450
Fixed TDS in test of Alpha_shapes_3 (Regular_tr must use regular cell_base)
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
5981a4535b
Renamed Regular_triangulation base typedef (Base > Tr_Base)
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
7e1fb62f9e
Removed useless construct_point_3
...
Construct_weighted_circumcenter_3 already returns a Bare_point
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
ff52451690
Moved up the force_exact test to avoid computing useless determinants
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
53015e11a0
Comparison result should be of type Comparison_result
...
(it worked anyway since Comparison_result is a Sign internally)
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
82e6397f73
Fixed compilation of add_temporary_points_on_far_sphere()
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
40a7af0f30
Adapted the call to spatial_sort() to handle weighted points
...
Downside: we copy points at each comparison, which is terrible! No noticeable
changes when profiling the construction of a triangulation.
We need this copy because of Lazy kernel: despite construct_point_3 having
const Point_3& construct_point_3_object()(const Point_3&)
the Lazy kernel can return some copies.
Other solutions that were not used:
-- Distinguish the Ouput type of Unary_function_to_property map depending on
the type of Kernel (ugly and not safe)
-- Use Weighted_point_mappers traits (but that blood will not be on my hands)
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
93b6e2659d
Adapted sorting algorithms based on compare_xyz to handle weighted point vectors
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
936c0fceec
Added the Unary_function_to_property_map property map
...
It is the opposite of Property_map_to_unary_function and allows to make
a property map out of a unary function: get(k) = f(k)
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
091ca81d28
Construct_plane() must use bare points arguments
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
672b7e13e7
Fixed point typedef in Tr_3/benchmarks
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
ad3e388aa1
Fixed Triangulation_benchmark_3.cpp
...
-- Fix Weighted_point_3 / Point_3 incompatibilities
-- Generator of weighted points also generates random weights
-- Do not use Regular_euclidean_triangulation_traits since they are deprecated
-- Do not use 'using namespace'
-- Use the new policy tag to disable hidden point caching (see b925281 )
-- Remove unused objects (such as pts2_bbox)
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
e62fa89355
Fixed test_RT_cell_base_with_weigh... and added it to the CMakeLists
...
-Some wrong Bare_point/Weighted_point usage
-Fully instantiate the Regular_triangulation_cell_base_with_weighted_circum...
with all the template parameters of the regular cell base
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé
8f2a8b4422
Removed hiding-related functions from Triangulation_cell_base_3
...
Triangulation_cell_base_3 cannot be used anymore as a cell base of a regular
triangulation and thus there is no point keeping these functions.
People wishing to disable caching of hidden points in regular triangulations
should use the new policy, see commit b92528171c )
2017-06-08 13:23:10 +02:00