Commit Graph

680 Commits

Author SHA1 Message Date
Mael Rouxel-Labbé 40655269a2 Documentation for BGL and SMP
- Fixed the boost::graph_traits tables
- Seam mesh documentation
- Some minor changes to surface_mesh_parameterization's and ARAP's docs
2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé 7ce8fdf3f6 Misc minor changes 2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé 8da6683ef0 Misc minor changes
Some doc, some typos, some indentation...
2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé eef01c2ac6 Added a check in the add_seams() function 2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé c333aa34b1 Fixed a bad static_cast in Seam_mesh.h 2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé c71d8285d0 Updated the examples of the SMP to work with the new Seam mesh
Also a small change in the Polyhedron demo
2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé b00c5f9a56 Improved the Seam mesh classes
Added the missing functions so that it is a facelistgraph.
Fixed a few bugs.
2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé 0a96f93776 Esthetical changes for seam meshes 2017-06-22 16:14:55 +02:00
Sébastien Loriot 3929dc4d8d improve doc 2017-06-22 16:14:55 +02:00
Sébastien Loriot eab6b6b68a fix formatting 2017-06-22 16:14:55 +02:00
Sébastien Loriot 82ff73da86 restore graph_traits specializations and fix warnings 2017-06-22 16:14:55 +02:00
Sébastien Loriot 8a8948ebed update doc 2017-06-22 16:14:55 +02:00
Sébastien Loriot a0978d0872 first test equality of meshes
In case the graph type as an assertion checking equality of graph
in operator== of its descriptors
2017-06-22 16:12:26 +02:00
Sébastien Loriot e0b1acba83 remove copy-constructor, default is fine 2017-06-22 16:12:26 +02:00
Sébastien Loriot b1e6d0f876 fix reference type of the vertex iterator of the Seam graph
the vertex descriptor is created on the fly
2017-06-22 16:12:26 +02:00
Sébastien Loriot 16aedcae92 remove a qualified call 2017-06-22 16:12:26 +02:00
Sébastien Loriot 853582dbc5 remove unused variables 2017-06-22 16:12:26 +02:00
Andreas Fabri 88b81378ce WIP 2017-06-22 16:12:26 +02:00
Andreas Fabri 63a5c1fd0b still WIP 2017-06-22 16:12:26 +02:00
Sébastien Loriot 6cad541336 enhance pmap 2017-06-22 16:12:26 +02:00
Sébastien Loriot 7b572ece08 no need to remove constness 2017-06-22 16:12:26 +02:00
Andreas Fabri c03ca8fb63 broken code, as I ask Sebastien to find the compile timer error 2017-06-22 16:12:26 +02:00
Maxime Gimeno 63abf210c9 WIP parameterization_plugin + fixes for parameterization files. 2017-06-22 16:12:26 +02:00
Andreas Fabri d9fe196106 WIP 2017-06-22 16:12:26 +02:00
Andreas Fabri f7b826125b Add the possibility to pass the two vertices that are selected 2017-06-22 16:12:26 +02:00
Andreas Fabri 78dc757a4d doc 2017-06-22 16:12:26 +02:00
Andreas Fabri 7e4fc56b7d Add copyright header 2017-06-22 16:12:26 +02:00
Andreas Fabri 45e19be366 Use property maps to store seam edges and vertices 2017-06-22 16:12:26 +02:00
Andreas Fabri 902ff15f87 fix target(halfedge, Seam_mesh) for when the halfedge is on the border of a seam edge 2017-06-22 16:12:26 +02:00
Andreas Fabri 9cc84e828c Add an initial User Manual section for Seam_mesh 2017-06-22 16:12:26 +02:00
Andreas Fabri e8db3c0f11 Add Seam_mesh to the BGL doc 2017-06-22 16:12:26 +02:00
Andreas Fabri 36530e3f98 polish 2017-06-22 16:11:38 +02:00
Andreas Fabri b11385455f Fix target(Seam_msh) 2017-06-22 16:11:38 +02:00
Andreas Fabri 82f2a2b4ca WIP 2017-06-22 16:11:38 +02:00
Andreas Fabri fa68850338 Use Vertex_around_target_circulator again 2017-06-22 16:11:38 +02:00
Andreas Fabri 869dfbb1e9 finally it works with a Seam_mesh 2017-06-22 16:11:38 +02:00
Andreas Fabri a6a62bc4f6 index vertices inside parameterize() 2017-06-22 16:11:38 +02:00
Andreas Fabri 46ed3edf92 LSCM seems to work too 2017-06-22 16:11:38 +02:00
Andreas Fabri 92a463bdcc split constructor of Seam_mesh in two functions 2017-06-22 16:11:38 +02:00
Andreas Fabri 99a3b99283 make connecteced_component work for Seam_mesh 2017-06-22 16:11:38 +02:00
Andreas Fabri c3e884373a remove debug code 2017-06-22 16:11:38 +02:00
Andreas Fabri 4a2344f0cc discrete authalic now works for Surface_mesh and for a Seam_mesh 2017-06-22 16:11:38 +02:00
Andreas Fabri e1089a9168 WIP: Add vertex_descriptor which is a kind of canonical halfede_descriptor 2017-06-22 16:11:38 +02:00
Andreas Fabri 1164cb14bf Discrete Authalic parametrisation now works for a Seam_mesh with borders and seams 2017-06-22 16:11:38 +02:00
Andreas Fabri b7cdb47463 WIP - lets get it working with the Seam_graph next 2017-06-22 16:11:38 +02:00
Andreas Fabri c746425f8c Authalic parametrization works with a Surface_mesh with border 2017-06-22 16:11:38 +02:00
Andreas Fabri e00500fe5c a shy beginning of a graph with edges marked as seam edges 2017-06-22 16:11:38 +02:00
Laurent Rineau 4116d749d2 Merge pull request #1861 from maxGimeno/BGL_copy_face_graph_patch-GF
BGL: Connected_component_graph and copy_face_graph_patch
2017-06-22 16:06:14 +02:00
Jane Tournois 0c0177e432 add empty() helper function in BGL 2017-06-20 17:33:03 +02:00
Maxime Gimeno a570495a0f Fix face() for border halfedges. 2017-06-16 10:08:22 +02:00
Sébastien Loriot f9df1e2357 fix conversion warnings 2017-06-07 17:04:22 +02:00
Sébastien Loriot f457b0340d remove extra note 2017-05-30 15:09:42 +02:00
Sébastien Loriot 5c1ace5124 add example and use bgllink macro 2017-05-30 15:09:42 +02:00
Sébastien Loriot ad87028699 use named parameters for index maps 2017-05-30 15:09:42 +02:00
Sébastien Loriot dd64914d59 move helper functions in the BGL package so that they can be used there too 2017-05-30 15:09:42 +02:00
Sébastien Loriot 6d2526499e replace iterators of face patch indices by a range 2017-05-30 15:09:42 +02:00
Sébastien Loriot b453991a44 rename face patch index map 2017-05-30 15:09:42 +02:00
Sébastien Loriot a0f1499614 rename bitsets of selected simplices 2017-05-30 15:09:42 +02:00
Sébastien Loriot eddbffcebe use set_selected_faces in the constructor and add the missing implementation 2017-05-30 15:09:42 +02:00
Sébastien Loriot b4194e3614 import API and documentation 2017-05-30 15:09:42 +02:00
Maxime Gimeno 3ab2f10997 replace remaining 'componant' by 'patch' 2017-05-30 15:09:42 +02:00
Maxime Gimeno 1f96262d3d Rename the graph into Face_filtered_graph and add a function to check its validity. 2017-05-30 15:09:42 +02:00
Maxime Gimeno 185ac3bbd0 clean-up the doc 2017-05-30 15:09:42 +02:00
Maxime Gimeno 1caba59404 add a function to change the current connected component ids to the cc_graph and update Segmentation example. 2017-05-30 15:09:42 +02:00
Maxime Gimeno 64eb2d09c6 Change doc for default index maps and add an example to Surface_mesh_segmentation using area() and Connected_components_graphs. 2017-05-30 15:09:41 +02:00
Maxime Gimeno 557e1a78c1 Add tests for Polyhedron and fix Property forwarding 2017-05-30 15:08:34 +02:00
Maxime Gimeno 0ab9cf974c Add property maps binders for the indices and fix remaining bugs in graph_traits. copy_face_graph doesn't crash anymore. 2017-05-30 15:08:34 +02:00
Maxime Gimeno 4e0bdba931 update changes.html and add tparams for the index maps. 2017-05-30 15:08:34 +02:00
Maxime Gimeno 793931be88 Add templates for the index maps in the class type. 2017-05-30 15:08:34 +02:00
Maxime Gimeno 6e1199d56f bitsets implementation, doc fix and tests fix. 2017-05-30 15:08:34 +02:00
Andreas Fabri 0707e06cee Changes after Andreas' review 2017-05-30 15:08:34 +02:00
Maxime Gimeno 5661666782 Clean-up and add key and value types to fccmap. 2017-05-30 15:08:34 +02:00
Maxime Gimeno 97ad4ba2b2 Rename into Connected_components_graph 2017-05-30 15:08:34 +02:00
Maxime Gimeno afd44de2e6 Changes :
- Remove copy_face_graph_patch
- Use an unordered_set instead of a single patch_id.
2017-05-30 15:08:34 +02:00
Maxime Gimeno 513edafdb2 use iterator_range instead of std::pair in Gwdwg 2017-05-30 15:08:34 +02:00
Maxime Gimeno 904b673da6 Changes for review. 2017-05-30 15:08:33 +02:00
Maxime Gimeno f7c3c48c07 Fixes 2017-05-30 15:08:33 +02:00
Maxime Gimeno be5103c1a1 Fix license and include guards 2017-05-30 15:08:33 +02:00
Maxime Gimeno 00af500498 Add a function to copy a patch and document the Connected_component_graph 2017-05-30 15:08:33 +02:00
Maxime Gimeno 5ababe9c33 Add an adapter:
- Create an adapter for FaceListGraphs that takes a patch_id and a FaceIndexMap and acts as if the specified patch was a whole graph.
2017-05-30 15:08:33 +02:00
Maxime Gimeno c892cf49c7 Clean-up 2017-05-29 13:24:09 +02:00
Maxime Gimeno 360031a14a Restore the PMP_properties_Surface_mesh.h and remove the private copy constructor of Gwdwg to let the default one be used, as it does not allow memory. This allows Surface only meshing to work with surface_mesh. 2017-05-29 13:24:08 +02:00
Maxime Gimeno 5db694c154 polyhedral domain with features works for Surface_mesh and cheese.off (Polyhedron does no longer :(
Conflicts:
	Mesh_3/include/CGAL/Polyhedral_mesh_domain_with_features_3.h
	Surface_mesh/include/CGAL/boost/graph/PMP_properties_Surface_mesh.h
2017-05-29 13:22:37 +02:00
Maxime Gimeno 451af8f3ef bglize and add property maps. polyhedral domain with features works almost for Surface_mesh
Conflicts:
	Mesh_3/include/CGAL/Mesh_polyhedron_3.h
	Mesh_3/include/CGAL/Polyhedral_mesh_domain_with_features_3.h
	Surface_mesh/include/CGAL/boost/graph/PMP_properties_Surface_mesh.h
2017-05-29 13:22:37 +02:00
Andreas Fabri 5a302c805d Make make_mesh_3() work for Surface_mesh 2017-05-29 13:22:37 +02:00
Andreas Fabri 2e4524e11f Remove face_degree; Fix warnings 2017-05-29 13:22:36 +02:00
Maxime Gimeno 2c1c78270b Fix doc of face_degree 2017-05-29 13:20:41 +02:00
Maxime Gimeno 880b6e21a2 Fixes and Clean-up.
- Move the new properties in a file in PMP and remove them from the namespace boost.
- Move the surface mesh properties from properties_Surface_mesh.h to Scene_surface_mesh_item.h
2017-05-29 13:20:39 +02:00
Andreas Fabri b5212bd83b Make surface mesh simplification plugin work for Surface_mesh 2017-05-29 13:20:38 +02:00
Andreas Fabri a33e423d2e Add property maps to Mesh_polyhedron_3::type 2017-05-29 13:20:38 +02:00
Andreas Fabri c8bc628c90 WIP: make the selection plugin work for Surface_mesh 2017-05-29 13:20:33 +02:00
Maxime Gimeno 45edec15db Nef_plugin works with surface_mesh. 2017-05-29 12:12:31 +02:00
Laurent Rineau c174b9880d Merge remote-tracking branch 'cgal/releases/CGAL-4.10-branch' 2017-05-26 17:56:13 +02:00
Sébastien Loriot 9b4e04c48a move function to test if a triangle face is degenerated in BGL helpers 2017-05-24 10:18:44 +02:00
Laurent Rineau ee1c11acfd Merge pull request #2077 from afabri/BGL-links_to_headers-GF
BGL Add a description to doxygen groups
2017-05-19 10:28:46 +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
Andreas Fabri 3f16400456 Add a desciption to doxygen groups, and in which header file they are 2017-04-26 08:46:58 +02:00
Laurent Rineau 87c9afd486 Fix the compilation of individual headers
- in most cases, that was just adding missing #include
- I have removed the use of <CGAL/basic.h>
2017-04-13 15:56:51 +02:00
Sébastien Loriot deb9d984f5 Merge remote-tracking branch 'cgal/releases/CGAL-4.9-branch' 2017-03-29 13:23:05 +02:00
Laurent Rineau c025d392fb Merge pull request #1960 from sloriot/BGL-fix_split_graph
Fix bug in split_graph_into_polylines
2017-03-29 11:58:38 +02:00
Sébastien Loriot 3da1729ea4 restore the order on nodes and do not remove an edge before a terminal node
The order was relying on the vertex connectivity so no edge incident to a
node in the set should be removed, otherwise the set is no longer sorted
2017-03-21 16:54:49 +01:00
Sébastien Loriot 6d3d570239 Merge remote-tracking branch 'cgal/releases/CGAL-4.9-branch' into HEAD 2017-03-16 09:57:17 +01:00
Andreas Fabri 58b4b81ccd fix in_edges() and out_edges() 2017-03-13 17:12:37 +01:00
Andreas Fabri 426ab99df7 BGL: Fix Dual 2017-03-13 14:01:19 +01:00
Sébastien Loriot 3fa06c2cc8 remove buggy and useless custom less for vertex descriptors
the order was not correct and in some cases, std::set::erase
was picking the wrong vertex_descriptor. The default less
is fine since no vertices is removed from the adjacency_list,
thus descriptors remain valid
2017-03-09 09:25:18 +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 9b8f910cee move edge_index that is not defined in boost 2017-02-10 17:24:33 +01:00
Sébastien Loriot 47e8f6167f add doc in the interface file and files using it 2017-02-10 17:23:45 +01:00
Sébastien Loriot 2fee4affdd rename macro to be independant of any package 2017-02-10 17:00:38 +01:00
Sébastien Loriot e2e277ad83 fix the list of inherited named parameters and remove special cases 2017-02-10 16:55:56 +01:00
Sébastien Loriot 2068ba14ce remove non used named parameter 2017-02-10 16:45:18 +01:00
Maxime Gimeno 3d8aaf0a6e Add license headers 2017-02-09 15:46:01 +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
Maxime Gimeno 21f305db27 Use an include system to factorize the macro calls in PMP and BGL. 2017-02-09 14:14:11 +01:00
Laurent Rineau 1a2f617d89 Merge pull request #1843 from afabri/BGL_accelerate_copy_face_graph-GF
Accelerate copy_face_graph
2017-02-08 17:32:47 +01:00
Laurent Rineau 13e420732c Merge pull request #1840 from afabri/BGL-reserve-GF
BGL: Add helper function reserve(G,nv,ne,nf)
2017-02-08 17:32:22 +01:00
Sébastien Loriot 758e403d02 remove uninitialized variable warning 2017-01-25 08:52:56 +01:00
Sébastien Loriot df886a0904 add missing include directive 2017-01-19 16:46:52 +01:00
Sébastien Loriot 6926578b15 add reserve to MutableFaceGraph 2017-01-18 18:19:25 +01:00
Sébastien Loriot f5044492c7 remove old implementation and benchmark using it 2017-01-18 16:44:21 +01:00
Sébastien Loriot 3fa4abe869 move function to init index maps to BGL 2017-01-18 16:37:34 +01:00
Sébastien Loriot b3340608cc move property map binders to property_map.h 2017-01-18 16:37:24 +01:00
Sébastien Loriot 35394ccebf update reserve and add test 2017-01-17 11:18:07 +01:00
Andreas Fabri 725a658dad Add reserve(G, nv, ne, nf) 2017-01-17 09:44:06 +01:00
Sébastien Loriot e437f1d7e7 WIP add a new copy_face_graph implementation using halfedge_index_map when possible 2017-01-16 18:35:11 +01:00
Sébastien Loriot a99a406d7f set the bucket size of hash maps 2017-01-16 15:58:06 +01:00
Andreas Fabri 7af02ade63 Add a benchmark 2017-01-16 15:15:27 +01:00
Sébastien Loriot 5557ce17fd add another version of copy_face_graph 2017-01-16 14:33:46 +01:00
Sébastien Loriot e3f9ffa6f8 workaround for named parameters with old boost version (<1.51)
handle the renaming of a struct and move get_param overloads
in the boost namespace (to match qualified call boost::get_param)
2017-01-13 12:05:51 +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
Laurent Rineau e9d9cc5100 Merge pull request #1793 from lrineau/Mesh_3-various_improvements-lrineau
Improvements for Mesh_3
2017-01-12 11:09:45 +01:00
Laurent Rineau 4ce2e8e416 Reduce the width of lines with `using boost::graph_traits` 2017-01-05 11:59:25 +01:00
Laurent Rineau b7c07effa9 Simplify split_graph_into_polylines
Two tests `it = v2vmap.find(vs)) == v2vmap.end()` were useless because
it is guaranteed that the map does contain the vertices.
2017-01-05 11:56:30 +01:00
Laurent Rineau 47dbde4ace Merge pull request #1753 from maxGimeno/BGL_descriptor_with_graph-GF
BGL descriptor with graph
2017-01-05 10:56:02 +01:00
Sébastien Loriot 9981bcfa27 Merge pull request #1757 from afabri/BGL-reorient_make_tetrahedron-GF
BGL reorient make_tetrahedron() and make_hexahedron()
2017-01-02 19:10:20 +01:00
Laurent Rineau ca0fac22e7 Merge branch 'Mesh_3-improve_detect_features-GF' into Mesh_3-various_improvements-lrineau 2016-12-30 17:33:16 +01:00
Sébastien Loriot fe5e925367 Merge pull request #1701 from afabri/Convex_hull_3-FaceGraph-GF
Convex_hull_3: Switch to FaceGraph
2016-12-30 15:14:34 +01:00
Sébastien Loriot 81f4714b1b mimic what is done for Has_clear
typeof is an gcc extension
2016-12-30 14:51:50 +01:00
Laurent Rineau e5807d17ef Add visitor.add_edge, optional 2016-12-30 14:51:50 +01:00
Laurent Rineau 7776720ca9 Merge pull request #1752 from lrineau/Mesh_3-various_fixes_and_improvements-lrineau
Fix the patch from #1524
2016-12-28 16:12:14 +01:00
Andreas Fabri cbcfbc0259 Remove typedefs; put make_quad for vertices in namespace internal 2016-12-23 16:28:50 +01:00
Laurent Rineau f6bfae0324 Remove an assertion: bug in Boost filtered_graph::out_degree 2016-12-16 17:32:45 +01:00
Andreas Fabri fde59886ba Concept check GWdwg 2016-12-13 15:25:54 +01:00
Andreas Fabri 4a323718e3 Use CGAL_assertion; test that the assertion gets triggered 2016-12-09 17:33:25 +01:00
Andreas Fabri c058ae9bcc deacronymize header file name 2016-12-09 17:01:11 +01:00
Andreas Fabri d3a286d111 Gwdwg may be mutable 2016-12-09 16:52:47 +01:00
Laurent Rineau f8833fbec5 Fix a bug with isolated vertices in the graph 2016-12-09 15:47:19 +01:00
Andreas Fabri 98b5ae02f7 reorient make_hexahedron 2016-12-09 15:16:39 +01:00
Sébastien Loriot d1a00c9ab4 add missing overload 2016-12-09 13:44:41 +01:00
Andreas Fabri a32e75646f reorient make_tetrahedron 2016-12-09 12:49:06 +01:00