Commit Graph

652 Commits

Author SHA1 Message Date
Laurent Rineau 5bfd0c2340 Merge pull request #5155 from mhsaar/patch-9
Update test_sls_offset.cpp
2020-11-25 10:21:54 +01:00
Laurent Rineau 49e7ddccc9 Merge pull request #4243 from maxGimeno/Cmake_improvements-maxGimeno
General CMake improvements
2020-11-13 15:43:54 +01:00
Sebastien Loriot 2475a0c19c
Add missing .h 2020-11-12 11:06:25 +01:00
Maxime Gimeno e172dfbcb6 Merge remote-tracking branch 'cgal/master' into Cmake_improvements-maxGimeno 2020-11-12 09:04:01 +01:00
Michael Hemmer c47af04469
Update print.h
Adding includes for what is used to allow header to be compiled on its own.
2020-11-11 16:59:52 +01:00
Michael Hemmer 9fa318c6f0
Update test_sls_offset.cpp
Avoid unused variable in opt mode.
2020-11-11 16:56:37 +01:00
Mael Rouxel-Labbé 7385ebb806 Refresh priority queues before calling top() if simultaneous events are present 2020-11-09 18:22:33 +01:00
Mael Rouxel-Labbé 770b7f7a28 Take FT by reference in for(:) loop 2020-11-07 18:50:40 +01:00
Mael Rouxel-Labbé 36cccb0d5c Remove extra backticks 2020-11-07 18:44:46 +01:00
Mael Rouxel-Labbé 9c8aeb0242 Fix strict ordering's asymmetry condition not being satisfied in Split Event PQ 2020-11-06 17:27:43 +01:00
Mael Rouxel-Labbé d609a9607e Fix Split Queue Comparer in edge case of two invalid pseudo-splits 2020-11-06 17:26:59 +01:00
Jane Tournois 29b6963b98 add missing include and namespace 2020-11-06 12:28:30 +01:00
Sébastien Loriot 314db57a38 disable polygon assertion
allow strictly simple polygons and epick construction issues
2020-11-06 12:03:15 +01:00
Sébastien Loriot e1dd96414d use non-protected interval type and use protector
guarantee that the same rounding mode will be used when approximating
the exact value to interval
2020-11-06 10:43:08 +01:00
Sébastien Loriot 03a225d7b4 do not use extra precision 2020-11-06 10:11:03 +01:00
Sébastien Loriot 61cb7b5930 accomodate to the update of is_valid() function 2020-11-06 10:10:31 +01:00
Sébastien Loriot dd49cb6035 remove unused variable 2020-11-06 10:10:11 +01:00
Sébastien Loriot 3d6e976770 add extra checks to make sure we do not use intervals with the wrong rounding mode 2020-11-03 11:40:24 +01:00
Sébastien Loriot 1d2af01102 add missing protector 2020-11-03 11:09:15 +01:00
Sébastien Loriot d493dfce88 exclude speed harmonization at compile time 2020-11-03 11:09:15 +01:00
Mael Rouxel-Labbé ee7eff3d77 Add missing data file 2020-11-03 11:08:32 +01:00
Mael Rouxel-Labbé 923ac03410 Fix traits test not setting up segment IDs in a Traits with IDs 2020-11-02 18:48:24 +01:00
Mael Rouxel-Labbé 7fccb08191 Fix disabling harmonization for everything instead of just EPECK_w_SQRT 2020-11-02 18:47:41 +01:00
Sébastien Loriot 6221751bf1 fix warning 2020-11-02 15:27:39 +01:00
Mael Rouxel-Labbé 05e4c44216 Misc minor fixes 2020-10-16 14:38:11 +02:00
Mael c5326a4832
Commit fixes from @sloriot's review
Co-authored-by: Sebastien Loriot <sebastien.loriot@cgal.org>
2020-10-13 09:56:32 +02:00
Mael Rouxel-Labbé 3b57f6c4f5 Add missing header include 2020-10-12 11:01:10 +02:00
Mael Rouxel-Labbé 4488b7c64d Clean examples and tests 2020-10-09 18:40:11 +02:00
Mael Rouxel-Labbé 145f204517 Misc minor fixes 2020-10-09 18:36:53 +02:00
Mael Rouxel-Labbé 6601a5ec93 Extract CGAL::Trisegment_2 from _aux.h (needs to be documented for concepts) 2020-10-09 14:35:29 +02:00
Mael Rouxel-Labbé 6768393050 Improve SLS doc 2020-10-09 14:34:33 +02:00
Mael Rouxel-Labbé dc893884d8 Test the API of SLS 2020-10-08 22:59:08 +02:00
Mael Rouxel-Labbé 9051fc1d23 Overhaul & enhance SLS's free functions to provide & complete the advertised API 2020-10-08 22:54:11 +02:00
Mael Rouxel-Labbé e9c3531145 Fix missing namespace 2020-10-08 22:36:36 +02:00
Mael Rouxel-Labbé 7309da88c1 Misc minor fixes 2020-10-07 19:36:32 +02:00
Mael Rouxel-Labbé 14644c4ae6 Fix false positive assertions in offset construction:
If the constructions are not exact, you might get a degenerate polygon
even if predicate-wise it is not a degenerate polygon (Hook inside).
Let's ignore degenerate polygons in that case.
2020-10-07 19:33:36 +02:00
Mael Rouxel-Labbé 13f19c4ff1 Template Trisegment_2 with the inner Segment type
Needed because it is now documented
2020-10-07 19:28:54 +02:00
Mael Rouxel-Labbé 93869786bc Fix countless issues in SLS's doc 2020-10-07 19:27:10 +02:00
Mael Rouxel-Labbé 6b6c86dd26 Enhance SLS/Offset tests 2020-10-06 17:56:01 +02:00
Mael Rouxel-Labbé 6bba0da37f Various minor fixes 2020-10-06 17:54:24 +02:00
Mael Rouxel-Labbé 75137526b6 Misc tiny fixes 2020-10-05 18:35:08 +02:00
Mael Rouxel-Labbé b6333ed459 Harmonize speeds of collinear input segments + caching for non-filtered kernels 2020-10-05 18:29:34 +02:00
Mael Rouxel-Labbé 2930624d7f Prevent tangleness in multisplits using certified angle-based local queue sorts
The goal is to prevent multi splits that can cross each other without noticing.
such as a square with four square holes, and two diagonal splits
in the middle.

