Задать вопрос
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()
  • Вопрос задан
  • 1010 просмотров
Подписаться 1 Средний 3 комментария
Помогут разобраться в теме Все курсы
  • Нетология
    1C-программист: расширенный курс
    18 месяцев
    Далее
  • Академия Эдюсон
    Python-разработчик + ИИ
    9 месяцев
    Далее
  • ProductStar × РБК
    Профессия DevOps-инженер + ИИ
    5 месяцев
    Далее
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы