我正在做一项家庭作业,其中的说明是:
使用 Turtle 图形,实现函数 planets(),该函数将模拟火星行星旋转一圈期间水星、金星、地球和火星的行星运动。你可以假设:
- 在模拟开始时,所有行星都排成一列(比如沿着负 y 轴)。
- 水星、金星、地球和火星与太阳(自转中心)的距离分别为 58、108、150 和 228 像素。
- 火星每旋转 1 度,地球、金星和水星将分别移动 2、3 和 7.5 度。
下图显示了当地球绕太阳运行大约四分之一时的模拟状态。请注意,水星几乎完成了它的第一次自转。
我得到的输出是:
这是我的代码:
import turtle
import math
s = turtle.Screen()
t = turtle.Turtle()
def jump(t,x,y):
'makes turtle t jump to coordinates (x,y)'
t.penup()
t.goto(x,y)
t.pendown()
def planets(t):
#mercury
jump(t,0,-58)
t.circle(58,337.5)
#venus
jump(t,0,-108)
t.circle(108,135)
# earth
jump(t,0,-150)
t.circle(150,90)
# mars
jump(t,0,-228)
t.circle(228,45)
planets(t)
turtle.done()
所以基本上,方向正在改变。如何获得所需的输出?如何阻止extent
论点改变圆的方向?