Laurent Rineau
87f6a352d1
factorize a lambda function
2024-01-04 14:47:45 +01:00
Laurent Rineau
62e3e8dc12
port back to C++17
...
The lack of `std::set::contains` is a real pain! Using `count()`
instead reduces the readability of the code.
2023-12-13 16:56:03 +01:00
Laurent Rineau
0b9133fba3
reduce timings in cases of PLC errors
2023-12-13 14:57:27 +01:00
Laurent Rineau
3f42717b5a
remove a spurious assertion
2023-12-08 16:05:07 +01:00
Laurent Rineau
934e65cd35
fix the assertion `v->nb_of_incident_constraints < 0`
2023-12-07 11:33:55 +01:00
Laurent Rineau
0c8697168f
detect small distances
2023-12-05 13:20:46 +01:00
Laurent Rineau
223454ab57
Merge remote-tracking branch 'cgal/master' into Triangulation_3-CDT_3-lrineau
2023-11-16 16:01:01 +01:00
Laurent Rineau
5a5a5618f8
[_, inserter] = set.insert... Use .second instead
...
That addresses a TODO from Jane's review.
2023-11-16 11:40:42 +01:00
Laurent Rineau
bbf2e8da31
simplify those lines
2023-11-16 11:38:29 +01:00
Laurent Rineau
a31fed66f1
construct_cavities: turn into vectors
2023-11-16 11:35:05 +01:00
Laurent Rineau
446d842586
insert_in_CDT_3: mirror facets directly
...
Facets are pushed directly as mirror facets, on the border of the cavity
so that they are seen from the exterior of the cavity.
That avoids a copy of a vector of facets.
2023-11-16 11:26:13 +01:00
Laurent Rineau
06e630287b
another fix
...
Now it seems to work!
2023-11-16 10:32:14 +01:00
Laurent Rineau
1f75f30ab2
WIP: more fix
2023-11-16 10:32:14 +01:00
Laurent Rineau
cc98a40424
WIP : fix
2023-11-16 10:32:14 +01:00
Laurent Rineau
c9540b13c5
WIP: add insert_in_cdt_3
2023-11-16 10:32:14 +01:00
Laurent Rineau
4f50a45374
Extract inner_map_of_cavity to a member function
2023-11-16 10:32:14 +01:00
Laurent Rineau
569aeb33f4
fix a bug?
...
The code review found that as a bug, but it never showed.
2023-11-16 10:32:14 +01:00
Laurent Rineau
16171923c7
extract the lambda register_facet_to_be_constrained
...
to a member function
2023-11-16 10:32:14 +01:00
Laurent Rineau
dc95d1ac59
fix typos (detected by spell-checker)
2023-11-16 10:32:14 +01:00
Laurent Rineau
f46654ef8c
more a function
...
Now the two functions are adjacent:
- `try_to_insert_circumcenter_in_face_or_return_encroached_edge` and
- `insert_mid_point_in_constrained_edge`
2023-11-09 19:39:47 +01:00
Laurent Rineau
255178644d
`inner_map_of_cavity` uses `this` as const and nothing else
...
That means it could be replaced by a const member function
2023-11-09 19:38:46 +01:00
Laurent Rineau
d1c513ac0d
result of the review with Jane
2023-11-09 19:38:01 +01:00
Laurent Rineau
92aabb00ad
use std::invoke (C++17) for IILE
...
*Immediately Invoked Lambda Expression*
Now that CGAL can use C++17 , switch to `std::invoke`
that is more readable that the two small characters `()`
hidden somewhere a few lines below.
With `std::invoke`, we understand straight away that the lambda is
called immediately.
Ref:
https://www.cppstories.com/2016/11/iife-for-complex-initialization/
2023-11-09 19:36:53 +01:00
Laurent Rineau
5997b70327
`triangulate_cavity` is a fct without side effect
...
(but the debug outputs)
2023-11-08 16:39:56 +01:00
Laurent Rineau
4d7a2fee64
Extract map_cavity_vertices_to_ambient_vertices
...
- make it const,
- and simplify the reuse of the API.
2023-11-08 15:52:20 +01:00
Laurent Rineau
eb1ab88c04
Adapt triangulate_cavity
...
that will allows its reuse by the function `insert(Point)`
2023-10-24 11:39:58 +02:00
Laurent Rineau
afce4db325
commit more debug code
2023-10-17 18:06:18 +02:00
Laurent Rineau
0186e9add9
add another option
...
this one is to dump the input surface with the extra Steiner points
of the conforming.
And add a --help option as well.
2023-10-17 16:05:35 +02:00
Laurent Rineau
4380273203
fix the number of added vertices in a cavity
2023-10-13 16:50:30 +02:00
Laurent Rineau
d1e76c2099
fix typo
2023-10-13 16:48:48 +02:00
Laurent Rineau
265d3ba8fe
reimplement brute_force_border_3_of_region
2023-10-04 16:16:33 +02:00
Laurent Rineau
634992dc9b
Replace ERROR by NOTE because those were not errors
2023-10-02 11:46:10 +02:00
Laurent Rineau
2d87d4172d
fix code when CGAL_NDEBUG or NDEBUG is defined
2023-09-26 15:34:17 +02:00
Laurent Rineau
a1ac93b529
fix a warning
2023-09-26 15:33:44 +02:00
Laurent Rineau
0cdb022027
fix a bug in dimension 2
...
There was a warning:
```
Triangulation_3/include/CGAL/Constrained_Delaunay_triangulation_3.h:1841:5: warning: this statement may fall through [-Wimplicit-fallthrough=]
[build] 1841 | } // dim 2
[build] | ^
```
and for once that was a warning about a real bug!
2023-09-26 12:50:56 +02:00
Laurent Rineau
5bc5ec4f46
fix cheese18 --merge-facets
...
The explanation of the bug:
`split_graph_into_polylines` can reverse the orientation of a polygon
2023-09-25 17:58:03 +02:00
Laurent Rineau
188f99ff97
code to detriangulate facets
2023-09-13 09:25:04 +02:00
Laurent Rineau
3b77eaac1c
WIP: preliminary work on detriangulate
2023-09-07 12:53:39 +02:00
Laurent Rineau
6234786dd9
is_valid: test all cells before return false
2023-09-04 11:11:23 +02:00
Laurent Rineau
6070f6e01a
tweak debug macros
2023-08-31 18:23:48 +02:00
Laurent Rineau
fc0cb34e64
more verbose is_valid
2023-08-31 12:06:33 +02:00
Laurent Rineau
cf73165563
debug msg
2023-08-31 12:04:53 +02:00
Laurent Rineau
f631d1eefe
Use a centroid
...
That ensures that the Steiner point is inside the constrained polygon.
2023-08-31 11:59:25 +02:00
Laurent Rineau
e8c6d15652
implement edge flip for regions of two triangles
2023-08-31 11:51:14 +02:00
Laurent Rineau
4d132faedd
extract lambdas iinto proper member functions
2023-08-03 16:42:28 +02:00
Laurent Rineau
420a3789c5
fix the detection of encroached constrained edge in the face
2023-08-02 18:24:22 +02:00
Laurent Rineau
6f965038fa
add a new assertion
2023-08-02 18:16:18 +02:00
Laurent Rineau
6c06dcbf34
change verbosity level of debug messages
2023-08-02 17:01:31 +02:00
Laurent Rineau
7df2963397
fix formatting
2023-08-02 16:03:40 +02:00
Laurent Rineau
07cfd82a84
add const/non_const ref to the CDT_2
2023-08-02 16:02:53 +02:00