Pythonプロジェクトで2つのShapelyオブジェクトをマージしようとしています。Shapelyのいくつかの機能を説明する一種のマニュアルがありますがcascaded_union()
、私はポリゴンに対してのみ機能します。このshapely.ops.unary_union()
方法は他のジオメトリでも機能するはずですが、機能させることができません。
一言で言えば:2つのLinearRingオブジェクトをマージするにはどうすればよいですか?
私は実際に自分で問題を解決しました。
p1 = Polygon(ring.coords)
p2 = Polygon(ring2.coords)
リングからポリゴンを作成します。次に、それらのポリゴンを使用して配列を作成します。それらをcascaded_unionとマージし、新しいポリゴンからLinearRingを作成します。
pols = [p1, p2]
new_pol = ops.cascaded_union(pols)
new_ring = LinearRing(new_pol.exterior.coords)