2

sympy python を使用して n 個の面を持つポリゴンを作成し、すべてのパラメーターを計算します。

簡単なフォームは

from sympy import Polygon
p1, p2, p3, p4, p5 = [(0, 0), (1, 0), (5, 1), (0, 1), (3, 0)]
Polygon(p1, p2, p3, p4, p5)

Polygon(Point(0, 0), Point(1, 0), Point(5, 1), Point(0, 1))

しかし、たとえば、リストからnポイントを使用したい

p=[(0, 0), (1, 0), (5, 1), (0, 1), (3, 0)]
Polygon(p)

ただし、このフォームなどは検証されていません。

助言がありますか?

4

1 に答える 1

4

次のように、パラメーターのリストの前にアスタリスクを付けて展開することで、これを行うことができます。

p=[(0, 0), (1, 0), (5, 1), (0, 1), (3, 0)]
Polygon(*p)

これは、 を呼び出すことと同じPolygon((0, 0), (1, 0), (5, 1), (0, 1), (3, 0))です。

于 2013-04-12T14:54:24.517 に答える