Commit Graph

548 Commits

Author SHA1 Message Date
Philipp Möller 0a04a3a48f Use CGAL_DOC_VERSION 2016-02-11 15:37:54 +01:00
Sébastien Loriot 21efce873e add eol at the end of the file 2016-02-01 09:57:08 +01:00
Sébastien Loriot bb70636a6f add a simple test that was failing without the previous patch 2016-01-21 22:12:51 +01:00
Sébastien Loriot 434fb62b88 replace the flooding algorithm by an iterative method to flag ccbs
the former algorithm was buggy
2016-01-21 21:34:08 +01:00
Sebastien Loriot 32a3972c33 Merge pull request #592 from afabri/CGAL-dont_submit_cleanup-GF
Towards getting rid of dont_submit files
2016-01-08 14:14:08 +01:00
Andreas Fabri a41165b6eb various 2016-01-05 18:04:14 +01:00
Philipp Möller 71b4e9c515 Use CGAL_FULL_VERSION in all Doxyfile.in 2015-12-17 16:33:28 +01:00
Philipp Möller 81a8f982dc Handle the easy INPUT cases
If INPUT is just PKG/doc/PKG, handle it automatically.
2015-12-10 17:00:26 +01:00
Sebastien Loriot 2e493f297b Merge pull request #389 from afabri/CGAL-Qt3-GF
Remove Qt3 based demos
2015-10-23 17:08:49 +02:00
Sebastien Loriot 91dd3e6a1e Merge pull request #369 from sloriot/AOS-removal_optimisation-efifogel_sloriot
Arr_2: removal optimisation
2015-10-22 08:49:46 +02:00
Sébastien Loriot 1fa107c8c4 deallocate is only called if the number of curves is not 0 2015-10-07 17:01:55 +02:00
Sébastien Loriot 44182c67e3 do not document rebind that is in the main concept 2015-10-07 11:03:05 +02:00
Sébastien Loriot cbbd23d7f3 remove extra typename 2015-10-06 15:17:07 +02:00
Sébastien Loriot b49d4544a8 update the doc after the earlier changes 2015-10-06 15:17:06 +02:00
Sébastien Loriot cddf8c3ab8 use pointer of simplices to be more consistant 2015-10-06 15:17:06 +02:00
Sébastien Loriot adbd23fa23 use an integer flag in the halfedge instead of obscure functions 2015-10-06 15:17:00 +02:00
Sébastien Loriot 4517d99c1c use an id instead of an internal handle 2015-10-06 10:55:21 +02:00
Sébastien Loriot 8e62e05519 remove remaining Qt3 demos 2015-10-05 14:29:50 +02:00
Efi Fogel e70926be79 1st revision 2015-10-03 17:02:07 +03:00
Efi Fogel a17d477e1f Introduced GeneralPolygonSetDcelHalfedge 2015-10-03 17:01:31 +03:00
Efi Fogel 03ba956319 Added concept GeneralPolygonSetDcelHalfedge 2015-10-03 16:59:25 +03:00
Efi Fogel 763e1d0c2d Fixed template parameters 2015-10-03 16:45:09 +03:00
Efi Fogel c01ef51722 Fixed concept names 2015-10-03 15:53:10 +03:00
Efi Fogel dbee310b07 Moved to proper place 2015-10-03 15:34:00 +03:00
Efi Fogel 436968c235 Used new definitions of Gps_halfedge_base and Gps_face_base 2015-10-03 15:32:53 +03:00
Efi Fogel 67c29a6374 Used new definitions of Gps_halfedge_base and Gps_face_base 2015-10-03 15:31:41 +03:00
Efi Fogel d0c46f5185 Updated 2015-10-03 15:12:52 +03:00
Efi Fogel f3d2268406 1s trevision: default Dcel and Dcel cell types for Gps 2015-10-03 14:30:27 +03:00
Efi Fogel 3662d9e0a2 Included CGAL/Union_find.h 2015-09-29 18:15:21 +03:00
Sébastien Loriot d81b0b4545 update face type to give access to the ccb containers 2015-09-27 15:48:14 +02:00
Sébastien Loriot e6c2511ef6 name get_base similarly to the static arrangement functions 2015-09-27 15:30:35 +02:00
Sébastien Loriot 9968192330 enrich Arr_accessor of some functions to allow dcel manipulations 2015-09-27 15:30:02 +02:00
Sébastien Loriot 752ddd3729 remove the alternative version that is now slower that the new edge removal 2015-09-27 13:39:27 +02:00
Sébastien Loriot a273738e8a force to keep the unbounded face, even if not the master of its set 2015-09-26 15:42:35 +02:00
Sébastien Loriot e3f9788555 add an optimization in case the boolean operation result is empty 2015-09-26 15:42:35 +02:00
Sébastien Loriot 9db6cc2465 if more inner ccb are created by edge removal, then we create new in the dcel 2015-09-26 13:34:52 +02:00
Sébastien Loriot c354e37479 fix the flooding algorithm: the flooding should also go through outer_ccbs 2015-09-26 09:45:50 +02:00
Sébastien Loriot 621a134f3a add an alternative way to remove edges by remove all elements at the same time
Here is the output of benchmark program polygon_set_2_join.cpp on my machine

