私はこの2つのジオメトリを持っています:
StreamGeometry geo1 = Geometry.Parse("M590202.895,5958727.621L590280.305,5958747.961L590337.012,5958762.785L590337.172,5958763.234L590337.412,5958763.914L590280.065,5958748.931L590241.24,5958738.726L590202.576,5958728.98z");
このように見える
と
StreamGeometry geo2 = Geometry.Parse("M590241.24,5958738.726L590280.195,5958748.551L590337.172,5958763.234L590337.412,5958763.914L590280.065,5958748.931L590241.24,5958738.726z");
次のようになります。
GIS システムでこれらのオブジェクトを見ると、右上隅にgeo2
完全に含まれています。geo1
両方の交点を取得すると
PathGeometry intersection = PathGeometry.Combine(geo1, geo2, GeometryCombineMode.Intersect, null);
私は得る
{F1M590241,25;5958738,5L590280,1875;5958748,5 590332,3125;5958762 590337;5958763 590337,1875;5958763 590337,4375;5958764 590280,0625;5958749 590241,25;5958738,5z}
これは非常に奇妙に見えます:
詳細には、イライラする矛盾があります。たとえば、右端の赤いマークのintersection
ジオメトリは、私が期待していたものとはまったく異なります。
Combine
さまざまな許容値で試しましたが、結果に影響はありませんでした。
ここで何がうまくいかないのですか?
*更新* @Sinatrが想定していたようにジオメトリを閉じ、最初のものの左側の部分を省略して単純化しました。どちらも結果には影響しません。