Commit Graph

6177 Commits

Author SHA1 Message Date
Sven Oesau 9e36c6744b adding support for Eigen3 5.0.0
moving the Eigen3 version check into CGAL_Eigen3_support.cmake
2025-11-06 10:01:01 +01:00
Sébastien Loriot 42068f6009 handle case of identical projected points 2025-10-15 11:03:16 +02:00
Sébastien Loriot 8c25c60052 Merge remote-tracking branch 'cgal/5.6.x-branch' into 'cgal/6.0.x-branch' 2025-09-03 16:55:14 +02:00
lvalque 24f70c8b3d add an example of issue_7164 with a closed model 2025-09-03 16:41:28 +02:00
lvalque 37f9018997 Initialized the lower bound face in traversal of the AABB-tree to solve issue-7164 2025-09-03 16:41:15 +02:00
Sébastien Loriot 419057ece4 Merge remote-tracking branch 'cgal/5.6.x-branch' into 'cgal/6.0.x-branch' 2025-08-13 18:05:54 +02:00
Sébastien Loriot fdd7c17ec1 avoid large dag in centroid 2025-08-07 18:20:20 +02:00
Sébastien Loriot 28eee36cb6 Merge remote-tracking branch 'cgal/5.6.x-branch' into 'cgal/6.0.x-branch' 2025-07-31 15:15:52 +02:00
Sébastien Loriot d182dabf94 cannot collapse only if one of the two vertex is not constrained
+ fill maps only if required
2025-07-28 15:41:20 +02:00
albert-github 7385518583 Warnings during table generation in documentation
With doxygen release1.14.0 doxygen is a bit stricter regarding handling tables (not ignoring superfluous tags), it now leads to some warnings (and unexpected results).
2025-06-23 14:54:04 +02:00
Jane Tournois 4c462898a8 fix compilation of PMP::isotropic_remeshing with Epeck
and add a test to avoid future regressions
2025-06-03 14:06:11 +02:00
Sébastien Loriot 6a56496c84 Merge remote-tracking branch 'cgal/5.6.x-branch' into cgal/6.0.x-branch 2025-04-16 18:51:44 +02:00
Sebastien Loriot 820d4decda
Fix for foldovers so that they are not considered as coplanar (#8734)
It is still not clear to me if we want to support those configurations
as they are self-intersections.
2025-04-16 18:49:11 +02:00
Jane Tournois a52afd8800 setting status of edges that will disappear is cheaper than checking status 2025-04-14 11:30:44 +02:00
Jane Tournois 5b3356dbc6 fix halfedge status for opposite edges when removing border degenerate faces 2025-04-14 11:14:49 +02:00
Sebastien Loriot b33204d5f2
Spatial_search: Duplicate point handling (#8705)
## Summary of Changes

stop splitting nodes if the contained points are only duplicates

## Release Management

* Affected package(s): dD Spatial Searching
2025-04-10 18:08:30 +02:00
Sébastien Loriot f516c12c5b Merge remote-tracking branch 'cgal/5.6.x-branch' into 6.0.x-branch 2025-04-03 16:09:15 +02:00
Sébastien Loriot 60b4b19ba4 add more potentially missing include directives 2025-04-02 09:10:51 +02:00
Sébastien Loriot a838073ec7 Merge remote-tracking branch 'cgal/5.6.x-branch' into cgal/6.0.x-branch 2025-03-31 15:31:19 +02:00
Sebastien Loriot bcaeb64f54
Warning / compilation fixes for 5.6.x (#8798)
## Summary of Changes

Fixes warnings/errors. Quite a few are just cherry picking fixes that
were done in master.

## Release Management

* Affected package(s): Various
* Issue(s) solved (if any): -
* Feature/Small Feature (if any): -
* License and copyright ownership: no change
2025-03-31 10:18:14 +02:00
Sébastien Loriot 9285e5c230 add empty line 2025-03-31 09:01:38 +02:00
Mael Rouxel-Labbé ad7f8d3041 Remove unused variables 2025-03-23 23:54:35 +01:00
albert-github 009a7963a8 Spelling correction
Spelling correction
2025-03-23 23:47:04 +01:00
Andreas Fabri dd99f3d526 PMP: Initialize to avoid warning 2025-03-23 23:46:50 +01:00
Sébastien Loriot dbee57b896 protect macro 2025-03-04 10:01:46 +01:00
Sébastien Loriot d4fa45f376 add test from the issue 2025-03-03 20:43:54 +01:00
Sébastien Loriot 0b55dc477d look for a feature edge around the vertex 2025-03-03 20:37:08 +01:00
Sébastien Loriot e8f7fcc0ae foldover are not coplanar patches 2025-02-12 01:16:54 +01:00
Sven Oesau 5b28489b16 fixed test_pmp_distance 2025-01-23 11:00:44 +01:00
Jane Tournois 8e0ebb9a39 update status of border edges when removing a (degenerate) border face 2025-01-10 13:42:33 +00:00
Sébastien Loriot cb3e182284 Merge remote-tracking branch 'cgal/5.6.x-branch' into HEAD 2024-12-23 09:38:35 +01:00
Sebastien Loriot 06fa730c75
Flip it if you can't collapse it (#8609)
if a needle is also a cap, it will be handled as a needle only. But if
we can't collapse the edge, a flip will not be tried. Try the flip too.

Note that this will slow down the method as the status of a triangle is
tested twice.

Fix #8605
2024-12-23 09:34:33 +01:00
Sebastien Loriot b55bdc0103
Fix link to replacement function (#8657)
## Release Management

* Affected package(s): `Polygon_mesh_processing`
* Issue(s) solved (if any): -
* Feature/Small Feature (if any): -
* License and copyright ownership: no change
2024-12-23 09:33:22 +01:00
Sébastien Loriot 8bc0b888b8 clean up patch and make filling lazy 2024-12-18 11:42:10 +01:00
Sébastien Loriot dfb77dde96 add test 2024-12-18 11:42:05 +01:00
Sébastien Loriot a6f7b3c163 WIP handle nested coplanar CC 2024-12-18 11:37:14 +01:00
Mael Rouxel-Labbé 4efaa1e9cb Fix link to replacement function 2024-12-13 11:57:30 +01:00
Jane Tournois 30dda7ae89 add examples to the doc! 2024-12-12 14:26:24 +00:00
Sébastien Loriot 3fa3568e6b Merge remote-tracking branch 'cgal/5.6.x-branch' into cgal/6.0.x-branch 2024-12-10 16:32:33 +01:00
Sebastien Loriot 289a8bda49
`PMP::isotropic_remeshing()` - fix relaxation of constrained vertices (#8604)
## Summary of Changes

Constrained vertices, and constrained edges were not properly protected
during the smoothing step.

## Release Management

* Affected package(s): PMP
* Issue(s) solved (if any): fix #8388
* License and copyright ownership: unchanged
2024-12-10 16:30:25 +01:00
Sébastien Loriot 0737a8f99b do not put all the faces of the mesh in the hash map 2024-12-10 15:58:53 +01:00
Sébastien Loriot c3e4e32fb7 factorize cap checks 2024-12-10 15:37:53 +01:00
Sébastien Loriot 116c0ec5d9 only use one container for the next loop
--> make the output of the function idempotent
2024-12-10 15:18:24 +01:00
Mael Rouxel-Labbé e9de7e88ad Fix test pretty much never testing envelope tests + read all formats 2024-12-07 23:34:58 +01:00
Mael Rouxel-Labbé eb668da9ea Misc cleaning 2024-12-07 23:34:23 +01:00
Mael Rouxel-Labbé fda7b1ae6a Avoid a lot of useless shape predicate calls
Here are some changes:
- Avoid a lot of redundant calls of is_it_a_needle / is_it_a_cap
  - Do not test for cap-ness if it's already a needle
  - Do not fill both ranges at the beginning, but fill
    with everything: on the first round, needle-ness will
    be tested, and the exit towards cap-ness will happen
  - Wait for a needle to no longer be a needle, or not be
    treatable to actually test cap-ness
- When the mesh is modified, do not test everything immediately,
  just put them in the queue of the next iteration

Result: Fewer calls to shape predicates

- master -
needle calls = 828 668
cap calls = 803 330

- PR -
needle calls = 803 554
cap calls = 795 317

Should be fewer but two effects are balacing each other for the calls:
- much fewer calls to shape predicates (is_it_a_needle, is_it_a_cap)
  by not calling until absolutely necessary (but still checking at pop time).
- when we modify the mesh, I no longer fill the CURRENT cap and needle
  ranges, but the next ones. The point is to really prioritize all caps
  BEFORE treating needles, whereas otherwise we would treat some needles
  at the current iteration while there are still caps to treat.
So there are more iterations which add more useless calls (see below)
2024-12-07 23:31:57 +01:00
Mael Rouxel-Labbé a4cb48a145 Fix never trying again a user-rejected cap 2024-12-07 23:29:04 +01:00
Mael Rouxel-Labbé eb5ff9b33e Fix collect_badly_shaped_triangles not actually filling both ranges 2024-12-07 23:28:20 +01:00
Sébastien Loriot cac285d097 no need to redo new node propagation if it was already been done once 2024-12-06 17:19:01 +01:00
Sébastien Loriot 0b3c27e584 swap the parameters also here 2024-11-21 09:04:17 +01:00