Commit Graph

194 Commits

Author SHA1 Message Date
Mael Rouxel-Labbé 5b537f5b3d Minor improvements to the surface_mesh GH example 2019-10-15 13:58:13 +02:00
Baskin Senbaslar 0e0c312bf4 garland&heckbert border bad simplification issue solved 2019-10-15 13:58:13 +02:00
Baskin Senbaslar cd7fd75efc GarlandHeckbert_cost_stop_predicate added 2019-10-15 13:58:13 +02:00
Baskin Senbaslar 9438b6c168 several changes, fix the issue with plane normal normalization 2019-10-15 13:58:10 +02:00
Baskin Senbaslar edd760df03 timing added to CGAL's garland&heckbert examples 2019-10-15 13:56:28 +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
Baskin Senbaslar b4e313e323 garland&heckbert null-face problem solved, 1 more example added for polyhedron meshes 2019-06-13 16:09:06 +03:00
Baskin Senbaslar 22e02f0d65 Add garland&heckbert mesh simplification first structure and implementation 2019-06-07 22:59:59 +03:00
Mael Rouxel-Labbé 6d8d0b564c Clean SMS code (whitespace, indentation, variable names, clumsy for loops, etc) 2019-05-09 09:31:35 +02:00
Mael Rouxel-Labbé 4747f8ccaf Improve reader sanity
- Re-indent to more normal standards
- Remove usage of *_impl.h
- Clean useless and trailing whitespace
- some minor code readability changes
2019-05-03 14:56:21 +02: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 60f54882f9 Examples with Surface_mesh 2019-03-21 19:40:08 +01:00
Andreas Fabri e08d85f3e3 Set precision of the ostream when writing a point set or face graph. Add a \note in the manual 2019-03-04 15:50:18 +01: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
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
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 c6068691fa Merge pull request #2547 from lrineau/CMake-parse_CTest_XML_output-lrineau
CGAL testsuite implemented with CTest plus Python (part.1)
2017-11-13 11:13:54 +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
Sébastien Loriot 486a32c3ec fix call to named parameter function
+add missing line to compile edge_collapse_bounded_normal_change.cpp
2017-08-11 16:19:15 +02:00
Laurent Rineau 4c57786059 Merge pull request #2193 from afabri/SMS-geometrically_valid-GF
Surface Mesh Simplification: Introduce placement that bounds change of face normal
2017-07-25 18:17:18 +02:00
Guillaume Damiand 25d6abcc1a Add missing cmd file for edge_collapse_linear_cell_complex example. 2017-06-28 09:48:41 -04:00
Maxime Gimeno d019010144 Fix exemple 2017-06-28 11:28:05 +02:00
Andreas Fabri ea47806461 chmod -x 2017-06-26 11:12:02 +02:00
Andreas Fabri 3f3b3b4812 Document new placement 2017-06-26 11:08:34 +02:00
Andreas Fabri c55f66a170 WIP: document new placement 2017-06-26 11:08:34 +02:00
Andreas Fabri 00f3c27eae Add a placement class that avoids a change of >90deg of facet normals 2017-06-26 11:08:33 +02:00
Andreas Fabri 3f46969e88 resolve merge conflict 2017-06-26 11:08:33 +02: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
Laurent Rineau b037471750 Merge pull request #2075 from afabri/CGAL-dont_include_graph_traits_header-GF
Do not include graph_traits_{Polyhedron | Surface_mesh}.h
2017-05-19 10:28:38 +02:00
Guillaume Damiand 885ef4775a Update examples and tests following renaming of BGL LCC helpers. 2017-05-10 16:20:11 -04:00
Andreas Fabri 1dbedb7391 fix choices of std::cerr or std::cout 2017-04-27 09:04:12 +02:00
Andreas Fabri 1433a9f780 write to std::cout and not std:cerr 2017-04-25 14:46:23 +02:00
Andreas Fabri 931ea6a0d0 Add is_triangle_mesh test in SMS package 2017-04-25 11:22:12 +02:00
Andreas Fabri c81b707bfb Do not include graph_traits_{Polyhedron | Surface_mesh}.h 2017-04-24 19:17:43 +02:00
Guillaume Damiand 755272148a Cleanup BGL for LCC; add shortcut for item with id to simplify definition. 2017-03-31 17:11:36 -04:00
Guillaume Damiand bfbee1701e Now attributes and darts in CMap/GMap/LCC can have id or not depending on a template argument. 2017-03-27 17:16:40 -04:00
Guillaume Damiand 1d765e91c9 Update mesh simplification example for lcc. 2017-03-27 12:42:17 -04:00
Laurent Rineau eb5f52869f Use the new API of target_link_libraries
... otherwise CMake warns about mixing old and new usages of that CMake
command.
2017-03-27 18:04:54 +02:00
Guillaume Damiand 04d10f13e9 Update graph traits and properties for lcc. 2017-03-23 13:33:37 -04:00
Guillaume Damiand ff61b85322 update after rebase 2017-03-22 17:39:33 -04:00
Guillaume Damiand 42f60df224 use BGL function is_valid and not the one in lcc. Now surface mesh simplification seems to work with lcc. 2017-03-22 16:36:01 -04:00
Guillaume Damiand 245e7751da Move edge_collapse_linear_cell_complex.cpp file from BGL test to Surface_mesh_simplification examples. 2017-03-22 16:36:01 -04:00
Sébastien Loriot 6325b309f3 add a stop predicate to collapse all short edges 2016-10-21 14:43:33 +02:00
Andreas Fabri 39c27cb9db Call approximate_dihedral_angle() from the Kernel 2016-10-17 14:59:42 +02:00
Sébastien Loriot 6b338eeb1f improve the name of projects in cmake scripts of examples 2016-09-08 00:02:55 +02:00
Guillaume Damiand f487fa8c32 use BGL function is_valid and not the one in lcc. Now surface mesh simplification seems to work with lcc. 2016-03-29 15:04:41 +02:00
Guillaume Damiand 261572f19f Move edge_collapse_linear_cell_complex.cpp file from BGL test to Surface_mesh_simplification examples. 2016-03-29 09:32:28 +02:00
Philipp Möller 4211a4f01e Globally remove CMAKE_ALLOW_LOOSE_LOOP_CONSTRUCTS
This is a Cmake 2.4.3 variable that isn't even documented anymore.
2016-02-16 17:02:55 +01:00
Sébastien Loriot 6b15ec643c Merge branch 'CGAL-Qt5_support-GF' into cgal-public-dev/Polygon_mesh_processing-GF
Conflicts:
	Mesh_3/demo/Mesh_3/include/CGAL/gl_render.h
	Polyhedron/demo/Polyhedron/CMakeLists.txt
	Polyhedron/demo/Polyhedron/GlSplat/GlSplat.cpp
	Polyhedron/demo/Polyhedron/Scene_polygon_soup_item.cpp
	Polyhedron/demo/Polyhedron/Scene_polyhedron_selection_item.h
