Commit Graph

3103 Commits

Author SHA1 Message Date
Sébastien Loriot f2c45716b9 add missing overload 2020-10-01 11:23:18 +02:00
Mael Rouxel-Labbé 4d4eef94a4 Enable different VPMs in PMP::clip 2020-09-28 15:49:24 +02:00
Laurent Rineau 9884b4597c Merge pull request #4994 from janetournois/PMP-isotropic_remeshing_allows_invalid_mesh-jtournois
PMP isotropic remeshing - test validity during remeshing only if input mesh was valid
2020-09-24 16:42:33 +02:00
Mael Rouxel-Labbé 1f4eca9746 Fix iterating and removing elements that might show up further in the loop 2020-09-22 16:58:23 +02:00
Mael Rouxel-Labbé b7b0d1f0fa Use FT instead of double 2020-09-22 16:58:01 +02:00
Mael Rouxel-Labbé 303ead8b28 Explicit initialization of sum to 0 to avoid NP with weird def-constr values
Looking at you, exact number types initializing stuff to 0.5
2020-09-22 16:57:35 +02:00
Mael Rouxel-Labbé 38218aca4f Fix deleting elements (degenerate faces) that might be further in the range 2020-09-22 15:28:40 +02:00
Mael Rouxel-Labbé 46630bdaad Merge remote-tracking branch 'cgal/master' into PMP-Clip_with_self_intersections-GF 2020-09-22 11:25:01 +02:00
Mael Rouxel-Labbé f39863e801 Merge remote-tracking branch 'cgal/master' into PMP-Local_stitch_borders-GF 2020-09-22 10:57:18 +02:00
Jane Tournois 16656872d0 rename graph_visitor to visitor 2020-09-18 14:20:46 +02:00
Laurent Rineau 5e532d9cf3
Merge branch 'master' into PMP-visitor-GF 2020-09-18 13:26:45 +02:00
Jane Tournois bfd4e9915f rename named parameter graph_visitor to visitor 2020-09-15 15:42:24 +02:00
Jane Tournois 4745308384 use graph_visitor instead of creating new triangulate_visitor 2020-09-15 14:38:29 +02:00
Jane Tournois 070fa52b6e use (removed?) input geom traits 2020-09-15 12:39:55 +02:00
Jane Tournois d000af1d54 apply doc reviews 2020-09-15 12:29:54 +02:00
Jane Tournois 747db7204e add CGAL_warning_msg and move debug code inside CGAL_assertion_code 2020-09-11 15:47:20 +02:00
Jane Tournois 2031009745 test validity during remeshing only if input mesh was valid
isotropic remeshing is a local process, so it does not need the mesh
to be globally valid (e.g. it is allowed to have isolated vertices)

