Skip to content

Commit

Permalink
Add XML test for OverlayNG failures
Browse files Browse the repository at this point in the history
  • Loading branch information
dr-jts committed Oct 5, 2024
1 parent 3148627 commit 7ff3367
Showing 1 changed file with 113 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,113 @@
<run>
<desc>
OverlayNG failures.
See summary in https://github.com/locationtech/jts/issues/1000
Results provided are approximately correct.
</desc>

<case>
<desc>
TopologyException on union of valid geometries
https://github.com/libgeos/geos/issues/1170
An envelope check would NOT catch this.
Works with Snapping and Snap-rounding.
Works with CommonBitsRemoval.
</desc>
<a>
POLYGON ((39893.875 197462.125, 39900 197400, 39820.57741178792 197500, 39848.89740965763 197500, 39893.875 197462.125), (39891.625 197448.375, 39872.007923812 197457.49692859003, 39862.259636527146 197475.4252251145, 39895.67580000311 197413.96880000085, 39891.625 197448.375))
</a>
<b>
POLYGON ((39866.13 197473.47, 39868.73410547314 197475.00383519547, 39866.12902312726 197473.4659950994, 39863.954506024966 197472.3081521314, 39863.95342412875 197472.3101418713, 39866.13 197473.47))
</b>
<test>
<op name='union' arg1='A' arg2='B'>
POLYGON ((33651 6953080.403199323, 33651.4086079029 6953080.995473756, 33649.952600000426 6953078.885000002, 33649.952621165845 6953078.885322602, 33649.936599999666 6953078.862100001, 33650.19849999994 6953082.8554, 33652.10510000028 6953089.261399999, 33654.99129999988 6953094.7304, 33659.10290000029 6953099.521200001, 33664.003800000064 6953103.493299998, 33668.77730000019 6953106.171599999, 33668.7616367347 6953106.1488961745, 33668.762000000104 6953106.149099998, 33651.95034333591 6953081.780715658, 33651 6953080.403199323))
</op>
</test>
</case>

<case>
<desc>
Incorrect intersection and difference results
https://github.com/libgeos/geos/issues/942
An envelope check would NOT catch this.
Works with Snapping and Snap-rounding.
Works with CommonBitsRemoval.
</desc>
<a>
POLYGON ((458500 7432230, 458400 7432200, 458400 7432240, 458500 7432300, 458500 7432230), (458454.7221242461 7432226.377759292, 458454.13999999897 7432223.769999999, 458455.62000000087 7432230.3999999985, 458454.7221242461 7432226.377759292))
</a>
<b>
POLYGON ((458435 7432225, 458435 7432245, 458455 7432245, 458455 7432225, 458435 7432225))
</b>
<test>
<op name='union' arg1='A' arg2='B'>
POLYGON ((33651 6953080.403199323, 33651.4086079029 6953080.995473756, 33649.952600000426 6953078.885000002, 33649.952621165845 6953078.885322602, 33649.936599999666 6953078.862100001, 33650.19849999994 6953082.8554, 33652.10510000028 6953089.261399999, 33654.99129999988 6953094.7304, 33659.10290000029 6953099.521200001, 33664.003800000064 6953103.493299998, 33668.77730000019 6953106.171599999, 33668.7616367347 6953106.1488961745, 33668.762000000104 6953106.149099998, 33651.95034333591 6953081.780715658, 33651 6953080.403199323))
</op>
</test>
</case>

<case>
<desc>
Incorrect result in union and intersection
https://github.com/libgeos/geos/issues/965
An envelope check would catch this.
Does not work with Snapping.
Works with Snap-rounding.
</desc>
<a>
POLYGON ((33652.10162677833 6953082, 33651 6953080.403199323, 33651.95034120033 6953081.780712563, 33652.10162677833 6953082))
</a>
<b>
POLYGON ((33668.7616367347 6953106.1488961745, 33668.762000000104 6953106.149099998, 33649.952600000426 6953078.885000002, 33649.952621165845 6953078.885322602, 33649.936599999666 6953078.862100001, 33650.19849999994 6953082.8554, 33652.10510000028 6953089.261399999, 33654.99129999988 6953094.7304, 33659.10290000029 6953099.521200001, 33664.003800000064 6953103.493299998, 33668.77730000019 6953106.171599999, 33668.7616367347 6953106.1488961745))
</b>
<test>
<op name='union' arg1='A' arg2='B'>
POLYGON ((33651 6953080.403199323, 33651.4086079029 6953080.995473756, 33649.952600000426 6953078.885000002, 33649.952621165845 6953078.885322602, 33649.936599999666 6953078.862100001, 33650.19849999994 6953082.8554, 33652.10510000028 6953089.261399999, 33654.99129999988 6953094.7304, 33659.10290000029 6953099.521200001, 33664.003800000064 6953103.493299998, 33668.77730000019 6953106.171599999, 33668.7616367347 6953106.1488961745, 33668.762000000104 6953106.149099998, 33651.95034333591 6953081.780715658, 33651 6953080.403199323))
</op>
</test>
</case>

<case>
<desc>
Union produces incorrect result.
https://github.com/shapely/shapely/issues/1871
An envelope check would catch this.
Does not work with CommonBitsRemoval
Works with Snapping and Snap-rounding.
</desc>
<a>
POLYGON ((446 -207, 315 -75.99999999999999, 557 -76, 446 -207))
</a>
<b>
POLYGON ((184 -207, 315 -76, 446 -207, 315 -338, 184 -207))
</b>
<test>
<op name='union' arg1='A' arg2='B'>
POLYGON ((557 -76, 446 -207, 315 -338, 184 -207, 315 -75.99999999999999, 557 -76))
</op>
</test>
</case>

<case>
<desc>
Union and intersection produce incorrect result.
https://github.com/JuliaGeo/LibGEOS.jl/issues/166
An envelope check would catch this.
Does not work with CommonBitsRemoval
Works with Snapping and Snap-rounding.
</desc>
<a>
POLYGON ((0 65905.78568220709, 12540.144108116785 66644.10887217366, 13639.90993528687 64693.73062699103, 13323.160413385054 61494.1194419435, 2375.0223287135154 53673.4087205281, 0 52759.58192468053, 0 65905.78568220709))
</a>
<b>
POLYGON ((23303.577415035626 55323.60484150198, 19851.52938808218 49637.68131132904, 2375.022328713516 53673.4087205281, 13323.160413385054 61494.1194419435, 23303.577415035626 55323.60484150198))
</b>
<test>
<op name='union' arg1='A' arg2='B'>
POLYGON ((12540.144108116785 66644.10887217366, 13639.90993528687 64693.73062699103, 13323.160413385054 61494.1194419435, 23303.577415035626 55323.60484150198, 19851.52938808218 49637.68131132904, 2375.0223287135154 53673.4087205281, 0 52759.58192468053, 0 65905.78568220709, 12540.144108116785 66644.10887217366))
</op>
</test>
</case>

</run>

0 comments on commit 7ff3367

Please sign in to comment.