From 155d5b67e61542b7e04a68d56c44c38d6a9d4703 Mon Sep 17 00:00:00 2001 From: mehailov <91527181+mehailov@users.noreply.github.com> Date: Tue, 16 Nov 2021 11:15:20 +0300 Subject: [PATCH] Update solar_vis.py --- solar_vis.py | 24 +++++++----------------- 1 file changed, 7 insertions(+), 17 deletions(-) diff --git a/solar_vis.py b/solar_vis.py index ae972ba4..75b9f733 100644 --- a/solar_vis.py +++ b/solar_vis.py @@ -3,7 +3,7 @@ """Модуль визуализации. Нигде, кроме этого модуля, не используются экранные координаты объектов. -Функции, создающие гaрафические объекты и перемещающие их на экране, принимают физические координаты +Функции, создающие графические объекты и перемещающие их на экране, принимают физические координаты """ header_font = "Arial-16" @@ -33,12 +33,10 @@ def scale_x(x): Принимает вещественное число, возвращает целое число. В случае выхода **x** координаты за пределы экрана возвращает координату, лежащую за пределами холста. - Параметры: - **x** — x-координата модели. """ - + x=int(x) return int(x*scale_factor) + window_width//2 @@ -48,20 +46,15 @@ def scale_y(y): В случае выхода **y** координаты за пределы экрана возвращает координату, лежащую за пределами холста. Направление оси развёрнуто, чтобы у модели ось **y** смотрела вверх. - Параметры: - **y** — y-координата модели. """ - return y # FIXME: not done yet - + return -int(y * scale_factor) + -window_height // 2 def create_star_image(space, star): """Создаёт отображаемый объект звезды. - Параметры: - **space** — холст для рисования. **star** — объект звезды. """ @@ -74,21 +67,20 @@ def create_star_image(space, star): def create_planet_image(space, planet): """Создаёт отображаемый объект планеты. - Параметры: - **space** — холст для рисования. **planet** — объект планеты. """ - pass # FIXME: сделать как у звезды + x = scale_x(planet.x) + y = scale_y(planet.y) + r = planet.R + planet.image = space.create_oval([x - r, y - r], [x + r, y + r], fill=planet.color) def update_system_name(space, system_name): """Создаёт на холсте текст с названием системы небесных тел. Если текст уже был, обновляет его содержание. - Параметры: - **space** — холст для рисования. **system_name** — название системы тел. """ @@ -97,9 +89,7 @@ def update_system_name(space, system_name): def update_object_position(space, body): """Перемещает отображаемый объект на холсте. - Параметры: - **space** — холст для рисования. **body** — тело, которое нужно переместить. """