Barend Gehrels
afd2599bc9
[overlay] instead of traversing through cluster, the next turn index
...
is determined in enrich_intersection_points
2015-12-24 13:38:48 +01:00
Barend Gehrels
90d0fdb2a3
[test] fix debug info
2015-12-23 18:45:54 +01:00
Barend Gehrels
b0684c4e08
[traverse] move traversal itself to traversal structure, only doing
...
one traversal. Currently returns error code for backtracking.
2015-12-23 17:48:51 +01:00
Barend Gehrels
7b9f39346b
[overlay] debug make text for visited gray such that the rest
...
more stands out
2015-12-23 16:34:47 +01:00
Barend Gehrels
194f3bf67c
[overlay] add check on next turn index, if -1 take next one
...
to avoid dead ends
2015-12-20 19:05:30 +01:00
Barend Gehrels
64943c0911
[intersection] fix sort_by_side order for non-colinear points on same side
2015-12-20 13:09:39 +01:00
Barend Gehrels
f2319263a0
[union] fix known cases using clustering and sort_by_side during traversal
2015-12-19 18:10:34 +01:00
Barend Gehrels
e7e425f8de
[overlay] fix #recursive_boxes by enabling 0,4 as tight corner too.
...
This introduces a ccw method, called by tight functions.
Note that it does NOT work for the two other similar methods using ranks
2015-12-11 22:00:32 +01:00
Barend Gehrels
33ada1d6e8
[fix] Fix cases by correct ordering left/right using sorted side information
...
This fixes #recursive_boxes 6, 10, 11
Debug cases added to overlay.cpp (10, 11)
2015-12-10 20:14:10 +01:00
Barend Gehrels
a0fc7307ac
[fix] use intersection point for sorting, the "both" is sometimes wrong
...
This fixes #recursive_boxes_8
2015-12-09 18:40:28 +01:00
Barend Gehrels
d08f527271
[test] added several existing and two new tests mainly for difference
...
(work in progress)
2015-12-09 18:05:40 +01:00
Barend Gehrels
378bee678a
[fix] use sort_by_side now also for ordering of ii/non_ii turns
...
This fixes cases #101 , #102 and #107 for difference (and corresponding
inverse versions for intersection)
2015-12-08 18:35:38 +01:00
Barend Gehrels
72d8c21258
[test][difference] Enable two other formerly failing cases, now fixed:
...
#ggl_list_20120915_h2 a/b
Fixed by handling turns colocated with xx
and omitting ux for intersection/difference
2015-12-08 12:20:54 +01:00
Barend Gehrels
a43cb3c171
[test][difference] Enable two formerly failing cases, now fixed:
...
#recursive_boxes_1 and #recursive_boxes_2
and updated expectations of failing/non failing tests
2015-12-08 12:15:58 +01:00
Barend Gehrels
6de8d91942
[fix] fix newly added case and get rid of different code for
...
intersection/difference
2015-12-07 22:45:29 +01:00
Barend Gehrels
9302c9f02f
[extensions][test] add inverse algorithm to calculate the inverse (in extensions)
...
and use it in overlay unit test
2015-12-07 20:17:31 +01:00
Barend Gehrels
9b299e8ab4
[test] add intersections of inverse versions of multi #65 ,
...
showing the current approach of discarding xx/ux is wrong (as neither not done
for union/difference)
2015-12-07 20:12:38 +01:00
Barend Gehrels
11844b6b74
[test] extend visitor with traversal information
2015-12-06 19:21:50 +01:00
Barend Gehrels
4a491fd77d
[overlay][test] add test visitor for overlay operation including turn and turn-order
2015-12-06 18:45:21 +01:00
Barend Gehrels
4f90bcd4a5
[fix] handle ix/ix as ux/ux
...
This fixes case #77 ; case #72 is fixed by earlier changes
2015-12-06 18:21:35 +01:00
Barend Gehrels
0c9d365d4b
[fix] copy_segment_points did not use reverse, fixed. It is now similar to
...
copy_segments
This somehow influences one unit test case but that will be handled later.
2015-12-06 18:01:19 +01:00
Barend Gehrels
90485acf79
Merge branch 'develop' into feature/fix_tangencies
2015-12-06 17:45:12 +01:00
Adam Wulkiewicz
b1f31d12dd
[test][traverse] Add failing case.
2015-12-03 10:39:28 +01:00
Barend Gehrels
cf42d0d08d
[test] add simpler version of case_108_muli as single version, with
...
missing intersection point
2015-11-30 23:09:32 +01:00
Barend Gehrels
285e0ad61d
Merge branch 'develop' into feature/fix_tangencies
2015-11-28 09:10:28 +01:00
Barend Gehrels
b022ae5606
[test] add failing case for missing intersection point, case_108_multi
2015-11-28 07:22:33 +01:00
Menelaos Karavelas
4dedae6eb7
Merge pull request #335 from mkaravel/fix/is_valid_invalid_coordinates
...
Boost.Trac ticket 11711
2015-11-26 23:30:58 +02:00
Barend Gehrels
2e13b87bce
Merge pull request #336 from mapycz/fix-centroid-crash
...
[algorithms][centroid] Fix crash when multi-geometry contains empty geometry
2015-11-22 14:15:32 +01:00
Barend Gehrels
2945201838
[overlay] pass inverse flag for difference and use it
...
to reverse condition on interior/exterior touch
2015-11-22 14:01:05 +01:00
Jiri Drbalek
39ef9e6e04
[test][algorithms][centroid] More centroid tests on empty geometries
2015-11-21 19:51:03 +00:00
Barend Gehrels
9230c3f142
[traverse][test] updates test svg
2015-11-21 19:03:19 +01:00
Barend Gehrels
939bf656f9
[intersection/enrich] don' t skip after ii if it is about interior rings,
...
they should be traversed. This fixes case mysql_21965285_b_inv
and helps for cases #58 (no backtracking)
2015-11-21 19:01:51 +01:00
Barend Gehrels
6fb034581a
[traverse] fix situations for ii by checking if in a cc case (where either
...
one can be selected normally) one of the options leads to the starting turn.
This, together with previous commit (finish early), fixes the many
variants of case #58
2015-11-21 18:56:40 +01:00
Barend Gehrels
324bfac801
Merge branch 'develop' into feature/fix_tangencies
2015-11-21 11:54:39 +01:00
Adam Wulkiewicz
48f64f6fbe
[test][intersection][difference] Add/move failing test case.
...
Add a case of intersection corresponding to the failing difference case.
Move the case related with MultiPolygons to a different file.
2015-11-19 19:29:04 +01:00
Barend Gehrels
ba4a832bb7
Merge branch 'develop' into feature/fix_tangencies
2015-11-18 20:56:15 +01:00
Adam Wulkiewicz
ec86b24401
[test][difference] Add failing case.
2015-11-18 19:49:30 +01:00
Barend Gehrels
515d75ffe0
[test] update testcases, one more failing (but that fails for multi too)
...
and one fixed in the meantime
2015-11-18 17:41:37 +01:00
Barend Gehrels
a9903f8c7f
[overlay] fix ordering ii-turns and skip turns afterwards
2015-11-18 17:33:23 +01:00
Barend Gehrels
67ac81e5b2
[overlay] fix cases where intersection point is in the middle of the
...
first segment, and not at the endpoint
2015-11-18 14:53:00 +01:00
Barend Gehrels
026abb015d
[test] temporarily exclude case #81 recently added
2015-11-18 11:15:01 +01:00
Barend Gehrels
a48a935064
[overlay] self-tangencies, similarly as handling side left/right,
...
handle cases where one leg continues collinearly
2015-11-18 11:14:35 +01:00
Menelaos Karavelas
045522d9cb
Merge branch 'develop' of github.com:boostorg/geometry into fix/is_valid_invalid_coordinates
2015-11-18 09:58:37 +02:00
Barend Gehrels
e2764a795b
[overlay] sort on cc too. Also, sort/fix cases where ux is considered for intersection too.
...
They are discarded now, besides the sorting order is fixed (but that
alone does not help)
2015-11-15 11:55:13 +01:00
Barend Gehrels
c7d419785e
[overlay] in less_by_segment_ratio, sort turns where operation occurs
...
(and not in the other turn) first
2015-11-14 11:23:37 +01:00
Barend Gehrels
d038e58f16
[overlay] check for sides w.r.t. both, this fixes two cases for
...
intersection
2015-11-13 20:08:14 +01:00
Barend Gehrels
b891bbe741
[overlay] use same functionality also for intersection
2015-11-13 19:29:55 +01:00
Barend Gehrels
e97bbb4da1
[overlay] fix cases where IP is not at endpoint. This fixes the last
...
union/buffer cases with less_by_segment_ratio instead of handle_tangencies
2015-11-12 19:46:29 +01:00
Jiri Drbalek
cb9c581365
[algorithms][centroid] Fix crash when multi-geometry contains empty geometry
2015-11-11 21:24:26 +00:00
Barend Gehrels
242c619b35
[overlay] handle ux/ui and ui/ui in a more generic way, for union,
...
checking the relative sides of the outgoing segments (in the sorting)
2015-11-11 21:50:34 +01:00