Этот проект представляет собой визуализацию движения планет Солнечной системы с использованием библиотеки turtle в Python. Он состоит из трёх файлов: SolarSystem.py, Methods.py и Constants.py.
Содержит все необходимые константы для симуляции:
- Данные о планетах: массы, радиусы, расстояния от Солнца, цвета и др.
- Множители масштаба для корректного отображения на экране.
В файле Methods.py содержаться такие методы как;
- UpdatePlanetPos - обновляет позицию планеты
- UpdateLabelPosition - обновляет позицию подписи
- DrawOrbits - рисует орбиты
- ClearOrbits - очищает орбиты
И такие функции как:
- MonitorResolution - возвращает разрешение монитора
- MonitorFrameRaten - возвращает частоту обновления монитора
Основной файл запуска программы:
- Настройка окна
turtle - Создание объектов планет
- Реализация логики анимации и управления
- Отображение времени и состояния симуляции
.
├── img.png
├── stars.png
├── README.md
├── Constants.py
├── Methods.py
└── SolarSystem.py- Python 3.x
- Библиотеки:
pywin32(для получения параметров монитора)turtle(встроена в стандартную поставку Python)datetime(встроена в стандартную поставку Python)
- Файл
stars.pngдолжен находиться в той же директории, что иSolarSystem.py(фоновое изображение)
Если у вас не установлен pywin32, выполните:
pip install pywin32В терминале или командной строке перейдите в директорию проекта и выполните:
python SolarSystem.py| Клавиша | Действие |
|---|---|
↑ (вверх) |
Увеличить скорость симуляции |
↓ (вниз) |
Уменьшить скорость симуляции |
| Пробел | Пауза / Возобновление |
R |
Перезапуск симуляции |
O |
Показать / скрыть орбиты планет |
- Все данные взяты из достоверных источников (например, NASA).
- Используется реальная физическая модель движения планет (равномерное движение по окружности).
- Масштабирование применяется для корректного отображения на экране.
- Поддерживается работа с разными разрешениями экрана и частотами кадров.
- Время внутри симуляции может ускоряться/замедляться.
Откроется полноэкранное окно с черным фоном и звездами. Посреди него будет желтое Солнце, вокруг которого начнут двигаться планеты по своим орбитам. В левом верхнем углу отображается текущее время симуляции и статус (пауза/скорость). Цвета и размеры планет приблизительно соответствуют их реальным характеристикам.
- Добавить спутники (например, Луну)
- Добавить возможность увеличения/уменьшения масштаба во время симуляции
- Включить звуковые эффекты или музыку
- Сохранять сцену в виде файла изображения или видео
- Константы и данные о планетах взяты с сайта NASA
- Гравитационная постоянная — из статьи журнала Nature
- Реализация на Python с использованием
turtle— полностью авторская
Если у вас возникнут вопросы или ошибки при запуске, убедитесь, что все файлы находятся в одной директории и зависимости установлены.
