jsts/testxml/failure/TestOverlayFailure.xml
2020-05-24 18:33:43 +02:00

281 lines
45 KiB
XML

<run>
<case>
<desc>
http://postgis.refractions.net/pipermail/postgis-users/2006-November/013743.html
</desc>
<a>
POLYGON((5417148.108 5658342.603,5417139.016
5658338.009,5417126.791 5658331.833,5417116.292 5658327.518,5417112.871
5658325.598,5417110.25 5658324.127,5417106.071 5658321.781,5417104.226
5658320.745,5417093.266 5658315.008,5417091.265 5658313.961,5417085.335
5658310.857,5417060.44 5658326.26,5417064.68 5658327.52,5417088.83
5658336.46,5417088.52 5658337.31,5417102.92 5658342.65,5417103.26
5658341.83,5417111.76 5658345.51,5417121.662 5658349.583,5417121.878
5658349.672,5417125.217 5658351.119,5417131.761 5658353.388,5417137.589
5658356.276,5417142.166 5658359.67,5417146.599 5658364.988,5417151.395
5658370.641,5417150.853 5658371.392,5417152.59741167
5658373.52811061,5417154.92 5658376.37,5417155.18955743
5658376.89699992,5417154.919 5658376.371,5417155.814
5658378.111,5417157.051 5658380.297,5417158.004 5658382.304,5417159.014
5658384.47,5417159.775 5658386.619,5417160.629 5658389.278,5417161.5
5658399.49,5417160.773 5658404.194,5417159.41 5658413.02,5417158.853
5658414.442,5417153.671 5658427.659,5417153.67051161
5658427.6586943,5417153.67 5658427.66,5417152.73 5658427.07,5417149.993
5658436.599,5417148.81 5658439.42,5417149.233 5658439.67,5417148.36
5658440.81,5417146.41 5658446.6,5417144.321 5658453.127,5417144.32092232
5658453.13043826,5417154.59 5658458.01,5417154.99551047
5658455.8409905,5417155.446 5658453.413,5417157.23981414
5658448.75748237,5417157.22660892 5658448.57861162,5417157.22660849
5658448.57860592,5417157.22660865 5658448.57860812,5417157.128
5658447.265,5417157.64950997 5658446.06368023,5417157.64950961
5658446.06368108,5417158.314 5658444.533,5417172.322
5658417.957,5417174.99 5658418.57,5417175.23 5658417.74,5417176.696
5658412.61,5417177.875 5658408.488,5417178.76 5658405.39,5417178.1
5658393.55,5417178.08 5658393.36,5417177.11 5658384.95,5417178.151
5658384.915,5417178.14836289 5658384.91508866,5417178.12
5658384.83,5417177.91415246 5658383.81114117,5417176.927
5658378.944,5417176.603 5658377.341,5417176.73975922
5658378.01762048,5417176.6 5658377.34,5417176.51210558
5658376.89535766,5417176.428 5658376.483,5417175.235
5658370.602,5417171.577 5658362.886,5417170.762 5658360.107,5417168.522
5658357.989,5417166.042 5658355.047,5417164.137 5658352.264,5417162.642
5658351.593,5417160.702 5658350.843,5417160.05417889
5658350.5823586,5417158.82 5658350.09,5417158.82103105
5658350.0862195,5417159.50373263 5658350.36089455,5417158.818
5658350.085,5417159.055 5658349.214,5417155.754
5658347.679,5417156.78066321 5658348.15640928,5417155.7525011
5658347.6811561,5417155.161 5658348.532,5417149.028
5658343.237,5417152.26877967 5658346.03496647,5417149.03
5658343.24,5417148.78133339 5658343.06701453,5417148.108
5658342.603))
</a>
<b>
POLYGON((5417148.36 5658440.81,5417149.233
5658439.67,5417148.81 5658439.42,5417149.993 5658436.599,5417152.73
5658427.07,5417153.67 5658427.66,5417153.67051161
5658427.6586943,5417153.671 5658427.659,5417158.853
5658414.442,5417159.41 5658413.02,5417160.773 5658404.194,5417161.5
5658399.49,5417160.63 5658389.28,5417159.78 5658386.62,5417159.366239
5658385.46469333,5417159.014 5658384.47,5417158.004
5658382.304,5417157.051 5658380.297,5417155.814
5658378.111,5417155.18955747 5658376.897,5417154.92
5658376.37,5417152.59740379 5658373.52810095,5417150.853
5658371.392,5417151.13020611 5658371.00790076,5417151.4
5658370.64,5417147.11100598 5658365.59149663,5417146.599
5658364.988,5417145.96673439 5658364.22950947,5417142.17
5658359.67,5417139.98754716 5658358.05460369,5417137.589
5658356.276,5417131.761 5658353.388,5417125.33011568
5658351.15822058,5417125.22 5658351.12,5417121.88 5658349.67,5417121.66
5658349.58,5417111.76 5658345.51,5417103.26 5658341.83,5417102.92
5658342.65,5417088.52 5658337.31,5417088.83 5658336.46,5417064.68
5658327.52,5417060.44 5658326.26,5417085.34 5658310.86,5417085.90750076
5658311.15666987,5417091.265 5658313.961,5417093.266
5658315.008,5417093.61266829 5658315.18946314,5417104.23
5658320.75,5417105.81727304 5658321.63852784,5417106.071
5658321.781,5417106.60319005 5658322.07975996,5417110.25
5658324.13,5417112.87 5658325.6,5417116.29 5658327.52,5417121.76604303
5658329.76778528,5417126.791 5658331.833,5417139.016
5658338.009,5417148.108 5658342.603,5417148.78133333
5658343.06701449,5417149.03 5658343.24,5417152.26878253
5658346.03496893,5417155.161 5658348.532,5417155.7525011
5658347.6811561,5417156.78066337 5658348.15640935,5417159.055
5658349.214,5417158.818 5658350.085,5417158.82103105
5658350.0862195,5417158.82 5658350.09,5417160.0541792
5658350.58235872,5417160.702 5658350.843,5417162.642
5658351.593,5417164.137 5658352.264,5417165.25343486
5658353.89499119,5417166.04 5658355.05,5417168.52 5658357.99,5417170.76
5658360.11,5417171.26171711 5658361.81094338,5417171.577
5658362.886,5417175.235 5658370.602,5417176.428
5658376.483,5417176.51210558 5658376.89535766,5417176.6
5658377.34,5417176.73975924 5658378.01762057,5417176.927
5658378.944,5417177.91415134 5658383.81113564,5417178.12
5658384.83,5417178.14836289 5658384.91508866,5417177.11
5658384.95,5417178.08 5658393.36,5417178.1 5658393.55,5417178.76
5658405.39,5417177.875 5658408.488,5417176.696 5658412.61,5417175.23
5658417.74,5417174.99 5658418.57,5417172.322
5658417.957,5417172.32037372 5658417.96008538,5417172.32
5658417.96,5417158.31 5658444.53,5417157.64951003
5658446.06368011,5417157.128 5658447.265,5417157.22660867
5658448.5786084,5417157.23981414 5658448.75748238,5417155.446
5658453.413,5417154.99551072 5658455.84098918,5417154.59
5658458.01,5417144.32092232 5658453.13043826,5417144.321
5658453.127,5417146.41 5658446.6,5417148.36 5658440.81))
</b>
<test>
<op name="difference" arg1="A" arg2="B">
POLYGON EMPTY
</op>
</test>
</case>
<case>
<desc>
http://lists.osgeo.org/pipermail/geos-devel/2010-September/004949.html
Fails because B is invalid
</desc>
<a>
0106000000010000000103000000010000009F0100009031772D4C6639418E06F0763C7352417524970F63663941411361A736735241075F980C76663941DF718AFA31735241F4FDD4D88466394135EF38B12E735241083D9B358E663941B7F3FDAC2C7352417E8CB9EB9B66394183E2C7C029735241DE9387E59B663941D9F0F4BE297352410BB5A6E99B6639415DFE43BE2973524103098AEF9B663941D9CEF7BF29735241AA825129B166394187A7572A257352416BBC7423B1663941797AA52825735241E4141D29B1663941C6FEB22725735241B5C8762EB1663941C74B372925735241E561A1C6C0663941850D4FBB2173524115AE47C1C066394183C0CAB9217352416ADE71EAC0663941D578E9B22173524116FBCBBECB6639411895D4FD1E7352411D5A64EBCB6639419DA223ED1E73524165AA60F4CB663941D9F0F4EE1E7352415305A312D766394196B20C811B7352410BB5A609D76639415A643B7F1B73524174469416D76639416766667A1B735241EB043421D7663941FA7E6A7C1B7352416A4DF32EDC663941615452D319735241AC1C5A24DC663941CD3B4ED11973524193A98261DC6639411FF46CBA19735241E0BE0E6CDC663941D3DEE0BB197352418E75711BE7663941736891E51473524189D2DE10E7663941C07D1DE414735241C364AA40E7663941C8293AD2147352418738D645E7663941A5BDC1CB14735241A4703D4AE766394131992ACC14735241B003E77CEC66394173F90F5511735241C520B0C2F96639418E06F07E0873524188855AB3026739414B5986E802735241B8AF03D70F673941645DDCB6FA725241B4EA73D50F673941A167B3B6FA72524193CB7FD80F673941AE47E1B2FA725241075F98DC0F673941EF3845B3FA72524142CF66C5146739412A3A9273F772524115AE47C114673941E9482E73F77252415D8FC2C514673941287E8C6DF7725241E78C28CD14673941C4B12E6EF77252412731086C196739418126C212F47252419C33A26419673941E5F21F12F4725241053411661967394117485010F472524143AD696E19673941933A0111F47252415917B7511C673941DF718AE6F17252411B9E5E491C673941F5DBD7E5F17252415305A3621C67394197900FC6F172524145696F701C673941E2E995C6F172524167D5E79A1E673941A245B633EE72524176711B8D1E673941C58F3133EE725241068195A31E6739416A4DF316EE725241068195A31E6739417958A8A9EB7252412141F1331F67394143AD69C2E972524132772DC120673941FCA9F19EE6725241A245B6A322673941E3361AF0E4725241CC10C7CA29673941E3C79853E1725241A0ABADA8346739414260E544DD725241AED85FC6396739410E4FAFECDB7252412731081C3E6739415DFE435ADB725241713D0AD741673941910F7A32DB72524151FC18A34E67394196B20CDDDC725241C442AD095B67394193A98209DF725241BB490C125B673941022B8706DF7252413108AC9C5B67394132E6AE1DDF725241E2E995C25C6739413B014D2CDF725241DA3D79E85D67394132E6AE1DDF7252412F6EA3E15E6739414E6210F4DE725241C07D1D885F673941A779C7B5DE725241E2E995C25F6739413B014D6CDE725241C07D1D885F6739413D2CD422DE7252412F6EA3E15E67394128A089E4DD725241098A1F735E67394173D712D2DD72524100917E7B5E673941E25817CFDD7252412A3A92EB51673941AFB6629BDB725241343333E35167394140355E9EDB7252417CF2B090516739412B189590DB725241FB5C6D9551673941F2D24D8EDB725241F4FDD4B843673941C9E53FC0D9725241759318B443673941022B87C2D9725241B615FB7B4367394179E926B9D9725241577DAE8642673941211FF4ACD9725241B22E6E7342673941EEEBC0A5D97252411B2FDD5442673941797AA5A0D97252415839B458426739419565889FD9725241B6847C203E673941DB1B7CB5D8725241910F7A0639673941E02D9038D772524112A5BD01396739414FAF9439D7725241F0A7C6EB386739413F575B31D77252415B423EE838673941A69BC430D77252413B70CEE838673941C0EC9E30D77252414EF38E0327673941151DC9C9D2725241CFF753B308673941A54E4023CB7252416EC5FEB2086739413D9B5523CB72524176E09CB108673941CF88D222CB725241F31FD2AF0867394126E48322CB725241E3361AB008673941FC3A7022CB7252412E90A008E66639414D840D8BC272524185EB5108E6663941772D218BC2725241280F0B05E66639417446948AC27252413FC6DC05E6663941AED85F8AC27252418FE4F22FCD6639413FC6DC79BC72524130BB272FCD6639410534117ABC72524126530523CD66394104780B78BC7252416C787A25CD663941D26F5F77BC725241F931E6AEB666394117485048B7725241244A7B538E6639415327A041AC7252412B8716A98066394192ED7C57A87252413355303A75663941F6B9DA56A2725241BEC11736756639411AE25857A2725241B7627F09756639410C93A946A272524105C58F1175663941A70A4645A2725241B459F52963663941AE69DEC59B72524166F7E4216366394113F241C79B72524141F1631C636639417C6132C59B7252412E211F2463663941A935CDC39B7252418A4160C54D6639419CC4205494725241E4839EBD4D66394170F0855594725241AD8BDBB84D663941ED2FBB53947252417FFB3AC04D663941D2915C5294725241C7DCB5A4436639410F2DB2ED90725241F46C569D436639412ACB10EF9072524189D2DE8043663941FA7E6AE490725241857CD08343663941C976BEE390725241AD8BDB18376639410612147F8D725241B1E1E91537663941371AC07F8D7252411C0DE00D37663941ED0DBE7C8D72524195F6060F376639416C9A777C8D725241190456BE2566394188855A0389725241E6D0220B11663941295C8F7A8372524131992AD8066639412C6519028072524141F163BCFF653941B8AF03077C725241C976BE7FF465394134A2B49B74725241D95F76AFEA653941EF3845D36D7252419C559FABEA6539412DB29DD36D7252415B423EA8EA653941411361CF6D7252411B9E5EA9EA653941EF3845CF6D725241DBF97E0AE66539414872F9EB6A725241D42B6509E665394107F016EC6A725241780B2408E665394170CE88EA6A72524198DD93E7E565394187A757DE6A72524133C4B1EEE5653941D1B359DD6A725241653BDFEFD86539415EBA490465725241CA54C1E8D865394115AE4705657252416FA301CCD865394126E483FA64725241D9CEF7D3D8653941C05B20F964725241508D970EC6653941CBA145425E7252412DD49A06C66539419FCDAA435E725241D200DEF2C5653941F016483C5E7252416619E2F8C56539412ACB103B5E725241A8C64B27BC653941F241CF325B72524115AE4721BC653941B98D06345B72524141136103BC65394162A1D6285B7252417E1D38B7BB653941C07D1D1C5B725241143FC6BCBB6539419A081B1A5B72524177BE9F3AB4653941FB5C6DCD59725241E19C1135B465394120D26FCF597252412D431CDBB36539418CDB68C059725241F775E0CCB3653941C6FEB2BF59725241AAF1D2CDB365394174B515BF597252417E8CB9EBA3653941D9F0F43A58725241CC10C7EAA365394198DD933B58725241CFF753B3A365394118B7D138587252414FAF94B5A36539415305A3365872524186C954518C653941B84082B2567252410612144F8C6539417CF2B0B456725241676666268C6539417A36ABB25672524195D409288C653941F01648B0567252418F5374C47465394105C58FAD5572524145696FF04E65394192CB7F0454725241A5DFBEEE4E6539411DEBE2065472524139D6C5ED4E6539411973D70654725241684469EF4E6539418F537404547252419BE61DB70F653941F8C2644651725241E02D90D0DF64394190C2F5E44E72524176711B6DAC6439411973D7264C725241577DAEB6766439412A3A9243497252419C33A2B47664394122FDF645497252413A234AAB76643941B7627F4549725241A01A2FAD7664394174B51543497252419B779CC22C643941772D21A745725241BADA8ADDE4633941C8293AE64172524171AC8BDBE46339412E90A0E841725241835149CDE463394168B3EAE741725241DC6800CFE463394170F085E5417252418B8EE452B9633941AF25E4F33F7252410DE02DF0A46339410AF9A05F3E725241E27A14EEA4633941182653613E7252412E90A058A4633941F853E3593E7252417D3F35FE9D633941F853E3593E725241F1F44A999D633941D578E95E3E725241615452979D63394192CB7F5C3E725241BC051254926339411AC05BF03E7252410534115692633941EFC9C3F23E725241713D0AF79163394100917EF73E7252416991ED7C91633941AF25E40B3F72524107F0167891633941D509680A3F725241797AA5FC7E633941234A7BCB42725241228E75017F633941FE65F7CC427252416C787AD57E63394185EB51D4427252414EF38EC37E633941B8AF03DB42725241752497BF7E633941C13923DA42725241DFE00B736D6339414260E5C0477252410022FD06436339415AF5B9CA52725241F7065F0843633941BB270FCB52725241E7AE2504436339410AD7A3CC5272524183C0CA0143633941759318CC52725241539621EE1E633941A54E40775C725241E04F8D17F562394164CC5DFF66725241E19C11A5C66239419FCDAA3F727252415EDC46E3C0623941A69BC48473725241A70A4615C162394113F241877372524143AD690EC2623941F775E0B073725241D4BCE3B4C26239419E5E29EF73725241F6285CEFC26239410AD7A33874725241DFE00BC3C26239413E7958707472524195658853C96239410BB5A6FD72725241B98D0650C9623941E71DA7FC72725241925CFE63C9623941AA8251F972725241E19C1165C96239412CF697F972725241789CA2E3F7623941D2915CB667725241E2E995E2F7623941501E16B667725241D42B65E9F7623941B37BF2B467725241F9C264EAF7623941BD7493B467725241304CA6EAF76239419C33A2B46772524187A757CA21633941C8293A2A5D72524109AC1CCA216339417AC7292A5D725241098A1FD321633941A857CA265D725241B4EA73D521633941AB3E57275D7252416FA301EC45633941F9A0677B53725241DAACFA5C706339413B014D70487252412A3A925B70633941D9CEF76F4872524134A2B46770633941B22E6E6B487252410D71AC6B70633941A9A44E6C487252414EF38EC3786339415474240F46725241A857CA2283633941C2A8A40A4A725241AFB662FF906339419F3C2CE047725241C07D1D489E633941C8293AAE49725241C7DCB524AC633941C58F31D34972524110E9B72FB0633941B30C71D0487252411748500CBE6339419EEFA7F247725241280F0B55CB6339412B18953C48725241C0EC9E9CF06339417C832FAC4972524164CC5DFB0A6439410EBE30E944725241B9FC87F42B64394166F7E4A146725241BBB88DF62B64394100917E9F46725241221FF4FC2B643941857CD09F46725241BC270FFB2B643941C8293AA246725241E7AE25E4756439419A081B3E4A725241A1F83196AB6439419DA223214D7252415B423E98AB6439411383C01E4D7252414850FC98AB643941A857CA1E4D7252418E06F096AB643941A01A2F214D72524160764FFEDE643941DCD781DF4F7252411BC05B00DF643941E4141DDD4F725241A8C64B07DF643941228E75DD4F7252418A416005DF643941653BDFDF4F725241083D9BF50E653941151DC9415272524127C286F70E653941D26F5F3F527252414EF38E030F6539414872F93F5272524166F7E4010F65394163EE5A4252725241ACADD83F4E65394155C1A8005572524104780B1474653941A401BCA956725241A401BC1574653941AB3E57A756725241713D0A1774653941F9A067A7567252418A4160157465394183C0CAA956725241AA13D0648B653941E63FA4AB57725241BA6B0999A265394155C1A82C59725241577DAE26B2653941A323B9A85A725241E10B9339B96539412FDD24E25B72524176E09CD1C26539412E90A0D85E725241BADA8A7DD5653941AED85F86657252413B92CB5FE2653941E2E995526B72524120D26FEFE66539411AC05B2C6E7252419A081BBEF06539410D71ACF374725241D812F2C1F0653941CFF753F374725241B22E6EC3F065394159A835F574725241EE0DBEC0F0653941903177F574725241925CFE03FC6539412FFF21657C7252419EEFA706FC6539416519E2647C725241A779C709FC6539415F29CB687C72524176E09C11FC6539417E8CB96B7C725241CC7F480FFC65394124B9FC6B7C7252416E348047036639416EC5FE7680725241D122DB4903663941C898BB76807252416A6FF0850366394135EF388D8072524143AD697E036639412CD49A8E80725241F797DDE30D6639417FFB3A18847252411D5A64EB0D6639418716D91684725241143FC60C0E663941AB3E572384725241DBF97E0A0E663941653BDF238472524142CF66D522663941DC6800B389725241C286A7D722663941236C78B289725241075F98DC2266394185EB51B4897252418E7571DB22663941075F98B4897252413355302A34663941EB04342D8E7252418816D97E406639415E4BC88B9172524185EB51884A6639418A1F63EA94725241E27A141E546639417FFB3A40987252415F984C9524663941D49AE675A0725241D812F2112A66394108AC1CC6A9725241221FF41C2E663941653BDFD3AE7252410D022BF730663941CF88D24AB1725241371AC01B3B663941B1E1E9B9B27252414850FC483E663941ACADD803B372524108CE19C182663941D2915C76AA72524168B3EA538B66394174B515EBAC725241EA2631588B6639410C2428EAAC72524140A4DF5E8B66394155C1A8ECAC725241FD87F45B8B66394186C954EDAC725241267502CAB366394152B81EF9B7725241221FF4CCB366394121B072F8B77252417DD0B3D9B3663941C74B37FDB77252412063EEEAB366394175931800B872524121B072E8B366394138F8C200B87252415327A069CA663941EF5A4232BD72524190C2F538E3663941C4D32B41C3725241D7A370DD05673941857CD0D7CB7252418A1F632E24673941022B877ED3725241EC51B82E246739416ADE717ED3725241E3361A3024673941D9F0F47ED3725241BF0E9C332467394171AC8B7FD3725241DFE00B3324673941575BB17FD3725241E6D0220B36673941A8C64BE3D772524110E9B72F3B673941A8C64B63D97252418F5374343B673941A7E84862D9725241B1506B4A3B6739414A9D806AD97252414850FC683B673941BF0E9C6FD972524152B81E653B673941A323B970D9725241386744593D6739412B8716DDD97252419A2A18A53C673941075F98E4D9725241FD1873A73C673941780B24E8D9725241D7A370FD3B673941075F98F0D9725241AE69DEC13B6739414D158CFAD9725241F775E0BC3B6739410DE02DF8D97252417AC7298A366739411461C3A7DA72524130BB278F36673941539621AADA72524105C58FD135673941F263CCC9DA7252418126C2C635673941637FD9CDDA7252419F3C2CC43567394111363CCDDA725241295C8F22306739412E211F48DC72524152B81E25306739417F6ABC48DC72524176711BDD2F6739417B14AE63DC725241D044D8D02F6739415327A061DC725241E2E995B2246739411AC05B88E07252418816D9BE2467394143AD698AE072524195D4098824673941431CEB9EE0725241B6847C80246739416DE7FB9DE0725241166A4D231D6739413C4ED155E4725241F6B9DA2A1D6739411383C056E4725241B7D1000E1D673941BADA8A61E4725241E0BE0EFC1C67394107F01678E4725241000000F01C67394137AB3E77E4725241DBF97EEA1A673941CD3B4E45E6725241744694F61A6739419E802646E6725241B6847CE01A673941B1E1E961E67252413E0AD7D31A67394170F08561E672524112363C3D19673941B615FB97E9725241D122DB4919673941F7065F98E9725241E2E9954219673941014D84A1E9725241287E8C3919673941D1B359A1E972524132E6AEA518673941F7065F94EB725241A5DFBEAE1867394128A08994EB725241068195A318673941BBB88DA2EB725241068195A318673941B6847C08EE7252410D71AC8B16673941CA54C17CF172524143AD69BE1367394133C4B196F372524148E17A240F673941DF718AEEF6725241462575420A6739415C8FC229FA7252414C378921FD663941EB73B55902735241098A1F23FD663941AE69DE59027352416EC5FE22FD6639419418045A0273524186C95421FD663941F5DBD75902735241024D842DF46639415A8638F207735241A2D6342FF46639418A1F63F207735241B615FB2BF4663941FC3A70F607735241516B9A27F4663941DE0209F607735241C364AA00E8663941A01A2F0D1073524130BB27DFE6663941C13923CE10735241ECC039E3E666394126E483CE107352417BA52CE3E66639412CD49ACE107352414D840DDFE6663941EBE236CE1073524110E9B7BFE1663941341136381473524177BE9F4ADE6639414260E5C81573524174469446D766394122FDF6F518735241D812F261D2663941287E8C911A735241A1F83176D0663941A3923A291B735241AC1C5A64C7663941F8E461F51D73524112A5BDD1BD663941DE02095A20735241C7BAB8BDBC663941713D0A9F207352414D158C3AAD663941F48E530824735241EE7C3F0598663941DAACFA9C28735241827346548A663941759318882B73524103098A4F8A66394176711B892B735241A401BC558A6639412063EE8A2B735241FFB27B528A663941B5A6798B2B73524196438B4C8A6639418048BF892B73524171CE880272663941B537F8DE307352418126C20672663941555227E03073524132E6AEE57166394132E6AEE530735241D4BCE3E4716639416C787AE53073524197218ED55E6639413D2CD49635735241AED85FD65E66394195F6069735735241B07268D15E66394188F4DB9735735241705F07CE5E663941C05B209935735241A01A2FCD5E663941FBEDEB9835735241D066D5D747663941ADFA5C6D3B735241E71DA7D8476639417368916D3B73524152499DC047663941295C8F763B7352414D158CBA4766394135EF38753B735241FED478E944663941E27A14423C7352413FC6DCD54966394115AE47213D7352419031772D4C6639418E06F0763C735241
</a>
<b>
010600000005000000010300000001000000A900000086EB51F8B265394115AE47A99472524186EB51F8BD65394115AE47C99372524186EB51F8DF65394115AE47798072524186EB5178DF65394115AE47497E72524186EB5178DF65394115AE47697D72524186EB5138DE65394115AE47A97C72524186EB51B8DB65394115AE47497B72524186EB5178D965394115AE47797972524186EB51B8D865394115AE47197772524186EB51B8D865394115AE47A972725241ACCFD506D9653941D44D62106D7252418B1F63CED66539411383C0D66B7252412D651902D16539410D71AC3769725241F56C56CDC565394168B3EAFB6472524197218ED5C56539412A5C8FFA647252415CB1BFCCC5653941F03845F76472524156C1A8C4C5653941DDB584F86472524156C1A864B0653941DDB584505C7252415CB1BF6CB0653941F038454F5C725241448B6C67B065394115AE474D5C7252412EB29D5FB06539418E976E4E5C7252412EB29DFFA06539418E976ECE55725241448B6C07A165394115AE47CD55725241B30C71FCA0653941C4D32BC9557252415D8FC2F5A065394174D712CA557252415D8FC2B59C65394174D712D253725241B30C71BC9C653941C4D32BD153725241CC7F489F9C6539415DFE43C6537252419E11A59D9C65394158CA32C4537252417C832F9C9C653941D0D556C4537252417C832F7C9A653941D0D5566C527252419E11A57D9A65394158CA326C5272524142F1637C9A6539412DD49A6A52725241D222DB799A6539418816D96A52725241D222DB79986539418816D91A5172524142F1637C986539412DD49A1A51725241F41FD26F9865394161E5D00A51725241577DAE6698653941D36F5F0B51725241B8627F0990653941F2D24D66487252417D61329586653941CD5D4B5040725241D0D556CC7D653941DB8AFD1D3B725241526B9A4778653941BD0512B0387252410B68220C65653941C520B09634725241F116481065653941FFD478953472524134C4B10E65653941EB04349534725241E9D9AC0A65653941AED85F9634725241B5C8768E49653941E9482EAF2E725241F56C564D3665394197218EB52A7252419F5E294B2B6539417AC72902297252410EE02D502B653941790B240029725241C464AA102B653941DE9387F52872524125287E0C2B6539418126C2F62872524125287E2C256539418126C2B627725241C464AA3025653941DE9387B5277252418126C21625653941EB0434B127725241B4EA731525653941297E8CB127725241B4EA73550E653941297E8C39227252418126C2560E653941EB04343922725241A8E8484E0E653941CDEEC9372272524112C7BA480E653941EB73B535227252418CFD65470E653941DF020936227252418CFD658701653941DF0209E61E72524112C7BA8801653941EB73B5E51E725241E20B93790165394196D409E01E725241E19C11750165394101DE02E11E72524197218E75F964394179E926911C72524153B81EA5EE6439415327A075197252415C423EE8E664394129ED0D9A177252416C9A777CD464394102BC05FE13725241E8FBA981D4643941F7065FFC137252415F29CB70D464394197218EF913725241C1EC9E6CD46439413AB4C8FA137252413FE8D9ACB9643941ABCFD54A0E7252413C70CE48B8643941850D4FFF0D72524112C7BA48B8643941A9C64BFF0D7252410712142FB5643941C898BB1A0F72524118B7D1809B643941DDD781170B7252413580B7809B643941B91E85170B72524186EB51B89664394115AE47A90B72524186EB51B88B64394115AE47690D72524186EB51F88564394115AE47390F72524186EB51F88364394115AE47291172524186EB51B88164394115AE47491572524186EB51B87F64394115AE47E91772524186EB51B87C64394115AE47491D72524186EB51787E64394115AE47692172524186EB51B88064394115AE47092472524186EB51388164394115AE47F92572524186EB51F88564394115AE47092772524186EB51B88A64394115AE47492772524186EB51789064394115AE47892772524186EB51789864394115AE47E92872524186EB51389D64394115AE47892B72524186EB51B89E64394115AE47192E72524186EB51F89D64394115AE47D93072524186EB51789D64394115AE47793372524186EB51F89D64394115AE47E93572524186EB51F89E64394115AE47D93772524186EB5178A164394115AE47093A72524186EB51F8A864394115AE47C93C72524186EB5138B264394115AE47593E72524186EB5178BA64394115AE47493F72524186EB51F8CB64394115AE47E94072524186EB5138DB64394115AE47594272524186EB5178EC64394115AE47694372524186EB51780065394115AE47694472524186EB51781465394115AE47B94572524186EB51382065394115AE470946725241AA825129266539415CB1BFF045725241297E8C2926653941EE0DBEF0457252417F1D38473965394108CE190543725241D3DEE07B50653941A4923A993F725241275305935D6539412B1895683E725241ABF1D2ED626539412B1895683E725241837346F45F653941782D21733F7252410712146F56653941B39DEFEF407252413D4ED1B12B65394199DD939346725241CB32C4B12B6539412EB29D934672524186EB51782965394115AE47E94772524186EB51F82865394115AE47894872524186EB51782865394115AE47E94972524186EB51B82965394115AE47894B72524186EB51B82C65394115AE47E94C72524186EB51F82E65394115AE47A94F72524186EB51382C65394115AE47E95272524186EB51F82865394115AE47995572524186EB51F82565394115AE47C95772524186EB51F81F65394115AE47895A72524186EB51781865394115AE47F95C72524186EB51781165394115AE47F95E7252414282E2D70F6539418738D6B15F72524186EB51F81A65394115AE47895F72524186EB51B83565394115AE47F95F72524186EB51385465394115AE47896072524186EB51F86465394115AE47E96072524186EB51B87865394115AE47E96172524186EB51F87865394115AE47C96B72524186EB51387865394115AE47697072524186EB51387A65394115AE47397572524186EB51F87965394115AE47597672524186EB51F87465394115AE47E97672524186EB51F86965394115AE47E97672524186EB51F85465394115AE47897672524186EB51F83365394115AE47697572524186EB51F81B65394115AE47F97472524186EB51F80C65394115AE47597472524186EB51B80465394115AE47A97372524186EB5178FE64394115AE47E97272524186EB51F8F864394115AE47297472524186EB51B8F564394115AE47C97472524186EB5178F164394115AE47497672524186EB5178F064394115AE47C97772524186EB5138F164394115AE47B97872524186EB51F8FD64394115AE47B97A72524186EB51F80765394115AE47397C72524186EB51F81565394115AE47597E72524186EB51382465394115AE47998072524186EB51F83365394115AE47698472524186EB51B84265394115AE47398872524186EB51B85165394115AE47A98B72524186EB51F85E65394115AE47D98E72524186EB51B86565394115AE47C99172524186EB51F86C65394115AE47799172524186EB51787465394115AE47899172524186EB51B88565394115AE47099272524186EB51389365394115AE47A99272524186EB51B89D65394115AE47F99272524186EB51B8A965394115AE47A99372524186EB51F8B265394115AE47A9947252410103000000010000000B000000859ECD1A0D663941806ABCE06872524129ED0D5E186639417EAEB6826872524186EB51781666394115AE47096872524186EB51F80866394115AE47096572524186EB51F8FB65394115AE47496272524186EB5178F465394115AE47F96072524186EB5178E965394115AE47096172524147257582CA6539413E79582462725241F931E6EED96539418CDB68486872524142F1630CE4653941E86A2BD667725241859ECD1A0D663941806ABCE06872524101030000000100000054000000AEFA5C7D6666394162C3D3E389725241472575126D66394194A982D189725241B47BF2309A66394191A0F8318972524168B3EAF3AC663941B615FB938872524147257582B4663941C5B12E2A8872524121D26FCFBD6639416BBC741787725241ACCFD526C76639419A9999AD85725241986E12A3D76639413355301E8372524178BE9FAAD766394112363C218372524114F241BFD7663941151DC91D837252415939B4B8D76639416B4DF31A837252415939B478F36639416B4DF31A7F72524114F2417FF3663941151DC91D7F725241B09465A8F3663941441CEB167F725241806ABCA4F3663941E19C11157F72524168B3EA6305673941C4D32BE57C7252413F575B112467394147037817797252412EB29D2F3E6739413511366C757252413DBD52864F673941A267B3B27272524184C0CAE1576739411C9E5E257172524150AF943546673941516B9AAB6E725241C74B3759386739415E6DC5226B7252417B36AB8E2367394167D5E7BA657252411DEBE286326739418AB0E1B56172524105C58F9102673941A779C7A151725241E6D022ABEC663941221FF4CC49725241BE529661F16639413B92CBE346725241C6FEB20BD7663941F9C2649A3D725241A345B673CE66394142F163C03F725241EE9E3C6CC16639414794F65A437252414803787BBF663941E0BE0EAC44725241016F8134BF663941184850C0467252412EB29D5FBE663941C5B12E024A7252416ADE712AB766394120F46C6250725241790B2458B1663941024D84D95372524104780B44A1663941C15B202D577252419FCDAAFF9B66394199DD939757725241837346A4A7663941F4FDD49C467252418CDB6820AF663941EDC03923417252411C9E5E39D16639418A41604935725241CF88D26EBC663941283108982D72524131BB273F8F6639412B18953C40725241668863FD846639411F166AC543725241986E12937666394179E926FD457252418E28ED5D6F663941184850C046725241B025E45367663941CC7F4807477252411995D4495F66394115AE472D49725241AB60547263663941365EBABD4B7252411A73D7327066394140355ECA4E72524184C0CA1179663941ACADD813517252417F1D3877756639410CB5A6BD52725241100BB5B668663941A5DFBE0E547252410E4FAF14586639416BBC74675472524104098ADF5066394141A4DFF252725241E5F21FE24B663941B1E1E98550725241DF718A5E376639417CF2B0044C725241C07D1D78216639414FD191D448725241ABF1D20D1366394112A5BD25437252413B014D9406663941D144D8043E725241859ECDEAE8653941244A7B37437252415F4BC8C7BE653941CDEEC92F4B72524186EB5138A165394115AE47E95072524186EB5138A365394115AE47895172524186EB51F8A265394115AE47C95272524186EB5138A765394115AE47695472524186EB5138AC65394115AE47F95672524186EB5138B565394115AE47895A72524186EB51B8C265394115AE47C95F72524186EB51F8C965394115AE47296272524186EB5178E965394115AE47096172524186EB5178F465394115AE47F96072524186EB51F8FB65394115AE47496272524186EB51F80866394115AE47096572524186EB51781666394115AE47096872524186EB51B81E66394115AE47196A72524186EB51B82B66394115AE47496D72524186EB51F83666394115AE47897172524186EB51783666394115AE47997272524186EB51782766394115AE47E97572524186EB51F81D66394115AE47D97772524186EB51F82066394115AE47697972524186EB51783D66394115AE474980725241713D0A9766663941B91E85DB89725241AEFA5C7D6666394162C3D3E3897252410103000000010000004C00000086EB5138A463394115AE47396C72524186EB5138A163394115AE47D95C72524186EB51789563394115AE47C95972524186EB51F88063394115AE47195672524186EB51F87263394115AE47595472524186EB51B86263394115AE47695372524186EB51385463394115AE47795272524186EB51B84863394115AE47595172524186EB51383E63394115AE47E94F72524186EB51383063394115AE47494D72524186EB51B81B63394115AE47094772524186EB51B81963394115AE47F94472524186EB51F81963394115AE47894072524186EB51B82163394115AE47793E72524186EB51B82463394115AE47493D72524186EB51F82763394115AE47D93672524186EB51381463394115AE47893372524186EB51780163394115AE47C92F72524186EB51B8EC62394115AE47692B72524186EB5178E462394115AE473929725241BA8D06A0E262394171CE881A2872524186EB51B8E062394115AE47F92772524186EB51B8DC62394115AE47492772524186EB51F8D962394115AE47B92572524186EB5178D862394115AE47A92372524186EB51F8D162394115AE47191F72524186EB51F8C962394115AE47591872524186EB51B8C562394115AE47E91672524186EB51B8B662394115AE47591272524186EB51B8A362394115AE47C90B72524186EB51F89E62394115AE47E90A72524186EB51B89862394115AE47190A72524186EB51F89262394115AE47790972524186EB51788D62394115AE47190972524186EB51388662394115AE47590872524186EB51F88262394115AE47F90672524186EB51788262394115AE47190672524186EB51F88062394115AE47690472524186EB51B87F62394115AE47690372524186EB51387C62394115AE47B90272524186EB51F87662394115AE47590372524186EB51386D62394115AE47490572524186EB51785D62394115AE47E90772524186EB51F85262394115AE47490A72524186EB51B84862394115AE47E90C72524111E9B7FF466239418E28ED610D72524186EB51B84E62394115AE47991372524186EB51385962394115AE47E91A72524186EB51B86162394115AE47791D72524186EB51386C62394115AE47892172524186EB51387362394115AE47892472524186EB51387862394115AE47A92872524186EB51387A62394115AE47792B72524186EB51788162394115AE47A93372524186EB51788762394115AE47493A72524186EB51789362394115AE47094372524186EB51789E62394115AE47594872524186EB51F8AC62394115AE47194F72524186EB5138BA62394115AE47895472524186EB51F8C462394115AE47E95772524186EB51F8CB62394115AE47995972524186EB5178D862394115AE47D95B72524186EB51F8ED62394115AE47695F72524186EB51B8FF62394115AE47596172524186EB51380963394115AE47696272524186EB51381563394115AE47996272524186EB51782663394115AE47596272524186EB51F83863394115AE47D96172524186EB51784463394115AE47996172524186EB51785A63394115AE47996272524186EB51F86A63394115AE47896372524186EB51F88263394115AE47596572524186EB51F88F63394115AE47896672524186EB51389A63394115AE47C96872524186EB51B89D63394115AE47E96972524186EB5138A463394115AE47396C7252410103000000010000003000000086EB5178E463394115AE47718072524186EB5178FD63394115AE47117572524186EB51780764394115AE47D16F72524186EB51780664394115AE47916D72524186EB51781164394115AE47916872524186EB51781264394115AE47F16572524186EB51780F64394115AE47716472524186EB51780A64394115AE47116372524186EB51780464394115AE47516272524186EB5178FD63394115AE47716172524186EB5178F663394115AE47316072524186EB5178F163394115AE47315E72524186EB5178EF63394115AE47715C72524186EB5178EC63394115AE47F15A72524186EB5178E163394115AE47715A72524186EB5178D863394115AE47B15972524186EB51F8CF63394115AE47915772524186EB51F8C763394115AE47515372524186EB5178C463394115AE47B15172524186EB5178BB63394115AE47D14F72524186EB51F8AA63394115AE47314E72524186EB51F88E63394115AE47114C72524186EB51F86C63394115AE47514A72524186EB51F85A63394115AE47D14972524186EB51784263394115AE47314872524186EB51F83563394115AE47914672524186EB51F82C63394115AE47D14472524186EB51F82063394115AE47114272524186EB51F81963394115AE47894072524186EB51B81963394115AE47F94472524186EB51B81B63394115AE47094772524186EB51383063394115AE47494D72524186EB51383E63394115AE47E94F72524186EB51B84863394115AE47595172524186EB51385463394115AE47795272524186EB51B86263394115AE47695372524186EB51F87263394115AE47595472524186EB51F88063394115AE47195672524186EB51789563394115AE47C95972524186EB5138A163394115AE47D95C72524186EB5138A463394115AE47396C72524186EB51F8A763394115AE47916E72524186EB5178AE63394115AE47517172524186EB51F8B563394115AE47917572524186EB51F8C663394115AE47B17A72524186EB5178D863394115AE47917F72524186EB51F8DE63394115AE47718072524186EB5178E463394115AE477180725241
</b>
<test>
<op name="difference" arg1="A" arg2="B">
POLYGON EMPTY
</op>
</test>
</case>
<case>
<desc>A.union(B) fails, but B.union(A) works!
Lowering the precision slightly works.
Possibly due to ordering issues in RobustDeterminant?
Or due to robustness issue with ordering points along line segments?
http://sourceforge.net/mailarchive/forum.php?thread_name=4DD83610.70607%40telus.net&amp;forum_name=jts-topo-suite-user
</desc>
<a>
POLYGON ((-73.16540347748551 -94.50735621934908, -74 -95, -76.23310243744803 -100.58620689655172, -76.23310243744801 -100.5862068965517, -76.23310243744801 -100.58620689655172, 100 -30, 30 90, -73.16540347748551 -94.50735621934908))</a>
<b>
POLYGON ((-76.23310243744803 -100.58620689655172, 70 -7, -100 -90, -76.23310243744803 -100.58620689655172))</b>
<test>
<op name="union" arg1="A" arg2="B">
POLYGON ((-100 -90, -76.23310243744803 -100.58620689655172, 100 -30, 30 90, -59.62241169305726 -70.28623629719854, -100 -90))
</op>
</test>
</case>
<case>
<desc>A.intersection(B) fails, since it computes a result equal to A
This is a case which exhibits a (luckily VERY rare) issue
with the RobustDeterminant code in JTS.
This code is sensitive to the order of the input coordinates, in some cases.
Due to the way JTS computes topology,
this can cause an inconsistency in the evaluation of how two polygons intersect.
As a demonstration of this,
notice that if the triangle in the example is reversed,
the intersection computation produces a more reasonable result:
polyA = POLYGON ((0 0, 40 0, 40 10.883854, 15.552673 10.883854, 15.552673 20.540905, 0 20.540905, 0 0))
tri = POLYGON ((-20.43142161511487 -186.3790522565901, -20.43142161511487 13.620947743409914, 279.56857838488514 -186.3790522565901, -20.43142161511487 -186.3790522565901))
polyA.intersection(tri) = POINT (0 0)
I have noticed this once before,
but wasn't sure of the best way to address this issue.
It may be best to always force a standard ordering of the inputs to
the RobustDeterminant calculation, in order to at least be consistent.
Hopefully if this proves out I can address this in a future version of JTS.
http://sourceforge.net/mailarchive/forum.php?thread_name=BANLkTi%3D0UrBPmBSg%3Duy4M0ng9Pdptm%2BaYQ%40mail.gmail.com&amp;forum_name=jts-topo-suite-user
</desc>
<a>
POLYGON ((0 0, 40 0, 40 10.883854, 15.552673 10.883854, 15.552673 20.540905, 0 20.540905, 0 0))
</a>
<b>
POLYGON ((-20.43142161511487 -186.3790522565901, 279.56857838488514 -186.3790522565901, -20.43142161511487 13.620947743409914, -20.43142161511487 -186.3790522565901))
</b>
<test>
<op name="intersection" arg1="A" arg2="B">
GEOMETRYCOLLECTION EMPTY
</op>
</test>
</case>
<case>
<desc>
JTS list - March 19 2012.
Union of two partially-overlapping polygons returns an incorrect result equal to one of inputs (with node added).
This is definitely a robustness error, and a particularly insidious one. At least part of the problem is that while mathematically the point
POINT (42.975 -92.25)
lies exactly on the line segment
LINESTRING (126 -184.5, -9 -34.5)
the algorithms that JTS uses report that the point lies off the line (and that's with 2 completely different procedures). This makes me think that possibly the Java text-to-floating point conversion is not converting the numbers precisely (although there may well be something else causing this - I hesitate to blame the core Java library, which must be pretty well tested by now!).
Correct expected result is computed by hand.
</desc>
<a>
POLYGON ((42.975 -92.25, 100 0, -200 0, 126 -184.5, 42.975 -92.25))</a>
<b>
POLYGON ((126 -184.5, -9 -34.5, -200 -300, 126 -184.5))</b>
<test>
<op name="intersection" arg1="A" arg2="B">
POLYGON ((-46.626 -86.802, -200 0, 100 0, 42.975 -92.25, 126 -184.5, -200 -300, -46.626 -86.802))</op>
</test>
</case>
<case>
<desc>
Personal email - Nov 6 2012
Two issues:
- Intersection point roundoff causes intersected segment to move across another vertex
- Polygon B has a very small hole very near the shell, which prevents snapping from working.
</desc>
<a>
POLYGON ((3331887.403422648 3661593.7342660464, 3327296.9868580834 3657803.3373506065, 3327296.986858083 3657803.337350607, 3317921.869437724 3650062.1191730825, 3311387.4153281646 3645901.186354534, 3305053.3363020215 3641286.7914633057, 3299086.6115955096 3636933.941773851, 3297499.392954649 3635662.6758946413, 3295324.0128066926 3633920.328315541, 3295045.714079711 3633595.6292730314, 3293565.164852161 3632452.7563738194, 3292474.2338423817 3631621.6423231405, 3286874.8634554786 3627440.9454131294, 3282210.5767912427 3624351.770955207, 3265913.4033391126 3616450.6177417412, 3256462.3785707573 3612975.182767922, 3253389.9606248685 3611937.9276924506, 3248369.451590094 3610382.207194177, 3244751.568139308 3609552.5691044494, 3241790.469684211 3609215.5444242037, 3235968.4603157192 3609254.431421657, 3232094.5420361166 3609578.4944577864, 3228164.964011107 3610861.866942827, 3226083.289533279 3611548.979333302, 3216443.0216305773 3616035.589352473, 3208761.976765846 3622262.4713822454, 3207415.010927249 3625701.567667901, 3205258.9681641697 3626845.17957722, 3206289.5011845753 3666248.8020421667, 3219295.258535436 3702080.408060125, 3241801.4708900433 3730426.8331502397, 3263508.182716755 3759390.05243975, 3294866.0710920906 3781063.4589725398, 3333321.9692174913 3792235.6356382854, 3375265.845799257 3790616.8764862325, 3416369.0761096925 3775180.4012540504, 3452029.973596725 3746378.882900946, 3380458.352319166 3697463.11371601, 3379704.1868279953 3697687.925809469, 3379918.1410615044 3697093.905240371, 3380615.424125954 3695157.9749436243, 3381641.1459678006 3692310.17024148, 3383155.0910425847 3690587.700537338, 3383210.7507879776 3690144.073401217, 3382865.6603665194 3689922.2658687886, 3379225.5130175836 3690705.1339442288, 3373514.8231398915 3676308.3710248633, 3373501.8268529885 3675716.066330261, 3350005.1709094755 3668750.204309147, 3350004.1466843495 3668751.623547086, 3347380.2646923093 3672818.5056534447, 3346675.6939096297 3673910.5541211097, 3344861.186209702 3672425.1852227207, 3344409.203278647 3672041.4701543376, 3341106.9941277714 3669238.0293093817, 3340959.336490231 3669112.6739992737, 3339751.6215822888 3668087.373315006, 3339125.0525215594 3667570.002962731, 3339125.052521558 3667570.0029627304, 3338812.978401363 3667312.3172459896, 3337605.9170656055 3666315.6230463563, 3337274.0313226706 3666041.578484473, 3336842.8996134163 3665685.584583283, 3336764.676513244 3665620.9942365377, 3336617.7565904423 3665499.679577101, 3336590.4324163995 3665477.1174711236, 3336590.4324163985 3665477.117471123, 3336560.9745151736 3665452.7935047974, 3336429.729052863 3665344.4215545594, 3336428.0115904314 3665343.003412172, 3336299.7005536538 3665237.054474602, 3336286.567177854 3665226.2099888306, 3336008.8910545986 3664996.9273722586, 3335933.998703782 3664935.087290529, 3335893.7218288947 3664901.8298856313, 3335407.723254248 3664500.531338465, 3335362.523048113 3664463.208642474, 3335314.4406720516 3664423.5060822926, 3335261.4149379516 3664379.721694505, 3335260.510816078 3664378.9751433562, 3334839.2565166103 3664031.1372129936, 3334812.0876403297 3664008.703339422, 3334770.685480715 3663974.5167648727, 3334730.7931710533 3663941.5769030186, 3334145.131445489 3663457.9845390473, 3333807.269145311 3663179.005016726, 3333299.550412865 3662759.7717096163, 3333003.8960653218 3662515.644120932, 3332914.5570490086 3662441.875144392, 3331887.403422648 3661593.7342660464))
</a>
<b>
POLYGON ((3334546.228183764 3663789.1779761068, 3334507.2045345404 3663756.955384199, 3334447.580123011 3663707.7223391435, 3334364.100090413 3663638.791240275, 3334255.5397380586 3663549.150829886, 3334184.017357254 3663490.0933984364, 3334094.3533072392 3663416.0560351987, 3333989.606200989 3663329.5642968463, 3333477.0091599287 3662906.302874714, 3333111.689118296 3662604.650957186, 3332904.0328812357 3662433.18513282, 3332837.148123394 3662377.9570775344, 3317921.869437724 3650062.1191730825, 3311387.4153281646 3645901.186354534, 3305053.3363020215 3641286.7914633057, 3299086.6115955096 3636933.941773851, 3295324.0128066926 3633920.328315541, 3295224.653915473 3633804.403470344, 3293565.164852161 3632452.7563738194, 3292474.2338423817 3631621.6423231405, 3286874.8634554786 3627440.9454131294, 3282210.5767912427 3624351.770955207, 3265913.4033391126 3616450.6177417412, 3256462.3785707573 3612975.182767922, 3253389.9606248685 3611937.9276924506, 3248369.451590094 3610382.207194177, 3244751.568139308 3609552.5691044494, 3241790.469684211 3609215.5444242037, 3235968.4603157192 3609254.431421657, 3232094.5420361166 3609578.4944577864, 3228164.964011107 3610861.866942827, 3226083.289533279 3611548.979333302, 3216443.0216305773 3616035.589352473, 3208761.976765846 3622262.4713822454, 3207415.010927249 3625701.567667901, 3206177.122372398 3626358.170643491, 3207216.5521676997 3666101.9715910545, 3220222.309518561 3701933.577609012, 3242728.521873168 3730280.0026991265, 3264435.2336998796 3759243.221988637, 3295793.1220752154 3780916.6285214275, 3334249.0202006157 3792088.8051871713, 3376192.896782382 3790470.0460351193, 3417296.1270928173 3775033.570802938, 3452957.02457985 3746232.0524498327, 3381253.4504837343 3697226.09984442, 3379704.1868279953 3697687.925809469, 3380625.319008783 3695130.502881807, 3381641.1459678006 3692310.17024148, 3347592.204268893 3672490.010212623, 3347063.84174406 3673308.944945371, 3346675.6939096297 3673910.5541211097, 3344861.186209702 3672425.1852227207, 3344429.4712065626 3672058.6767982435, 3342102.119152011 3670082.849855667, 3339751.6215822888 3668087.373315006, 3339088.9738270175 3667540.212077616, 3338947.70378563 3667423.562635983, 3338527.258746467 3667076.3929277137, 3338271.9889883357 3666865.6116859205, 3338029.3884901595 3666665.291700351, 3337553.3827166916 3666272.244404946, 3337430.7193630626 3666170.958870029, 3337412.8016879032 3666156.1638945187, 3337148.6051139445 3665938.011605959, 3336234.327469112 3665183.0746375844, 3335983.920729437 3664976.308885431, 3335654.786631622 3664704.5364108467, 3335594.7123942864 3664654.931935808, 3335477.9477768918 3664558.517102997, 3335469.921747958 3664551.889853621, 3335455.214000046 3664539.745377943, 3335453.8412725255 3664538.611889928, 3335425.4093908416 3664515.1351280445, 3335327.003273468 3664433.8792684707, 3335095.3411379377 3664242.591303297, 3335073.0805383325 3664224.210289963, 3334935.914729842 3664110.9497938636, 3334697.3017278565 3663913.9223620417, 3334647.0299117416 3663872.411938302, 3334632.67936931 3663860.56241419, 3334583.2839290625 3663819.7756311786, 3334546.228183764 3663789.1779761068), (3339088.9738270175 3667540.212077616, 3339088.9738270165 3667540.2120776153, 3339088.973827016 3667540.212077615, 3339088.9738270175 3667540.212077616))
</b><test>
<op name="intersection" arg1="A" arg2="B">
GEOMETRYCOLLECTION EMPTY</op>
</test>
</case>
<case>
<desc>
http://trac.osgeo.org/postgis/ticket/2055
A triangle which has a segment crossing a segment of a hole very near one end.
Computed intersection causes a topology failure.
</desc>
<a>
POLYGON ((184315 319325, 184315 319290, 184276 319290, 184276 319325, 184315 319325), (184311.5625999868 319321, 184304.75 319308.59379998595, 184295.64059999958 319292.90599998087, 184304.75 319308.5937999822, 184311.5625999868 319321))
</a>
<b>
POLYGON ((184299.5210452684 319312.2400717032, 184311.5626000017 319321, 184306.59797855775 319312.2400717032, 184299.5210452684 319312.2400717032))
</b><test>
<op name="intersection" arg1="A" arg2="B">
GEOMETRYCOLLECTION EMPTY</op>
</test>
</case>
<case>
<desc>
http://trac.osgeo.org/geos/ticket/614
Two polygons with nearly coincident linework, causes robustness failure.
Correct result unknown.
</desc>
<a>
0106000020E61000000400000001030000000100000005000000E42CEC69873FF2BF9E98F56228E34740E92B4833164DF2BF3B1E335019E34740768E01D9EB5DF2BFD0D556EC2FE3474050C5FEB27B72F2BFB94E232D95E34740E42CEC69873FF2BF9E98F56228E34740010300000001000000040000000DB0F50EA8B7F2BF17C856DD28E447407FF6234564D8F2BFF1BA7EC16EE447409DD7D825AAB7F2BFE4FC4D2844E447400DB0F50EA8B7F2BF17C856DD28E4474001030000000100000004000000F9C5FEB27B72F2BFBB4E232D95E347406EC5FEB27B72F2BFBA4E232D95E3474050C5FEB27B72F2BFB94E232D95E34740F9C5FEB27B72F2BFBB4E232D95E3474001030000000100000005000000F9C5FEB27B72F2BFBB4E232D95E34740988BF84ECC7AF2BF25EEB1F4A1E347402C137EA99FB7F2BFD656EC2FBBE347400DB0F50EA8B7F2BF17C856DD28E44740F9C5FEB27B72F2BFBB4E232D95E34740
</a>
<b>
0106000020E6100000050000000103000000010000000C000000E42CEC69873FF2BF9E98F56228E347400EDB16653648F2BF4985B18520E34740E92B4833164DF2BF3A1E335019E34740A94D9CDCEF50F2BF33F9669B1BE347407DAEB6627F59F2BF2CF180B229E34740758E01D9EB5DF2BFD0D556EC2FE34740533F6F2A5261F2BFD717096D39E34740F4893C49BA66F2BFC8073D9B55E34740B8239C16BC68F2BF33A7CB6262E34740AA2B9FE57970F2BF4165FCFB8CE3474041C5FEB27B72F2BFB94E232D95E34740E42CEC69873FF2BF9E98F56228E3474001030000000100000004000000FCC5FEB27B72F2BFBB4E232D95E347406DC5FEB27B72F2BFBA4E232D95E3474041C5FEB27B72F2BFB94E232D95E34740FCC5FEB27B72F2BFBB4E232D95E34740010300000001000000050000007AB36FCD03D2F2BFDB15192461E447405070B1A206D3F2BFF19D98F562E4474062670A9DD7D8F2BF0E4FAF9465E447407FF6234564D8F2BFF1BA7EC16EE447407AB36FCD03D2F2BFDB15192461E447400103000000010000000C000000FCC5FEB27B72F2BFBB4E232D95E34740978BF84ECC7AF2BF24EEB1F4A1E34740E527D53E1D8FF2BF8F8D40BCAEE3474036CD3B4ED191F2BF649291B3B0E34740841266DAFE95F2BF1DE6CB0BB0E34740E3361AC05BA0F2BFB2632310AFE347405C5A0D897BACF2BF72F90FE9B7E3474031D3F6AFACB4F2BF4F232D95B7E347402B137EA99FB7F2BFD656EC2FBBE347402D431CEBE2B6F2BF551344DD07E447400AC902499DB6F2BF2CE8C3A326E44740FCC5FEB27B72F2BFBB4E232D95E34740010300000001000000090000007AB36FCD03D2F2BFDB15192461E447400473F4F8BDCDF2BFEA5BE67459E44740A31EA2D11DC4F2BFB1F9B83654E447405969520ABABDF2BF2384471B47E447409DD7D825AAB7F2BFE3FC4D2844E447406519E25817B7F2BF63EE5A423EE4474011E4A08499B6F2BF15E3FC4D28E447400AC902499DB6F2BF2CE8C3A326E447407AB36FCD03D2F2BFDB15192461E44740
</b>
<test>
<op name="symDifference" arg1="A" arg2="B">
GEOMETRYCOLLECTION EMPTY</op>
</test>
</case>
</run>