Vitalianskiy
@Vitalianskiy
Student

Как реализовать движение круга из центра экрана по спирали python tkinter?

Есть код движения по кругу
Помогите реализовать движение по спирали

import math
from tkinter import Canvas, Tk

SIZE = 600
WIDTH = SIZE
HEIGHT = SIZE
RADIUS4 = SIZE / 5
RADIUS1 = SIZE / 2.85
#radius orbiti
RADIUS2 = SIZE / 12
#radius pervogo kruga
RADIUS3 = SIZE / 15
#radius vtorogo kruga



def coords(angle):
    x = math.cos(angle) * RADIUS1
    y = math.sin(angle) * RADIUS1
    return x - RADIUS2 + SIZE / 2, y - RADIUS2 + SIZE / 2, x + RADIUS2 + SIZE / 2, y + RADIUS2 + SIZE / 2

def motion(angle):
    angle = angle + 0.1
    c.coords(f, coords(angle))
    root.after(50, lambda: motion(angle))

angle = 0
root = Tk()

c = Canvas(root, width=WIDTH, height=HEIGHT, bg="white")
c.pack()


c.create_oval(SIZE / 2 - 160, SIZE / 2 - 160, SIZE / 2 + 160, SIZE / 2 + 160)

f = c.create_oval(coords(angle), fill='black')

root.after(100, motion(angle))

root.mainloop()
  • Вопрос задан
  • 608 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы