Commit Graph

555 Commits

Author SHA1 Message Date
Guillaume Damiand 10469f9c4e Update with master 2016-05-25 10:58:55 +02:00
Sébastien Loriot 41a03f35c7 fix link issues 2016-05-19 10:55:49 +02:00
Sébastien Loriot 4c29bf1b44 CMAKE_SOURCE_DIR -> CMAKE_CURRENT_SOURCE_DIR 2016-03-24 16:33:46 +01:00
Clement Jamin f2c68b25cd Update CMakeLists.txt of all demos for header-only mode 2016-03-09 17:23:20 +01:00
Guillaume Damiand 61f812a711 Replace os.iword(IO::mode) by get_mode(os) 2016-03-09 10:37:57 +01:00
Sébastien Loriot 881e4d3199 request Core only in examples, tests and demos when really needed 2016-03-07 22:36:57 +01:00
Sébastien Loriot 2d191d6651 commit CMakeLists.txt for all examples and tests 2016-03-07 17:39:36 +01:00
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