Commit Graph

892 Commits

Author SHA1 Message Date
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 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
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 a38b7e7b3d Add typename 2019-03-21 13:36:30 +01:00
Andreas Fabri 2f4cb13faf Test centroid() 2019-03-21 13:36:30 +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
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é 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
Andreas Fabri 9b030b0b45 try this 2019-01-31 18:18:49 +01:00
Andreas Fabri 813054120f Initialize a boost::optional 2019-01-30 13:14:48 +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
Sébastien Loriot 1efb1d5162 change kernel to avoid conflict with master 2018-12-14 08:27:19 +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 44addb1f83 two halfedges with the same target and source points are non-manifold 2018-11-30 09:56:33 +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 7d19fe6940 be more robust in case of tangency 2018-11-20 10:50:32 +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
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 a51a153c31 fix when bbox has a 0-width + update testsuite 2018-11-06 10:56:04 +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 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 cdbe19b480 Merge pull request #3369 from maxGimeno/AABB_tree-AABB_transformed_traits-GF
[Small Feature] Add collision detection in PMP
2018-10-30 15:49:38 +01:00
Sébastien Loriot b6beabc470 doc clean up 2018-10-24 09:54:56 +02:00
Sébastien Loriot 138cd72d6a add a more complete test 2018-10-24 09:22:43 +02:00
Mael Rouxel-Labbé 9db614a968 First draft of non-conforming stitching 2018-10-23 10:28:39 +02:00
Sébastien Loriot 53a5bbbedc add named parameters to export error codes and nesting info 2018-10-19 23:05:13 +02:00
Guillaume Damiand 92ba7fa6c9 Update minimum cmake required version in all CMakeLists.txt 2018-10-18 14:49:23 +02:00
Guillaume Damiand 0bd9088b5a Remove all include( ) and include( CGAL_CreateSingleSourceCGALProgram ) in CMakeLists.txt; they are no more required. 2018-10-17 14:17:08 +02:00
Guillaume Damiand 7f09308d33 Remove all include_directories(BEFORE ../../include) in CMakeLists.txt 2018-10-17 13:07:22 +02:00
Sébastien Loriot 74d57925bb add missing EOL 2018-10-16 15:40:06 +02:00
Mael Rouxel-Labbé 4ed5958538 Merge branch 'PMP-stitch_closed_cycles-GF-old' into PMP-stitch_closed_cycles-GF 2018-10-11 09:38:41 +02:00
Sébastien Loriot d7fa388f85 avoid passing default map (that is already the default)
The c++03 implementation of constructors of AABB-tree expect
arguments to be passed by reference and a rvalue can't be taken by const-ref
2018-10-09 10:29:20 +02:00
Sébastien Loriot 5154022dc0 simply API and update doc 2018-10-09 10:29:20 +02:00
Sébastien Loriot 23c60628e4 add test 2018-10-09 10:29:20 +02:00
Mael Rouxel-Labbé d18e21cfe7 Merge branch 'PMP-Filter_degenerate_polygon_soup_input-GF-old' into PMP-Filter_degenerate_polygon_soup_input-GF 2018-10-08 16:19:26 +02:00
Laurent Rineau 5092db81c3 Merge pull request #3201 from kkatrio/repair_functions
PMP: Add more repair functions
2018-10-08 15:13:51 +02:00
Sébastien Loriot 5db832d002 first version of the code to split into volume 2018-10-05 15:20:33 +02:00
Mael Rouxel-Labbé 61017e51ab Replaced boost's math constants with CGAL 2018-10-04 13:17:44 +02:00
Mael a3e9b9e2a8
Disabled testing of `remove_degeneracies_test.cpp` 2018-10-03 10:50:48 +02:00
Mael Rouxel-Labbé 33050eff79 Generalized snap() to vertex ranges 2018-09-11 15:40:15 +02:00
Mael Rouxel-Labbé a35506cfe0 Removed useless struct member 2018-09-04 15:33:29 +02:00
Mael Rouxel-Labbé 6d01f4f951 Snap what is snappable rather than rejecting everything 2018-09-04 15:30:52 +02:00
Mael Rouxel-Labbé a618c94dbd Removed tolerance map from named parameters 2018-09-03 18:37:06 +02:00
Sébastien Loriot fca4e686ab remove initial version of corefinement now officially documented in PMP 2018-08-22 09:32:16 +02:00
Mael Rouxel-Labbé ab9b0479b3 Removed unnecessary 'do_' in named parameters 2018-08-17 15:32:26 +02:00
Mael Rouxel-Labbé 245379a188 Removed useless 'typename' 2018-08-09 08:52:13 +02:00
Mael Rouxel-Labbé f30c89c40f Added some missing includes 2018-08-07 09:12:49 +02:00
Mael Rouxel-Labbé 46bd7dc832 Merge branch 'PMP-Filter_degenerate_polygon_soup_input-GF-old' into PMP-Filter_degenerate_polygon_soup_input-GF 2018-08-03 09:34:15 +02:00
Mael Rouxel-Labbé 2ecb8c50d2 Improved repair polygon soup verbosity granularity 2018-08-01 15:10:39 +02:00
Mael Rouxel-Labbé b5b10bdb2f Added testing data 2018-08-01 08:45:56 +02:00
Mael Rouxel-Labbé 359aea3686 Added a test for snapping functions 2018-08-01 08:45:04 +02:00
Mael Rouxel-Labbé ef954a69fd Added another test 2018-07-31 08:53:14 +02:00
Mael Rouxel-Labbé 7e17f5f8d6 Cleaned extra verbose 2018-07-31 08:28:38 +02:00
Mael Rouxel-Labbé e5b70423a9 Added a test for stitch_boundary_cycles() 2018-07-30 18:09:16 +02:00
Mael Rouxel-Labbé 5a8d6c67e8 Merge branch 'repair_functions-old' into repair_functions 2018-07-30 15:53:37 +02:00
Mael Rouxel-Labbé 4e31832136 Added a function to detect and merge duplicate faces 2018-07-30 13:08:16 +02:00
Mael Rouxel-Labbé 007a466b8e Added a function to merge duplicate vertices 2018-07-26 18:32:22 +02:00
Mael Rouxel-Labbé e6a04b1fa2 Misc minor changes 2018-07-26 18:26:11 +02:00
Mael Rouxel-Labbé 4a33cde776 Added example and test for repair_polygon_soup 2018-07-26 16:30:56 +02:00
Sébastien Loriot 52eeebda0e fix windows warning 2018-07-25 14:43:14 +02:00
Mael Rouxel-Labbé b30ff6e247 Minor test improvement 2018-07-25 09:40:03 +02:00
Mael Rouxel-Labbé 072b2376b8 Merge branch 'repair_functions-old' into repair_functions 2018-07-23 17:59:43 +02:00
Mael Rouxel-Labbé 6c0d6a79eb Test degenerate_edges/faces 2018-07-23 17:28:44 +02:00
Sébastien Loriot da76851f75 handle special case when intersection segments shares a common endpoint 2018-07-23 17:13:58 +02:00
Mael Rouxel-Labbé a9897111c4 Reorganized the new functions 2018-07-23 12:14:33 +02:00
Mael Rouxel-Labbé 614f80694c Removed obsolete code about merging duplicated boundary vertices 2018-07-23 11:36:15 +02:00
Mael Rouxel-Labbé 49a971e9c2 Various improvements/fixes to degenerate/needle/cap functions 2018-07-23 11:30:12 +02:00
Sébastien Loriot fdec8a2285 print real vertex counts 2018-07-23 10:11:51 +02:00
Sébastien Loriot 21748e0df3 make vertex counts tight 2018-07-20 10:15:22 +02:00
Sébastien Loriot df75e1f6c6 more data to test + check for triple intersection 2018-07-20 09:58:49 +02:00
Laurent Rineau a2c30daa17 Merge pull request #3106 from maxGimeno/PMP-Extrude-GF
PMP: extrude_mesh()
2018-07-04 16:49:48 +02:00
Sébastien Loriot 99db9a0aaf WIP correctly linking halfedges around merged vertices ...
also disable the merge between cycles as it is not straight forward
it will be always possible
2018-07-03 15:38:58 +02:00
Konstantinos Katrioplas 032ee2828a named parameters for duplicate non-manifold vertices 2018-07-03 15:38:57 +02:00
Konstantinos Katrioplas c6afed86a3 use cosine for threshold on needles and caps 2018-07-03 15:37:20 +02:00
Konstantinos Katrioplas 63f49b7fcc move predicates to helper.h and seperate test file 2018-07-03 15:37:20 +02:00
Konstantinos Katrioplas 903df8106a corrections after the review 2018-07-03 15:37:20 +02:00
Sébastien Loriot fe407a701f add a function to merge vertices globally 2018-07-03 15:37:16 +02:00
Sébastien Loriot e1f0740b53 rename header and test file 2018-07-03 15:37:16 +02:00
Sébastien Loriot af65760475 rewrite boundary cycle merging 2018-07-03 15:37:16 +02:00
Konstantinos Katrioplas c79add2c6a merge vertices, tests & data 2018-07-03 15:37:16 +02:00
Konstantinos Katrioplas b4da4a2154 add a couple of tests to cmakelists 2018-07-03 15:37:16 +02:00
Konstantinos Katrioplas 1f0628fad2 is needle andcap functions 2018-07-03 15:36:50 +02:00
Konstantinos Katrioplas c3e7f6d94b is_non_manifold_vertex function 2018-07-03 15:36:50 +02:00
Konstantinos Katrioplas 9f315abad6 duplicate_vertices function doc 2018-07-03 15:36:50 +02:00
Konstantinos Katrioplas 8e285cb1a7 is_degenerate_triangle_face function 2018-07-03 15:36:50 +02:00
Konstantinos Katrioplas 0db8941e0a is_degenerate_edge function 2018-07-03 15:36:50 +02:00
konstantinos katrioplas 9901ed78ef Merge branch 'master' into PMP-smoothing 2018-07-01 20:07:19 +03:00
konstantinos katrioplas 819a012585 fix possible copy-paste error on hardcoded tests 2018-07-01 19:20:48 +03:00
Laurent Rineau 2d9000efde Merge pull request #3111 from sloriot/PMP-coref_preserve_face_attributes
Add a visitor to track the creation of faces in corefinement functions
2018-06-28 16:09:37 +02:00
Sébastien Loriot af8395585e use const functors 2018-06-27 17:02:42 +02:00
Maxime Gimeno eb4bb535aa Fix tests 2018-06-27 16:53:18 +02:00
Sébastien Loriot a609ae3223 fix warnings 2018-06-21 14:41:00 +02:00
Laurent Rineau b44ad18983
Merge branch 'master' into PMP-stitch_after_orient-GF 2018-06-21 12:31:26 +02:00
Sébastien Loriot 0abfba8ac0 Update branch 'PMP-coref_preserve_face_attributes' from master@5ceb529d0f 2018-06-21 10:53:59 +02:00
Mael Rouxel-Labbé 26c857a431 Moved unary/binary_function to CGAL::cpp98 2018-06-13 15:58:19 +02:00
Sébastien Loriot 7580d0124d fix corefine test 2018-06-13 09:54:00 +02:00
Maxime Gimeno 1d4b1f9183 Merge master to solve conflicts 2018-06-13 09:48:07 +02:00
Sébastien Loriot 5ebdb7c872 fix checking condition in autorefine test 2018-06-13 09:47:05 +02:00
Konstantinos Katrioplas f53d60417d improve testing, fix mesh smoothing on selection of faces, clean up 2018-06-11 13:22:12 +02:00
Konstantinos Katrioplas 6cb1dbe4d4 small corrections on docs and test files 2018-06-08 12:36:13 +02:00
Konstantinos Katrioplas a634d6a0bc rename headers, rm unnecessary files, clean, edit changes.md 2018-06-06 17:16:12 +02:00
Konstantinos Katrioplas 60cbb2fc6a Merge remote-tracking branch 'cgal/master' into PMP-smoothing-kkatrio 2018-06-06 15:50:14 +02:00
Konstantinos Katrioplas ff54d95a08 fixes on code and doc according to review, incl. using dynamic properties, using constant property map, passing solver as template parameter & using Point_3 references when possible 2018-06-06 15:49:03 +02:00
Sébastien Loriot 6e1d9b2a3e clip_volumes -> clip_volume 2018-06-06 13:30:36 +02:00
Sébastien Loriot e26bee1a61 rename new_face_visitor -> visitor 2018-06-06 09:50:05 +02:00
Sébastien Loriot d916618842 one more test 2018-06-05 14:09:45 +02:00
Sébastien Loriot ed43102a03 improve clip test 2018-06-05 13:51:51 +02:00
Sébastien Loriot 2569c271e5 improve doc and plugin 2018-06-01 16:50:39 +02:00
Sébastien Loriot 94a73232d5 document clip functions 2018-06-01 11:06:29 +02:00
Konstantinos Katrioplas 3e78e3ad4b typos and various small fixes, incl. smoothing helpers 2018-05-31 17:56:47 +02:00
Maxime Gimeno 6dfefeb189 Rename generic_extrude_mesh into extrude_mesh and removes the distance of the original overload as it is useless 2018-05-29 16:42:16 +02:00
Sébastien Loriot eea53718bb renaming 2018-05-28 17:37:17 +02:00
Sébastien Loriot 3c382accca document the default new face visitor
I have to move everything in the CGAL::PMP::Corefinement because
CGAL::Corefinement was strange for a publicly documented type
2018-05-28 17:37:16 +02:00
Sébastien Loriot 20939d8a9a test new face visitor in corefine and autorefine 2018-05-28 17:36:07 +02:00
Maxime Gimeno eda740136a Add one quad face and use split face 2018-05-28 16:49:54 +02:00
Maxime Gimeno 71abeb06c7 Use vectors instead of unordered maps and use functors that takes input and output vertices instead of only output vertices. 2018-05-28 16:49:53 +02:00
Maxime Gimeno c8bb45fb7e Test fir Surface_mesh AND Polyhedron 2018-05-28 16:49:53 +02:00
Andreas Fabri e6eaf666ed no typename in non-template code 2018-05-28 16:49:53 +02:00
Maxime Gimeno 4efef4e15b Add a function generic_extrude_mesh() that takes up to 2 functors instead of a direction and a distance. 2018-05-28 16:49:52 +02:00
Maxime Gimeno 828a7d2b73 clean-up 2018-05-28 16:49:52 +02:00
Maxime Gimeno 291039ba80 update doc 2018-05-28 16:49:52 +02:00
Maxime Gimeno 1851f35382 Add a function to PMP that extrudes a mesh along a direction at a given distance. 2018-05-28 16:49:51 +02:00
Laurent Rineau a7738b27c9 Merge pull request #3052 from maxGimeno/PMP-transform-GF
PMP: transform()
2018-05-28 13:58:16 +02:00
Laurent Rineau 851dfabd29 Merge pull request #2757 from maxGimeno/BGL-Add_facegraph_validity_check_function-GF
BGL:  Add a  FaceGraph validity check function
2018-05-28 13:58:07 +02:00
Maxime Gimeno 719033ad68 Create id-map on the fly if needed 2018-05-24 12:41:37 +02:00
Sebastien Loriot 9938100097
Merge pull request #2955 from afabri/BGL-include_cleanup-GF
Do not include some BGL related header files
2018-05-15 22:21:42 +02:00
Laurent Rineau 5a5195a4f4
Merge branch 'master' into PMP-stitch_after_orient-GF 2018-05-15 16:11:14 +02:00
Andreas Fabri 077354f76e Fix VC++ warning 2018-05-15 14:00:11 +01:00
Maxime Gimeno ac5b0e73af Fix warning 2018-05-07 12:51:36 +02:00
Maxime Gimeno 2f7d66e530 Clean-up 2018-05-07 12:50:41 +02:00
Maxime Gimeno 72c31ebfac Add a function in PMP to apply a CGAL::Aff_transformation_3 to a mesh. 2018-05-07 12:50:41 +02:00
Sebastien Loriot 1d6918ff4f
Merge pull request #2895 from kkatrio/triangulate_faces_fix
Triangulate faces : CDT2 / hole filling
2018-05-07 11:41:58 +02:00
Maxime Gimeno 47635f11fe Take fimap into account and add a test. 2018-05-03 14:55:49 +02:00
Andreas Fabri 991f3847e8 Do not include graph_traits_Polyhedron.h, properties_polyhedron.h and Polyhedron_iostream.h 2018-05-03 13:23:50 +02:00
Maxime Gimeno 9a77ece72f Add a test 2018-05-03 12:50:30 +02:00
Maxime Gimeno 88899310ab Fix massive typo in PMP test. 2018-05-03 12:03:14 +02:00
Maxime Gimeno 132cf694a0 remove is_valid() from the graph_traits 2018-05-03 12:03:14 +02:00
Maxime Gimeno 6dfa8d0ba3 replace CGAL_is_valid(Mesh) by CGAL::is_valid_polygon_mesh(Mesh) 2018-05-03 12:03:14 +02:00
Andreas Fabri c54a6a4980 Put CGAL::random_shuffle() in the subnamespace cpp98 2018-04-11 09:32:23 +01:00
Andreas Fabri 3955f031bd Fix examples/tests/demos 2018-04-04 14:18:22 +01:00
konstantinos katrioplas 8c279d0b3f test Polyhedron_3 : part 2 & doc improvements 2018-03-30 14:03:20 +02:00
Konstantinos Katrioplas 21b97786d6 test Polyhedron_3 : part 1 2018-03-28 18:53:46 +02:00
Laurent Rineau d057f6d9f1 Merge pull request #2958 from sloriot/PMP-coref_more_coplanar_fixes
Update incorrectly handled coplanar intersection computation
2018-03-28 17:46:24 +02:00
Konstantinos Katrioplas 70cea9a057
Merge branch 'master' into PMP-smoothing-kkatrio 2018-03-28 15:45:18 +02:00
Laurent Rineau 237735ab73 Merge pull request #2946 from afabri/CGAL-dependencies-GF
Move properties from Mesh_3 to BGL, Polyhedron_3 and Surface_mesh
2018-03-27 10:35:23 +02:00
Konstantinos Katrioplas b90e044302 include license header 2018-03-26 15:24:06 +02:00
Konstantinos Katrioplas 7444e749e6 clean empty lines 2018-03-26 15:24:05 +02:00
Sébastien Loriot 920005c802 remove testfile no longer used 2018-03-26 15:24:05 +02:00
Konstantinos Katrioplas 3bd7cb7616 comply to std=c++98 && cleaning 2018-03-26 15:24:05 +02:00
Konstantinos Katrioplas 32b576ae1a typos and small corrections 2018-03-26 14:44:13 +02:00
Sébastien Loriot 5792528fa7 Refreshing PMP-smoothing-kkatrio with master 2018-03-26 14:40:11 +02:00
Konstantinos Katrioplas 8c07709a0b cleaning & better testing 2018-03-26 14:33:53 +02:00
Konstantinos Katrioplas bd71359b7b apply constraints correctly, clean, more tests 2018-03-26 14:33:53 +02:00
Konstantinos Katrioplas e96d7207d4 testing all cases 2018-03-26 14:33:53 +02:00
Konstantinos Katrioplas 802102fa2e wip: testing perfomance 2018-03-26 14:33:52 +02:00
konstantinos katrioplas f04bd6576e eigen library macro 2018-03-26 14:33:51 +02:00
konstantinos katrioplas 46eb3b26f3 API polishing 2018-03-26 14:31:49 +02:00
konstantinos katrioplas e40706ff32 fixed demo plugin small issues 2018-03-26 14:31:49 +02:00
Konstantinos Katrioplas c450e9bc73 demo and headers fixes 2018-03-26 14:31:48 +02:00
Konstantinos Katrioplas c472ac692b fine tune parameters and fix headers defs 2018-03-26 14:31:48 +02:00
Konstantinos Katrioplas c0e1533cc4 remove area normalization step from implicit shape smoothing 2018-03-26 14:31:48 +02:00
Konstantinos Katrioplas 40cea7e986 make projection optional 2018-03-26 14:31:48 +02:00
Konstantinos Katrioplas 958ff819a2 use explicit scheme for shape smoothing as a named parameter 2018-03-26 14:31:48 +02:00
Konstantinos Katrioplas 89cabad131 iterations np on implicit shape smoothing 2018-03-26 14:31:48 +02:00
Konstantinos Katrioplas 8d73cdd969 remove edge constraints map and use vertex based 2018-03-26 14:31:48 +02:00
Konstantinos Katrioplas 619b16cb06 constrained edges tests 2018-03-26 14:31:47 +02:00
Konstantinos Katrioplas 7f4c6a7e9c revert remeshing_test 2018-03-26 14:31:47 +02:00
Konstantinos Katrioplas 9b9503b31e constraints functionality on the modified scheme & tests 2018-03-26 14:31:46 +02:00
Konstantinos Katrioplas 75bea1b696 fixed missed typos after renaming api 2018-03-26 14:30:43 +02:00
konstantinos katrioplas 686a68799a tests on mesh smoothing 2018-03-26 14:30:43 +02:00
Sébastien Loriot 4824f3bcc9 Merge branch 'master' into gsoc17-summerwork
Reworking of 4e4d495ac2
2018-03-26 14:04:36 +02:00
konstantinos katrioplas 897692bc16 document overloads 2018-03-26 13:59:24 +02:00
konstantinos katrioplas 1a4e91d095 fix and clean test files 2018-03-26 13:59:24 +02:00
konstantinos katrioplas 6fadb2ba3a cmakelists for smoothing tests 2018-03-26 13:58:36 +02:00
konstantinos katrioplas d7c114719d unit tests for curvature flow 2018-03-26 13:58:35 +02:00
konstantinos katrioplas 7b80d7be89 unit tests for smoothing 2018-03-26 13:58:35 +02:00
konstantinos katrioplas d5c6283b54 testing curvature flow, exploring robust degenerate handling, overloads and minor fixes 2018-03-26 13:56:07 +02:00
konstantinos katrioplas 9293646193 add tests for invalid meshes and adjust tolerance a bit to comply with some extreme cases 2018-03-26 13:56:06 +02:00
Sébastien Loriot 8553713885 update incorrectly handled coplanar intersection computation
follow up of 6bb6f470c4
2018-03-26 11:20:16 +02:00
Laurent Rineau cd6fe20bd4 Merge branch 'releases/CGAL-4.11-branch' 2018-03-26 11:03:37 +02:00
Andreas Fabri 8c41669fb7 move properties from Mesh_3 to BGL, Polyhedron_3 and Surface_mesh 2018-03-22 16:37:37 +01:00
Sébastien Loriot 6bb6f470c4 update incorrectly handled coplanar intersection computation 2018-03-21 16:51:24 +01:00
Sébastien Loriot 9240f29ff8 update test to check both combinaisons 2018-03-21 16:51:24 +01:00
Konstantinos Katrioplas bec3227a00 add data test file 2018-03-16 15:13:42 +01:00
Konstantinos Katrioplas 0f14c1fad0 rm empty lines 2018-03-16 15:10:40 +01:00
Konstantinos Katrioplas 61735be71c deny triangulation for input of 3 points or less when using all search space 2018-03-16 14:08:43 +01:00
Konstantinos Katrioplas 8242c05f7c add the word main to be found by grep 2018-03-07 15:49:03 +01:00
Konstantinos Katrioplas 6edaa7a720 test different options using macro definitions 2018-03-07 11:41:31 +01:00
Konstantinos Katrioplas 9224e83c0a clean up 2018-03-05 13:05:37 +01:00
Sébastien Loriot 8cc234fe26 handle degenerate faces 2018-03-02 15:45:34 +01:00
Sébastien Loriot e478e12471 do not use Euler::add_face 2018-03-01 15:38:26 +01:00
konstantinos katrioplas 833c54faef using triangulate_hole_polyline 2018-03-01 12:59:52 +01:00
Sébastien Loriot 9160483098 fix Dual_vpm 2018-03-01 09:51:03 +01:00
konstantinos katrioplas 77bd6f7366 solve issue with vpmap 2018-03-01 09:16:53 +01:00
konstantinos katrioplas b400f39f1a vpmap 2018-02-28 21:47:37 +01:00
Konstantinos Katrioplas 18ec0740c4 wip on dual vpm 2018-02-28 15:27:14 +01:00
Konstantinos Katrioplas a765b152e3 wip - testing dual 2018-02-28 13:47:10 +01:00
Konstantinos Katrioplas 39ab6e00f4 test triangle face 2018-02-28 11:54:11 +01:00
Maxime Gimeno 9874046612 remove test. 2018-02-19 18:04:55 +01:00
Maxime Gimeno 3fdc7b67b2 remove non_filled_holes 2018-02-19 18:04:54 +01:00
Maxime Gimeno 1a1fcf9553 Add a test. 2018-02-19 18:04:03 +01:00
Maxime Gimeno 2758143116 fixing the topology test. 2018-02-19 18:04:03 +01:00
Simon Giraudot e00c4f67d6 Fix missing propagations of PSP named parameters API change 2018-01-10 16:39:34 +01:00
Laurent Rineau 42b11ddf29 Revert the merge of PR #2478
This reverts the merge commit 46cc91e787 onto
488c3e2879.
2018-01-04 17:54:08 +01:00
Sébastien Loriot 9fe73a801e Merge pull request #2552 from maxGimeno/PMP_does_intersect-GF
PMP: do_intersect
2018-01-04 15:34:18 +01:00
Sébastien Loriot ddd4112324 use named parameter 2017-12-20 09:26:48 +01:00
Sébastien Loriot d1597f2fb5 Merge branch 'maxGimeno/PMP_orient_connected_components-GF' into cgal/master 2017-12-19 17:34:51 +01:00
Sébastien Loriot 430ad5bc72 Merge branch 'maxGimeno/PMP_does_intersect-GF' into cgal/master 2017-12-19 17:31:29 +01:00
Laurent Rineau 61e662c4e4 Merge pull request #2649 from sgiraudot/BGL-Regroup_named_parameters-GF
Regroup PMP named parameters with BGL named parameters

