Sébastien Loriot
c411ae69d0
Merge pull request #2951 from kkatrio/PMP-smoothing-kkatrio
...
PMP: Mesh and shape smoothing
2019-07-18 16:49:05 +02:00
Sébastien Loriot
1f8065c6c3
Merge pull request #3885 from MaelRL/PMP-Locate-GF
...
PMP: Add locate.h and rewrite Triangulation_2 graph traits
2019-07-18 16:40:49 +02:00
Sebastien Loriot
8adc64dfe3
Merge pull request #3860 from MaelRL/PMP-Add_non_manifold_vertices_collector-GF
...
PMP: Add function 'non_manifold_vertices'
2019-07-18 16:38:15 +02:00
Sebastien Loriot
0c089d6f91
Merge pull request #3721 from sloriot/PMP-clip_fixes
...
Fixes for clipping
2019-07-18 16:28:44 +02:00
Mael Rouxel-Labbé
13e87ad3bd
Parallelize AABB tree traversal
2019-07-18 14:32:56 +02:00
Mael Rouxel-Labbé
1954203264
Change comment after tests
2019-07-17 15:22:10 +02:00
Mael Rouxel-Labbé
95982eb36f
Allow source vertex to snap to edges, even if they have been previously snapped
...
The key point is that the splitting point of a (target) halfedge
is assigned the position of the source vertex that breaks this target halfedge.
In other words, if multiple source vertices have the same position, we do
not have to track and move these together because they do not move anyway.
2019-07-17 14:54:41 +02:00
Mael Rouxel-Labbé
348b806d5e
Use some point references to avoid copies
2019-07-17 14:53:57 +02:00
Mael Rouxel-Labbé
a63c10c2cb
Use traits class functors for equality tests
2019-07-17 14:33:47 +02:00
Mael Rouxel-Labbé
0d617400bc
Accelerate AABB tree traversal by passing the tolerance as initial min_dist
2019-07-17 14:29:26 +02:00
Mael Rouxel-Labbé
ead092a62b
Clean useless includes
2019-07-17 14:28:14 +02:00
Mael Rouxel-Labbé
b39d728f45
Minor doc cleaning
2019-07-15 11:40:46 +02:00
Sébastien Loriot
560c77f567
rename named function parameter class
2019-07-15 06:25:02 +02:00
Sébastien Loriot
cebf0657d8
Use a full CGAL version of named function parameters
...
no longer rely on boost
2019-07-14 22:45:47 +02:00
Sébastien Loriot
0ff0b41ac8
remove unused code
2019-07-11 12:24:05 +02:00
Mael Rouxel-Labbé
a284ec00d4
Fix typo
2019-07-11 11:31:40 +02:00
Mael Rouxel-Labbé
c3d1977ac1
Explicitely specify parameter blocks
...
Might help windows...?
2019-07-11 11:30:48 +02:00
Sébastien Loriot
f1e2bf702c
improve code + make sure in tests that halfedges are correctly linked
2019-07-11 09:38:23 +02:00
Mael
b8b1989c65
Update macroname
...
Apparently called MINILOG_MAX_LOG_LEVEL on the installations that matter...
2019-07-10 15:38:51 +02:00
Mael Rouxel-Labbé
bfaa4e000d
Fix doc warning
2019-07-09 16:45:10 +02:00
Mael Rouxel-Labbé
1e9e37bd3c
Remove unused template typedef
2019-07-08 09:02:39 +02:00
Mael Rouxel-Labbé
efceadd441
Temporarily override the value of MAX_LOG_LEVEL to silence Ceres on Windows
...
When using minilog, Ceres' Cmake code sets up MAX_LOG_LEVEL, to an annoyingly
high verbosity. We mute it temporarily and restore the value afterwards
in case it's being used by some external code.
2019-07-05 15:19:24 +02:00
Mael Rouxel-Labbé
e61d980173
Silence Ceres when logging is based on minilog and not glog
2019-07-04 10:30:18 +02:00
Mael Rouxel-Labbé
627f05c9b2
Add missing header
2019-07-03 12:08:30 +02:00
Mael Rouxel-Labbé
4d7192bbd0
Fix MSVC warning
2019-07-03 11:58:27 +02:00
Mael
b1eb4c8cdd
Minor documentation rewording
2019-07-02 21:15:52 +02:00
Mael Rouxel-Labbé
ba8a7175cc
Move helper functions for duplicate_nm_vertices to internal namespace
2019-07-01 11:46:05 +02:00
Mael Rouxel-Labbé
2ad648d276
Factorize duplicate_non_manifold_vertices() and non_manifold_vertices()
2019-07-01 11:42:26 +02:00
Mael Rouxel-Labbé
be89b9f575
Add a warning about the heavy complexity of 'is_vertex_non_manifold()'
2019-07-01 11:41:59 +02:00
Mael Rouxel-Labbé
f68141a6d3
Merge branch 'PMP-Locate-GF-old' into PMP-Locate-GF
2019-07-01 11:28:25 +02:00
Mael
f40f8e4190
Merge branch 'master' into PMP-smoothing-kkatrio
2019-07-01 11:24:11 +02:00
Laurent Rineau
b18a17eba7
Merge branch 'releases/CGAL-4.14-branch'
...
# Conflicts:
# Polygon_mesh_processing/include/CGAL/Polygon_mesh_processing/internal/Corefinement/Face_graph_output_builder.h
2019-07-01 11:13:42 +02:00
Laurent Rineau
64bc06e2d9
Merge pull request #4032 from sloriot/PMP-coref_invalid_map
...
Fix copy/paste error
2019-07-01 11:07:29 +02:00
Laurent Rineau
3782c024df
Merge branch 'releases/CGAL-4.13-branch' into releases/CGAL-4.14-branch
2019-07-01 11:06:57 +02:00
Mael Rouxel-Labbé
c862d2347d
Merge branch 'PMP-Add_non_manifold_vertices_collector-GF-old' into PMP-Add_non_manifold_vertices_collector-GF
2019-07-01 11:00:33 +02:00
Mael Rouxel-Labbé
b66024f3e8
Try to silence CERES on windows
2019-07-01 09:19:23 +02:00
Mael Rouxel-Labbé
b1b55a8995
Fix unused variable warnings
2019-07-01 08:45:35 +02:00
Sébastien Loriot
df9a63b2b4
update marks on removed edges
2019-06-27 08:44:46 +02:00
Mael Rouxel-Labbé
4d9aa39a90
Remove "warning" in std::cerr to avoid false positive in the testsuite
2019-06-27 08:11:13 +02:00
Mael Rouxel-Labbé
ed77935d4f
Fix unused warning
2019-06-27 08:09:18 +02:00
Sébastien Loriot
4e1e7d8c16
fix wrong index
2019-06-26 10:52:48 +02:00
Mael Rouxel-Labbé
b365835970
Remove requirement on EdgeListGraph
2019-06-24 09:04:28 +02:00
Mael Rouxel-Labbé
6f42e4be15
Fix warning
2019-06-24 08:16:01 +02:00
Mael Rouxel-Labbé
262ef93c8d
Remove obsolete header
2019-06-21 13:09:09 +02:00
Mael Rouxel-Labbé
0d1759e996
Merge branch 'PMP-smoothing-kkatrio-old' into PMP-smoothing-kkatrio
2019-06-20 15:02:32 +02:00
Mael Rouxel-Labbé
7a5486962d
Merge branch 'PMP-Locate-GF-old' into PMP-Locate-GF
2019-06-20 14:49:25 +02:00
Laurent Rineau
17add8332e
Merge pull request #3903 from MaelRL/PMP-Generalize_keep_largest_CC-GF
...
PMP: Generalize `keep_large(st)_CCs`
2019-06-20 14:21:14 +02:00
Laurent Rineau
8535a3c03c
Merge branch 'releases/CGAL-4.14-branch'
...
# Conflicts:
# Apollonius_graph_2/include/CGAL/Apollonius_graph_2/Apollonius_graph_2_impl.h
# Convex_hull_3/include/CGAL/convex_hull_3.h
# Polygon_mesh_processing/include/CGAL/Polygon_mesh_processing/internal/Corefinement/face_graph_utils.h
# Polyhedron/demo/Polyhedron/Plugins/Mesh_3/Mesh_3_plugin_cgal_code.cpp
# Stream_support/include/CGAL/IO/Color.h
2019-06-20 14:20:37 +02:00
Laurent Rineau
b0f1f90a4d
Merge branch 'releases/CGAL-4.13-branch' into releases/CGAL-4.14-branch
2019-06-20 14:08:25 +02:00
Laurent Rineau
208f788494
Merge pull request #3893 from sloriot/PMP-coref_fix_next_prev
...
Fix the prev/next pointers after polyline removal
2019-06-20 14:01:25 +02:00
Mael Rouxel-Labbé
7b72fcbf6c
Enable passing nb_iter/time step in command line arg
...
Also nb_iterations is an unsigned int, not a std::size_t
2019-06-20 13:38:21 +02:00
Mael Rouxel-Labbé
dcef0011e4
Confirm usage of numeric differenciation in Ceres problem formulation
2019-06-20 13:31:33 +02:00
Mael Rouxel-Labbé
cad9a0aaa8
Make things work when Ceres is not available
2019-06-20 13:04:15 +02:00
Mael Rouxel-Labbé
1b53056cbd
Precise some preconditions
2019-06-20 10:38:37 +02:00
Mael Rouxel-Labbé
e3e50d90de
Constrain edges now properly constrain the position of their extremities
2019-06-19 14:39:40 +02:00
Mael Rouxel-Labbé
77711e4e71
Merge branch 'PMP-smoothing-kkatrio-old' into PMP-smoothing-kkatrio
2019-06-19 11:34:48 +02:00
Mael Rouxel-Labbé
aa6a1907ba
Add some verbose if the solver fails
2019-06-19 11:29:01 +02:00
Mael Rouxel-Labbé
3a8a7c1f26
Improve the documentation
2019-06-19 11:07:32 +02:00
Mael Rouxel-Labbé
3b53ce20e3
Rename smooth/smooth_along_curvature_flow to smooth_mesh/shape
...
Also fix edge protection in the demo
2019-06-19 10:17:26 +02:00
Mael Rouxel-Labbé
22bd8a943b
Merge smooth_areas and smooth_angles, rework AABB tree, document everything
2019-06-18 16:02:42 +02:00
Mael Rouxel-Labbé
7f6cb0411c
Merge branch 'PMP-Locate-GF-old' into PMP-Locate-GF
2019-06-18 08:20:16 +02:00
Mael Rouxel-Labbé
19de8eda04
Merge branch 'PMP-Generalize_keep_largest_CC-GF-old' into PMP-Generalize_keep_largest_CC-GF
2019-06-17 15:18:33 +02:00
Laurent Rineau
be0d07d150
Merge pull request #3979 from afabri/CGAL-null_ptr-GF
...
Replace NULL and Nullptr_t with nullptr and nullptr_t
2019-06-17 14:10:35 +02:00
Laurent Rineau
e4353afb13
Merge pull request #3861 from MaelRL/PMP-Add_stitch_boundary_cycle_singular-GF
...
PMP: Introduce `stitch_boundary_cycle`
2019-06-17 13:54:39 +02:00
Laurent Rineau
21f150dac8
Merge pull request #3932 from janetournois/PMP-add_fallback_for_hole_filling-jtournois
...
PMP : add fallback to non-Delaunay triangulations for hole filling functions
2019-06-17 13:54:34 +02:00
Laurent Rineau
96912aaa20
Merge branch 'releases/CGAL-4.14-branch'
2019-06-17 13:53:42 +02:00
Laurent Rineau
bcef288a63
Merge pull request #3925 from MaelRL/PMP-Fix_repair_PS_swapping-GF
...
PMP: Fix repair polygon soup bad swaps
2019-06-17 13:51:52 +02:00
Laurent Rineau
19e1dd8c3f
Merge pull request #3937 from sloriot/Slicer-fix_default_vpm
...
Fix default vertex point map
2019-06-17 13:51:38 +02:00
Laurent Rineau
1af9a8030e
Merge pull request #3964 from sloriot/PMP-coref_invalid_index
...
Fix invalid index
2019-06-17 13:51:36 +02:00
Laurent Rineau
fd33d13958
Merge pull request #3937 from sloriot/Slicer-fix_default_vpm
...
Fix default vertex point map
2019-06-17 13:48:12 +02:00
Mael Rouxel-Labbé
c11de87552
Manually swap boolean values instead of std::swap() or vector.swap()
...
MSVC is not happy with std::swap(), Apple is not happy with vector.swap()
2019-06-14 15:43:35 +02:00
Laurent Rineau
67e73c2324
Fix compilation errors
2019-06-13 15:52:43 +02:00
Mael Rouxel-Labbé
a6ea4bcf9f
Try to make MSVC preview happy about swapping within boolean vectors
2019-06-12 08:39:32 +02:00
Mael Rouxel-Labbé
8a272dd0b9
Fix warning
2019-06-12 08:17:51 +02:00
Mael Rouxel-Labbé
55cede0960
Remove duplicated typedefs
...
That compiled on my machine, but not on the Fedora testsuites...?
2019-06-10 10:39:34 +02:00
Mael Rouxel-Labbé
6e937b62e4
Fix isolated point removal edge case
2019-06-10 09:59:44 +02:00
Mael Rouxel-Labbé
9942669dd1
Make Delaunay flips optional
2019-06-07 16:13:49 +02:00
Mael Rouxel-Labbé
d41e400875
If we the mesh is open, we can't scale based on the volume
...
at least for now, could probably imagine some trick to still do it
2019-06-07 16:12:47 +02:00
Mael Rouxel-Labbé
1aaba3a275
Misc minor changes
2019-06-07 13:54:24 +02:00
Mael Rouxel-Labbé
2ad0e94b55
Confirmed use of _Meyer weights and Gram Schmidt move reprojection
...
through empirical testing
2019-06-07 12:37:14 +02:00
Mael
7fb3542b2d
Add missing param documentation
2019-06-07 10:35:25 +02:00
Mael Rouxel-Labbé
6c4d873338
Get rid of the explicit curvature flow smoothing scheme
...
It's just worse all the time anyway
2019-06-07 10:27:21 +02:00
Mael Rouxel-Labbé
fa7b662ed3
Clean superfluous std::cout / comments
2019-06-07 10:27:21 +02:00
Mael Rouxel-Labbé
6865dae33d
Make some of the weights in PMP/Weights.h actually use the vpmap
2019-06-07 10:27:15 +02:00
Mael Rouxel-Labbé
aa6ef78eb3
Various fixes/improvements:
...
- Fix using Delaunay flips after angle smoothing (must be after area smoothing)
- Fix parameter passing to explicit curvature flow formulation
- Use early exits
- Clarify function names
2019-06-05 15:58:24 +02:00
Mael Rouxel-Labbé
bd7fd4a91e
Clean useless code
2019-06-05 10:39:08 +02:00
Mael Rouxel-Labbé
9bc8c6dfcf
Fix smoothing with constraints
2019-06-05 09:39:05 +02:00
Andreas Fabri
e2d19b0c8d
Replace NULL and Nullptr_t with nullptr and nullptr_t
2019-06-04 23:45:44 +02:00
Mael Rouxel-Labbé
465aacc2f1
Work towards fixing implicit formulation of curvature flow-based shape smoothing
...
Constrained and border vertices likely still broken
2019-06-04 17:06:08 +02:00
Mael Rouxel-Labbé
7d5f9447a5
Fix explicit formulation of curvature flow-based smoothing
2019-06-04 17:02:32 +02:00
Mael Rouxel-Labbé
737e94676c
Code cleaning
2019-06-03 12:22:07 +02:00
Mael Rouxel-Labbé
6e3f2c3510
Factorize smoothers and clean obsolete code
2019-05-29 15:59:50 +02:00
Sébastien Loriot
d6ea5870e5
fix copy/paste issue
2019-05-29 11:03:55 +09:00
Mael Rouxel-Labbé
a15625ceb0
Use ceres in smooth_areas() and factorize a lot of code with smooth_angles()
2019-05-28 13:06:39 +02:00
Mael Rouxel-Labbé
51fab60def
Misc minor changes
2019-05-27 14:51:18 +02:00
Mael Rouxel-Labbé
00cddd0f57
Fix AABB tree type
...
Can't use face_graph AABB tree because the mesh is modified
2019-05-27 14:49:09 +02:00
Mael Rouxel-Labbé
e264ead877
Do not assert if meeting a degenerate face
2019-05-24 13:34:58 +02:00
Mael Rouxel-Labbé
cb1d28bf85
Misc cleaning
2019-05-24 13:34:50 +02:00
Mael Rouxel-Labbé
39790a9b1c
Use a NP to decide whether to reject moves/projections based on post-move sanity
2019-05-24 13:33:53 +02:00
Mael Rouxel-Labbé
712aa7a99e
Use existing kernel/PMP implementations to evaluate angles/aspect ratios
2019-05-24 12:27:17 +02:00