2015-07-16 16:52:53 +02:00
Laurent Rineau f9917c487e CMake 2.8.11 2015-07-13 12:36:43 +02:00
Sébastien Loriot d164633493 remove REQUIRED keyword 2015-07-07 11:23:46 +02:00
Andreas Fabri fef3ec4692 use BGL named parameters 2015-02-17 20:14:59 +01:00
Sébastien Loriot 73a125f611 cosmetic fixes + add todos for implementation details 2015-01-05 12:58:14 +01:00
Andreas Fabri 2e1cc52def write something to cerr to quit down a warning 2014-12-31 13:08:29 +01:00
Andreas Fabri 488fbbbad2 undo accidentally commenting of parameters 2014-12-30 16:47:27 +01:00
Andreas Fabri f242567a3f fix wording and indentation 2014-12-30 16:04:01 +01:00
Andreas Fabri 4937d02271 make the trace code work for Surface_mesh 2014-12-30 11:57:05 +01:00
Sébastien Loriot ad1954afc4 fix warnings and compilation issues 2014-12-10 17:34:51 +01:00
Andreas Fabri 3ba095eb97 Add data and .cmd files 2014-12-09 15:18:25 +01:00
Andreas Fabri f23b61af60 no need for assert is_valid in the example 2014-11-13 10:37:55 +01:00
Andreas Fabri d99996db31 unify the examples of Surface_mesh and Polyhedron 2014-11-13 10:32:10 +01:00
Andreas Fabri e02f9d4a8a the placement needs the bordermap; remove the default constructor of the bordermap 2014-11-13 10:03:00 +01:00
Andreas Fabri 14390b4172 Add mesh simplification example for Surface_mesh (one of them crashes) 2014-11-12 18:00:28 +01:00
Andreas Fabri 896add20d3 fix implementation of number_of.. 2014-11-12 17:03:54 +01:00
Andreas Fabri cc20bf42a8 bug fixes 2014-11-12 15:42:21 +01:00
Sébastien Loriot cdec3d6414 make the edge_descriptor of Polyhedron hashable 2014-07-23 08:20:16 +02:00
Sébastien Loriot cd88dc010b remove extra include directives 2014-07-04 17:24:06 +02:00
Sébastien Loriot 5f4813b64d properties_Polyhedron_3.h is now included by graph_traits_Polyhedron_3.h 2014-07-04 17:24:05 +02:00
Sébastien Loriot 1219f56126 remove an unused variable warning and add a default input 2014-07-03 11:04:46 +02:00
Andreas Fabri e1ddd7b3b7 Don't incude a header file with halfedgegraph in the name 2014-07-02 17:33:57 +02:00
Andreas Fabri 67f9dbf111 fix assertion 2014-06-12 09:09:24 +02:00
Andreas Fabri 4c8f452a78 Add {Find/Use}Openmesh.cmake and fix the CMakeLists.txt 2014-06-11 12:13:50 +02:00
Andreas Fabri d92d0cef84 Use CGAL points even for OpenMesh 2014-06-10 15:26:06 +02:00
Andreas Fabri 3d7d596e6b Use vertex_point property map so that it now also compiled with OpenMesh 2014-06-05 15:29:49 +02:00
Andreas Fabri ad642db3b5 forgot to initialize the constraint map. 2014-06-04 20:29:30 +02:00
Andreas Fabri 2425bba8a5 The OpenMesh example shows at the same time how to wrap the OpenMesh properties 2014-06-04 16:14:04 +02:00
Andreas Fabri 071a273ce5 Fix edge_collapse_constrain_sharp_edges.cpp
The problem was that the hash function for an edge_descriptor
did return another size_t depending on which of two halfedge
descriptors is stored.

