<div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr">Hi List,</div><div dir="ltr"><br></div><div dir="ltr">I'm creating irregular polygons and I don't want to let them overlap.</div><div dir="ltr">So before adding the polygon to my list of 'good' polygons, I do an overlap check first.</div><div dir="ltr">When the polygon overlaps with an existing polygon I do a clip difference and add the clipped polygon to my good list.</div><div dir="ltr"><br></div><div dir="ltr">Sometimes two polygons still overlap after a clip difference.</div><div dir="ltr"><br></div><div dir="ltr">I managed to extract two sets that barely overlap. The first set doesn't overlap anymore after clipping the second one is still overlapping.</div><div dir="ltr"><br></div><div dir="ltr">Set 1:</div><div dir="ltr"><div dir="ltr">shp = POLYGON ((259449.071118579 543868.469050065,259460.460699968 543878.23006619,259463.245769758 543873.768560297,259455.578068317 543860.876455946,259449.071118579 543868.469050065))</div><div dir="ltr">shp2 = POLYGON ((259463.243735243 543856.317227775,259458.0148573 543864.973555723,259462.906856719 543873.198728218,259471.741696109 543861.450443661,259463.243735243 543856.317227775))</div><div><div dir="ltr" class="gmail_signature"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div>shp3 (clipped result) = POLYGON ((259463.243735243 543856.317227775,259458.014857301 543864.973555722,259462.906856719 543873.198728217,259471.741696109 543861.450443661,259463.243735243 543856.317227775))</div><div dir="ltr"><br></div><div dir="ltr">Set 2:</div><div dir="ltr"><div dir="ltr">shp = POLYGON ((259073.014081524 544320.092508488,259085.267633063 544321.677731439,259085.942168897 544320.308101652,259074.192475622 544310.983687036,259073.014081524 544320.092508488))</div><div dir="ltr">shp2 = POLYGON ((259087.677538158 544333.393525226,259097.260135269 544321.853428493,259090.546766392 544316.354731347,259079.984140336 544327.005127152,259087.677538158 544333.393525226))</div>
<div dir="ltr">shp3 (clipped result) = POLYGON ((259087.677538158 544333.393525226,259097.260135269 544321.853428493,259090.546766392 544316.354731347,259085.267633064 544321.677731438,259085.267633063 544321.677731439,259085.267633062 544321.677731439,259079.984140336 544327.005127152,259087.677538158 544333.393525226))<br></div><div dir="ltr"><br></div><div>I'm using C# with MapWinGIS to do the actions:</div><div><div>            if (shp.Overlaps(shp2))</div><div>            {</div><div>                var shp3 = shp2.Clip(shp, tkClipOperation.clDifference);<br></div><div>                Assert.IsFalse(shp.Overlaps(shp3), "New shape still overlaps");<br></div><div>            }<br></div></div><div><br></div><div>MapWinGIS is using the GDAL v2.3.3 binaries from GisInternals which in turn is using geos-3.4 </div><div>MapWinGIS is directly porting its functions to the GEOS functions:</div><div><a href="https://github.com/MapWindow/MapWinGIS/blob/master/src/COM%20classes/Shape.cpp#L1194">https://github.com/MapWindow/MapWinGIS/blob/master/src/COM%20classes/Shape.cpp#L1194</a><br></div><div><a href="https://github.com/MapWindow/MapWinGIS/blob/master/src/COM%20classes/Shape.cpp#L1302">https://github.com/MapWindow/MapWinGIS/blob/master/src/COM%20classes/Shape.cpp#L1302</a><br></div><div><br></div><div>Before I report this as a defect I want to know if my workflow and expectations are correct.</div><div><br></div><div>Thanks,</div><br>Paul<br>
</div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div>