2つのポイントがあり、そこから直線LineString
オブジェクトを作成する場合:
from shapely.geometry import Point, LineString
A = Point(0,0)
B = Point(1,1)
状態に関するShapelyマニュアルLineString
:
Point
インスタンスのシーケンスは、有効なコンストラクターパラメーターではありません。ALineString
はポイントで記述されますが、Pointインスタンスで構成されていません。
だから、2つのポイントA
とB
があるAB
場合、現在の「最良の」推測よりも短い/良い/簡単な線を作成する方法があります...
AB = LineString(tuple(A.coords) + tuple(B.coords))
...かなり複雑に見えます。もっと簡単な方法はありますか?
更新
本日リリースされたShapely 1.3.2では、マニュアルの上記の記述は正しくありません。だからこれから
AB = LineString([A, B])
動作します!
shapely.__version__
同意)し、コードを逐語的に貼り付けた後、lineString.pyc#228から「入力[<...Point object at 0x..>, <...Point object at 0x...>]
はLineStringの間違った形状です」というValueErrorを受け取ります。私は何かを見逃しましたか?