Andreas Fabri
43d2ecb521
Triangulation_3
2018-01-17 16:57:46 +00:00
Sébastien Loriot
ee57fc2d6c
add SPDX identifier for files under the GPL-3+ license
2017-11-12 10:17:51 +01:00
Mael Rouxel-Labbé
aaeaf35380
Introduced the tag "Periodic_tag" to mark distinguish periodic triangulations
2017-08-23 16:18:05 +02:00
Mael Rouxel-Labbé
8c7bda5f2d
Changed from boost::function_property_map to CGAL::internal::boost_'s
...
This is so it's always available, even if using an old version of boost
2017-06-28 10:17:14 +02:00
Mael Rouxel-Labbé
ddfc4fc0fe
T2/T3 now use Perturbation_order in tests with symbolic perturbations
2017-06-28 10:16:23 +02:00
Mael Rouxel-Labbé
1fc2282350
Fixed regular triangulation capitalization across CGAL
2017-06-28 10:16:23 +02:00
Mael Rouxel-Labbé
d770640506
Fixed wrong template type (which induced taking references of references)
2017-06-28 10:16:23 +02:00
Mael Rouxel-Labbé
5990db5557
Removed an ugly static_cast
2017-06-28 10:14:35 +02:00
Mael Rouxel-Labbé
d0cf0fc86b
Misc minor changes
2017-06-28 10:14:35 +02:00
Mael Rouxel-Labbé
4b556707a4
Use boost::function_property_map to apply spatial_sort to weighted points
2017-06-28 10:14:35 +02:00
Mael Rouxel-Labbé
b0b1e5ceaf
Moved facet dual computation functions from Mesh_3 to Regular_triangulation_3
...
... and improved them and gave them more overloads
2017-06-28 10:14:35 +02:00
Mael Rouxel-Labbé
aab0bca377
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-28 10:14:35 +02:00
Mael Rouxel-Labbé
a98d78cffb
Removed useless include
2017-06-28 10:14:35 +02:00
Mael Rouxel-Labbé
1dff564d40
Reorganized Regular_triangulation_3 dual functions
2017-06-28 10:14:35 +02:00
Mael Rouxel-Labbé
34c2032edc
Copy boost::bind return object
...
The lazy kernel returns temporaries and gives garbage to compare_xyz_3...
2017-06-28 10:14:35 +02:00
Mael Rouxel-Labbé
2653ebe612
Renamed Regular_triangulation base typedef (Base > Tr_Base)
2017-06-28 10:14:35 +02:00
Mael Rouxel-Labbé
e59e8c2aa0
Removed useless construct_point_3
...
Construct_weighted_circumcenter_3 already returns a Bare_point
2017-06-28 10:14:35 +02:00
Mael Rouxel-Labbé
0f8f34c9d4
Fixed compilation of add_temporary_points_on_far_sphere()
2017-06-28 10:14:35 +02:00
Mael Rouxel-Labbé
94abc23da9
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-28 10:14:35 +02:00
Mael Rouxel-Labbé
91ea1b4049
Adapted sorting algorithms based on compare_xyz to handle weighted point vectors
2017-06-28 10:14:35 +02:00
Mael Rouxel-Labbé
12fb8d35fc
Construct_plane() must use bare points arguments
2017-06-28 10:14:35 +02:00
Mael Rouxel-Labbé
de76ccf545
Removed Weighted_point_mapper_3 and RegTraits_3 shenanigans
...
There is no need anymore for sneaky traits adaptors to make Triangulation_3
a compatible base of Regular_triangulation_3:
- The Point type in Triangulation_3 is obtained through TDS::Vertex::Point (see
commit 13d5e89 )
- Triangulation_3 always ensures that we are passing bare points to the kernel
functors that require bare point arguments (see commit db5da73 )
This greatly clarifies the code of Regular_triangulation_3: there is only a
single traits type, a single base type, etc.
2017-06-28 10:14:35 +02:00
Mael Rouxel-Labbé
d668d42f44
Do not provide Bare_point overloads in Regular_triangulation
2017-06-28 10:14:35 +02:00
Mael Rouxel-Labbé
f0d3e77558
Fixed usage of Bare point and Weighted point across Triangulation_3
2017-06-28 10:14:35 +02:00
Mael Rouxel-Labbé
e1dcdcaf4d
Cleaned #if 0 code
2017-06-28 10:14:35 +02:00
Mael Rouxel-Labbé
78a4a12b0c
Fixed hide_point()
...
Hide weighted points since they can be re-inserted afterwards
2017-06-28 10:14:35 +02:00
Mael Rouxel-Labbé
d884edd84a
Fixed initialization order warning
2017-06-28 10:14:35 +02:00
Andreas Fabri
780e01dc90
WIP: test_meshing_polyhedron_with_features compiles and crashes in odt
2017-06-28 10:14:35 +02:00
Andreas Fabri
bb213d5ad1
Changes after making Weighted_point_3(const Point_3) explicit
2017-06-28 10:14:35 +02:00
Andreas Fabri
787d46ffb8
Disable Point_3(const Weighted_point_3&)
2017-06-28 10:14:35 +02:00
Andreas Fabri
2f895335d0
The Weighted_point_mapper becomes a traits class; test_regular_3.cpp passes
2017-06-28 10:14:35 +02:00
Andreas Fabri
8cbbe0e165
Remove dependencies of Triangulation_3 on Triangulation_2
2017-04-06 11:08:37 +02: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
Andreas Fabri
2a27d4ff38
Fix the Vertex_remover
2016-11-22 16:03:13 +01:00
Andreas Fabri
b978fa8fdd
Fix the typedef for the Bare_point
2016-11-21 15:49:43 +01:00
Andreas Fabri
d35c6c913d
Use Weighted_point_mapper_3
2016-11-21 15:33:27 +01:00
Andreas Fabri
4ab59919e6
Use Regular_triangulation_vertex_base_3
2016-11-20 19:06:08 +01:00
Andreas Fabri
310845f01e
Add class Regular_triangulation_vertex_base_3
2016-11-19 11:07:52 +01:00
Laurent Rineau
57f0b33eb6
Fix Alpha_shapes_3
...
Alpha_shapes_3 needs to know a lot about its template parameter `Dt`. To
simplify the code, I have chosen to make the typedef `Tr_Base` public in
3D Delaunay and Regular triangulations.
2016-11-18 17:36:50 +01:00
Jane Tournois
3b5e069325
add constructors to Regular_triangulation_euclidean_traits_3,
...
and fix constructors from Regular_triangulation_3
Revert "introduce Has_nested_type_Bare_point to keep backward compatible"
This reverts part of the commit 98b43b1a49fb2dfb3baee0a532bf5d097f2f4ebd.
2016-11-03 14:57:10 +01:00
Jane Tournois
0f569a8fd6
introduce Has_nested_type_Bare_point to keep backward compatible
...
it is needed when Regular_triangulation_euclidean_traits is used the first
template parameter for Regular_triangulation (both 2d and 3d)
2016-11-03 14:57:10 +01:00
Laurent Rineau
3353d4d64d
Kernel now refines RegularTriangulationTraits_3
...
ie all CGAL kernels are now models of `RegularTriangulationTraits_3`.
2016-11-03 14:55:39 +01:00
Jane Tournois
6af2db1b91
Use Power_side_of_bounded_power_sphere instead of Side_of_bounded_orthogonal_sphere
...
both functors made the same computation, up the sign of the result.
The return type now is CGAL::Bounded_side, which makes things easier
to understand and use
2016-11-03 14:55:39 +01:00
Andreas Fabri
ad9d2c369c
Rename tests following Olivier's recommendations
2016-11-03 14:53:54 +01:00
Jane Tournois
4bcd272a99
compute dual only after infinity test has been performed
2016-11-03 13:10:27 +01:00
Andreas Fabri
9e94ee6178
Change the Power_test
2016-11-03 13:07:17 +01:00
Andreas Fabri
ea6e48e1e4
Don't use the internal traits adapter
2016-11-03 13:07:17 +01:00
Andreas Fabri
5edd015669
Use Weighted_point_triangulation_traits_3
2016-11-03 13:06:42 +01:00
Andreas Fabri
6a8f77c5ff
Added CGAL::Weighted_point_3<K> and the predicates and constructions of the Regular Traits to the kernel
...
- The Regular 3 testsuite passes
- only 3D
- not documented
2016-11-03 13:04:43 +01:00
Sébastien Loriot
7f3772a50b
replace the usage of raw pointer as property map
...
It was deprecated in boost 1.55
http://www.boost.org/users/history/version_1_55_0.html
2016-07-13 13:53:00 +02:00