Commit Graph

110887 Commits

Author SHA1 Message Date
Sébastien Loriot 66965f3a07 remove todo 2025-02-14 11:03:32 +01:00
Guillaume Damiand 4a0e20f938 Bug fix for compact container with index, when iterating on empty container. 2025-02-13 17:47:29 +01:00
Guillaume Damiand 5190030a73 update cmap test empty iterator 2025-02-13 16:11:12 +01:00
Guillaume Damiand 3942e1e2a6 add cmap test 2025-02-13 15:12:15 +01:00
Sébastien Loriot 06b511cc65 Merge pull request #6088 from sloriot/PMP-add_discrete_curvature
Add functions to compute discrete curvatures
2025-02-12 21:22:40 +01:00
Sébastien Loriot de1fb95d15 Merge pull request #8658 from MaelRL/Tr-Document_point-GF
Document `point()` in all triangulations
2025-02-12 21:18:27 +01:00
Sébastien Loriot 9c536ddae6 Merge pull request #8234 from MaelRL/BGL-Add_remove_deg_2_vertex-GF
Add an Euler operation to remove degree 2 vertices
2025-02-12 21:17:43 +01:00
Sébastien Loriot b879d39472 Merge remote-tracking branch 'cgal/6.0.x-branch' 2025-02-12 19:49:46 +01:00
Sébastien Loriot 9b1c378424 Merge remote-tracking branch 'cgal/5.6.x-branch' into 6.0.x-branch 2025-02-12 19:49:09 +01:00
Sebastien Loriot 8836f5e705
Polygon repair using union and intersection (#8510)
## Summary of Changes

Add new repair rules in Polygon_repair package

## Release Management

* Affected package(s): Polygon_repair
* Feature/Small Feature (if any):
[link](https://cgalwiki.geometryfactory.com/CGAL/Members/wiki/Features/Small_Features/Polygon_repair_union_intersection)
-- **pre-approval 2025/01/03**
* Link to compiled documentation:
[link](https://cgal.geometryfactory.com/~afabri/Repair/Manual/packages.html#PkgPolygonRepair)
* License and copyright ownership: GF
2025-02-12 19:47:30 +01:00
Sebastien Loriot f079630f6e
issue #8689 Regression documentation build (#8698)
- compare doxygen version with the available directories on disk and
(try to) use the most appropriate one
- give a warning when there are more directories than expected (already
present), though `FATAL` should probably be `FATAL_ERROR` though the
latest will give problems when adding a new version to the directory
list for testing. Changed the message to a `WARNING`
2025-02-12 19:45:14 +01:00
Sébastien Loriot 043becfe7f Merge pull request #8273 from lrineau/CGAL-followup_PR_8170-lrineau
Improvement backports from CDT_3 branch (Follow-up to PR #8170)
2025-02-12 19:43:35 +01:00
Sebastien Loriot 636368ed8f
Always init time_stamp to -2 (#8714)
It is not clear to me that this is the right thing to do:
- it is done for some classes
- but in some test, a comment mention that it should be uninitialized
(the test works if init to -1 but not to 0).
- Base_time_stamper is doing an init to -2
2025-02-12 19:40:27 +01:00
Sebastien Loriot 925c15fd98
Correct documentation mistakes in double.h and long_double.h (#8729)
## Release Management

* Affected package(s):
* Issue(s) solved (if any): fix #7781 #7782 
* Feature/Small Feature (if any):
* Link to compiled documentation (obligatory for small feature) [*wrong
link name to be changed*](httpssss://wrong_URL_to_be_changed/Manual/Pkg)
* License and copyright ownership:
2025-02-12 19:39:16 +01:00
Sebastien Loriot 14b83f0d3e
boost::tie -> std::tie (#8715) 2025-02-12 19:36:19 +01:00
Sebastien Loriot 47263d3aaa
Fix size types in BGL doc (#8722)
## Release Management

* Affected package(s): `BGL`
* Issue(s) solved (if any): fix #8720
* Feature/Small Feature (if any): -
* License and copyright ownership: no change
2025-02-12 19:35:26 +01:00
Sebastien Loriot 3394b6d889
Update application name (#8731) 2025-02-12 19:34:53 +01:00
Andreas Fabri c8e9357080 Use std::prev() and std::next() instead of their boost equivalents 2025-02-12 17:50:35 +00:00
Andreas Fabri 98b6cf398d change iterator category to bidirectional 2025-02-12 17:48:55 +00:00
Andreas Fabri bc6d19e11b The bug was to compare prior and next, whereas we have to compare *prior with *next 2025-02-12 17:35:28 +00:00
Andreas Fabri 33eec61830 Add testcase 2025-02-12 12:01:03 +00:00
Andreas Fabri 7fe3a5aa4b Polyline_simplification: Fix unremovble vertices 2025-02-12 11:46:12 +00:00
Laurent Rineau e19e5b7025 do not require `Boost_FOUND` 2025-02-11 15:36:44 +01:00
Laurent Rineau fa83d0bd45 fix Compact_container::reserve, with timestamps 2025-02-10 18:07:32 +01:00
Laurent Rineau 4e5fed81de fix a bug when `CGAL_BRANCH_BUILD` is falsy (in testsuite tarballs for example) 2025-02-10 15:08:19 +01:00
Mael b2ea32cafc
Fix typo
Co-authored-by: Laurent Rineau <Laurent.Rineau@cgal.org>
2025-02-10 14:22:54 +01:00
Léo Valque bfc8f2ca80 Replace four almost identical sentences in int.h by one 2025-02-10 10:30:31 +01:00
albert-github a643c07a29 Incorrect rendered formulas
The formula in Documentation/doc/biblio/cgal_manual.bib
```
 @article{cgal:cgm-fobbo-11,
   title={Fast Oriented Bounding Box Optimization on the Rotation Group $\SO(3, \mathrm{R})$},
   author={Chang, Chia-Tche and Gorissen, Bastien and Melchior, Samuel},

```
renders incorrectly (see Optimal_bounding_box/citelist.html) as there is no command `\SO` in LaTeX

The formula in doc/Kernel_d/CGAL/Kernel_d/Aff_transformation_d.h
```
\pre \f$ sin_num^2 + cos_num^2 = den^2\f$ and \f$ 0 \leq e_1 < e_2 < d\f$.
```
renders in an unexpected way (see Kernel_d/classCGAL_1_1Aff__transformation__d.html) as the `_` is seen as subscript operator in LaTeX
2025-02-10 10:19:10 +01:00
Sébastien Loriot 2060b222c5 remove leftover 2025-02-09 18:48:14 +01:00
Léo Valque bc35e39e1c add the cgalModels to int.h 2025-02-07 16:54:06 +01:00
Léo Valque 30a8e52c51 Replace Sqrt with KthRoot and modify description of longlong int 2025-02-07 16:19:29 +01:00
Laurent Rineau 8eefb7f173 Merge branch 'master' into pr/lrineau/8273 2025-02-07 16:10:52 +01:00
Sebastien Loriot e871025f36
update our CMake supported versions to ...3.31 (#8727)
## Summary of Changes

Update our CMake supported versions to ...3.31. That will suppress the
warnings about `CMP0167` (from CMake 3.30):

```
CMake Warning (dev) at cmake/modules/display-third-party-libs-versions.cmake:37 (find_package):
  Policy CMP0167 is not set: The FindBoost module is removed.  Run "cmake
  --help-policy CMP0167" for policy details.  Use the cmake_policy command to
  set the policy and suppress this warning.
```

## Release Management

* Affected package(s): all cmake scripts
* License and copyright ownership: maintenance by GF
2025-02-07 14:03:47 +01:00
Sébastien Loriot 00bf449e04 restore test 2025-02-06 20:57:28 +01:00
Mael Rouxel-Labbé 4cc3eef67b Update CHANGES.md 2025-02-06 20:17:19 +01:00
Mael Rouxel-Labbé 94bd217b2b Update CHANGES.md 2025-02-06 20:16:43 +01:00
Mael Rouxel-Labbé ad53f4c3ce Update changelog 2025-02-06 20:14:30 +01:00
Laurent Rineau bc44c91536 add a benchmark for Polyline_simplification_2
Using the tool `compare.py` from [Google Benchmark Tools][1]...

[1]: https://github.com/google/benchmark/blob/main/docs/tools.md

...given that:

  - `benchmark_simplify-AFTER` is the file `benchmark_simplify.cpp`
    compiled from this branch, and flags `-msse3  -DNDEBUG -O3`
    with gcc version 14.2.1,
  - `benchmark_simplify-BEFORE` is the same file
    compiled from the branch `master`, and same flags and compiler.

the command line was:

```shell
compare.py benchmarks build/Release/benchmark/Polyline_simplification_2/benchmark_simplify-BEFORE build/Release/benchmark/Polyline_simplification_2/benchmark_simplify-AFTER Data/data/wkt/norway-MP.wkt --benchmark_repetitions=20 --benchmark_counters_tabular=true --benchmark_time_unit=s
```

The following results show that there is a speedup
of about 15% (mean) or 18% (median)

```
RUNNING: build/Release/benchmark/Polyline_simplification_2/benchmark_simplify-BEFORE Data/data/wkt/norway-MP.wkt --benchmark_repetitions=20 --benchmark_counters_tabular=true --benchmark_time_unit=s --benchmark_out=/tmp/tmpvxyq_i24
2025-02-06T17:23:08+01:00
Running Data/data/wkt/norway-MP.wkt
Run on (16 X 800 MHz CPU s)
CPU Caches:
  L1 Data 48 KiB (x8)
  L1 Instruction 32 KiB (x8)
  L2 Unified 1280 KiB (x8)
  L3 Unified 24576 KiB (x1)
Load Average: 1.47, 2.07, 1.65
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Benchmark                                                 Time             CPU   Iterations    #points  #polygons #polylines nb of constraints nb of sub-constraints nb of vertices
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
simplify file Data/data/wkt/norway-MP.wkt             0.067 s         0.067 s            12          0        848          0               849               40.568k        40.565k
simplify file Data/data/wkt/norway-MP.wkt             0.066 s         0.066 s            12          0        848          0               849               40.568k        40.565k
simplify file Data/data/wkt/norway-MP.wkt             0.065 s         0.065 s            12          0        848          0               849               40.568k        40.565k
simplify file Data/data/wkt/norway-MP.wkt             0.073 s         0.072 s            12          0        848          0               849               40.568k        40.565k
simplify file Data/data/wkt/norway-MP.wkt             0.066 s         0.066 s            12          0        848          0               849               40.568k        40.565k
simplify file Data/data/wkt/norway-MP.wkt             0.064 s         0.064 s            12          0        848          0               849               40.568k        40.565k
simplify file Data/data/wkt/norway-MP.wkt             0.067 s         0.066 s            12          0        848          0               849               40.568k        40.565k
simplify file Data/data/wkt/norway-MP.wkt             0.071 s         0.071 s            12          0        848          0               849               40.568k        40.565k
simplify file Data/data/wkt/norway-MP.wkt             0.064 s         0.064 s            12          0        848          0               849               40.568k        40.565k
simplify file Data/data/wkt/norway-MP.wkt             0.064 s         0.064 s            12          0        848          0               849               40.568k        40.565k
simplify file Data/data/wkt/norway-MP.wkt             0.074 s         0.074 s            12          0        848          0               849               40.568k        40.565k
simplify file Data/data/wkt/norway-MP.wkt             0.066 s         0.066 s            12          0        848          0               849               40.568k        40.565k
simplify file Data/data/wkt/norway-MP.wkt             0.075 s         0.074 s            12          0        848          0               849               40.568k        40.565k
simplify file Data/data/wkt/norway-MP.wkt             0.074 s         0.074 s            12          0        848          0               849               40.568k        40.565k
simplify file Data/data/wkt/norway-MP.wkt             0.076 s         0.076 s            12          0        848          0               849               40.568k        40.565k
simplify file Data/data/wkt/norway-MP.wkt             0.078 s         0.078 s            12          0        848          0               849               40.568k        40.565k
simplify file Data/data/wkt/norway-MP.wkt             0.074 s         0.074 s            12          0        848          0               849               40.568k        40.565k
simplify file Data/data/wkt/norway-MP.wkt             0.067 s         0.067 s            12          0        848          0               849               40.568k        40.565k
simplify file Data/data/wkt/norway-MP.wkt             0.064 s         0.064 s            12          0        848          0               849               40.568k        40.565k
simplify file Data/data/wkt/norway-MP.wkt             0.069 s         0.069 s            12          0        848          0               849               40.568k        40.565k
simplify file Data/data/wkt/norway-MP.wkt_mean        0.069 s         0.069 s            20          0        848          0               849               40.568k        40.565k
simplify file Data/data/wkt/norway-MP.wkt_median      0.067 s         0.067 s            20          0        848          0               849               40.568k        40.565k
simplify file Data/data/wkt/norway-MP.wkt_stddev      0.005 s         0.005 s            20          0          0          0                 0                     0              0
simplify file Data/data/wkt/norway-MP.wkt_cv           6.73 %          6.68 %            20      0.00%      0.00%      0.00%             0.00%                 0.00%          0.00%
RUNNING: build/Release/benchmark/Polyline_simplification_2/benchmark_simplify-AFTER Data/data/wkt/norway-MP.wkt --benchmark_repetitions=20 --benchmark_counters_tabular=true --benchmark_time_unit=s --benchmark_out=/tmp/tmp59ui0dsw
2025-02-06T17:29:26+01:00
Running Data/data/wkt/norway-MP.wkt
Run on (16 X 800.961 MHz CPU s)
CPU Caches:
  L1 Data 48 KiB (x8)
  L1 Instruction 32 KiB (x8)
  L2 Unified 1280 KiB (x8)
  L3 Unified 24576 KiB (x1)
Load Average: 1.61, 1.94, 1.73
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Benchmark                                                 Time             CPU   Iterations    #points  #polygons #polylines nb of constraints nb of sub-constraints nb of vertices
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
simplify file Data/data/wkt/norway-MP.wkt             0.054 s         0.054 s            13          0        848          0               849               40.568k        40.565k
simplify file Data/data/wkt/norway-MP.wkt             0.057 s         0.057 s            13          0        848          0               849               40.568k        40.565k
simplify file Data/data/wkt/norway-MP.wkt             0.059 s         0.059 s            13          0        848          0               849               40.568k        40.565k
simplify file Data/data/wkt/norway-MP.wkt             0.065 s         0.065 s            13          0        848          0               849               40.568k        40.565k
simplify file Data/data/wkt/norway-MP.wkt             0.058 s         0.058 s            13          0        848          0               849               40.568k        40.565k
simplify file Data/data/wkt/norway-MP.wkt             0.056 s         0.056 s            13          0        848          0               849               40.568k        40.565k
simplify file Data/data/wkt/norway-MP.wkt             0.053 s         0.053 s            13          0        848          0               849               40.568k        40.565k
simplify file Data/data/wkt/norway-MP.wkt             0.061 s         0.061 s            13          0        848          0               849               40.568k        40.565k
simplify file Data/data/wkt/norway-MP.wkt             0.058 s         0.058 s            13          0        848          0               849               40.568k        40.565k
simplify file Data/data/wkt/norway-MP.wkt             0.052 s         0.052 s            13          0        848          0               849               40.568k        40.565k
simplify file Data/data/wkt/norway-MP.wkt             0.054 s         0.054 s            13          0        848          0               849               40.568k        40.565k
simplify file Data/data/wkt/norway-MP.wkt             0.055 s         0.054 s            13          0        848          0               849               40.568k        40.565k
simplify file Data/data/wkt/norway-MP.wkt             0.054 s         0.054 s            13          0        848          0               849               40.568k        40.565k
simplify file Data/data/wkt/norway-MP.wkt             0.055 s         0.054 s            13          0        848          0               849               40.568k        40.565k
simplify file Data/data/wkt/norway-MP.wkt             0.054 s         0.054 s            13          0        848          0               849               40.568k        40.565k
simplify file Data/data/wkt/norway-MP.wkt             0.059 s         0.059 s            13          0        848          0               849               40.568k        40.565k
simplify file Data/data/wkt/norway-MP.wkt             0.057 s         0.057 s            13          0        848          0               849               40.568k        40.565k
simplify file Data/data/wkt/norway-MP.wkt             0.058 s         0.057 s            13          0        848          0               849               40.568k        40.565k
simplify file Data/data/wkt/norway-MP.wkt             0.055 s         0.055 s            13          0        848          0               849               40.568k        40.565k
simplify file Data/data/wkt/norway-MP.wkt             0.059 s         0.059 s            13          0        848          0               849               40.568k        40.565k
simplify file Data/data/wkt/norway-MP.wkt_mean        0.057 s         0.057 s            20          0        848          0               849               40.568k        40.565k
simplify file Data/data/wkt/norway-MP.wkt_median      0.057 s         0.056 s            20          0        848          0               849               40.568k        40.565k
simplify file Data/data/wkt/norway-MP.wkt_stddev      0.003 s         0.003 s            20          0          0          0                 0                     0              0
simplify file Data/data/wkt/norway-MP.wkt_cv           5.37 %          5.32 %            20      0.00%      0.00%      0.00%             0.00%                 0.00%          0.00%
Comparing build/Release/benchmark/Polyline_simplification_2/benchmark_simplify-BEFORE to build/Release/benchmark/Polyline_simplification_2/benchmark_simplify-AFTER
Benchmark                                                          Time             CPU      Time Old      Time New       CPU Old       CPU New
-----------------------------------------------------------------------------------------------------------------------------------------------
simplify file Data/data/wkt/norway-MP.wkt                       -0.1941         -0.1942             0             0             0             0
simplify file Data/data/wkt/norway-MP.wkt                       -0.1269         -0.1272             0             0             0             0
simplify file Data/data/wkt/norway-MP.wkt                       -0.0900         -0.0918             0             0             0             0
simplify file Data/data/wkt/norway-MP.wkt                       -0.1049         -0.1065             0             0             0             0
simplify file Data/data/wkt/norway-MP.wkt                       -0.1204         -0.1206             0             0             0             0
simplify file Data/data/wkt/norway-MP.wkt                       -0.1279         -0.1282             0             0             0             0
simplify file Data/data/wkt/norway-MP.wkt                       -0.1962         -0.1961             0             0             0             0
simplify file Data/data/wkt/norway-MP.wkt                       -0.1370         -0.1377             0             0             0             0
simplify file Data/data/wkt/norway-MP.wkt                       -0.0951         -0.0962             0             0             0             0
simplify file Data/data/wkt/norway-MP.wkt                       -0.1851         -0.1852             0             0             0             0
simplify file Data/data/wkt/norway-MP.wkt                       -0.2720         -0.2716             0             0             0             0
simplify file Data/data/wkt/norway-MP.wkt                       -0.1702         -0.1717             0             0             0             0
simplify file Data/data/wkt/norway-MP.wkt                       -0.2700         -0.2703             0             0             0             0
simplify file Data/data/wkt/norway-MP.wkt                       -0.2644         -0.2634             0             0             0             0
simplify file Data/data/wkt/norway-MP.wkt                       -0.2861         -0.2856             0             0             0             0
simplify file Data/data/wkt/norway-MP.wkt                       -0.2492         -0.2488             0             0             0             0
simplify file Data/data/wkt/norway-MP.wkt                       -0.2310         -0.2301             0             0             0             0
simplify file Data/data/wkt/norway-MP.wkt                       -0.1382         -0.1389             0             0             0             0
simplify file Data/data/wkt/norway-MP.wkt                       -0.1401         -0.1406             0             0             0             0
simplify file Data/data/wkt/norway-MP.wkt                       -0.1464         -0.1467             0             0             0             0
simplify file Data/data/wkt/norway-MP.wkt_pvalue                 0.0000          0.0000      U Test, Repetitions: 20 vs 20
simplify file Data/data/wkt/norway-MP.wkt_mean                  -0.1804         -0.1806             0             0             0             0
simplify file Data/data/wkt/norway-MP.wkt_median                -0.1547         -0.1549             0             0             0             0
simplify file Data/data/wkt/norway-MP.wkt_stddev                -0.3458         -0.3479             0             0             0             0
simplify file Data/data/wkt/norway-MP.wkt_cv                    -0.2018         -0.2041             0             0             0             0
OVERALL_GEOMEAN                                                 -0.1797         -0.1800             0             0             0             0
```
2025-02-06 17:44:28 +01:00
Léo Valque d76edec2f0 Correct documentation mistakes in double.h and long_double.h 2025-02-06 14:29:58 +01:00
Léo Valque 931ae674d2 add a reference to repair rule group in the description of repair for more clarity 2025-02-06 12:58:36 +01:00
Léo Valque 1407790f6c Doc: Improve description of the repair rules of Repair_polygon and create a group Repair Rules 2025-02-06 11:21:14 +01:00
Mael Rouxel-Labbé 07d7615d91 Require a FaceGraph for boundary checks 2025-02-06 10:16:10 +01:00
Sébastien Loriot ab1983a066 another missing tuple 2025-02-06 09:09:47 +01:00
Laurent Rineau 765744e8b2 fix WKT I/O error handling 2025-02-06 01:22:02 +01:00
Laurent Rineau 050677f002 add CMake option CGAL_with_benchmarks 2025-02-06 01:21:42 +01:00
Sébastien Loriot 6f65025259 use std tuple 2025-02-05 16:54:18 +01:00
Laurent Rineau 249a6ac47e
typo correction (#8728)
Spelling correction
2025-02-05 13:57:16 +01:00
albert-github 26c3e9cd21 Spelling correction
Spelling correction
2025-02-05 10:28:46 +01:00
Sébastien Loriot a6eff02a62 Merge remote-tracking branch 'cgal/6.0.x-branch' into master 2025-02-05 08:42:33 +01:00
Sébastien Loriot 5a61b6a994 Merge remote-tracking branch 'cgal/5.6.x-branch' into cgal/6.0.x-branch 2025-02-05 08:40:26 +01:00