we keep the test in debug mode when the input is valid, that the mesh
remains valid anyhow
2020-09-11 14:50:14 +02:00
Jane Tournois 563f38a9cf Merge branch 'PMP-visitor-GF' into PMP-remesh_non_triangle_faces-jtournois 2020-09-11 08:34:49 +01:00
Jane Tournois 435df16eb7 add missing `after_subface_creations` 2020-09-11 09:33:32 +02:00
Jane Tournois 02bba362c2 Merge branch 'PMP-visitor-GF' into PMP-remesh_non_triangle_faces-jtournois 2020-09-10 13:58:12 +01:00
Jane Tournois be7d9d1728 doc fixes 2020-09-10 14:31:48 +02:00
Jane Tournois 0c39f355a5 small fixes in doc 2020-09-10 12:12:46 +02:00
Jane Tournois 39e75e7530 rename split_visitor to triangulate_visitor and add PMPTriangulateFaceVisitor 2020-09-10 12:06:10 +02:00
Jane Tournois 767ff1074c remove debug code 2020-09-08 22:10:57 +02:00
Jane Tournois 07c5387438 avoid uninitialized warning 2020-09-08 22:07:35 +02:00
Jane Tournois cba55b26b5 start doc 2020-09-08 22:05:45 +02:00
Jane Tournois 626ba2745c replace done() by end() to be consistent with start() 2020-09-08 21:42:00 +02:00
Jane Tournois 268c0eabee replace operator() with more explicit visit() function 2020-09-08 19:03:34 +02:00
Jane Tournois 5490227707 fix compilation after rebase 2020-09-08 18:45:30 +02:00
Andreas Fabri f2ff13d6c4 Add a visitor that allows to map each triangle to its original face
# Conflicts:
#	BGL/include/CGAL/boost/graph/named_params_helper.h
#	Polygon_mesh_processing/examples/Polygon_mesh_processing/triangulate_faces_example.cpp
#	Polygon_mesh_processing/include/CGAL/Polygon_mesh_processing/triangulate_faces.h
2020-09-08 15:17:18 +02:00
Mael Rouxel-Labbé 028b05275a Fix ambigious call 2020-09-08 10:29:38 +02:00
Jane Tournois 845f7222f4 only faces to be remeshed should be triangular, not all the input mesh
remove corresponding assertions
2020-09-04 11:36:59 +02:00
Sébastien Loriot 370d866250 typo 2020-08-20 05:58:03 +02:00
Sébastien Loriot c8b11162bf fix rebase issues 2020-08-19 16:40:37 +02:00
Sébastien Loriot b8efebd865 fix warning 2020-08-19 16:34:22 +02:00
Sébastien Loriot 85caca92aa remove unused variable 2020-08-18 08:27:18 +02:00
Sébastien Loriot 40f297e3e3 more conversion warnings
unsigned is hardcoded in boost
2020-08-17 17:10:12 +02:00
Sébastien Loriot 2aceb2eaf5 remove merge conflict trash 2020-08-17 08:49:05 +02:00
xiewei.zhong_CRI-WH cd76a4e152 fix space 2020-08-13 09:29:34 +08:00
xiewei.zhong_CRI-WH effe7d3a3c fix edge_to_faces key in Collect_face_bbox_per_edge_box 2020-08-13 09:18:05 +08:00
Sébastien Loriot 9e3345f68f Update from master 2020-08-12 16:05:45 +02:00
Sebastien Loriot 260aa765fb
Merge pull request #4902 from MaelRL/PMP-Fix_array_based_PS_to_PM-GF
PMP: Restore array-based soup to mesh conversion
2020-08-11 16:51:36 +02:00
Mael Rouxel-Labbé 2780fa09eb Restore PS_to_PM with array-based soups 2020-08-05 10:49:14 +02:00
Sébastien Loriot 715aa45a2b rephrase 2020-08-04 08:22:01 +02:00
Laurent Rineau ae0c9fbeac Merge pull request #4884 from MaelRL/PMP-fix_polygon_soup_simplification-GF
Fix and simplify polygon soup repairing subfunction "simplify_polygon"
2020-07-31 15:52:53 +02:00
Laurent Rineau 6411035d7f Merge pull request #4884 from MaelRL/PMP-fix_polygon_soup_simplification-GF
Fix and simplify polygon soup repairing subfunction "simplify_polygon"
2020-07-31 15:52:02 +02:00
Mael Rouxel-Labbé e85b5bfb40 Tiny doc fixes 2020-07-31 10:15:56 +02:00
Mael Rouxel-Labbé 0a4be6464d Merge remote-tracking branch 'cgal/master' into PMP-Local_stitch_borders-GF 2020-07-31 10:13:50 +02:00
Mael Rouxel-Labbé 5a6fc89495 Fix and simplify polygon soup repairing subfunction "simplify_polygon" 2020-07-28 09:56:02 +02:00
Laurent Rineau a84927d380 Merge pull request #4849 from MaelRL/PMP-No_caps_on_doc-GF
Use lower case for function documentation starting with a verb (BGL/PMP)