current version (polygon_set_2_join):
   Timer for join is 0.316
   Timer for remove_redundant_edges is 0.08799999999999997
   Timer for _reset_faces is 0
Time for 402 grid crossing polygons 0.404

   Timer for join is 1.512
   Timer for remove_redundant_edges is 0.008000000000000007
   Timer for _reset_faces is 0
Time for 1000 random polygons 1.52s

   Timer for join is 3.108
   Timer for remove_redundant_edges is 0
   Timer for _reset_faces is 0
Time for 100000 nested polygons 3.108s

   Timer for join is 6.103999999999999
   Timer for remove_redundant_edges is 0.01200000000000045
   Timer for _reset_faces is 0.003999999999999559
Time for 40000 disjoint polygons 6.119999999999999s

current version (polygon_set_2_join 2):
   Timer for join is 0.636
   Timer for remove_redundant_edges is 0.1719999999999999
   Timer for _reset_faces is 0
Time for 566 grid crossing polygons 0.8079999999999999

   Timer for join is 3.124000000000001
   Timer for remove_redundant_edges is 0.01199999999999868
   Timer for _reset_faces is 0
Time for 2000 random polygons 3.135999999999999s

   Timer for join is 6.892000000000001
   Timer for remove_redundant_edges is 0
   Timer for _reset_faces is 0
Time for 200000 nested polygons 6.892000000000001s

   Timer for join is 32.16799999999999
   Timer for remove_redundant_edges is 0.04800000000000182
   Timer for _reset_faces is 0.008000000000002672
Time for 160000 disjoint polygons 32.224s
2015-09-18 16:21:20 +02:00
Sébastien Loriot 000def03c7 create the arrangement from scratch only if there are many edges to remove
this update the CGAL_JOIN_CREATE_AN_ARRANGEMENT version.
The benchmark program polygon_set_2_join.cpp is now better
using the CGAL_JOIN_CREATE_AN_ARRANGEMENT version.
I've put 2 as weight parameter but it should be fine tune
to better match the cost of removing an edge
2015-09-04 18:44:00 +02:00
Sébastien Loriot b916dbaa36 variant for joining polygons protected by CGAL_JOIN_CREATE_AN_ARRANGEMENT
this code is faster when the input contains many hole to relocate
but is bit slower on disjoint polygon for example.

This is a temporary commit to start the work with Efi

Here is the output of benchmark program polygon_set_2_join.cpp on my machine

current version (polygon_set_2_join):
  Time for 402 grid crossing polygons 10.184
  Time for 1000 random polygons 1.1s
  Time for 100000 nested polygons 2.544s
  Time for 40000 disjoint polygons 5.18s
CGAL_JOIN_CREATE_AN_ARRANGEMENT version (polygon_set_2_join):
  Time for 402 grid crossing polygons 1.216
  Time for 1000 random polygons 1.108s
  Time for 100000 nested polygons 2.572s
  Time for 40000 disjoint polygons 5.891999999999999s

current version(polygon_set_2_join 2):
Time for 566 grid crossing polygons 44.416
Time for 2000 random polygons 2.263999999999996s
Time for 200000 nested polygons 5.82s
Time for 160000 disjoint polygons 28.86000000000001s

