使用图形库绘制填充多边形
问题描述:
我必须在PyCharm中绘制沙漏。我尝试了以下,但由于某种原因,setFill
命令不起作用。它只适用于canvas.drawRect(x, y, width, height).
我猜是因为程序不能识别这些行正在制作一个三角形,因此无法填充它。使用图形库绘制填充多边形
有没有人有任何想法我可以解决它?
canvas.setFill("blue")
canvas.drawLine(100, 50, 200, 50)
canvas.drawLine(100, 50, 150, 200)
canvas.drawLine(200, 50, 150, 200)
答
您正在跟踪的行不定义可填写的对象。您应该定义支持setFill()
方法的对象:
from graphics import *
def main():
win = GraphWin("My Canvas", 300, 300)
poly_points = [Point(100, 50), Point(200, 50), Point(150, 200)]
p = Polygon(poly_points)
p.setFill('red')
p.draw(win)
c = Circle(Point(50,50), 10)
c.setFill('blue')
c.draw(win)
win.getMouse() # Pause to view result
win.close() # Close window when done
main()
非常感谢您的帮助!你的回答让我意识到我唯一需要做的就是阅读图形库,找到我需要的代码! –