Barend Gehrels
e13d5d6b2f
fix: avoid blocking rings for some non union conditions
...
Fixes #893
Fixes #1299
2024-11-25 15:35:42 +02:00
Barend Gehrels
9c4d7529b1
fix: add condition to handle_as_touch
...
Fixes #1288
2024-11-25 15:35:32 +02:00
Barend Gehrels
ec7f9c9887
[union] fix missing interior ring and double traversed exterior ring
...
fixes : #1109 and #1108
keeps fixed : #1081
2023-02-22 13:34:29 +01:00
Tinko Bartels
2ee0967344
Allow start for self-turns for difference overlay operations and enable corresponding test case.
2022-06-06 09:24:37 +02:00
Barend Gehrels
9c18680f31
[fix] for integer coordinates, segment intersection now rounds to nearest point
2022-02-07 10:33:15 +01:00
Barend Gehrels
48516c8d32
[coordinate_types] support for Boost.Rational and Boost.Multiprecision
...
including a unit test
2021-09-29 12:44:49 +02:00
Barend Gehrels
42edbd30f2
[test] add testcase for issue #888 polygon 53
2021-07-28 13:10:28 +02:00
Barend Gehrels
afa1f458a0
[test] add testcases (currently going well)
2021-07-21 11:13:45 +02:00
Barend Gehrels
40c6544a9b
[test] add cases for issues #869 and #861
2021-06-23 10:17:54 +02:00
Barend Gehrels
331e7f80c9
[TEST] add testcases for reported issues
2019-11-23 14:03:40 +01:00
Barend Gehrels
090e2c4e4a
[test] add testcase for issue #630
2019-11-13 11:48:44 +01:00
Barend Gehrels
e9b81ed877
[test] add testcases, minor changes in existing testcases
2019-01-30 16:22:02 +01:00
Barend Gehrels
38cf379448
[test] Add testcase for reported issue
2019-01-23 21:58:51 +01:00
Barend Gehrels
9f00c8501b
[union] skip discarding i/e turns for union because this causes some turns
...
to be missed. This fixes the new case #case_recursive_boxes_88
2017-12-31 17:17:21 +01:00
Barend Gehrels
0f4712bdfb
[test] add recent testcases to the other test scenarios
2017-12-20 16:54:51 +01:00
Barend Gehrels
f6c67daba6
[difference] fix cases where ii turns were not discarded, this
...
was a todo-item, it was not yet done for difference.
Including unit testcase using this.
2017-12-20 16:22:27 +01:00
Barend Gehrels
b28b312141
[difference] fix cases where potential inner rings have same area as
...
outer rings (located elsewhere), due to an earlier optimization
2017-12-20 14:07:51 +01:00
Barend Gehrels
11cff883b0
[intersection] Fix newly found case by removing some conditions from
...
handle_self_turns and setting ii-self-turns as non-startable instead of
discarding them.
2017-12-16 18:52:39 +01:00
Barend Gehrels
556896c7cc
[traverse] need to select on operations in selecting ranks, it is not
...
done later. Small regression found by recursive_polygons
2017-12-15 14:37:17 +01:00
Barend Gehrels
5d99d1608d
[overlay] fix new #case_recursive_boxes_82 by greatly simplifying the code.
...
patterns/aggregations were added to solve specific intersection problems
and validity in the past. In the meantime self-turns and isolation information
is much better, and those code is not needed anymore.
This also fixes the #mysql_regression_1_65_2017_08_31
This also makes union/intersection code for handling clusters much more similar
2017-12-15 13:20:41 +01:00
Barend Gehrels
080f0f22f4
[traverse] fix case where hole of one of the inputs formed a
...
disconnected interior (invalid). In the end it is fixed by only
deleting code. This code is not really old but added to fix some
cases, which are finally fixed in a more generic way.
It fixes a new case and also enhances #case_141_multi
2017-12-06 14:25:42 +01:00
Barend Gehrels
9577300b85
[difference] add testcase for ticket 9942, and a simplified version of it
2017-11-15 12:02:08 +01:00
Barend Gehrels
9024c5f095
[test] Add testcase for incorrectly generated interior ring
2017-10-23 14:57:11 +02:00
Barend Gehrels
8dee4ab1c8
[is_valid] check reported testcase, it is valid now. Also add it to
...
union to check the self-intersection-points (which are many)
2017-10-23 13:12:39 +02:00
Barend Gehrels
94ce58de02
[overlay] fix bug in new code, it should check for the operation because
...
it can happen that union travels to itself and that is irrelevant
2017-10-23 11:26:21 +02:00
Barend Gehrels
b20aeba724
[overlay] fix cases where non-traversed rings were incorrectly added.
...
This also changes the order of checks
2017-10-11 13:54:48 +02:00
Barend Gehrels
4d1b094e6a
[overlay] discard self-turns i/u for intersection traveling to themselves
2017-10-11 12:58:29 +02:00
Barend Gehrels
65a5c2ba53
[overlay] fix bug (it always returned false), and it should not consider
...
all turns in a cluster here. This fixes #case_recursive_boxes_76
Including unit test
2017-10-04 18:12:37 +02:00
Barend Gehrels
c5710b2ab9
[overlay] skip ranks of isolated regions
2017-10-04 14:00:40 +02:00
Barend Gehrels
210b662597
[overlay] correct (partly) the behaviour of isolation detection for
...
an isolated ring, connected to another isolated ring which is
connected multiple times to it
2017-09-27 13:05:25 +02:00
Barend Gehrels
3160ee6804
[overlay] fix additional case where isolation information was incorrect.
...
Including unit test. This also influences two other testcases but they
are not completely fixed by this fix
2017-09-20 17:00:52 +02:00
Barend Gehrels
f572abf5c1
[overlay] fix case which was not detected as isolated because it was
...
not clustered. Isolation is now independent on clustering.
Including unit test
2017-09-20 12:52:18 +02:00
Barend Gehrels
ce9928a1aa
[overlay] fix case which needed a specific selection of a matching ranked point
2017-09-13 13:07:10 +02:00
Barend Gehrels
6e4c61d202
[overlay] add check for self-cluster, which should be located within
...
the other geometry to avoid creating false rings
2017-09-06 14:40:44 +02:00
Barend Gehrels
3232fd0675
[test] enable testcase for all operations
2017-09-06 10:21:39 +02:00
Barend Gehrels
a449c39e6f
[overlay] fix missing ring due to discarded self-intersection turn
2017-08-30 12:56:48 +02:00
Barend Gehrels
c7c4c23f4f
[test] include testcase for checking left_count
2017-08-23 15:38:18 +02:00
Barend Gehrels
2088e708cd
[test] add testcase for union for last fix
2017-08-23 13:52:25 +02:00
Barend Gehrels
e69c05da2f
[overlay][test] add testcase for needing to avoid having blocked turns
...
in untraversed rings
2017-08-23 11:23:32 +02:00
Barend Gehrels
0938983c5e
[test] add testcase 66 for startable self-turns
2017-07-31 12:16:26 +02:00
Barend Gehrels
d25fe47a93
[overlay] fix case which was not taking correct rank
2017-07-26 14:26:44 +02:00
Barend Gehrels
174ef5e38c
[overlay] fix cases where two arcs leave a cluster in same direction,
...
one longer as the other. Remaining distance needs to be considered.
Including testcase case_recursive_boxes_64 which is fixed by this issue.
2017-07-19 18:59:55 +02:00
Barend Gehrels
497e055639
[overlay] don't check startable for determining has_traversed_turn,
...
and also check for turns both going in opposite direction (so uu for int)
This fixes case_recursive_boxes_63 (but not for difference yet)
2017-07-19 14:02:59 +02:00
Barend Gehrels
9acd4dcbba
[overlay] dont excluded colocated self-turns from check within other geometry
2017-07-12 09:56:23 +02:00
Barend Gehrels
1b71880b4f
[intersection] fix intersection pattern where it accidentally took last
...
one instead of penultimate
2017-07-08 12:45:24 +02:00
Barend Gehrels
ee3f5ea20d
[union] fix generating of false interiors by checking count_left
2017-06-25 13:56:01 +02:00
Barend Gehrels
2f2972959a
[test] Add test cases 57,58,59 for new approach for union-clusters
2017-06-25 12:09:32 +02:00
Barend Gehrels
b667a0a787
[test] Add testcases 55/56 for handling union clusters / not discarding self turns
2017-06-25 11:54:04 +02:00
Barend Gehrels
604be619d9
[overlay] fix aggregations, include blocked as from
2017-06-14 10:28:47 +02:00
Barend Gehrels
412fc452da
[overlay] Relax case 2, allow both continue and intersection
...
Fixes new #case_recursive_boxes_53
2017-06-13 20:29:25 +02:00