# Conflicts:
#	Polygon_mesh_processing/include/CGAL/Polygon_mesh_processing/internal/parameters_interface.h
2017-12-19 16:33:44 +01:00
Laurent Rineau 1c2e9df8cf Merge branch 'releases/CGAL-4.11-branch' 2017-12-19 16:29:10 +01:00
Laurent Rineau 5181cd7474 Merge branch 'releases/CGAL-4.10-branch' into releases/CGAL-4.11-branch
# Conflicts:
#	Polygon_mesh_processing/include/CGAL/Polygon_mesh_processing/measure.h
2017-12-19 16:19:22 +01:00
Sébastien Loriot 4b1430ca07 use a named parameter for choosing inward or outward orientation 2017-12-14 11:23:43 +01:00
Laurent Rineau fe81d31ec2
Merge branch 'master' into PMP_does_intersect-GF 2017-12-13 16:25:32 +01:00
Sébastien Loriot a1c39fdf11 rename test 2017-12-13 16:18:45 +01:00
Sébastien Loriot fe6b6b13e8 move internal functions in the PMP namespace 2017-12-13 15:45:42 +01:00
Sébastien Loriot 5a04bc7053 clean up 2017-12-13 13:31:09 +01:00
Mael Rouxel-Labbé 638bfee3fd Regroup and complete BGL named parameters tests
Along the way, apply the same fix as in f191e6114a
(*_sampling should be named use_*_sampling)
2017-12-13 10:49:50 +01:00
Sébastien Loriot 82f931f556 be more verbose in case of error 2017-12-13 10:18:08 +01:00
Maxime Gimeno 687e5b6c60 Add requirement close for orient function 2017-12-13 10:17:42 +01:00
Maxime Gimeno 6c42ce6958 Doc review 2017-12-13 10:17:08 +01:00
Maxime Gimeno 67d06cadb6 Add a function that orient a closed triangle mesh to make it bound a volume. 2017-12-13 10:17:04 +01:00
Maxime Gimeno 0f4f30b37b Add a boolean to specify output orientation 2017-12-13 10:16:58 +01:00
Maxime Gimeno b0cbe41a50 Fixes in test. 2017-12-13 10:16:52 +01:00
Maxime Gimeno dbb63e155d Fices in the doc and the test 2017-12-13 10:16:40 +01:00
Maxime Gimeno 9f986ea9ef Add a function and associated test that orient all the connected components of a triangulated face graph positively. 2017-12-13 10:16:23 +01:00
Laurent Rineau 68cf051563 Fix <CGAL/Polygon_mesh_processing/measure.h>
It requires `CGAL::exact(FT)` from `<CGAL/Lazy.h>`.

