Sébastien Loriot
2277013d84
replace boost::mpl::and_
2023-11-10 16:19:26 +01:00
Sébastien Loriot
b039040f73
boost::is_convertible -> std::is_convertible
2023-04-23 22:37:07 +02:00
Sébastien Loriot
fbe559adc9
Merge 'cgal/master' into PMP-decimation
2023-02-14 08:33:24 +01:00
albert-github
c32b1f4127
spelling corrections
...
Some spelling corrections (Directories starting with `S` rest - `W`),
2022-11-16 13:22:39 +01:00
Sébastien Loriot
0cac6a9da8
Merge remote-tracking branch 'sloriot/PMP-decimation' into PMP-decimation
2022-10-25 14:55:57 +02:00
Sébastien Loriot
98e774241b
update test
2022-10-21 14:28:12 +02:00
Andreas Fabri
d3fca65ae5
CGAL: No longer per package assertions
2022-09-23 12:49:40 +01:00
Sébastien Loriot
4f5f8341cc
use std::enable_if_t
2022-06-10 07:37:53 +02:00
Sébastien Loriot
d1a323c730
extra run of the script to remove tabs and trailing whitespaces
2020-03-26 19:24:14 +01:00
Laurent Rineau
75ec5c0da7
Add move-semantic to T_2, CT_2, Dt_2, and CDT_2
...
Still todo: `Constrained_triangulation_plus_2`, and
`Triangulation_hierarchy_2`.
2020-01-31 15:48:45 +01:00
Sébastien Loriot
254d60f642
First pass on removing license notice in header for GPL files
2019-10-19 15:23:19 +02:00
Sébastien Loriot
7356421d80
introduce Commercial license SPDX tag
2019-10-19 12:15:19 +02:00
Sébastien Loriot
9bd9c68b83
update LGPL[23]+ and GPL[23]+ SPDX tags
...
ack -l --no-svg "SPDX-License-Identifier: GPL-3.0\+" | xargs sed -i "s/SPDX-License-Identifier: GPL-3.0+/SPDX-License-Identifier: GPL-3.0-or-later/"
ack -l --no-svg "SPDX-License-Identifier: LGPL-3.0\+" | xargs sed -i "s/SPDX-License-Identifier: LGPL-3.0+/SPDX-License-Identifier: LGPL-3.0-or-later/"
ack -l --no-svg "SPDX-License-Identifier: GPL-2.0\+" | xargs sed -i "s/SPDX-License-Identifier: GPL-2.0+/SPDX-License-Identifier: GPL-2.0-or-later/"
ack -l --no-svg "SPDX-License-Identifier: LGPL-2.0\+" | xargs sed -i "s/SPDX-License-Identifier: LGPL-2.0+/SPDX-License-Identifier: LGPL-2.0-or-later/"
2019-10-18 21:57:54 +02:00
Andreas Fabri
f7b7b9957f
Merge remote-tracking branch 'cgal/master' into CGAL-null_ptr-GF
2019-06-05 14:47:11 +02:00
Andreas Fabri
e2d19b0c8d
Replace NULL and Nullptr_t with nullptr and nullptr_t
2019-06-04 23:45:44 +02:00
Andreas Fabri
f354210be3
Add using statements
2019-05-21 14:32:03 +02:00
Andreas Fabri
85d9ec1ae1
Unify 2D
2019-05-20 17:30:31 +02:00
Sebastien Loriot
80cece608c
Merge pull request #3595 from MaelRL/T2-Remove_strict_conflict_zone_boolean-GF
...
Triangulation_2: revert small feature DT2_strict_and_weak_conflict_zone
2019-04-12 15:35:06 +02:00
Sébastien Loriot
99d842401a
Merge remote-tracking branch 'cgal/releases/CGAL-4.12-branch' into HEAD
2019-01-31 11:24:50 +01:00
Mael Rouxel-Labbé
14150ef95c
Revert commit b307771 ("bug fix for natural_neighbor_coordinates_2...
...
... using a small feature in the conflict zone functions of
Delaunay_triangulation_2")
See concerns raised in the (not-actually-approved) small feature:
https://cgal.geometryfactory.com/CGAL/Members/wiki/Features/Small_Features/DT2_strict_and_weak_conflict_zone
2019-01-14 11:19:21 +01:00
Mael Rouxel-Labbé
502c28796d
Clarify 'last' ==> 'top'
2019-01-11 13:56:06 +01:00
Mael Rouxel-Labbé
28ce2a5240
Fixed stack order in non recursive conflict walking
...
Edges must be output in a CCW order, which is achieved by walking ccw-ly first.
In the recursive function, we correctly call 'propagate(..., ccw(j))' first.
For the non-recursive version which uses a stack, then we must add 'ccw(j)'
last since the stack is a LIFO structure.
2019-01-11 12:32:43 +01:00
Mael Rouxel-Labbé
a8e28b02c6
Specify default face base for DT2
2018-04-26 13:00:50 +02:00
Sébastien Loriot
8cdfad0d08
add missing URL and Id tags
2017-11-15 22:58:57 +01: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é
2dc4974871
Improved readability of Delaunay_triangulation_2.h (no real changes)
...
Only whitespace cleaning, indentation fixing, empty lines removal, etc.
2017-06-28 10:14:35 +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
89242f2687
When the dimension is 0, we can only have 0 or 1 vertices
2016-10-17 13:45:42 +02:00
Laurent Rineau
51f5697d3d
Add missing #include
2016-09-30 15:23:14 +02: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
Andreas Fabri
4fec754ef8
put static into the macro and rename it
2015-12-02 20:40:15 +01:00
Andreas Fabri
37677ededc
cleanup: reinsert the repetitive code that was temporarily in a repetitively included .h
2015-11-19 09:08:02 +01:00
Andreas Fabri
3d4a1be429
WIP with Clement
2015-10-01 09:47:47 +02:00
Andreas Fabri
ea612e9645
Improved macros to avoid #if #else where we want to use TLS
...
The Residue.cpp file still needs simplification
2015-09-11 18:01:51 +02:00
Andreas Fabri
a14cf913e9
WIP: In Lazy.h we now have a single macro for boost and c++11 thread
2015-09-11 14:54:11 +02:00
Andreas Fabri
220651bc88
Use CGAL_THREAD_LOCAL as thread_local only comes with VC201
2015-09-04 18:09:50 +02:00
Jane Tournois
4cf8655c00
move all the cdt.dual(v) code from Triangulation_2 to Mesh_2
...
we do not change the API of Triangulation_2 for now
maybe later, and this version should be easy to keep backward compatible
2015-05-19 08:54:33 +02:00
Jane Tournois
4cf43198e2
dual(v) returns an OutputIterator that collects rays and segments
...
to do so, use the Dispatch_output_iterator
- Constrained Voronoi diagram is now a class that has a pointer to a CDT
as member. We don't need an extra CDT anymore
- update examples
- also update the CDT 2 demo to see Voronoi cells, that are only valid when the
triangulation is Delaunay (constrained or not)
2014-10-07 15:03:41 +02:00
Jane Tournois
8d87ccf8c2
add a dual(vertex) function to DT2 and CDT2
...
- in DT2, it returns the Voronoi cell as a Polygon_2
- in CDT2, it returns the - possibly clipped - "bounded Voronoi cell"
see Seidel1988 or http://hal.inria.fr/docs/00/54/68/79/PDF/centroidal-vd.pdf
also add an example that computes the full BVD
2014-10-03 16:52:48 +02:00
Andreas Fabri
462ad57712
Remove a declaration without definition
2013-02-07 15:13:48 +01:00
Andreas Fabri
b307771892
bug fix for natural_neighbor_coordinates_2 using a small feature in the conflict zone functions of Delaunay_triangulation_2
2013-01-08 12:34:37 +01:00
Sébastien Loriot
59f9e8a778
add constructor from range for 2D Delaunay and Regular triangulation
2012-12-19 17:10:57 +01:00
Sébastien Loriot
6ff851e791
macro renaming
2012-11-02 08:44:08 +00:00
Sébastien Loriot
6da5e9e84d
unrecursive version of propagating_flip and propagate_conflicts
...
for CDT2 and DT2 using 100 recursive calls before switching to
a local stack in a function.
2012-10-30 13:16:52 +00:00
Sébastien Loriot
cd165546fc
Remove all alternatives to propagating_flip to keep one that allow to use the call
...
stack for at most 100 recursive calls and switch to a non-recursive function
that uses a local std::stack to emulate the call stack.
Benchmarks show the following results:
7 runs on 10,000,000 random in unit circle points
43.67074 : Old implementation
43.91474 : use stack for 100 first call then non-recursive with stack
44.07075 : use stack for 100 first call then non-recursive with vector
44.57079 : Local vector
45.0068 : Local stack
45.87886 : Local fixed size array
46.3829 : Local "home-made" small vector
53.41534 : Thread-local vector
2012-10-24 21:35:17 +00:00
Sébastien Loriot
a7b02bd716
merge experimental-packages/Triangulation_2-unrecursive
2012-10-24 09:26:32 +00:00
Marc Glisse
a758751485
Remove / comment out unused local typedefs. Fix one place where FT was used instead of RT (homogeneous coordinates, probably never compiled).
2012-07-28 06:21:06 +00:00
Sébastien Loriot
498c0a6e1e
Make the insert-by-range function more permissive
...
The condition is now to be convertible to the point type, pair<point,info>,...
This was the behavior before the insert-by-range-with-info methods were
introduced.
2012-01-24 17:25:20 +00:00
Laurent Rineau
8f59fd9592
Turn QPL into LGPLv3+
2012-01-13 16:33:35 +00:00