Mael Rouxel-Labbé
56354bcf8b
Use approximate sqrt because compute_area_3 does not work for some kernels
2019-08-02 12:14:25 +02:00
Mael Rouxel-Labbé
71304cf145
Fix np internal type
2019-08-02 11:04:26 +02:00
Mael Rouxel-Labbé
2d86794b27
Add some tests for remove_negligible_ccs
2019-08-02 09:05:46 +02:00
Mael Rouxel-Labbé
9f3009f88b
Add breathing room
2019-08-02 09:05:09 +02:00
Laurent Rineau
e4de2060e9
Merge branch 'releases/CGAL-4.14-branch'
2019-08-01 17:08:37 +02:00
Mael Rouxel-Labbé
22acb31a12
Add a function to remove small (in terms of area && volume) CCs
2019-08-01 16:10:52 +02:00
Mael Rouxel-Labbé
16cdbb4b8f
Avoid default constructing the traits
2019-08-01 16:10:36 +02:00
Mael Rouxel-Labbé
edbe852d4d
Simplify initialization
2019-08-01 16:10:14 +02:00
Jane Tournois
5f8a58a046
deal with faces on the boundary
...
a precondition inside `flip_edge()` fails if this boundary condition is not satisfied
2019-08-01 14:58:19 +02:00
Maxime Gimeno
15fd5ce293
Lock resources between the 2 triangulate_hole tests to prevent the results from generate_mesh_with_hole to be cleaned before the end.
2019-08-01 14:25:20 +02:00
Maxime Gimeno
0b62d59110
Use a correct way to reset the stringstream
2019-07-31 10:27:03 +02:00
Sébastien Loriot
b84297f8f6
update the usage for the new CGAL named function parameters
2019-07-29 09:38:39 +02:00
Sébastien Loriot
25a05e9f4c
Merge branch 'CGAL-named_function_parameters-4.14' into master
...
Conflicts resolved by hand
2019-07-28 23:46:43 +02:00
Sébastien Loriot
aa47744c36
update the usage for the new CGAL named function parameters
2019-07-28 22:30:17 +02:00
Sébastien Loriot
2f81a21523
Merge 'CGAL-named_function_parameters' for 4.13-branch into 4.14-branch
...
Conflicts resolved by hand
2019-07-28 22:30:13 +02:00
Mael Rouxel-Labbé
00f8f3ae43
Remove example that had been moved to test (snap already has two tests)
2019-07-19 09:07:01 +02:00
Sébastien Loriot
9fda0ffcc9
move example of using undocumented feature into test
2019-07-18 20:04:10 +02:00
Sébastien Loriot
4a58db22b9
fix warnings
2019-07-18 20:01:44 +02:00
Mael
9ba0870ebd
Merge branch 'master' into PMP-Snap_pp-GF
2019-07-18 17:43:04 +02:00
Sébastien Loriot
41ef56f8ad
Merge remote-tracking branch 'cgal/releases/CGAL-4.14-branch' into HEAD
2019-07-18 16:57:27 +02:00
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é
3fe52056cf
Do not normalize bisector in most visible vertex computations
2019-07-18 11:19:03 +02:00
Mael Rouxel-Labbé
9d1cec6be6
Fix indentation (cosmetic)
2019-07-18 11:18:52 +02:00
Mael Rouxel-Labbé
1954203264
Change comment after tests
2019-07-17 15:22:10 +02:00
Mael Rouxel-Labbé
98723ca104
Add an example for snap
2019-07-17 14:58:12 +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
ae2b242071
fix misleading indentation
2019-07-12 13:13:33 +02:00
Sébastien Loriot
0ff0b41ac8
remove unused code
2019-07-11 12:24:05 +02:00
Mael Rouxel-Labbé
5ba3cd8123
Enforce correct precision on 32 bit platforms
2019-07-11 11:49:30 +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
Sébastien Loriot
89a9ff34e7
add missing files
2019-07-10 14:01:07 +02:00
Mael Rouxel-Labbé
f019ace14c
Remove obsolete code
2019-07-10 08:57:21 +02:00
Mael Rouxel-Labbé
eb086c7847
Fix border case of normal computation at a vertex with valence 1
2019-07-09 18:07:11 +02:00
Mael Rouxel-Labbé
bfaa4e000d
Fix doc warning
2019-07-09 16:45:10 +02:00
Mael Rouxel-Labbé
26ecd80237
Increase tolerance furthermore + temporary debug code
2019-07-09 16:21:06 +02:00
Mael Rouxel-Labbé
675cd33dbc
Fix some edges not being properly cleaned from the active sets
2019-07-09 16:08:09 +02:00
Mael Rouxel-Labbé
7a9d0ccea8
Add some naive code to remove needles and caps
2019-07-09 15:26:01 +02:00
Mael Rouxel-Labbé
f7576c709b
Disable test of PMP::Locate with 2D Surface Mesh until Surface_Mesh IO is fixed
2019-07-08 16:03:31 +02:00
Mael Rouxel-Labbé
401aea2500
Add new method to compute vertex normals
2019-07-08 15:40:08 +02:00
Mael Rouxel-Labbé
0c8739a16e
Re-order convenience overloads to avoid forward declarations in upcoming code
2019-07-08 15:39:33 +02:00
Sébastien Loriot
1c89ca6344
doc update
2019-07-08 14:19:20 +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
Maxime Gimeno
347b180610
Update split_connected_components plugin.
2019-07-04 12:05:41 +02:00
Maxime Gimeno
0989cdd390
Merge remote-tracking branch 'cgal/master' into PMP-Add_split_to_clip-GF
2019-07-04 11:23:20 +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
Sébastien Loriot
8fde95a34c
update doc
2019-07-03 17:24:05 +02:00
Sébastien Loriot
363268c33f
handle intersecting curves reaching the boundary
2019-07-03 17:16:21 +02:00
Sébastien Loriot
9f14c410b9
fix split (only for the case of closed curves)
2019-07-03 15:50:35 +02:00
Mael Rouxel-Labbé
627f05c9b2
Add missing header
2019-07-03 12:08:30 +02:00
Mael Rouxel-Labbé
f65fb45105
Tiny verbose change
2019-07-03 12:04:06 +02:00
Mael Rouxel-Labbé
4d7192bbd0
Fix MSVC warning
2019-07-03 11:58:27 +02:00
Mael Rouxel-Labbé
f03c3bf129
Sanitize values for 32 bit platforms
2019-07-03 09:07:57 +02:00
Mael
b1eb4c8cdd
Minor documentation rewording
2019-07-02 21:15:52 +02:00
Sébastien Loriot
c89b0d4430
improve doc and add missing overload
2019-07-02 17:22:49 +02:00
Maxime Gimeno
9f28c92535
WIP
2019-07-02 13:19:20 +02:00
Maxime Gimeno
be3cf6145d
use const_types
2019-07-02 11:52:49 +02:00
Maxime Gimeno
ee715bca1a
Make the PolygonMesh const in split_cc()
2019-07-02 11:32:34 +02:00
Maxime Gimeno
3c14046997
Replace outputiterator
2019-07-02 11:25:01 +02:00
Maxime Gimeno
0684986bd6
Put the splitting part in an internal function
2019-07-02 10:57:28 +02:00
Maxime Gimeno
9f8feddf79
WIP fixed split_connected_components map management. Still failing after a split().
2019-07-02 10:18:51 +02:00
Sébastien Loriot
48bf1cbf05
add tests
2019-07-02 08:38:03 +02:00
Maxime Gimeno
031bd91b8d
Remove isolated vertices
2019-07-01 16:15:44 +02:00
Maxime Gimeno
0212343669
add doc for split_ccs
2019-07-01 14:48:55 +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
32f80cbece
Merge pull request #4018 from lrineau/CGAL-refresh_cmake_minimum_required-GF
...
CMake>=3.13: opt for for new policies up to 3.15
2019-07-01 11:16:30 +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
Maxime Gimeno
99a7a5878e
Add ecm management
2019-07-01 10:50:56 +02:00
Mael Rouxel-Labbé
b66024f3e8
Try to silence CERES on windows
2019-07-01 09:19:23 +02:00
Mael Rouxel-Labbé
ee99c92972
Sanitize values to please 32 bit platforms
2019-07-01 09:14:04 +02:00
Mael Rouxel-Labbé
b1b55a8995
Fix unused variable warnings
2019-07-01 08:45:35 +02:00
Mael Rouxel-Labbé
6ec8e9a063
Use 'assert()' in test, not CGAL assertions
2019-06-28 17:43:27 +02:00
Maxime Gimeno
e999183e94
- WIP split_cc() : Ecm management
...
- WIP split() : TODO: copy_face_graph leads to infinite loop.
2019-06-27 16:07:02 +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
Mael Rouxel-Labbé
1791870f4c
Fix warning
2019-06-26 15:51:27 +02:00
Maxime Gimeno
ea47ab2259
WIP split_connected_components
2019-06-26 14:22:31 +02:00
Maxime Gimeno
eb97c83261
Finished basic splitting. WIP clip_volume
2019-06-26 13:05:31 +02:00
Sébastien Loriot
4e1e7d8c16
fix wrong index
2019-06-26 10:52:48 +02:00
Mael Rouxel-Labbé
d3882274e5
Change test values to be compatible with 32 bit platforms
2019-06-26 08:12:17 +02:00
Maxime Gimeno
184922b578
WIP set connectivity
2019-06-25 17:26:21 +02:00
Mael Rouxel-Labbé
40aae43c5d
Fix warning
2019-06-25 09:21:31 +02:00
Mael Rouxel-Labbé
b365835970
Remove requirement on EdgeListGraph
2019-06-24 09:04:28 +02:00
Mael Rouxel-Labbé
646c61b943
Minor doc clarification
2019-06-24 09:04:16 +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é
33c589cb61
Further Ceres-related CMakeLists.txt simplifications
2019-06-21 12:45:23 +02:00
Mael Rouxel-Labbé
7c82c96dfd
Proper usage of CMake to find and use Ceres
...
done with the help of @lrineau
2019-06-21 11:24:32 +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
Mael Rouxel-Labbé
10c7aa373a
Add new example data file
2019-06-20 14:06:00 +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é
f15fbfe36c
Fix some tests failing when unlucky with random elements
2019-06-20 10:39:02 +02:00
Mael Rouxel-Labbé
1b53056cbd
Precise some preconditions
2019-06-20 10:38:37 +02:00
Maxime Gimeno
189ece70fd
WIP don't use ffg
2019-06-19 16:10:53 +02:00
Mael Rouxel-Labbé
52478f0751
Tiny verbose to tests
2019-06-19 14:40:04 +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é
325af6823c
Improve examples
2019-06-19 14:39:22 +02:00
Laurent Rineau
4fbf00fb8a
CMake>=3.13: opt for for new policies up to 3.15
2019-06-19 14:34:59 +02:00
Maxime Gimeno
d4ef2c6cf7
More doc
2019-06-19 12:56:58 +02:00
Maxime Gimeno
1958e14728
Add a first draw of splitting in clip.h
2019-06-19 12:37:52 +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
Maxime Gimeno
064ef07a77
WIP split()
2019-06-18 16:02:14 +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
Mael Rouxel-Labbé
6d1ee29280
Add missing data files
2019-06-14 08:48:07 +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é
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
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é
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
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é
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
Laurent Rineau
5c2df203b4
Merge pull request #3943 from mglisse/Number_types-expression_templates-glisse
...
Misc fixes for expression templates
2019-05-23 08:50:17 +02:00
Laurent Rineau
419032d859
Merge pull request #3947 from MaelRL/CGAL-Fix_typos-GF
...
Fix some typos in code/comments/documentation
2019-05-23 08:50:14 +02:00
Laurent Rineau
5dc823d509
Merge branch 'releases/CGAL-4.14-branch'
2019-05-23 08:49:56 +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
Sébastien Loriot
7f5fb3d262
remove call to boost function (remove the need of default constructible fid map)
2019-05-20 14:12:23 +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
Laurent Rineau
eeb32f50c3
Merge branch 'master' into PMP-Add_stitch_boundary_cycle_singular-GF
2019-05-20 11:55:38 +02:00
Mael Rouxel-Labbé
85ba338518
Add missing 'using' for boost's choose_param() / get_param()
2019-05-20 11:04:15 +02:00
Mael Rouxel-Labbé
2848158354
Fix typos
2019-05-20 08:54:04 +02:00
Marc Glisse
a676b75ca0
Misc fixes for expression templates
2019-05-17 19:48:41 +02:00
Sébastien Loriot
dd84321f56
be more backward compatible + add typedef for AABB-tree definition
2019-05-17 15:01:46 +02:00
Jane Tournois
53029474e4
document fallback to non-Delaunay search space
2019-05-17 11:24:40 +02:00
Laurent Rineau
703124ca6d
remove the unwanted `typename`
2019-05-17 09:58:11 +01:00
Jane Tournois
76e10bfa17
mention fallback in the warning message
...
consistently with previous commit
2019-05-17 09:58:10 +01:00
Jane Tournois
25898c8a48
in case Delaunay can't find a solution, fallback to general triangulations
2019-05-17 09:58:10 +01:00
Mael Rouxel-Labbé
a120290675
Merge branch 'PMP-smoothing-kkatrio-old' into PMP-smoothing-kkatrio
2019-05-15 14:31:00 +02:00
Sébastien Loriot
f65cc41e82
add missing default template parameter
2019-05-15 13:00:45 +02:00
Mael
c53e7e2c68
Merge branch 'master' into PMP-Locate-GF
2019-05-15 07:59:52 +02:00
Laurent Rineau
90782d4b7f
Revert the merge of two pull-requests that target CGAL-4.14-branch
...
- Revert "Merge pull request #3857 from MaelRL/CGAL-Fix_duplicate_non_manifold_vertices-GF"
- Revert "Merge pull request #3898 from lrineau/Mesh_3-stop_during_protection-lrineau"
2019-05-14 17:50:45 +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
8dabd25b75
Merge pull request #3857 from MaelRL/CGAL-Fix_duplicate_non_manifold_vertices-GF
...
PMP: Fix duplicate_non_manifold_vertices() with pinched vertices
2019-05-14 16:26:22 +02:00
Laurent Rineau
b839d1defa
Merge pull request #3910 from maxGimeno/Polgon_mesh_slicer-Fix_orientation-GF
...
PMP::Orient polylines of Polgon Mesh Slicer ccw.
# Conflicts:
# Polygon_mesh_processing/include/CGAL/Polygon_mesh_slicer.h
2019-05-14 16:25:59 +02:00
Laurent Rineau
5457a6a30b
Merge pull request #3857 from MaelRL/CGAL-Fix_duplicate_non_manifold_vertices-GF
...
PMP: Fix duplicate_non_manifold_vertices() with pinched vertices
2019-05-14 16:18:40 +02:00
Laurent Rineau
8e872081fc
Merge pull request #3898 from lrineau/Mesh_3-stop_during_protection-lrineau
...
Mesh_3 `Protect_edges_sizing_field`: handle the `stop` Boolean
# Conflicts:
# .travis/build_package.sh
# Installation/cmake/modules/CGALConfig_binary.cmake.in
# Installation/cmake/modules/CGALConfig_install.cmake.in
# Installation/cmake/modules/CGAL_SetupCGAL_CoreDependencies.cmake
# Installation/lib/cmake/CGAL/CGALConfig.cmake
# Polygon_mesh_processing/include/CGAL/Polygon_mesh_slicer.h
# Polyhedron/demo/Polyhedron/Plugins/Classification/CMakeLists.txt
# Polyhedron/demo/Polyhedron/Plugins/Mesh_3/CMakeLists.txt
2019-05-14 16:18:24 +02:00
Mael Rouxel-Labbé
3e386c9de6
Fix naming consistency
2019-05-14 08:25:13 +02:00
Mael Rouxel-Labbé
ba46772096
Minor comment change
2019-05-14 08:17:45 +02:00
Mael Rouxel-Labbé
ab137195c6
Fix overly naive swap algorithm in duplicate polygon removal
2019-05-14 08:16:29 +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
Maxime Gimeno
910d6d076b
use CGAL_USE()
2019-05-13 16:40:07 +02:00
Mael Rouxel-Labbé
09b1ea231f
Fix polygons-to-be-erased ID swapping
...
Bugged approach would swap away from the polygons-to-be-erased area at the end
of the container
2019-05-13 13:11:47 +02:00
Mael Rouxel-Labbé
eae6a294c7
Fix unused point IDs swapping
...
Bugged approach would swap away from the to-be-erased zones at the back
of the vector
2019-05-13 13:10:27 +02:00
Mael Rouxel-Labbé
55c90f101f
Uniformize usages of 'must be'
2019-05-10 12:44:46 +02:00
Mael Rouxel-Labbé
1e9ca61fba
Doc fixes
2019-05-10 11:45:49 +02:00
Mael Rouxel-Labbé
af1280e34e
Clean documentation
2019-05-08 18:50:05 +02:00
Mael Rouxel-Labbé
33c4c87a90
Actually use the snapping tolerance...
2019-05-08 18:28:27 +02:00
Mael Rouxel-Labbé
28cdbb7df7
Fixed using random border halfedges
2019-05-08 18:25:14 +02:00
Mael Rouxel-Labbé
b1c9c993e2
Be more restrictive on the AABB tree type
2019-05-08 18:21:01 +02:00
Mael Rouxel-Labbé
9664d8f774
Whether coordinate snapping is used or not is now a named parameter
2019-05-08 18:20:32 +02:00
Mael Rouxel-Labbé
4310b898a3
Locate_types > Location_traits (+ uniformize to 'TriangleMesh')
2019-05-08 16:34:50 +02:00
Mael Rouxel-Labbé
15357b83bd
Update locate/BGL tests
2019-05-08 16:30:09 +02:00
Mael Rouxel-Labbé
e382ed1f1b
Improve phrasing
2019-05-08 16:05:57 +02:00
Mael Rouxel-Labbé
f14f9ce447
Move some functions from PMP to BGL
2019-05-08 16:05:26 +02:00
Mael Rouxel-Labbé
c1fb953480
Rename 'Location_to_point()' to 'construct_point()'
2019-05-08 13:38:55 +02:00
Mael Rouxel-Labbé
2a6409b3af
Lock some vertices that shouldn't move in non-conformal snapping
...
Vertex-vertex snapping can make such that a sequence of points p0 --> p1 --> p2
become p0==p2 --> p1 --> p2 == p0. In this case, we don't want to authorize p1
to move anymore.
2019-05-08 13:34:16 +02:00
Sébastien Loriot
c49f173d83
polyline orientation depend on supporting mesh
2019-05-08 10:13:40 +02:00
Andreas Fabri
1a1f336f2c
Open with std::ios::binary; isspace needs an unsigned char
2019-05-07 11:41:16 +02:00
Maxime Gimeno
cfea874cc1
take the right vectors
2019-05-07 11:24:30 +02:00
Maxime Gimeno
962bac73b2
don't test if not closed
2019-05-07 11:12:59 +02:00
Maxime Gimeno
a059b7aa38
don't touch polylines <=2 points
2019-05-07 10:52:18 +02:00
Maxime Gimeno
cc4bc212f9
Don't use c++11 in tests
2019-05-07 10:41:13 +02:00
Mael Rouxel-Labbé
713f5a2d45
Resolve conflicts between master and 4.14-based branch that fixes manifoldness
...
Conflicts resulting from the switch to C++11 (BOOST_FOREACH disappearing etc.)
2019-05-07 10:34:16 +02:00
Maxime Gimeno
29ba7a8992
check that there are at least 2 points in the polyline before testing
2019-05-07 10:19:44 +02:00
Maxime Gimeno
fe675e87b1
Fix test and update doc.
2019-05-07 09:58:27 +02:00
Maxime Gimeno
0105eefe45
Add a test to detect if the result of the slicer is cw oriented when seen from the positive side of the slice-plane. If it is, reverse the orientation. Add assertions in the test.
2019-05-07 09:40:47 +02:00
Mael
0efaed2095
Merge branch 'master' into PMP-Locate-GF
2019-05-06 15:57:09 +02:00
Mael
21ebdb737c
Merge branch 'master' into PMP-Snap_boundary-GF
2019-05-06 15:53:56 +02:00
Mael Rouxel-Labbé
e0842e7a0f
Use namespace 'CGAL::experimental::' for functions that will end in CGAL::
...
Instead of putting everything in internal::
2019-05-06 15:50:22 +02:00
Laurent Rineau
b3ace6b60a
Merge pull request #3868 from MaelRL/PMP-Local_remove_degeneracies-GF
...
PMP: Make remove_degenerate_edges/faces work with ranges
2019-05-06 15:44:58 +02:00
Laurent Rineau
6b83d42c69
Merge pull request #3882 from sloriot/PMP-repair_soup_missing_include
...
Add missing include directive
2019-05-06 15:30:36 +02:00
Mael Rouxel-Labbé
c716d6ed7b
Add a new, more real test
2019-05-06 14:54:42 +02:00
Mael Rouxel-Labbé
6d9196e584
Get rid of 'double' in the SM connected component test
...
the number of type should be determined by the kernel
2019-05-06 11:55:07 +02:00
Mael Rouxel-Labbé
a02dba94f8
Fix typos
2019-05-06 11:54:47 +02:00
Mael Rouxel-Labbé
cd0837e316
Document keep_large(st)_CCs properly
2019-05-06 09:32:04 +02:00
Mael Rouxel-Labbé
2bc7742980
Continue the Great Fight against entropy (cosmetic changes)
2019-05-06 09:07:56 +02:00
Mael Rouxel-Labbé
9b99b6d123
Test new keep_large(st)_CCs interface
2019-05-06 09:07:29 +02:00
Mael Rouxel-Labbé
4af0254a9a
Update reference manual with keep_large(st)_CCs changes
2019-05-06 09:06:27 +02:00
Mael Rouxel-Labbé
46be9eeb5d
Generalize keep_large(st)_CCs by adding an option to pass custom face pmaps
2019-05-06 09:05:24 +02:00
Mael Rouxel-Labbé
af142c7416
Add new named parameter: face_size_map
...
Used to pass custom maps to keep_large(st)_CCs
2019-05-06 09:00:09 +02:00
Sébastien Loriot
ff2e7f9eb4
fix broken link
2019-05-03 22:29:32 +02:00
Sébastien Loriot
6e31445f62
fix the prev/next pointers after polyline removal
2019-04-30 15:09:36 +02:00
Mael Rouxel-Labbé
5ab413429a
Complete PMP::locate's documentation
2019-04-30 14:13:42 +02:00
Mael Rouxel-Labbé
c21a47d329
Change some unordered sets to dynamic pmaps in non-manifold related functions
2019-04-30 08:54:13 +02:00
Mael Rouxel-Labbé
b65d91fda8
Minor test improvements
2019-04-30 08:53:59 +02:00
Sebastien Loriot
056cd0c781
Simplify code to access the actual number of vertices in the mesh
...
Co-Authored-By: MaelRL <mael.rouxel.labbe@geometryfactory.com>
2019-04-30 07:56:59 +02:00
Mael Rouxel-Labbé
e183b52f6d
Convert to double using CGAL::to_double
...
Since not every exact number type can just be casted to double like that
2019-04-29 16:08:37 +02:00
Mael Rouxel-Labbé
f921dd8a06
Clarify some documentation in PMP::locate::random_location_on_XXX()
2019-04-29 16:02:28 +02:00
Mael Rouxel-Labbé
7bfb434d6f
Misc minor fixes for PMP::locate
2019-04-29 13:23:17 +02:00
Mael Rouxel-Labbé
27bf657972
Removed bad assertion from PMP::locate.h test
2019-04-29 12:21:16 +02:00
Mael Rouxel-Labbé
44afd34dee
Fixed copyright
2019-04-29 08:29:40 +02:00
Mael Rouxel-Labbé
4bf0cba4cd
Re-enable tests
2019-04-29 08:29:40 +02:00
Mael Rouxel-Labbé
a796a36338
Clean locate.h
2019-04-29 08:29:40 +02:00
Mael Rouxel-Labbé
e919ceff80
Improve PMP::locate() tests
2019-04-29 08:29:40 +02:00
Mael Rouxel-Labbé
5cdfd8217c
Fixes to PMP::locate()
2019-04-29 08:29:40 +02:00
Sébastien Loriot
c14ef91134
add missing include directive
2019-04-26 11:28:05 +02:00
Sébastien Loriot
2b226592b1
add comments
2019-04-26 11:16:44 +02:00
Sébastien Loriot
4bf4732abf
fix the test
...
not all null-edges can be removed in case the genius is preserved
2019-04-26 11:08:57 +02:00
Sébastien Loriot
35a932be2c
add an option to preserve the genius while removing null-edges
2019-04-26 11:08:33 +02:00
Sébastien Loriot
b00342765b
do not expand as soon as we reach a border edge
...
this would imply a merge of boundary cycles
2019-04-26 10:33:36 +02:00
Mael Rouxel-Labbé
dd35fd115f
Only sanitize the face range if we are considering the full mesh
2019-04-26 08:58:56 +02:00
Mael Rouxel-Labbé
f13e055be9
Reorganize parameter order + Use correct edge range
2019-04-26 08:58:38 +02:00
Sébastien Loriot
564a6c72f4
Merge remote-tracking branch 'cgal/releases/CGAL-4.14-branch'
2019-04-23 10:46:32 +02:00
Mael
da02ac7879
Fixed some comments
2019-04-23 10:16:10 +02:00
Sébastien Loriot
ca755e35a8
Merge pull request #3599 from maxGimeno/Nef_3-Document_Nef_3_to_Polygon_soup-GF
...
Nef_3 : Document convert_nef_polyhedron_to_polygon_soup-GF
2019-04-23 09:52:26 +02:00
Sebastien Loriot
0a19fa0690
Merge pull request #3827 from sloriot/BGL_PMP-reserve_call_before_copy
...
Add calls to reserve before creating meshes
2019-04-23 09:44:31 +02:00
Sebastien Loriot
fdc8d79a69
Merge pull request #3843 from sloriot/PMP-speed_orient_soup
...
Speed-up polygon soup orientation
2019-04-23 09:43:55 +02:00
Mael Rouxel-Labbé
b9cd5509b8
Rectified fake claims in repair tests
2019-04-19 13:27:38 +02:00
Mael Rouxel-Labbé
3395742088
Added tests to remove_degenerate_* functions
2019-04-19 13:21:24 +02:00
Mael Rouxel-Labbé
199d76ed22
Gave some breathing room to remove_degenerate_* functions (cosmetic only)
2019-04-19 13:20:01 +02:00
Mael Rouxel-Labbé
6a6a2e8fa0
Added face range overload to remove_degenerate_edges/faces
2019-04-19 13:04:35 +02:00
Mael Rouxel-Labbé
b0158ddd81
Add a test for PMP locate.h
2019-04-19 08:39:30 +02:00
Mael Rouxel-Labbé
52915956e3
Add PMP/locate.h
2019-04-19 08:39:02 +02:00
Mael Rouxel-Labbé
744ea88319
Some more updates to C++11 (and dynamic pmaps)
2019-04-18 15:18:50 +02:00
Mael Rouxel-Labbé
56878ef322
Renamed test files
2019-04-18 15:01:34 +02:00
Mael Rouxel-Labbé
85fe34cf99
Minor test improvements
2019-04-18 14:59:49 +02:00
Mael Rouxel-Labbé
0a8b6af313
Various minor improvements to PMP::snap()
...
- c++11
- use simpler new point position
- improved local tolerance computations
- debug info
2019-04-18 14:58:51 +02:00
Sebastien Loriot
3ce10ff394
Doc rephrasing
...
Co-Authored-By: MaelRL <mael.rouxel.labbe@geometryfactory.com>
2019-04-18 13:44:25 +02:00
Mael Rouxel-Labbé
28a2b3413d
Moved stitch_boundary_cycle(s) out of internal and documented it
2019-04-18 13:08:35 +02:00
Mael Rouxel-Labbé
86f9a7a68b
Changed the return type of stitch_boundary_cycle(s) to something more sensible
2019-04-18 12:00:46 +02:00
Mael Rouxel-Labbé
bca9560b24
Moved 'using boost::...' to the proper function
2019-04-18 11:35:32 +02:00
Mael Rouxel-Labbé
19829e528f
cpp11 > std
2019-04-18 09:40:19 +02:00
Mael Rouxel-Labbé
86d9594c07
Extracted a function `stitch_boundary_cycle` from `stitch_boundary_cycles`
2019-04-18 09:34:02 +02:00
Mael Rouxel-Labbé
099d78a99b
Added function 'non_manifold_vertices'
2019-04-18 09:22:01 +02:00
Mael Rouxel-Labbé
07a29d8291
Test duplicate_non_manifold_vertices() / is_non_manifold_vertex()
2019-04-17 16:07:21 +02:00
Mael Rouxel-Labbé
10080d8142
Fixed duplicate non manifold vertices for pinched vertices
2019-04-17 16:04:21 +02:00
Sébastien Loriot
1a97dcfb8e
Merge pull request #3441 from afabri/PMP-centroid-GF
...
[Small Feature] Add centroid(TriangleMesh) to Polygon Mesh Processing
2019-04-12 15:45:48 +02:00
Sébastien Loriot
db65bd8ecc
Merge remote-tracking branch 'cgal/releases/CGAL-4.14-branch'
2019-04-11 21:38:48 +02:00
albert-github
1dd7473818
Correction of links
...
Correction of redirected links and links that moved to another place.
2019-04-11 21:37:05 +02:00
Sébastien Loriot
bd955e57d3
fix conversion warnings
2019-04-10 14:28:35 +02:00
Sébastien Loriot
028fcd7b34
add missing include directive
2019-04-10 11:06:26 +02:00
Andreas Fabri
06e6e299ae
Remove unused typedef
2019-04-10 09:49:41 +02:00
Sébastien Loriot
07d1601ec9
remove useless (and harmful for the new method) call to clear
2019-04-05 12:17:17 +02:00
Sébastien Loriot
f972d0a228
init edge map for is_polygon_mesh_a_polygon_soup
2019-04-05 11:40:47 +02:00
Sébastien Loriot
49f1d2ba1b
replace the edge map by a vector of flat_map
...
it is very efficient since there should not be isolated vertices.
On large data, the runtime of the function is divided by 3 to 4
2019-04-05 11:12:01 +02:00
Sébastien Loriot
9c39f2260f
add calls to reserve before creating meshes
2019-04-02 21:54:30 +02:00
Sébastien Loriot
1c119aec44
replace cpp11::unordered_FOO by std::unordered_FOO
2019-03-29 13:28:33 +01:00
Sébastien Loriot
124012d9f9
replace cpp11::array by std::array
2019-03-29 13:28:33 +01:00
Sébastien Loriot
f62624c4f9
replace cpp11::tuple by std::tuple
2019-03-29 13:28:33 +01:00
Sébastien Loriot
ce126b87c6
remove cpp11::copy_n, cpp11::prev, and cpp11::next and use std instead
2019-03-29 13:28:32 +01:00
Sébastien Loriot
d60f5645aa
replace BOOST_FOREACH by c++ ranged-based for loop
...
some of the command used for the replacement:
ack --cpp BOOST_FOREACH -l | xargs sed -i -E "s/BOOST_FOREACH\(([a-zA-Z_:&0-9]+)\s(\w+)\,/for(\1 \2 :/"
ack --cpp BOOST_FOREACH -l | xargs sed -i -E "s/BOOST_FOREACH\((const [a-zA-Z_:&0-9]+)\s(\w+)\,/for(\1 \2 :/"
ack --cpp BOOST_FOREACH -l | xargs sed -i -E "s/BOOST_FOREACH\((const typename [a-zA-Z_:&0-9]+)\s(\w+)\,/for(\1 \2 :/"
ack --cpp BOOST_FOREACH -l | xargs sed -i -E "s/BOOST_FOREACH\((typename [<>a-zA-Z_:&0-9]+)\s(\w+)\,/for(\1 \2 :/"
ack "boost/foreach.hpp" -l --cpp | xargs sed -i '/boost\/foreach.hpp>/d'
2019-03-29 13:22:15 +01:00
Laurent Rineau
14e93b7fe2
Merge pull request #3794 from maxGimeno/Demo-Fix_off_reading-GF
...
PMP: Fix in normalize()
2019-03-26 17:01:53 +01:00
Laurent Rineau
4cad6017c4
Merge pull request #3786 from afabri/PMP-fix_figure-GF
...
PMP: Fix inclusion of .jpg
2019-03-26 16:44:02 +01:00
Laurent Rineau
4ec173c0e7
Merge pull request #3793 from maxGimeno/Fixes_for_warnings-GF
...
Fixes for warnings
2019-03-26 16:43:56 +01:00
Maxime Gimeno
a508397a58
Don't use ternary operator
2019-03-25 16:06:20 +01:00
Maxime Gimeno
24d5971372
Test that norm != 0 in normalize()
2019-03-25 15:44:20 +01:00
Andreas Fabri
a98eb443ea
Changes after Sebastien's review
2019-03-25 14:32:34 +01:00
Sebastien Loriot
225fdeac04
Update Polygon_mesh_processing/include/CGAL/Polygon_mesh_processing/measure.h
...
Co-Authored-By: afabri <andreas.fabri@geometryfactory.com>
2019-03-25 14:09:42 +01:00
Sebastien Loriot
15e87ed141
Update Polygon_mesh_processing/include/CGAL/Polygon_mesh_processing/measure.h
...
Co-Authored-By: afabri <andreas.fabri@geometryfactory.com>
2019-03-25 14:09:31 +01:00
Sebastien Loriot
1fb5670bbd
Update Polygon_mesh_processing/include/CGAL/Polygon_mesh_processing/measure.h
...
Co-Authored-By: afabri <andreas.fabri@geometryfactory.com>
2019-03-25 14:09:15 +01:00
Sebastien Loriot
544a23aeb3
Update Polygon_mesh_processing/include/CGAL/Polygon_mesh_processing/measure.h
...
Co-Authored-By: afabri <andreas.fabri@geometryfactory.com>
2019-03-25 14:08:59 +01:00
Sebastien Loriot
31a1e80c07
Update Polygon_mesh_processing/include/CGAL/Polygon_mesh_processing/measure.h
...
Co-Authored-By: afabri <andreas.fabri@geometryfactory.com>
2019-03-25 14:08:48 +01:00
Sebastien Loriot
69061e3c72
Update Polygon_mesh_processing/include/CGAL/Polygon_mesh_processing/measure.h
...
Co-Authored-By: afabri <andreas.fabri@geometryfactory.com>
2019-03-25 14:08:15 +01:00
Sebastien Loriot
43c29bdb17
Update Polygon_mesh_processing/include/CGAL/Polygon_mesh_processing/measure.h
...
Co-Authored-By: afabri <andreas.fabri@geometryfactory.com>
2019-03-25 14:08:05 +01:00
Laurent Rineau
1014687627
Merge pull request #3775 from MaelRL/Doc_fixes-GF
...
Doc fixes
2019-03-25 12:24:49 +01:00
Maxime Gimeno
801eb23ca3
Fix uninit warning in PMP
2019-03-25 12:09:04 +01:00
Mael
497d315488
And the end-of-line in Polygon_mesh_processing/doc/Polygon_mesh_processing/Doxyfile.in
...
Co-Authored-By: lrineau <Laurent.Rineau@cgal.org>
2019-03-22 17:11:19 +01:00
Andreas Fabri
92abe26251
cleanup
2019-03-22 11:51:59 +01:00
Andreas Fabri
2873493fb4
PMP: Fix inclusion of .jpg
2019-03-22 09:42:58 +01:00
Andreas Fabri
67774ef07b
clean up
2019-03-21 17:20:46 +01:00
Andreas Fabri
33a92901c9
Fix @returns and PackageDescription
2019-03-21 14:05:54 +01:00
Andreas Fabri
e758a7ddb0
Correct implementation of centroid of surface mesh
2019-03-21 13:36:30 +01:00
Andreas Fabri
f1f6e0dc52
Do not test the centroid with Epec
2019-03-21 13:36:30 +01:00
Andreas Fabri
67a4448549
Add result_type
2019-03-21 13:36:30 +01:00
Andreas Fabri
a38b7e7b3d
Add typename
2019-03-21 13:36:30 +01:00
Andreas Fabri
2f4cb13faf
Test centroid()
2019-03-21 13:36:30 +01:00
Andreas Fabri
88fabe12fb
Fix dependencies
2019-03-21 13:24:20 +01:00
Andreas Fabri
742badf289
Add centroid of a closed triangle mesh
2019-03-21 13:24:20 +01:00
Laurent Rineau
2863e74fb5
Merge pull request #3735 from janetournois/PMP-fix_isotropic_remeshing_with_tiny_constraints-jtournois
...
PMP : fix isotropic remeshing surviving tiny constraints
2019-03-19 18:30:57 +01:00
Mael Rouxel-Labbé
a990164993
Fixed missing backtick
2019-03-15 20:50:24 +01:00
Mael Rouxel-Labbé
6f13a63978
Rephrase intersection doc for clarity
2019-03-15 20:24:50 +01:00
Jane Tournois
d137b20acd
add checking if (s, p, q) is degenerate
2019-03-12 14:04:36 +01:00
Jane Tournois
0de369dd02
add debug code
2019-03-12 12:17:11 +01:00
Jane Tournois
c64bfb8e86
do not construct normals to make the test
2019-03-11 15:18:01 +01:00
Jane Tournois
9cbb6f3785
test inversion only on faces that really need to be tested
...
and rename function collapse_does_not_invert_face(he) to
collapse_would_invert_face(he) for clarity
2019-03-08 16:22:17 +00:00
Jane Tournois
6f12a4ab6f
fix the test ``collapse_does_not_invert_face()`
...
Testing orientation of normals per patch (identified by their Id) is not a
good solution, because it can happen that we are trying to collapse an edge
that is sharp but which has both of its incident faces on the same surface
patch (wrt ids).
The new test is a lot simpler : for each non-degenerate face of the link of
the edge to be collapsed, simply check if its own normal has changed
orientation or not. The adjacent faces do not need to be taken into account
2019-03-08 16:19:31 +00:00
Jane Tournois
664de7e32e
use the new API of `PMP::remove_degenerate_faces()`
...
If there is no degenerate faces to deal with, i.e. if the function
has nothing to do, it now returns `true`, and not `0` anymore.
This change was introduced by commit e4ad5d96a7
2019-03-07 11:22:41 +01:00
Sébastien Loriot
9040b59cb8
workaround a case when the intersection polyline is not split
...
the polyline goes from border to interior but the node is
of degree 2 and the polyline is not split
***************
* *
* *
* *
-*---------*-*---
| * * |
| * * |
| ************* |
| |
| |
| |
|_________________|
2019-03-01 18:06:54 +01:00
Sébastien Loriot
a83dac3826
handle non-manifold vertices is patches to be removed
...
because they are duplicated in interior_vertices
2019-03-01 18:06:08 +01:00
Sébastien Loriot
0f078003c2
also handle non-manifold vertices at isolated nodes
2019-03-01 15:55:16 +01:00
Sébastien Loriot
ff01ed7a5f
better handling of border non-manifold vertices for the clipping
2019-03-01 14:20:29 +01:00
Laurent Rineau
9f9ae00369
Merge remote-tracking branch 'cgal/releases/CGAL-4.13-branch'
2019-02-22 16:39:48 +01:00
Mael Rouxel-Labbé
93cf8d07b2
Improved triangulate_faces tests
2019-02-21 14:44:44 +01:00
Mael Rouxel-Labbé
c3ace2b72c
Fixed VPM / Geom traits not propertly passed / used in triangulate_faces
2019-02-21 14:44:16 +01:00
Sébastien Loriot
52dd5f6244
manual replacement for level 1 in classified ref man
2019-02-14 10:40:04 +01:00
Sébastien Loriot
59bc453b42
first batch of replacement for level 1 in classified ref man
...
command used:
grep -l "##" */doc/*/PackageDescription.txt | xargs sed -i -E 's/\#\#\s*([[:print:]]+[[:alnum:]])\s*\#\#\s*$/\\cgalCRPSection{\1}/'
2019-02-14 10:32:39 +01:00
Laurent Rineau
fdd8357915
Merge pull request #3580 from afabri/Stream_support-Color-GF
...
Fix warnings (Add/remove copy constructors, and other warnings)
Co-authored-by: Laurent Rineau <laurent.rineau@cgal.org>
Co-authored-by: Mael <mael.rouxel.labbe@geometryfactory.com>
Co-authored-by: Maxime GIMENO <maxime.gimeno@gmail.com>
2019-02-13 15:25:07 +00:00
Laurent Rineau
dae590af33
Merge pull request #3643 from afabri/PMP-initialize_optional-GF
...
Polygon_mesh_processing: Initialize a boost::optional
2019-02-13 15:38:44 +01:00
Andreas Fabri
507ebe1b83
Let's give it another try?
2019-02-11 10:43:12 +01:00
Mael Rouxel-Labbé
3d588937c4
Added another test
2019-02-08 13:37:44 +01:00
Mael Rouxel-Labbé
f1837f2967
Updated documentation with new behavior
2019-02-08 13:37:14 +01:00
Mael Rouxel-Labbé
e7ed57d2b5
Added tests for non conformal snapping
2019-02-08 13:02:05 +01:00
Mael Rouxel-Labbé
aca47ace9a
Updated snap test to reflect changes in vertex-vertex snapping behavior
2019-02-08 11:13:59 +01:00
Mael Rouxel-Labbé
a843d5e249
Fixed output to work with surface meshes other than CGAL::Surface_mesh
2019-02-08 11:12:45 +01:00
Sébastien Loriot
7db3d2604b
use only initialized values
2019-02-08 11:05:12 +01:00
Mael Rouxel-Labbé
05c03b5f40
Renamed debug macro
2019-02-08 10:10:01 +01:00
Laurent Rineau
8d12ec9b9c
Merge pull request #3637 from sloriot/PMP-doc_bug_fix
...
fix wrong ref
2019-02-07 13:31:07 +01:00
Andreas Fabri
9b030b0b45
try this
2019-01-31 18:18:49 +01:00
Sébastien Loriot
6c6244d9b8
Merge pull request #3516 from maxGimeno/Demo-fixes-GF
...
Polyhedron Demo: Fixes.
2019-01-31 11:41:58 +01:00
Andreas Fabri
813054120f
Initialize a boost::optional
2019-01-30 13:14:48 +01:00
Sébastien Loriot
02de899d26
fix wrong ref
2019-01-28 15:17:58 +01:00
Laurent Rineau
afc3de2894
Merge branch 'master' into Stream_support-Color-GF
2019-01-23 09:37:08 +01:00
Laurent Rineau
1ca9dbc514
Merge pull request #3596 from maxGimeno/PMP-Make_do_intersect_faster-GF
...
PMP:: speed up PMP::do_intersect()
Co-authored-by: Sebastien Loriot <sebastien.loriot@cgal.org>
2019-01-22 10:49:59 +01:00
Laurent Rineau
28e520b121
Merge pull request #3594 from sloriot/PMP-remove_null_edges_on_border
...
Null edges removal fix on the border
2019-01-22 09:15:08 +01:00
Laurent Rineau
6ffd76a87e
Merge pull request #2792 from afabri/Intersections_3-Add_missing_do_intersect-GF
...
Intersections_3: Add missing do_intersect() overloads
2019-01-18 16:37:54 +01:00
Andreas Fabri
6596ba981c
Polygon, Surface_mesher, Nef,..
2019-01-17 19:35:02 +01:00
Sébastien Loriot
4e308223ad
handle non-manifold vertices in a selection + duplicate them prior if allowed
2019-01-17 18:06:25 +01:00
Sébastien Loriot
651c31a179
in case there is a non-manifold vertex, we cannot update the selection
2019-01-17 13:48:30 +01:00
Sébastien Loriot
99bd8c7172
handle non monotonic border while removing a zone of degenerate faces
2019-01-16 18:15:51 +01:00
Sébastien Loriot
ef5fe7ffac
handle polygon attached by non-manifold vertices
2019-01-16 15:26:06 +01:00
Maxime Gimeno
7a7098d009
Fix doc
2019-01-16 11:23:30 +01:00
Sébastien Loriot
e0184766d2
ignore topological issues instead of crashing
2019-01-16 10:13:16 +01:00
Sébastien Loriot
785d0deb46
add missing return
2019-01-16 10:11:43 +01:00
Maxime Gimeno
b939551b38
Don't hardcode vector but use a random access container in polygon_soup_to_polygon_mesh.
2019-01-15 12:17:49 +01:00
Sébastien Loriot
656a5a316a
fix compilation error + indent + simplify
2019-01-14 17:45:09 +01:00
Sébastien Loriot
3edad4c820
do not use what you deleted
2019-01-14 17:34:43 +01:00
Maxime Gimeno
8ab7e69a5c
Test global bbox intersection before creating all bboxes.
2019-01-14 16:03:23 +01:00
Maxime Gimeno
79199281e6
Merge remote-tracking branch 'cgal/master' into Demo-fixes-GF
2019-01-14 09:52:13 +01:00
Sébastien Loriot
68f6a77d63
use dedicated code for removing null border edges + fix that code
2019-01-14 09:12:54 +01:00
Sébastien Loriot
551be55235
Merge remote-tracking branch 'cgal/releases/CGAL-4.13-branch'
2018-12-31 10:29:57 +01:00
Sébastien Loriot
1be277202b
Merge remote-tracking branch 'cgal/releases/CGAL-4.12-branch' into HEAD
2018-12-31 10:29:19 +01:00
Sebastien Loriot
e828d7a29d
Merge pull request #3558 from sloriot/PMP-bbox_empty_meshZ
...
Handle empty meshes
2018-12-31 10:22:42 +01:00
Sébastien Loriot
fe5c3a77f9
swap the edge too
2018-12-21 09:51:58 +01:00
Laurent Rineau
698c13d973
Merge pull request #3500 from sloriot/PMP-stitching_nm_bug-4.13
...
Fix for stitching (4.13 and master)
2018-12-19 16:12:01 +01:00
Laurent Rineau
2583258973
Merge pull request #3530 from sloriot/PMP-coref_empty_meshes-4.13
...
Handle case of empty meshes (4.13+)
2018-12-19 16:06:58 +01:00
Sébastien Loriot
0f0f03e08b
handle empty meshes
2018-12-19 16:05:08 +01:00
Laurent Rineau
a82bb996ae
Merge pull request #3500 from sloriot/PMP-stitching_nm_bug-4.13
...
Fix for stitching (4.13 and master)
2018-12-19 16:00:24 +01:00
Laurent Rineau
fd8ea4b319
Merge pull request #3530 from sloriot/PMP-coref_empty_meshes-4.13
...
Handle case of empty meshes (4.13+)
# Conflicts:
# Polygon_mesh_processing/include/CGAL/Polygon_mesh_processing/corefinement.h
2018-12-19 15:47:12 +01:00
Laurent Rineau
00f668a4ac
Merge pull request #3499 from sloriot/PMP-stitching_nm_bug
...
Fix for stitching (4.12)
# Conflicts:
# Polygon_mesh_processing/include/CGAL/Polygon_mesh_processing/stitch_borders.h
2018-12-19 15:46:19 +01:00
Laurent Rineau
d23d7deb5d
Merge pull request #3517 from sloriot/PMP-coref_empty_meshes
...
Handle case of empty meshes (4.12)
2018-12-19 15:45:56 +01:00
Laurent Rineau
b53a562e89
Merge pull request #3499 from sloriot/PMP-stitching_nm_bug
...
Fix for stitching (4.12)
2018-12-19 15:44:45 +01:00
Mael Rouxel-Labbé
db819df72c
Improved robustness of non-conformal snapping
2018-12-18 12:25:27 +01:00
Sébastien Loriot
1efb1d5162
change kernel to avoid conflict with master
2018-12-14 08:27:19 +01:00
Maxime Gimeno
ca4a568fa7
Fix Remove Degenerated Faces
2018-12-11 16:16:50 +01:00
Sébastien Loriot
fa52560c62
handle case of empty meshes
2018-12-11 07:02:06 +01:00
Sébastien Loriot
8da9e7ceec
handle case of empty meshes
2018-12-11 06:44:27 +01:00
Laurent Rineau
8070b01a22
Merge pull request #3472 from sloriot/PMP-fix_clip_on_border
...
Fix clipping on border edges
2018-12-10 14:38:26 +01:00
Laurent Rineau
0f6f9c388e
Merge pull request #3499 from sloriot/PMP-stitching_nm_bug
...
Fix for stitching (4.12)
# Conflicts:
# Polygon_mesh_processing/include/CGAL/Polygon_mesh_processing/stitch_borders.h
2018-12-06 18:08:38 +01:00
Sébastien Loriot
3069612c37
two halfedges with the same target and source points are non-manifold
...
similar as 44addb1 from 4.12-branch
2018-11-30 10:01:01 +01:00
Sébastien Loriot
44addb1f83
two halfedges with the same target and source points are non-manifold
2018-11-30 09:56:33 +01:00
Sébastien Loriot
ae9659539e
simplify type
2018-11-22 16:58:13 +01:00
Sébastien Loriot
78e375f15c
add a special handling for degenerate faces on the border
2018-11-22 16:14:18 +01:00
Sébastien Loriot
293f54dc25
no need to consider polylines to skip
...
they are not really used in remove_used_polylines
and a polyline might be written as to skip while
only a portion is (if the dangling part is the
one edge per polyline)
2018-11-22 14:08:20 +01:00
Sébastien Loriot
f070af9a70
workaround when interseciont polyline goes to the border
2018-11-22 13:38:31 +01:00
Sébastien Loriot
0ecbdbea4b
handle case when clipping plane hit an extended bbox corner
2018-11-20 13:10:14 +01:00
Sébastien Loriot
7d19fe6940
be more robust in case of tangency
2018-11-20 10:50:32 +01:00
Sébastien Loriot
0c33bf461f
register vertex -> node_id upon creation
...
The former method relied on intersection edges
which did not have isolated vertices
2018-11-20 10:41:37 +01:00
Sébastien Loriot
6f5ba0ddfa
handle clipping with clipper on border edge
2018-11-19 14:26:05 +01:00
Mael
49033c14ad
Merge branch 'master' into PMP-Snap_boundary-GF
2018-11-13 22:38:58 +01:00
Sébastien Loriot
54381db68a
fix -Wmaybe-uninitialized warnings
2018-11-12 19:27:53 +01:00
Sebastien Loriot
00cf0a2889
Merge pull request #3413 from gdamiand/CGAL-cmake_cleanup-gdamiand
...
Clean CMakeLists.txt of examples and tests
2018-11-12 15:01:46 +01:00
Sébastien Loriot
018652517b
Merge remote-tracking branch 'cgal/releases/CGAL-4.13-branch'
2018-11-12 10:08:29 +01:00
Sébastien Loriot
089377d238
Merge remote-tracking branch 'cgal/releases/CGAL-4.12-branch' into HEAD
2018-11-12 10:07:27 +01:00
Sébastien Loriot
65f386b7a3
use the vertex point map provided and not the default one
2018-11-08 14:23:28 +01:00
Sébastien Loriot
3e46680513
use the true name parameter type
2018-11-08 14:22:59 +01:00
Sébastien Loriot
a51a153c31
fix when bbox has a 0-width + update testsuite
2018-11-06 10:56:04 +01:00
Sébastien Loriot
8a27676102
handle case of a non closed intersection polyline
2018-11-06 10:27:30 +01:00
Sébastien Loriot
6b8a36ba0c
update clipping code for surface case and use Face_graph_output_builder
...
This fixes a bug when a patch with no input vertex must be
classified wrt the clipper
2018-11-05 16:26:33 +01:00
Guillaume Damiand
7d406fbb9c
Merge branch 'master' into CGAL-cmake_cleanup-gdamiand
2018-11-05 07:32:58 +01:00
Sébastien Loriot
0685423ae8
update from cgal/master
2018-11-02 11:32:31 +01:00
Sébastien Loriot
d940632471
Merge pull request #3258 from MaelRL/PMP-Filter_degenerate_polygon_soup_input-GF
...
PMP: repair polygon soup
2018-11-02 10:37:58 +01:00
Sébastien Loriot
98584f793c
fix warning
2018-11-01 12:53:47 +01:00
Sébastien Loriot
a7f08e5172
Merge remote-tracking branch 'cgal/releases/CGAL-4.13-branch'
2018-10-30 16:06:22 +01:00
Sébastien Loriot
9eb521d4d7
Merge pull request #3429 from sloriot/PMP-remove_deg_edges_iterative
...
Make the degenerate edge removal an iterative process
2018-10-30 15:59:47 +01:00