Fixes #2654.
2017-12-07 10:07:16 +01:00
Laurent Rineau bc3a0c7271 Merge pull request #2638 from sloriot/PMP-experimental_autorefinement
Add experimental autorefinement code
2017-12-05 18:26:23 +01:00
Sébastien Loriot c3571a1c44 fix int to bool conversion warning 2017-11-30 15:43:56 +01:00
Sébastien Loriot 56762a60a4 move all functions related to autorefinement in experimental namespace
+ remove all public documentation associated to it
2017-11-28 11:30:44 +01:00
Sébastien Loriot 55020142c7 make sure the mesh is cleared before filling it again 2017-11-28 10:21:45 +01:00
Sébastien Loriot b974c34ea4 add an example failing because there are locally 3 surfaces intersecting along an edge 2017-11-28 10:21:45 +01:00
Sébastien Loriot 6cce6b0995 add testsuite and testcases 2017-11-28 10:21:45 +01:00
Maxime Gimeno c940bbd20d Update doc 2017-11-27 15:58:56 +01:00
Laurent Rineau bc36af5eed Fix CMake warnings about mixed usage of target_link_libraries
See https://cmake.org/cmake/help/v3.0/policy/CMP0023.html
2017-11-22 11:06:26 +01:00
Maxime Gimeno ffd2f62aef add misisng test file 2017-11-17 12:55:28 +01:00
Maxime Gimeno 830f1e3f80 add volumic tests and tests data files 2017-11-17 12:55:28 +01:00
Maxime Gimeno 4d19c0e1b1 Add named parameters and fix mesh id in range calculation. 2017-11-17 12:55:28 +01:00
Maxime Gimeno 691649590c Add a function to compute the number of pairs of intersecting meshes in a range of meshes. 2017-11-17 12:55:28 +01:00
Maxime Gimeno 27f29bc6f2 Add overloads for polylines ranges and tests that go with them 2017-11-17 12:55:27 +01:00
Maxime Gimeno edc49e77b7 Move intersection computation functions in internal. 2017-11-17 12:55:05 +01:00
Maxime Gimeno ece79dd277 Add default values for NPs and no more need for Kernel in do_intersect. Also rename and un-document intersection functions. 2017-11-17 12:55:05 +01:00
Maxime Gimeno 47defffbdb Documents the new functions 2017-11-17 12:55:05 +01:00
Maxime Gimeno 5a5accaaa8 Move intersection code into a header 2017-11-17 12:55:04 +01:00
Maxime Gimeno b9803ec94b do_intersect() working for 2 Polylines 2017-11-17 12:55:04 +01:00
Maxime Gimeno 7d6bad9ab4 Do_intersect for faces and face-polylines working 2017-11-17 12:55:04 +01:00
Laurent Rineau 0681ac6dbc Fix the TBB_USE_FILE warnings 2017-11-15 17:00:02 +01:00
Laurent Rineau 3ff09bc549 Merge pull request #2580 from lrineau/CGAL-Support_CMake_3.10-GF
Renew the handle of policies, for CMake-3.10
2017-11-15 16:47:42 +01:00
Laurent Rineau 86fb40832a Merge pull request #2580 from lrineau/CGAL-Support_CMake_3.10-GF
Renew the handle of policies, for CMake-3.10
2017-11-13 12:01:39 +01:00
Laurent Rineau 62c70d41ca Renew the handle of policies, for CMake-3.10
Now that we require CMake>=3.1, we can forget a lot of old CMake policies.

`CMP0053` `OLD` behavior is still needed, because of a bug in Qt5 CMake files, but it will
not be set with CMake>=3.10. Let's assume that a recent CMake version means
a recent Qt5 version.
2017-11-06 14:58:36 +01:00
Laurent Rineau 0533547da9 Merge pull request #2447 from sloriot/Demo-add_more_repair_functions
add more repair functions in the Polyhedron demo
2017-10-13 17:00:47 +02:00
Laurent Rineau 7e9f756935 Replace all std::unary_function by CGAL::unary_function 2017-10-04 15:57:09 +02:00
Sébastien Loriot 7fdf9cad8c integrate the are_vertices_stitchable test into the check for non-manifold edges
also reinit the union-find on vertices as the master vertex kept
might be one marked as non-stitchable
2017-10-03 13:41:58 +02:00
Sébastien Loriot d23b301cea filter edges to be stitched to avoid creating non-manifold vertices
edges filtered have two endpoints to be merged
2017-10-02 16:20:05 +02:00
Sébastien Loriot 07bb1d6839 use union-find to merge vertices and decide which vertex to keep
This is needed if two patches have edges stitched with identical
vertex point coordinates.
2017-09-29 17:51:58 +02:00
Laurent Rineau 5b1828cda2 Merge pull request #2445 from sloriot/PMP-fix_is_stitchable
Fix stitchable conditions
2017-09-20 11:13:30 +02:00
Sébastien Loriot c84014992a fix the collection of edges to stitch
we ignore those incident to a degenerate edge on the border
2017-09-19 15:08:19 +02:00
Maxime Gimeno d5ea0b6cbc Fix warnings and copy PMaps in detect_features.h 2017-09-05 12:03:35 +02:00
Jane Tournois e2e5b1ed05 edge_is_feature_map is not an optional parameter
see reviews in the small feature
2017-08-18 10:51:25 +02:00
Jane Tournois 2c0b185803 little cleaning 2017-08-17 17:32:35 +02:00
Maxime Gimeno 43ff0d092c Implementation review Jane and sebastien 2017-08-11 15:30:03 +02:00
Maxime Gimeno 723492def1 Use existing named_parameters and vertex_incident_patches becomes lvaluepmap, 2017-08-10 15:16:27 +02:00
Maxime Gimeno 32999ddd78 New pass over doc, tests and examples 2017-08-07 14:50:23 +02:00
Maxime Gimeno 1fe1e21bb6 Replace maximum_surface_patch by first_index. 2017-08-07 13:32:02 +02:00
Maxime Gimeno 1bad0e7202 Use edges instead of halfedges for edge_is_feature_t and map 2017-08-07 11:39:07 +02:00
Maxime Gimeno 222f7f3965 Add an example and a test for detect_features 2017-08-04 15:32:16 +02:00
Laurent Rineau f8760d591b Merge pull request #2136 from afabri/Polygon_mesh_processing-accelerate_isotropic_remeshing-GF
Polygon_mesh_processing: Accelerate Isotropic_remeshing
2017-07-21 10:45:32 +02:00
Laurent Rineau d30a20d323 Fix a compilation error
remesh.h must be included after the headers that include the properties
for the face graphs.
2017-07-12 15:26:08 +02:00
Laurent Rineau 78c37a578d Fix indentation 2017-07-12 15:26:08 +02:00
Andreas Fabri 70b13af39c Do not pollute the boost namespace 2017-07-12 12:11:34 +02:00
Andreas Fabri 3ff34b4b23 cleanup 2017-07-11 20:32:23 +02:00
Andreas Fabri 886bd840cf Make the dynamic property map an implementation detail 2017-07-11 20:32:23 +02:00
Andreas Fabri 24012f3fd7 Fix testsuite for isotropic remeshing of an OpenMesh - it now works 2017-07-11 20:32:23 +02:00
Andreas Fabri d291f572cb Add a testcase for isotropic remeshing of Polyhedron and OpenMesh 2017-07-11 20:32:23 +02:00
Andreas Fabri 5ba2161d21 Make isotropic remeshing compile with OpenMesh 2017-07-11 20:32:22 +02:00
Andreas Fabri 4fc8f93154 Make mean_curvature_plugin work with Surface_mesh. TODO: colored faces 2017-07-10 16:03:07 +02:00
konstantinos katrioplas 3c5ca4d88d setup for curvature flow class 2017-07-05 12:20:24 +03:00
Guillaume Damiand 4c9bbc06af Merge branch 'master' into BGL-LCC-gdamiand 2017-06-30 17:18:53 +02:00
Guillaume Damiand 685fe45c8e Bug fix in surface_intersection_sm_poly about filenames used by default. 2017-06-29 10:35:37 -04:00
konstantinos katrioplas b4b3ace780 small fix for collapsed degenerate cases after first iteration when using angle weights and some typos 2017-06-29 08:30:47 +03:00
konstantinos katrioplas 517e35d894 use (optionally) weighted angles on calculating the barycenter 2017-06-25 20:12:54 +03:00
Mael Rouxel-Labbé fd6825acbf Fixed return type in measure_tests 2017-06-22 16:17:13 +02:00
Andreas Fabri 7997925bf8 Add a function longest_border(PolygonMesh&) to PMP 2017-06-22 16:11:38 +02:00
konstantinos katrioplas d93e18b1b3 add constrained edges map 2017-06-19 14:51:26 +03:00
konstantinos katrioplas f8019da79d new design: smoothing.h - internal/Isotropic_remeshing/smoothing_impl.h 2017-06-18 22:51:15 +03:00
konstantinos katrioplas 20238d5aba projection in angle smoothing 2017-06-18 18:03:37 +03:00
konstantinos katrioplas dae9e6f55c get rid of boilerplate in test cpp 2017-06-18 12:58:43 +03:00
konstantinos katrioplas 03292af820 area smoothing tests 2017-06-17 16:25:28 +03:00
konstantinos katrioplas afb8eb01cb fix degenerate cases on angle smoothing 2017-06-16 16:11:07 +03:00
Guillaume Damiand c8250c4570 Merge branch 'master' into BGL-LCC-gdamiand 2017-06-15 10:03:53 -04:00
Guillaume Damiand f5a94891bb Update examples and demo that use BGL for LCC. 2017-06-14 11:42:15 -04:00
konstantinos katrioplas aaa91aa3ed handle degenerate cases and tests 2017-06-14 13:14:52 +03:00
Laurent Rineau 9aea1f228d Merge pull request #2105 from sloriot/PMP-stitch_avoid_creating_non_manifold_edges
prevent the merge of two vertices that would create a non-manifold edge
2017-05-19 10:29:57 +02:00
Laurent Rineau de757b671e Merge pull request #2105 from sloriot/PMP-stitch_avoid_creating_non_manifold_edges
prevent the merge of two vertices that would create a non-manifold edge
2017-05-19 10:27:40 +02:00
Laurent Rineau 3b1ebdb574 Merge pull request #2057 from janetournois/PMP-fix_is_outward_oriented-GF
PMP : fix `PMP::is_outward_oriented()`

