私はそのように見える座標リストを持っています
myCoordinates
> [(2, -6), (21, 19)]
それらをshapely geometry
オブジェクトに変換して、それらを使用していくつかの計算を実行できるようにします。
from shapely.geometry import Point
for i in myCoordinates:
c = [Point(i[0], i[1])]
print c
> [<shapely.geometry.point.Point object at 0x1044033d0>]
ただし、これでは1つ(!)のジオメトリオブジェクトしか得られません。
circles = [Point(random.random(), random.random()).buffer(random.random() * 0.1) for i in range(3)]
3つのジオメトリオブジェクトを取得します。
print circles
> [<shapely.geometry.polygon.Polygon object at 0x1043f6890>, <shapely.geometry.polygon.Polygon object at 0x10442f8d0>, <shapely.geometry.polygon.Polygon object at 0x10442f910>]
私は何が間違っているのですか?リスト内の2つではなく、1つのポイントのみをジオメトリオブジェクトに変換するのはなぜですか?
ループの各反復で変数を上書きしています。c
リストを作成してから追加する必要があります。
from shapely.geometry import Point
c = []
for i in myCoordinates:
c.append([Point(i[0], i[1])])
print c
または、リスト内包表記を使用してすべてを1行で実行できます。
c = [Point(coord[0], coord[1]) for coord in myCoordinates]
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加