我想使用 SymPy 创建一个有 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)
但这种形式和类似形式未经验证。
有什么建议吗?
最佳答案
您可以通过在参数列表前放置一个星号来扩展它,如下所示:
p=[(0, 0), (1, 0), (5, 1), (0, 1), (3, 0)]
Polygon(*p)
这相当于调用 Polygon((0, 0), (1, 0), (5, 1), (0, 1), (3, 0))
。
关于python - 如何从顶点列表在 SymPy 中制作多边形,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15974381/