我看过 Craven 教授关于用 Python 绘制多边形的视频:
https://www.youtube.com/watch?v=7qvsevlb5pg&list=PL1D91F4E6E79E73E1&index=22
他的视频对初学者非常有用。 他的解释很有帮助,例子也很有帮助。 当我尝试他的例子时:
pygame.draw.polygon(screen, black, [[100,100],[0,200],[200,200]], 5)
它工作得很好。 然而,当我尝试自己的东西时,它只画了一条线:
pygame.draw.polygon(screen, black, [[300,200],[150,100],[450,300]],6)
我的错误是什么? 提前致谢。
最佳答案
点 (150, 100)、(300,200) 和 (450,300) 共线。它们形成的多边形实际上是一个非常平坦的三角形。
尝试改变其中一个点,使其不与其他两个点对齐。
pygame.draw.polygon(screen, black, [[300,400],[150,100],[450,300]],6)
将来,在绘制之前检查共线性可能会很有用,这样您就知道您将获得真实的形状。通常,您可以通过比较它们一起形成的线段的斜率来确定一组点是否共线。
直线 AB 的斜率为 (200-100)/(300-150) = 2/3。
BC 线的斜率为 (300-100)/(450-150) = 2/3。
AC 线的斜率为 (300-200)/(450-300) = 2/3。
斜率都相等,所以点必须都在同一条线上。
关于python - 如何在 python 中绘制多边形?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25018637/