Laurent Rineau
89c8b9dec9
Merge pull request #8040 from janetournois/Tet_remeshing-add_corners-jtournois
...
Tetrahedral_remeshing - add `vertex_is_constrained_map` to set input corners
2024-02-28 10:56:50 +01:00
Jane Tournois
26639f4c29
add missing typedef
2024-02-19 16:57:15 +01:00
Jane Tournois
e190f302ca
add vertex_is_constrained_map to tetrahedral_isotropic_remeshing()
...
and to convert_to_triangulation_3(), to collect them
2024-02-19 15:09:11 +01:00
Sébastien Loriot
bd1d232d40
fix warnings
2024-02-19 10:02:19 +01:00
Jane Tournois
e2ef33f432
cleaning
...
- remove useless comments
- add debug early exits for each type of surface flips
- rename variables
- use c++ for loops
2024-02-02 16:19:57 +01:00
Jane Tournois
ff03290b29
re-insert constraints after split
2024-02-02 15:10:21 +00:00
Jane Tournois
c0ea678cde
collapse was leaving some complex edges behind
...
remove from complex the edge that is about to be collapsed
2024-02-02 10:13:54 +00:00
Jane Tournois
33b00d679f
reduce debug code
2024-02-01 22:05:46 +01:00
Jane Tournois
854e00e639
[flip] add third_vertex(f) helper function
...
# Conflicts:
# Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/internal/tetrahedral_remeshing_helpers.h
2024-02-01 14:43:44 +01:00
Jane Tournois
16abfe9958
[flip] reindent piece of code
...
# Conflicts:
# Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/internal/flip_edges.h
2024-02-01 14:43:21 +01:00
Jane Tournois
c6ba155a38
[flip] flipBoundaryEdges cleaning
...
# Conflicts:
# Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/internal/flip_edges.h
2024-02-01 14:42:37 +01:00
Jane Tournois
ac3e35477d
[flip] flipBoundaryEdges cleaning
...
# Conflicts:
# Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/internal/flip_edges.h
2024-02-01 14:41:37 +01:00
Jane Tournois
8941557a6d
[flip] add non-manifold edges to the initial edge-complex
...
this avoids trying to flip them
2024-02-01 14:27:10 +01:00
Jane Tournois
f505ebb2de
rewrite init_c3t3
...
for better handling of input triangulation not generated by Mesh_3
# Conflicts:
# Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/internal/tetrahedral_adaptive_remeshing_impl.h
# Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/internal/tetrahedral_remeshing_helpers.h
2024-02-01 14:26:06 +01:00
Jane Tournois
fd7c4113e5
[todo] set as corners the vertices where incident complex edges form a sharp angle
...
# Conflicts:
# Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/internal/tetrahedral_remeshing_helpers.h
2024-01-30 17:02:11 +01:00
Jane Tournois
83d99a507a
[flip] check vertices_subdomain_indices[v] == 2 at both endpoints!
...
and re-write collection of subdomains on boundary
2024-01-30 17:02:01 +01:00
Jane Tournois
302f8e8b2e
[flip] fix more warnings
...
# Conflicts:
# Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/internal/flip_edges.h
2024-01-30 17:02:01 +01:00
Jane Tournois
11545be57d
[flip] fix warnings
2024-01-30 17:01:40 +01:00
Jane Tournois
03ad75dbcb
[flip] fix verbose mode
2024-01-30 17:01:39 +01:00
Jane Tournois
d36cb8c29b
verbose mode cleaning
2024-01-18 12:09:46 +01:00
Jane Tournois
49415f3086
little cleaning
2024-01-09 14:02:59 +01:00
Jane Tournois
bc956d6ea3
[flip] reset sliver cache that may have been populated with dihedral angles during perturb()
2024-01-09 13:32:03 +01:00
Jane Tournois
1b0df8e7f0
[flip] remove useless optional
...
operator[] of unordered_map already does all that is needed
# Conflicts:
# Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/internal/flip_edges.h
2024-01-09 13:32:03 +01:00
Jane Tournois
ea6ae9462a
[flip] display min_dihedral_angle after each step of remeshing
2024-01-09 13:31:36 +01:00
Jane Tournois
45aeaccbbf
[flip] snap cosine to [-1., 1.] when computed in doubles
...
# Conflicts:
# Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/internal/tetrahedral_remeshing_helpers.h
2024-01-09 13:31:36 +01:00
Jane Tournois
9efb66f808
[flip] use optional pointer
...
# Conflicts:
# Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/internal/flip_edges.h
2024-01-09 13:31:12 +01:00
Jane Tournois
161d679531
[flips] do not use cache sliver value when it's not valid,
...
invalidate cache sliver value when needed,
and do not remove/add edges to the complex during flips, since complex edges
never get modified
# Conflicts:
# Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/internal/flip_edges.h
2024-01-09 13:30:37 +01:00
Jane Tournois
b70576f022
[flip] add verbosity
2024-01-09 13:30:17 +01:00
Jane Tournois
1748dfadbb
fix compilation
2023-12-22 14:52:03 +01:00
Jane Tournois
50a3994155
Merge remote-tracking branch 'cgal/master' into Tet_remeshing-flips_on_surface-jtournois
...
# Conflicts:
# Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/internal/tetrahedral_adaptive_remeshing_impl.h
2023-12-22 14:44:01 +01:00
Jane Tournois
c1e1084723
flip edges on surfaces
2023-12-22 14:22:36 +01:00
Jane Tournois
619871e04d
minor cleaning
2023-12-21 11:07:07 +01:00
Jane Tournois
71c0a48154
fix compilation after updating branch
2023-12-21 10:34:56 +01:00
Jane Tournois
cddd344d11
add assertions
2023-12-21 09:26:51 +01:00
Jane Tournois
ff1b3e0a95
re-introduce flips inside volume
...
# Conflicts:
# Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/internal/flip_edges.h
2023-12-21 09:26:50 +01:00
Jane Tournois
6ec474f5e2
filling the surface valence container fixed
...
it was not counting surface patches properly for vertices
incident to 2 patches, when the vertex is on a complex edge
2023-12-21 09:25:18 +01:00
Jane Tournois
4bbdabce20
use set and not vector to count incident subdomains
2023-12-21 09:25:17 +01:00
Jane Tournois
e5ebc849f5
fix case
2023-12-21 09:25:16 +01:00
Jane Tournois
51c2b80330
remove trailing whitespaces
2023-12-21 09:25:15 +01:00
Jane Tournois
390f95cb13
wip improve collapse
2023-12-21 09:25:14 +01:00
Jane Tournois
1952060039
wrap debug code in macro
2023-12-21 09:25:13 +01:00
Jane Tournois
d9e0b19b20
comment debug variables
2023-12-21 09:25:12 +01:00
Jane Tournois
adf7812bc6
comment extra-verbosity
2023-12-21 09:25:11 +01:00
Jane Tournois
51401bae7c
fix surface flips for n/m cells
...
the angle condition is checked only for in-complex cells
2023-12-21 09:25:10 +01:00
Jane Tournois
e4fc54c973
all surface flips succeed
...
todo : check that dihedral angles do not get worse
# Conflicts:
# Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/internal/flip_edges.h
2023-12-21 09:25:09 +01:00
Jane Tournois
fd65b6a0cd
check angles before surface-flipping
...
and add experimental and unused code for n/m flips on surfaces
2023-12-21 09:24:49 +01:00
Jane Tournois
37db44c1d1
fix 4-4 flips on surface with valid c3t3
...
# Conflicts:
# Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/internal/flip_edges.h
2023-12-21 09:24:48 +01:00
Jane Tournois
9734585b35
wip flip on surfaces
...
there are holes on surfaces
# Conflicts:
# Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/internal/flip_edges.h
2023-12-21 09:24:34 +01:00
Jane Tournois
5345520091
introduce edge flips on surfaces
...
this version works with 4-4 flips where an edge is flipped on the surface, and
each pair of incident faces is incident to exactly 2 cells
# Conflicts:
# Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/internal/flip_edges.h
2023-12-21 09:24:05 +01:00
Jane Tournois
18facb24de
add missing nb_extra_iterations = 0 when macro is on (for debugging purposes)
2023-12-21 09:23:33 +01:00