Jika memiliki dua poin, dari mana saya ingin membuat LineStringobjek lurus :
from shapely.geometry import Point, LineString
A = Point(0,0)
B = Point(1,1)
The Shapely pengguna untukLineString negara:
Urutan
Pointinstance bukan parameter konstruktor yang valid. ALineStringdijelaskan oleh poin, tetapi tidak terdiri dari instance Point.
Jadi jika saya memiliki dua poin Adan B, apakah ada cara yang lebih pendek / lebih baik / lebih mudah untuk membuat garis ABdaripada tebakan "terbaik" saya saat ini ...
AB = LineString(tuple(A.coords) + tuple(B.coords))
... yang terlihat agak rumit. Apakah ada cara yang lebih mudah?
Memperbarui
Dengan Shapely 1.3.2 yang dirilis hari ini, pernyataan di atas dari manual tidak lagi benar. Jadi mulai sekarang,
AB = LineString([A, B])
bekerja !
shapely.__version__setuju) dan menempelkan kode Anda kata demi kata, saya menerima ValueError dari linestring.pyc # 228 tentang "Input[<...Point object at 0x..>, <...Point object at 0x...>]adalah bentuk yang salah untuk LineString". Apakah saya melewatkan sesuatu?