# Conflicts:
#	Polygon_mesh_processing/include/CGAL/Polygon_mesh_processing/connected_components.h
2020-07-23 17:15:44 +02:00
Laurent Rineau 1641310e87 Missing #include 2020-07-21 15:22:32 +02:00
Mael Rouxel-Labbé ebd65c9637 Use lower case for function doc starting with a verb (BGL/PMP) 2020-07-20 11:47:30 +02:00
Mael Rouxel-Labbé 93f1cd99ca Merge remote-tracking branch 'cgal/master' into CGAL-Improve_NP_doc_presentation-GF 2020-07-16 09:53:31 +02:00
Mael Rouxel-Labbé d567a0d9d0 Fix doc warnings 2020-07-16 09:52:32 +02:00
Mael 88b4b8dfcf
Use lowercase in functions doc 2020-07-15 12:04:24 +02:00
Mael Rouxel-Labbé 7e2e9d849a Remove experimental code related to clipping self-intersecting meshes
See functionality added in https://github.com/CGAL/cgal/pull/4790 instead.

Keeping it in a commit instead of filtering the branch to keep the code
in history.
2020-07-03 15:02:00 +02:00
Mael Rouxel-Labbé b3958c9c1d Minor doc fixes 2020-07-03 14:27:24 +02:00
Mael Rouxel-Labbé 8393b20366 Keep a call to the global version of PMP::connected_components
See comment for justification
2020-07-03 12:10:30 +02:00
Mael Rouxel-Labbé e16ef7d2f5 Merge remote-tracking branch 'cgal/master' into PMP-Local_stitch_borders-GF 2020-07-03 09:54:56 +02:00
Sébastien Loriot d4122d945a better include the new header :( 2020-07-02 10:36:29 +02:00
Sébastien Loriot 1246e9e375 add a generic clip version that handles self-intersections 2020-07-01 21:04:52 +02:00
Sébastien Loriot d64faf3199 add non-documented operator to do queries using points from another kernel 2020-07-01 21:03:55 +02:00
Sébastien Loriot 3b2da649b8 remove useless test (done in the main call) 2020-07-01 21:03:31 +02:00
Sébastien Loriot fd875cf71a add do_no_modify option to split 2020-07-01 16:20:24 +02:00
Maxime Gimeno f6bfc69162 add missing reserve() using interanl helpers 2020-07-01 15:47:06 +02:00
Laurent Rineau b8ac296757 Merge pull request #4791 from MaelRL/PMP-Fix_remove_SI_hole_filling_non_simple_border-GF
PMP: remove_self_intersections() fixes
2020-06-30 16:38:08 +02:00
Mael Rouxel-Labbé 26eb7903aa Merge remote-tracking branch 'cgal/master' into CGAL-Improve_NP_doc_presentation-GF 2020-06-18 12:46:46 +02:00
Sebastien Loriot 802fa469d5
Apply suggestions from code review
Co-authored-by: Mael <mael.rouxel.labbe@geometryfactory.com>
2020-06-17 08:10:32 +02:00
Mael Rouxel-Labbé e720e6d585 Avoid bad (self-intersecting) patches even in the last case
Usually worsens the result without any benefit
2020-06-16 16:41:49 +02:00
Mael Rouxel-Labbé 5b9a3f8dd8 Also count unsolved cases 2020-06-16 16:40:46 +02:00
Mael Rouxel-Labbé e66bdf0029 Don't attempt to hole fill if the border is not simple 2020-06-16 16:40:14 +02:00
Mael Rouxel-Labbé f216f00dda Add is_simple_3(HalfedgeRange) 2020-06-16 16:39:07 +02:00
Sébastien Loriot b9a12bf901 update doc 2020-06-16 16:36:10 +02:00
Sébastien Loriot 5059191534 remove tabs + update doc 2020-06-16 16:30:02 +02:00
Sébastien Loriot 9eb7a9da85 avoid filling the maps 2020-06-16 15:25:42 +02:00
Sébastien Loriot e43221ae8b add an option to not refine one of the two meshes 2020-06-16 15:15:48 +02:00
Laurent Rineau 7e12992ee0 Missing #include 2020-06-15 17:12:04 +02:00
Sébastien Loriot 784d0cddcd also add non-manifold border faces 2020-06-12 13:30:21 +02:00
Mael Rouxel-Labbé 00d2537975 Don't abuse Surface_mesh property maps 2020-06-12 10:37:34 +02:00
Mael Rouxel-Labbé 8ce1a9c7da Duplicate possible non-manifold vertices in the input 2020-06-12 09:15:52 +02:00
Mael Rouxel-Labbé 593e8c9d5a Debug code (mostly tmp) 2020-06-12 09:15:37 +02:00
Mael Rouxel-Labbé b56583bfd6 Merge remote-tracking branch 'cgal/master' into PMP-Clip_with_self_intersections-GF 2020-06-11 13:39:25 +02:00
Maxime Gimeno 45343e39a0 Protect std::max 2020-06-04 09:55:23 +02:00
Mael Rouxel-Labbé 071565467d Merge remote-tracking branch 'cgal/master' into CGAL-Improve_NP_doc_presentation-GF 2020-06-03 19:01:46 +02:00
Maxime Gimeno 05c36b37ec clean-up 2020-06-03 17:13:39 +02:00
Maxime Gimeno 75f3a67790 Replace parallel_for by parallel_reduce in haudorff 2020-05-29 15:26:34 +02:00
Mael Rouxel-Labbé 27d4c76da3 Remove unused parameter 2020-05-26 15:52:09 +02:00
Sébastien Loriot 7e21188463 comment unused variable
@MaelRL was it expected?
2020-05-26 15:23:03 +02:00
Sébastien Loriot b444d7ad0d remove unused overload 2020-05-26 15:22:43 +02:00
Mael Rouxel-Labbé 808c93c0fa Fix enforcing that VPM reference types must be equal, value types are sufficient 2020-05-26 10:14:06 +02:00
Mael Rouxel-Labbé 0c1ec4b2c3 Use a dynamic pmap rather than get(face_patch_id(), mesh) to keep backward compatibility
A proper fix would be to have a pmap(Polyhedron (without features), face_patch_id) that
creates a dynamic pmap, but...
2020-05-26 10:12:54 +02:00
Mael Rouxel-Labbé f9ad4adfda Use BGL API 2020-05-26 10:12:32 +02:00
Mael Rouxel-Labbé ae3e3b044d Fix add_new_node overloads not being properly templated
since VPM1 might be different from VPM2 and add_new_node will be called
sometimes with VPM1/VPM2 and sometimes with VPM2/VPM1
2020-05-26 09:40:15 +02:00
Mael Rouxel-Labbé 24e99636f4 Fix reordered CC IDs usage 2020-05-25 13:18:47 +02:00
Mael Rouxel-Labbé 8b825eaaf9 Fix improper VPM forwarding 2020-05-25 13:14:01 +02:00
Mael Rouxel-Labbé 0d52df5a25 Fix warnings 2020-05-22 15:13:38 +02:00
Mael Rouxel-Labbé dafca93a82 Fix degenerate case 2020-05-22 14:39:47 +02:00
Mael Rouxel-Labbé f3e3ffeeb4 Improve comments 2020-05-22 14:39:36 +02:00
Laurent Rineau af456548af Merge pull request #4471 from MaelRL/PMP-Halfedge_comparer_for_stitch_borders-GF
PMP: Enable enforcing which edge is kept during stitching
2020-05-18 12:25:01 +02:00
Laurent Rineau b67186eca9 Merge pull request #4719 from sloriot/PMP-remove_si_is_too_verbose
Hide verbose/debug code
2020-05-18 12:24:19 +02:00
Laurent Rineau 86ae4be3ce Merge pull request #4711 from danston/Polygon_mesh_processing-fair_weights_bug_fix-danston
PMP fairing cotangent weights issue fix
2020-05-18 12:22:21 +02:00
Laurent Rineau f031adde59 Merge pull request #4711 from danston/Polygon_mesh_processing-fair_weights_bug_fix-danston
PMP fairing cotangent weights issue fix
2020-05-18 12:07:17 +02:00
Sébastien Loriot 2169dd52aa warnings + compilation fixes 2020-05-18 08:49:14 +02:00
Mael Rouxel-Labbé 5106db47b6 Add local stitching 2020-05-15 20:22:10 +02:00
Sébastien Loriot fbd9628307 add a static bool map and use it when possible
also remove Static_property_map that is a duplicate of Constant_property_map
2020-05-15 18:27:33 +02:00
Sébastien Loriot 577ea40394 add the possibility to not remove some vertices when removing connected components 2020-05-15 18:07:30 +02:00
Sébastien Loriot 094bfe35a3 do not iterate on a container while removing elements 2020-05-15 18:05:57 +02:00
Sébastien Loriot 9f0ebc705b set the initial size of the internal vector when using vector_property_map 2020-05-15 18:03:40 +02:00
Sébastien Loriot 84fe1d2af0 hide verbose/debug code 2020-05-13 09:16:50 +02:00
Mael Rouxel-Labbé baad9c9cb2 Fix only marking the first halfedge of a pair as unstitchable
This was ok when the first halfedge was always the one being kept,
but with the addition of the halfedge_keeper mechanism, both halfedges
must be marked.
2020-05-12 19:23:26 +02:00
Mael Rouxel-Labbé 96f259e306 Const correctness 2020-05-12 19:23:20 +02:00
Mael Rouxel-Labbé 3e321f3c84 Simplify call to PMP::connected_components 2020-05-12 19:22:24 +02:00
Mael Rouxel-Labbé 4b9f7fe425 Merge remote-tracking branch 'cgal/master' into PMP-Halfedge_comparer_for_stitch_borders-GF 2020-05-12 19:19:41 +02:00
Sebastien Loriot 254f654ff5
Merge pull request #4702 from sloriot/PMP-simplify_example
Simplify example
2020-05-12 16:56:14 +02:00
Mael Rouxel-Labbé 038869cab9 Merge remote-tracking branch 'cgal/master' into CGAL-Improve_NP_doc_presentation-GF 2020-05-12 15:12:21 +02:00
Mael Rouxel-Labbé d44adea081 Fix variable name 2020-05-12 15:11:07 +02:00
Mael Rouxel-Labbé ef22a4d035 Add a NP to call experimental clip_w/_self_intersections from PMP::clip 2020-05-11 19:03:35 +02:00
Mael Rouxel-Labbé d556bd0474 Minor bug fixes 2020-05-11 18:39:59 +02:00
Mael Rouxel-Labbé a620191023 Improve NP usage in clipping with self intersections 2020-05-11 17:30:37 +02:00
Mael Rouxel-Labbé 091d1ec195 Clarify variable names to avoid confusion between f from tmf and faces 2020-05-11 17:29:24 +02:00
Mael Rouxel-Labbé fa2f730832 Add experimental clipping with allowed self-intersections in input 2020-05-08 16:57:54 +02:00
Mael Rouxel-Labbé 1c5acc018a Enable PMP::Corefinement to work with VPMs of different types
Same value_type is still a precondition, though.
2020-05-08 13:45:35 +02:00
Mael Rouxel-Labbé b8e3a565e6 Fix incorrect NP for clipping output 2020-05-08 13:28:34 +02:00
Dmitry Anisimov 1056c9b428 removed trailing whitespaces 2020-05-08 11:52:53 +02:00
Dmitry Anisimov 89dc46fbac fairing bug with cotangent weights fix for the issue #4706 2020-05-07 20:03:21 +02:00
Sebastien Loriot c67ef14d3c
Merge pull request #4675 from sloriot/AABB_tree-cpp11DCL
Make the kd-tree build really lazy and fix thread safety of builds
2020-05-05 14:27:57 +02:00
Sébastien Loriot 12eb23c495 add more debug 2020-05-05 11:57:09 +02:00
Sébastien Loriot f0c8dcb0ef copy-paste error: call lock only once 2020-04-23 17:16:43 +02:00
Sébastien Loriot 9fbb6e84e0 remove useless use of the atomic variable 2020-04-23 16:51:30 +02:00
Sébastien Loriot 0c98cd8eee fix no-thread 2020-04-22 16:53:36 +02:00
Sébastien Loriot 969fe84181 use threadsafe lazy construction of the tree
use c++11 memory model to fix the Double-Checked Locking
2020-04-22 11:00:49 +02:00
Maxime Gimeno 5b2d46cfa0 Fixes for min/max 2020-04-21 12:04:45 +02:00
Maxime Gimeno 50766d9d03 Fixes for min/max 2020-04-21 11:52:56 +02:00
Maxime Gimeno e9d41d7b7d Fixes for min/max 2020-04-21 11:38:37 +02:00
Sébastien Loriot c253679b2d unify np sentence 2020-04-18 16:27:58 +02:00
Sébastien Loriot 3b52dfd7de Merge remote-tracking branch 'cgal/master' 2020-04-18 14:47:28 +02:00
Sebastien Loriot 7a8fcde1bf
Merge pull request #4650 from sloriot/PMP-outward_oriented_doc
Fix is_outward_oriented doc
2020-04-16 16:40:43 +02:00
Sébastien Loriot a8f9858099 Merge remote-tracking branch 'cgal/releases/CGAL-5.0-branch' 2020-04-16 16:29:55 +02:00
Sebastien Loriot fb7d41a008
Merge pull request #4579 from sloriot/BGL-copy_face_graph_nm_vertices
Handle non-manifold vertices in copy_face_graph
2020-04-16 16:23:02 +02:00
Sébastien Loriot 5b8f369992 only works on triangle meshes 2020-04-14 17:23:29 +02:00
Mael Rouxel-Labbé 0435e0f49b Fix dead ref 2020-04-13 13:14:09 +02:00
Mael Rouxel-Labbé 48bd92b4dd Proof read all NP changes 2020-04-13 13:03:05 +02:00
Mael Rouxel-Labbé 8b212e8d5e Update some documentation to new NP 2020-04-12 20:46:43 +02:00
Mael Rouxel-Labbé 2337716bcd Merge remote-tracking branch 'cgal/master' into CGAL-Improve_NP_doc_presentation-GF 2020-04-12 20:46:35 +02:00
Sebastien Loriot 4cc75de998
Merge pull request #4595 from maxGimeno/PMP-Split-cc-enhancement-maxGimeno
PMP: Add a named_parameter to split_connected_components()
2020-04-06 15:31:59 +02:00
Mael Rouxel-Labbé 80f6f659f3 Update to new named parameters macros 2020-04-05 17:56:50 +02:00
Mael Rouxel-Labbé a1b0abfb08 Merge remote-tracking branch 'cgal/master' into CGAL-Improve_NP_doc_presentation-GF 2020-04-04 15:40:38 +02:00
Sébastien Loriot 950ce31a0c Merge pull request #4180 from maxGimeno/Doc_enhancements_and_clarifications-GF
PMP: Add a function to sample a triangle soup.
2020-04-02 14:10:42 +02:00
Sébastien Loriot d17219f1c2 Merge pull request #4603 from MaelRL/PMP-Fix_snap_default_tolerance_map_construction-GF
PMP: Fix copy-paste error leading to wrong dynamic pmap sizes
2020-04-02 13:57:09 +02:00
Sébastien Loriot 34299f037c Merge pull request #4140 from MaelRL/PMP-Make_remove_self_intersections_local-GF
PMP: Self-intersection local removal
2020-04-02 13:55:49 +02:00