CGAL_JOIN_CREATE_AN_ARRANGEMENT version (polygon_set_2_join 2):
Time for 566 grid crossing polygons 2.28
Time for 2000 random polygons 2.248000000000001s
Time for 200000 nested polygons 5.68s
Time for 160000 disjoint polygons 32.036s
2015-09-04 15:08:20 +02:00
Sébastien Loriot 78c10a3a95 add a benchmark for Polygon_set_2::join using 4 different kind of input 2015-09-04 14:00:36 +02:00
Laurent Rineau 91bca286d3 Fix warnings with CGAL_USE
All those variables were unused only if CGAL_NDEBUG was
defined. CGAL_USE can solve that.
2015-08-19 17:37:46 +02:00
Andreas Fabri f864b0a8e8 fix line width in demos using GraphicsView 2015-07-28 15:46:11 +02:00
Laurent Rineau 04db43556f Do not warn when Qt5 is not found. 2015-07-13 15:55:41 +02:00
Laurent Rineau 15c1469a54 CGAL requires CMake>=2.8.11. 2015-07-10 17:01:42 +02:00
Laurent Rineau 3ec0c69f8f We want 2.8.10 for all demos
Previous versions are not tested by the CGAL daily test suite.
2015-07-09 17:50:22 +02:00
Sébastien Loriot e199f546d4 remove QT4 specific code 2015-07-07 19:36:04 +02:00
Sébastien Loriot 722abba27b cosmetic changes to remove mentions of QT4 2015-07-07 18:00:43 +02:00
Laurent Rineau e5bcdc5f3e Update all CMakeLists.txt
- CMake 2.8.11 or later is now required
- GLEW is no longer used by demo/Polyhedron/
2015-07-06 18:14:34 +02:00
Maxime Gimeno a0e7a60973 Merge remote-tracking branch 'cgal/master' into CGAL-Qt5_support-GF
Conflicts:
	Alpha_shapes_3/demo/Alpha_shapes_3/CMakeLists.txt
	Alpha_shapes_3/demo/Alpha_shapes_3/MainWindow.cpp
	Alpha_shapes_3/demo/Alpha_shapes_3/Viewer.h
	GraphicsView/demo/Alpha_shapes_2/CMakeLists.txt
	GraphicsView/demo/Apollonius_graph_2/CMakeLists.txt
	GraphicsView/demo/Bounding_volumes/CMakeLists.txt
	GraphicsView/demo/Circular_kernel_2/CMakeLists.txt
	GraphicsView/demo/Generator/CMakeLists.txt
	GraphicsView/demo/GraphicsView/CMakeLists.txt
	GraphicsView/demo/L1_Voronoi_diagram_2/CMakeLists.txt
	GraphicsView/demo/Largest_empty_rect_2/CMakeLists.txt
	GraphicsView/demo/Periodic_2_triangulation_2/CMakeLists.txt
	GraphicsView/demo/Segment_Delaunay_graph_2/CMakeLists.txt
	GraphicsView/demo/Snap_rounding_2/CMakeLists.txt
	GraphicsView/demo/Spatial_searching_2/CMakeLists.txt
	GraphicsView/demo/Stream_lines_2/CMakeLists.txt
	GraphicsView/demo/Triangulation_2/CMakeLists.txt
	Linear_cell_complex/demo/Linear_cell_complex/CMakeLists.txt
	Mesh_3/demo/Mesh_3/CMakeLists.txt
	Mesh_3/demo/Mesh_3/include/CGAL_demo/Scene_item_with_display_list.h
	Mesh_3/demo/Mesh_3/src/CGAL_demo/Scene.cpp
	Periodic_3_triangulation_3/demo/Periodic_3_triangulation_3/CMakeLists.txt
	Periodic_3_triangulation_3/demo/Periodic_3_triangulation_3/Scene.cpp
	Polyhedron/demo/Polyhedron/CMakeLists.txt
	Polyhedron/demo/Polyhedron/Polyhedron_demo_join_and_split_polyhedra_plugin.cpp
	Polyhedron/demo/Polyhedron/Polyhedron_demo_mesh_3_plugin.cpp
	Polyhedron/demo/Polyhedron/Polyhedron_demo_trivial_plugin.cpp
	Polyhedron/demo/Polyhedron/Scene.cpp
	Polyhedron/demo/Polyhedron/Scene_combinatorial_map_item.h
	Polyhedron/demo/Polyhedron/Scene_implicit_function_item.h
	Polyhedron/demo/Polyhedron/Scene_plane_item.h
	Polyhedron/demo/Polyhedron/Scene_polygon_soup_item.cpp
	Polyhedron/demo/Polyhedron/Scene_polyhedron_item.cpp
	Polyhedron/demo/Polyhedron/Scene_polyhedron_item.h
	Polyhedron/demo/Polyhedron/Scene_polyhedron_transform_item.h
	Polyhedron/demo/Polyhedron/Scene_polylines_item.h
	Polyline_simplification_2/demo/Polyline_simplification_2/CMakeLists.txt
	Surface_mesher/demo/Surface_mesher/CMakeLists.txt
	Triangulation_3/demo/Triangulation_3/CMakeLists.txt
	Triangulation_3/demo/Triangulation_3/MainWindow.cpp
2015-06-30 09:17:26 +02:00