0 / 0 / 0
Регистрация: 04.11.2022
Сообщений: 64

Как вращать картинку вокруг своей оси?

04.05.2023, 01:28. Показов 3069. Ответов 4

Студворк — интернет-сервис помощи студентам
Помогите пожалуйста!
Мне нужно что бы картинка "planet" вращалась вокруг своей оси.
Еще бы хотелось контролировать скорость и сторону вращения.
Всё что из кода есть:


Python
1
2
3
4
5
6
7
8
9
10
11
12
from tkinter import *
 
window = Tk()
 
image = PhotoImage(file="planet.png").subsample(3, 3)
 
canvas = Canvas(window, width=500, height=340, bg='black')
canvas.pack()
 
canvas.create_image(250, 150, image=image)
 
window.mainloop()
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
04.05.2023, 01:28
Ответы с готовыми решениями:

Вращение объекта вокруг своей оси
Есть такой класс class TPoint(): def __init__(self): self._x = random.randint(0, WIDTH - 35) self._y =...

Вращать сферу вокруг центра координат, и одновременно вращать ее вокруг своей оси
Всем привет! Долблюсь о стену второй день ( Суть в том, что мне необходимо вращать сферу вокруг центра координат и одновременно...

Как вращать эллипс вокруг своей оси ? (вокруг себя)
напишите код плиз я вот написал для того чтобы эллипс вращался вокруг точки, а вот еще надо чтобы он вращался вокруг себя program...

4
 Аватар для Михалыч
1011 / 355 / 59
Регистрация: 28.02.2013
Сообщений: 937
04.05.2023, 13:51
Лучший ответ Сообщение было отмечено Fudthhh как решение

Решение

Artem_Bro, как то так)

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
from PIL import Image, ImageTk
import tkinter as tk
 
pil_img = Image.open("planet.png")
 
 
def loading_loop(i=0):
    global tk_img
 
    if i == 100: 
        return
 
    # Поворот на угол против часовой стрелки (нужно плавнее сделайте k меньше)
    # Если нужно в другую сторону сделайте k = -5
    k = 5
    rotated_pil_img = pil_img.rotate(k*i)
    tk_img = ImageTk.PhotoImage(rotated_pil_img)
 
    canvas.delete("all")
    canvas.create_image(0, 0, image=tk_img, anchor="nw")
    # Вызов loading_loop каждые 100 ms (нужно быстрее поменяйте на 50 и т.д.)
    root.after(100, loading_loop, i+1)
 
 
root = tk.Tk()
 
canvas = tk.Canvas(root, width=300, height=300, bg='black')
canvas.pack()
 
loading_loop()
 
root.mainloop()
Изображения
 
0
0 / 0 / 0
Регистрация: 04.11.2022
Сообщений: 64
04.05.2023, 17:21  [ТС]
Михалыч, спасибо, как раз то, что мне нужно.
Но у меня есть ещё маленький вопросик: можно как-нибудь зациклить анимацию? А то я заметил что она через некоторое время становится не активной
0
Модератор
Эксперт Python
 Аватар для Fudthhh
2695 / 1601 / 513
Регистрация: 21.02.2017
Сообщений: 4,210
Записей в блоге: 1
04.05.2023, 17:28
Artem_Bro, ак условие в функции стоит, что на сотой итерации выйти из фукнции(10, 11 строки), а не добавить ее в список событий (22 строка).
2
0 / 0 / 0
Регистрация: 04.11.2022
Сообщений: 64
04.05.2023, 17:56  [ТС]
Михалыч, Fudthhh, А, точняк. Я не обратил внимание на это. Большое спасибо вам
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
04.05.2023, 17:56
Помогаю со студенческими работами здесь

Как вращать эллипс вокруг своей оси?
дано задание "создать приложение, отображающее движение автомобиля с вращающимися колесами." на форме я сделал подобие автомобиля,...

Найти точку Z и вращать вокруг своей оси
Доброго времени суток, задача такая: есть спидометр Удалено модератором. Изображение загружено на форум. нужно заставить стрелку...

Как заставить крутиться по часовой стрелке вокруг своей оси картинку?
Есть пикчер бокс с картинкой, как заставить крутиться по часовой стрелке вокруг своей оси картинку ?

поворот изображения вокруг своей оси во время движения по кругу вокруг центра
Cобственно требуется написать программу в Delphi в которой 2 машинки будут ездить по кругу, поворачиваясь в зависимости от положения на...

Вращение планеты вокруг солнца, и вокруг своей оси
У меня есть Солнце, которое находиться в координатах(0.0.0), и нужно вращать планеты, как по орбите, и вокруг свой оси. Вот код двух...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

Новые блоги и статьи
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru