Отображение
display и disp
display добавляет геометрию в сцену. disp — её короткое имя. Возвращённый контроллер позволяет менять размещение, цвет и видимость объекта.
from zencad import *
controller = display(box(10), color=Color(0.2, 0.6, 0.8), name="housing")
show()
Для списка display возвращает список контроллеров, для сборочного unit — сам юнит. Имена name= задаются отдельным объектам и должны быть уникальными в сцене. Они видны в отчётах inspect.
Color
Color(r, g, b, a=0) принимает компоненты от 0 до 1. Первые три задают RGB, четвёртая — прозрачность: 0 непрозрачно, 1 полностью прозрачно.
from zencad import *
display(box(10), color=Color(0.2, 0.6, 0.8, 0.5))
display(sphere(3).right(15), color=yellow)
show()
Готовые цвета доступны по именам white, black, red, green, blue, yellow, magenta, cian, mech, transmech, а также через модуль zencad.color.
highlight и hl
Подсветка добавляет форму в сцену и возвращает саму форму. Это удобно для показа вычитаемого объёма прямо в выражении:
from zencad import *
body = box(20) - hl(cylinder(4, 20).translate(10, 10, 0))
display(body)
show()
show и явная сцена
show() отображает собранную сцену. При запуске скрипта из редактора результат появляется в его окне; при прямом запуске python model.py открывается отдельный просмотрщик.
Обычно используется сцена по умолчанию. При необходимости можно создать свою:
from zencad import *
scene = Scene()
scene.add(box(10), color=blue)
display(sphere(3).right(15), color=yellow, scene=scene)
show(scene)
scene.add() также возвращает контроллер объекта. Параметры animate и animate_step функции show описаны в разделе «Анимация», устройство отображения — во «Внутренней кухне».