Top

solar_vis module

Модуль визуализации. Нигде, кроме этого модуля, не используются экранные координаты объектов. Функции, создающие гaрафические объекты и перемещающие их на экране, принимают физические координаты

Module variables

var header_font

Шрифт в заголовке

var scale_factor

Масштабирование экранных координат по отношению к физическим.

Тип: float

Мера: количество пикселей на один метр.

var window_height

Высота окна

var window_width

Ширина окна

Functions

def calculate_scale_factor(

max_distance)

Вычисляет значение глобальной переменной scale_factor по данной характерной длине

def create_planet_image(

space, planet)

Создаёт отображаемый объект планеты.

Параметры:

space — холст для рисования.

planet — объект планеты.

def create_star_image(

space, star)

Создаёт отображаемый объект звезды.

Параметры:

space — холст для рисования.

star — объект звезды.

def scale_x(

x)

Возвращает экранную x координату по x координате модели. Принимает вещественное число, возвращает целое число. В случае выхода x координаты за пределы экрана возвращает координату, лежащую за пределами холста.

Параметры:

x — x-координата модели.

def scale_y(

y)

Возвращает экранную y координату по y координате модели. Принимает вещественное число, возвращает целое число. В случае выхода y координаты за пределы экрана возвращает координату, лежащую за пределами холста. Направление оси развёрнуто, чтобы у модели ось y смотрела вверх.

Параметры:

y — y-координата модели.

def update_object_position(

space, body)

Перемещает отображаемый объект на холсте.

Параметры:

space — холст для рисования.

body — тело, которое нужно переместить.

def update_system_name(

space, system_name)

Создаёт на холсте текст с названием системы небесных тел. Если текст уже был, обновляет его содержание.

Параметры:

space — холст для рисования.

system_name — название системы тел.