Local split queues are sorted to give  priority to the smallest angle among possible split
events, we forbid diagonal splits and thus a later split cannot have
a triedge with two different subparts of the polygon.

The exact criterion for sorting is the angle within a triedge,
between the bisector and the supporting line of e2 (possibly swapped
in case of pseudo-splits, see code).
2020-09-29 20:02:06 +02:00
Mael Rouxel-Labbé 4d85f845e7 Enhance debug output 2020-09-29 20:00:55 +02:00
Mael Rouxel-Labbé e3679d1441 Print vertex and halfedge IDs in the basic drawers 2020-09-25 09:08:15 +02:00
Mael Rouxel-Labbé a7af1ab048 Add some more debug dumps 2020-09-25 09:07:52 +02:00
Mael Rouxel-Labbé 3b584d1167 Add a convenience function to get the other collinear edge 2020-09-25 09:06:57 +02:00
Mael Rouxel-Labbé 9c80bf709c Check for non-degenerate edges in the skeleton's validity functions 2020-09-25 09:06:10 +02:00
Mael Rouxel-Labbé 6cc1e99dda Add another batch of tests 2020-09-16 20:41:12 +02:00
Mael Rouxel-Labbé 250b0628e8 Fix some bisectors sometimes being left marked as visited 2020-09-16 19:21:12 +02:00