Commit Graph

67 Commits

Author SHA1 Message Date
Laurent Rineau 27e50d43e1 Facet can be recovered by other operation 2023-03-17 13:27:20 +01:00
Laurent Rineau aecc195697 Fix region ids 2023-03-16 14:11:05 +01:00
Laurent Rineau 549ff7bdb0 Fix typo 2023-03-16 14:00:12 +01:00
Laurent Rineau d2cef5f1c4 fill_cdt_2 takes a reference to the CDT_2 object 2023-03-15 17:00:48 +01:00
Laurent Rineau 25b0c9aaa4 Fix a bug with markers of constrained facets 2023-03-13 16:18:53 +01:00
Laurent Rineau e762d7a719 Rename a variable 2023-03-13 16:18:18 +01:00
Laurent Rineau 6d54b9a9b2 Add an assertion 2023-03-13 16:16:56 +01:00
Laurent Rineau a8e06c3c4f Better assertion 2023-03-13 14:35:31 +01:00
Laurent Rineau 08c007a00e Add method `recheck_constrainted_Delaunay` 2023-03-13 14:32:43 +01:00
Laurent Rineau c99f0c5940 code to maintain the list of missing subfaces 2023-03-10 10:38:25 +01:00
Laurent Rineau a480a1dde8 triangulate_cavity counts the number of added vertices 2023-03-09 15:57:46 +01:00
Laurent Rineau feb3647820 Use std::set directly instead of std::vector 2023-03-09 15:56:53 +01:00
Laurent Rineau 9678e09077 restore_subface_region now works!!
I will have to refactor it because it is too long: more than 300 lines currently!
2023-03-09 13:01:17 +01:00
Laurent Rineau ccb8b0533f a new assertion about cavity triangulations 2023-03-09 12:57:36 +01:00
Laurent Rineau bee2138b01 Those helper functions can be static 2023-03-09 12:56:43 +01:00
Laurent Rineau bc1b43e532 cosmetic changes with clang-format 2023-03-09 12:56:16 +01:00
Laurent Rineau bdbe6c2646 Again a warning about non-coplanar polygons 2023-03-09 12:55:28 +01:00
Laurent Rineau 4aa227060d Better Next_face exception, with a message 2023-03-09 12:54:52 +01:00
Laurent Rineau 90387d3f5b Write the result to dump.off 2023-03-09 12:52:17 +01:00
Laurent Rineau c86c0fea01 Use new oformat possibilitities 2023-03-09 11:40:51 +01:00
Laurent Rineau 642a3d93ea write_facets needs a ref to the triangulation 2023-02-26 15:46:01 +01:00
Laurent Rineau e5b722aa93 Fix a warning about a copy in range-foor loop 2023-02-21 13:35:27 +01:00
Laurent Rineau fa07828cfe Deal with -DDCGAL_NO_DEPRECATED_CODE 2023-02-21 13:35:08 +01:00
Laurent Rineau 46fb757b57 Rework CGAL_DEBUG_CDT_3 2023-02-13 18:17:59 +01:00
Laurent Rineau 8bbc560920 WIP: not coplanar! 2023-02-13 18:07:49 +01:00
Laurent Rineau b2dc7cf1d2 WIP: Triangulate cavities 2023-02-13 15:44:46 +01:00
Laurent Rineau daa2f6f23e Fix a warning 2023-02-13 15:44:03 +01:00
Laurent Rineau 89c5d7aa7f Remove the call to sort to avoid determinism issues 2023-02-06 15:04:36 +01:00
Laurent Rineau 764d91b25b Cosmetic changes 2023-02-06 15:04:36 +01:00
Laurent Rineau 0fa04af099 Split function restore_subface_region
Now there is a function `construct_cavities`, of 130 lines.
That is more than enough.
2023-02-06 15:04:36 +01:00
Laurent Rineau 67c7c9045d Collect facets of upper and lower cavities 2023-02-06 15:04:36 +01:00
Laurent Rineau cebea91180 Gather facets of upper/lower cavities 2023-02-06 15:04:36 +01:00
Laurent Rineau ba9ddb36c7 Remove a duplicate in intersecting_edges 2023-02-06 15:04:36 +01:00
Laurent Rineau 6b671bfbc5 Debug: dump all interesting regions 2023-02-06 15:04:36 +01:00
Laurent Rineau bec251d59c Add a better way to deal with "already visited" 2023-02-06 15:04:36 +01:00
Laurent Rineau 6ecf273af7 Better handling of the exceptional case `Next_face`
`processed_faces.insert(fh_region.begin(), fh_region.end());` is done before
the assertion is thrown.
2023-02-06 15:04:36 +01:00
Laurent Rineau 8bf2a0e69a Use a custom intersect test, report oriented edge
Now the first vertex of the edge is above the region
2023-02-06 15:04:36 +01:00
Laurent Rineau e25ecbe424 Different choice of normal, not really better
- perfect for `cube_quad.off`,
- but not for `mpi.off`.

The truth is out there.
2023-02-06 15:04:36 +01:00
Laurent Rineau f0c60d8d23 WIP: the set of intersecting edges is constructed
That seems to work.
2023-02-06 15:04:36 +01:00
Laurent Rineau 3a23114476 Reduce debug informations, by default 2023-02-06 15:04:36 +01:00
Laurent Rineau 29cd77764f refactor: extract fct does_edge_intersect_region 2023-02-06 15:04:36 +01:00
Laurent Rineau ded672a308 Use a border edge 2023-02-06 15:04:36 +01:00
Laurent Rineau 7b9bcb8dc3 Add const to for-loop 2023-02-06 15:04:36 +01:00
Laurent Rineau 9602eede86 Extract a fct search_first_intersection 2023-02-06 15:04:36 +01:00
Laurent Rineau 00d815ecb3 Refactor, reindent restore_constrained_Delaunay 2023-02-06 15:04:36 +01:00
Laurent Rineau 155f6791a2 Use std::optional<Edge> instead of bool 2023-02-06 15:04:36 +01:00
Laurent Rineau e03c0f36ce WIP: now that assertion no long fail 2023-02-06 14:42:28 +01:00
Laurent Rineau 8dec1ab3b3 WIP: new assertion, that crashes 2023-02-06 14:42:28 +01:00
Laurent Rineau 78c3e0b342 Fix a stupid bug when the constraint is reversed 2023-02-06 14:42:28 +01:00
Laurent Rineau 0a86d2d62f Use <format> to display new debug information 2023-02-06 14:42:28 +01:00