Additional to edge_descriptor edge(halfedge_descriptor,Graph)
we might have a function canonical_edge_descriptor(..)
2014-06-04 14:59:30 +02:00
Andreas Fabri df7e8b0776 remover border map from the doc 2014-06-04 13:57:48 +02:00
Andreas Fabri 51990f53e3 Remove border property map and switch from halfedge to edge constraints.
The latter has a bug as edge_constrain_sharp_edges removed constrained edges
2014-06-04 13:03:31 +02:00
Andreas Fabri 02ba12b686 fix Constrained_placement 2014-06-03 17:41:55 +02:00
Andreas Fabri e1b6990d42 Add a vertex-point property map so that we can use the mesh simplification with OpenMesh 2014-06-03 16:37:40 +02:00
Andreas Fabri b866447f54 Add an example for simplifying an OpenMesh 2014-05-30 16:19:28 +02:00
Andreas Fabri c753fc97ff add Euler::collapse_edge taking into account constrained edges 2014-05-28 11:46:24 +02:00
Andreas Fabri c552dce7c6 first pass to switch to the BFL API 2014-05-27 16:02:42 +02:00
Sébastien Loriot ab06b99ce4 fix typo in variable name 2014-02-18 19:43:37 +01:00
Sébastien Loriot 5786041a31 uniformly use surface mesh in the documentation, the API and the examples
This induces a renaming of the Concept EdgeCollapsableMesh to
  EdgeCollapsableSurfaceMesh and the same for the constrained version.
2014-02-13 16:33:45 +01:00
Sébastien Loriot 9b79c9a842 make sure all edges removable are removed
After the collapse of an edge the 2-ring of edges incident
  to the remaining vertex are reinserted in PQ when no longer in PQ.
  An exemple is also updated to show the issue if we remove the fix.
2014-02-13 16:32:47 +01:00
Sébastien Loriot 407efd5685 rename example and update examples.txt 2014-02-13 16:26:41 +01:00
Sébastien Loriot 8384c6be3c fix warnings in the testsuite 2014-01-31 12:02:17 +01:00
Sébastien Loriot 9311883c97 rename Constrained_placement_wrapper to Constrained_placement 2014-01-30 14:39:30 +01:00
Sébastien Loriot 9958d23406 remove No_stop_predicate that can be emulated by Count_stop_predicate(0) 2014-01-30 10:19:38 +01:00
Sébastien Loriot 324f5b8d12 update doc after review of Andreas 2014-01-30 09:23:53 +01:00
Sébastien Loriot 235c1cc3a6 update example and add new one using the constrained edge map 2014-01-29 19:05:11 +01:00
Andreas Fabri 17f3472ecf remove unused variable 2013-02-27 14:02:33 +01:00
Sylvain Pion e0a2006631 Remove semi-colon after main() function definition. 2009-12-12 14:32:20 +00:00
Fernando Cacciola cdc9ab377d Visitor changes 2009-09-23 14:53:38 +00:00
Fernando Cacciola da4d30c59d Fixed case 'edge_collapse_visitor_base.h' to 'Edge_collapse_visitor_base.h' (3/3) 2009-06-30 14:48:32 +00:00