所以我打算用乌龟画出欧盟旗帜上的星星,我已经设法画出了它们,但它们并没有站直。 参考链接,看星星应该如何; http://en.wikipedia.org/wiki/Flag_of_Europe
提前致谢
我的代码 ---
import turtle
aze = turtle.Turtle()
aze.shape('turtle')
def makeStar():
for k in range(5):
aze.forward(20)
aze.right(144)
for i in range(12):
makeStar()
aze.left(30)
aze.penup()
aze.forward(50)
aze.pendown()
turtle.mainloop()
答案 0 :(得分:3)
下面,我发布了一些我相信你想要的代码。为了使星星始终指向上方,您希望将当前标题(就像我在makeStar函数中所做的那样)保存到局部变量(heading_before_star),然后将其重置为0,绘制星形,并将其重置为标题之前。
另外,我注意到的另一个是你当前的代码并没有在12点钟和6点钟绘制一个星星,它们整个圆圈都略微旋转。为了解决这个问题,我在程序开头添加了一个setHeading(-15)来纠正它。
import turtle
aze = turtle.Turtle()
aze.shape('turtle')
def makeStar():
heading_before_star = aze.heading()
aze.setheading(0)
for k in range(5):
aze.forward(20)
aze.right(144)
aze.setheading(heading_before_star)
aze.setheading(-15)
for i in range(12):
makeStar()
aze.left(30)
aze.penup()
aze.forward(50)
aze.pendown()
turtle.mainloop()