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é
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é
ff95b757b6
Minor documentation change
2019-06-07 16:12:28 +02:00
Mael Rouxel-Labbé
33b9cde8dc
Fix PMP smoothing tests
2019-06-07 14:20: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 Rouxel-Labbé
ba36b7cd41
Update Smoothing Polyhedron GUI
...
and clean some sneaky use_explicit
2019-06-07 10:52:31 +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
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é
7beeb16f05
Partial clean/fix of shape smoothing tests/demo
2019-06-04 17:02:11 +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
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é
ea7885e348
Add new named parameter: use_safety_constraints
...
Used in PMP::smooth_areas() / PMP::smooth_angles()
2019-05-24 13:32:18 +02:00
Mael Rouxel-Labbé
712aa7a99e
Use existing kernel/PMP implementations to evaluate angles/aspect ratios
2019-05-24 12:27:17 +02:00
Mael Rouxel-Labbé
cfbe885115
Add aspect_ratio() to measure.h
...
Needs proper testing, proper documentation(, proper name?)
2019-05-24 12:25:55 +02:00
Mael Rouxel-Labbé
dbe69b2706
Clean measure.h (cosmetic changes only)
2019-05-24 10:45:33 +02:00
Mael Rouxel-Labbé
a7b1da8b05
More fixes to 'smooth_angles()' (fixes to rejection conditions)
2019-05-24 10:32:47 +02:00
Mael Rouxel-Labbé
336c1144a2
Fix smooth_angles()
...
About a complete rewrite due to many bugs (wrong move vector, wrong
gram schmidt algorithm, etc.)
Should also result in a pretty nifty speed up since we avoid recomputing
the same things (angles, incident edgesn etc.) thrice
2019-05-21 15:26:09 +02:00
Mael Rouxel-Labbé
a0ee943881
Misc minor changes
2019-05-21 13:19:14 +02:00
Mael Rouxel-Labbé
b927780d4d
Remove unused function
2019-05-21 11:54:09 +02:00
Mael Rouxel-Labbé
567a9fc611
Move call to 'reserve()' out of a filling loop
2019-05-20 15:47:59 +02:00
Mael Rouxel-Labbé
c7278e4ad7
Use std::begin/end
2019-05-20 15:44:42 +02:00
Mael Rouxel-Labbé
414b234cf6
Document "no degen faces" preconditions and check it in the code
2019-05-20 15:44:09 +02:00
Mael Rouxel-Labbé
8a0656435f
Rename tparam 'PolygonMesh' to 'TriangleMesh'
2019-05-20 15:43:28 +02:00
Mael Rouxel-Labbé
4ade582173
Fix calling 'reserve' within a loop filling the vector
2019-05-20 15:42:38 +02:00
Mael Rouxel-Labbé
e5465dc587
Fix some warnings + code improvements
...
for(:) loop, pre-increment, don't take const& on light types, etc.
2019-05-20 15:41:43 +02:00
Mael Rouxel-Labbé
2d88e227c9
Fix using invalid facerange ('remove_degen_faces(fr)' and then using 'fr')
...
Actually, just get rid of the whole remove_degen_faces(). That's the user's
responsability to use a proper, clean input mesh.
2019-05-20 15:37:10 +02:00
Mael Rouxel-Labbé
af8e6813ae
Fix not using the VPM when building the AABB traits
2019-05-20 15:36:03 +02:00
Mael Rouxel-Labbé
54260a934f
CGAL_assertion ----> assert in tests
2019-05-20 12:52:48 +02:00
Mael Rouxel-Labbé
69b7ba013a
Pass the geomtraits to the smoother
2019-05-20 12:52:06 +02:00
Mael Rouxel-Labbé
69d1b31f26
BOOST_FOREACH(,) > for(:)
2019-05-20 12:51:33 +02:00
Mael Rouxel-Labbé
bcec5d8fe4
Cosmetic changes
2019-05-20 12:50:40 +02:00
Mael Rouxel-Labbé
a120290675
Merge branch 'PMP-smoothing-kkatrio-old' into PMP-smoothing-kkatrio
2019-05-15 14:31:00 +02:00
Laurent Rineau
423c4fbd11
Merge pull request #3266 from MaelRL/PMP-Snap_boundary-GF
...
PMP: boundary snapping
2019-05-14 16:48:00 +02:00
Laurent Rineau
47aa42490b
Merge pull request #3911 from MaelRL/CGAL-Fix_duplicate_non_manifold_vertices-5.0-GF
...
PMP: Fix duplicate_non_manifold_vertices() with pinched vertices (5.0)
2019-05-14 16:30:25 +02:00
Laurent Rineau
d82109cdac
Merge pull request #3910 from maxGimeno/Polgon_mesh_slicer-Fix_orientation-GF
...
PMP::Orient polylines of Polgon Mesh Slicer ccw.
2019-05-13 17:43:57 +02:00