(From a merge of 'cgal/releases/CGAL-4.10-branch', plus a merge of the
commit 'a6e2783'. That commit fixes the incompatibility with recent
changes in `master`.)
2017-05-17 13:02:38 +02:00
Sébastien Loriot d4fa3c860c fix test incorrectly simplified test 2017-05-12 09:49:44 +02:00
Sébastien Loriot 51dce78e78 fix the last step of the algorithm to pick the top face along the z-axis 2017-05-12 09:49:43 +02:00
Sébastien Loriot 976ba8b75a fix the outward orientation test 2017-05-12 09:49:43 +02:00
Laurent Rineau 7aad2a560c Merge pull request #1891 from maxGimeno/PMP_named_params_macro-GF
Use macros to add parameters in PMP
2017-05-11 17:09:38 +02:00
Sébastien Loriot 9487c56cab fix copy-paste error 2017-05-11 10:42:33 +02:00
Guillaume Damiand a22a5fbd21 Update BGL LCC examples and tests following the modification of the API (helper class) 2017-05-10 13:27:37 -04:00
Sébastien Loriot 7a841cad48 prevent the merge of two vertices that would create a non-manifold edge 2017-05-10 18:55:03 +02:00
Guillaume Damiand 3f382fe6b4 Add more examples for LCC BGL 2017-03-28 12:52:31 -04:00
Andreas Fabri 58bcecc497 License check for Corefinement and Distance 2017-03-22 14:07:52 +01:00
Andreas Fabri cd7deb8577 License check for Corefinement and Distance 2017-03-22 12:32:43 +01:00
Andreas Fabri 774bdc4351 License check for Geometric Meshing and Hole Filling 2017-03-22 12:10:37 +01:00
Andreas Fabri fde105b437 License check for Predicates 2017-03-22 10:29:59 +01:00
Andreas Fabri 51bbe5d1f6 License check for Geometric Measures and Miscellaneous 2017-03-22 10:05:39 +01:00
Andreas Fabri 9bcf8b040e move corefinement specific code from PMP to Operations_on_polyhedra 2017-03-22 09:12:30 +01:00
Sebastien Loriot 5b6cf1cfae Merge pull request #1976 from sloriot/PMP-coref_bugfix_tangent_cases
Correctly handle edge tangency cases
2017-03-20 16:11:17 +01:00
Sébastien Loriot 0b29878f6d better handling of tangency
correctly handle dangling intersection polylines
that appear when models are tangent along an edge
2017-03-16 18:44:13 +01:00
Sébastien Loriot 58f59d0af0 add new data set to test tangent cases 2017-03-16 15:38:54 +01:00
Sébastien Loriot a79f461548 be more permissive for open meshes 2017-03-15 17:13:40 +01:00
Sébastien Loriot 259155edb3 improve the coref-bool-op test to also check possible results are as expected 2017-03-15 16:49:32 +01:00
Jane Tournois b6d88274fb deactivate output to files in the testsuite
it takes long and is not really useful for the tests
2017-03-14 16:20:28 +01:00
Jane Tournois f9fe9a5e6a add assertions to the PMP testsuite 2017-03-14 15:46:48 +01:00
Sébastien Loriot 7c51ddc606 remove commented lines 2017-02-13 10:28:27 +01:00
Sébastien Loriot e9395aba6f move enum for named parameters inside internal_np namespace 2017-02-13 10:25:28 +01:00
Sébastien Loriot 2068ba14ce remove non used named parameter 2017-02-10 16:45:18 +01:00
Maxime Gimeno 0f9c102516 Move the enums in a namespace parameters to clean-up the namespace CGAL. 2017-02-09 15:29:18 +01:00
Laurent Rineau 4c3ea8908e Merge pull request #1875 from sloriot/PMP-rename_bbox_3
Rename bbox_3 functions
2017-02-06 15:19:18 +01:00
Sébastien Loriot 9cf49ff733 remove _3 suffix left 2017-01-31 18:09:22 +01:00
Sébastien Loriot a675fa60e4 rename bbox_3 functions
free functions in CGAL have no dimension suffix
2017-01-31 14:33:56 +01:00
Sébastien Loriot 0f540a8116 make sure the same points in different triangle meshes have the same coordinates 2017-01-30 15:35:10 +01:00
Sébastien Loriot 516b732adf using tbb::atomic instead of cpp11::atomic 2017-01-16 15:18:46 +01:00
Sébastien Loriot 060a1478ab add an empty new-line 2017-01-16 09:25:46 +01:00
Sébastien Loriot 0446958c5a parallel version of mesh distance function requires cpp11::atomic 2017-01-13 13:19:29 +01:00
Sébastien Loriot 9ae7b37845 Merge pull request #1745 from sloriot/Polyhedra_corefinement-enhancements-sloriot
Add corefinement operations in PMP
2017-01-12 12:05:18 +01:00
Sébastien Loriot 59001acd92 update the implementation of clip plugin to use new corefinement PMP code 2017-01-10 15:38:24 +01:00
Sébastien Loriot 286efc1ff1 avoid calling get function 2017-01-10 14:45:19 +01:00
Sébastien Loriot ae1632091a only use parallel tag if TBB is here 2017-01-09 08:35:56 +01:00
Sébastien Loriot b997dd17a3 fix path to input files 2017-01-06 09:49:16 +01:00
Sébastien Loriot 6341b5d5ed rename named parameter and update concept after adding edge sampling 2016-12-30 14:52:10 +01:00
Sébastien Loriot 886b65edd1 remove set_ prefix from named parameters 2016-12-29 17:50:16 +01:00
Sébastien Loriot 94b2720fbd use name parameters for selecting the sampling algorithm
A dedicated sampling of edges is also introduced as well as
an option to use input vertices to evaluate the distance.
2016-12-29 07:20:25 +01:00
Sébastien Loriot e40a84d2f9 use Real_timer to avoid since Timer measure cpu time 2016-12-29 07:20:25 +01:00
Maxime Gimeno 581b677a44 Add sample_face() and fix some doc. 2016-12-29 07:20:23 +01:00
Maxime Gimeno 06dd4a4522 Add a geom-traits concept for distance functions
Update the code and the doc accordingly
2016-12-29 07:20:23 +01:00
Maxime Gimeno 9140ab3f31 Replace approximated by approximate in the function names. 2016-12-29 07:20:22 +01:00
Maxime Gimeno 0cc2c59981 Fixes for SF. 2016-12-29 07:20:22 +01:00
Maxime Gimeno cbf7e6b722 Doc and test fix. 2016-12-29 07:20:21 +01:00
Maxime Gimeno 0c3edf822c Add tests for misisng documented functions. 2016-12-29 07:20:21 +01:00
Maxime Gimeno a232a257ca Implementation of the `max_distance_to_point_set()` function. 2016-12-29 07:20:21 +01:00