как непрерывно вращать стрелку на 360 с помощью черепахи python
Я использую черепаху python, и у меня проблема с эмуляцией стрелки (например, стрелки часов), которая непрерывно вращается вокруг своего источника и останавливается только при нажатии на экран. Мой проект о колесе фортуны, но вместо того, чтобы вращать колесо, я просто хотел бы вращать стрелку. пожалуйста помоги!!!!
очень похоже на код, с которым я столкнулся
from turtle import * from datetime import datetime
def moving(distance, angle=0):
penup()
right(angle)
forward(distance)
left(angle)
pendown()
def layout(lenght, vast):
fd(lenght*1.15)
rt(90)
fd(vast/2.0)
lt(120)
fd(vast)
lt(120)
fd(vast)
lt(120)
fd(vast/2.0)
def timer_hands(name, lenght, vast):
reset()
moving(-lenght*0.15)
begin_poly()
layout(lenght, vast)
end_poly()
clock_labellings = get_poly()
register_shape(name, clock_labellings)
def clockface(radius):
reset()
pensize(7)
for i in range(60):
moving(radius)
if i % 5 == 0:
fd(25)
moving(-radius-25)
else:
dot(3)
moving(-radius)
rt(6)
def settings():
global second_hand, minute_hand, hour_hand
timer_hands("second_hand", 125, 25)
timer_hands("minute_hand", 130, 25)
timer_hands("hour_hand", 90, 25)
clockface(160)
second_hand = Turtle()
second_hand.shape("second_hand")
second_hand.color("gray40", "black")
minute_hand = Turtle()
minute_hand.shape("minute_hand")
minute_hand.color("red", "orange")
hour_hand = Turtle()
hour_hand.shape("hour_hand")
hour_hand.color("red", "orange")
for hand in second_hand, minute_hand, hour_hand:
hand.resizemode("user")
hand.shapesize(1, 1, 3)
hand.speed(0)
ht()
def tick():
t = datetime.today()
secondTimer = t.second + t.microsecond*0.000001
minute = t.minute + secondTimer/60.0
onTheHour = t.hour + minute/60.0
try:
tracer(False)
second_hand.setheading(6*secondTimer)
minute_hand.setheading(6*minute)
hour_hand.setheading(30*onTheHour)
tracer(True)
ontimer(tick, 100)
except Terminator:
pass
def main():
tracer(False)
settings()
tracer(True)
tick()
return "Done"
if __name__ == "__main__":
mode("logo")
msg = main()
print(msg)
mainloop()