@startuml
title ЛР4: общий рабочий цикл построения изображения

start
:Загрузка документа и параметров отображения;
:Инициализация окна, холста и рендер-движка;

repeat
  :Обработка действий пользователя\n(инструменты, масштаб, свойства);
  :Формирование набора процедурных фигур;
  :Преобразование фигур в пиксельные области;
  :Композиция пиксельных областей\nс учётом порядка и прозрачности;
  :Кадрирование видимой области (viewport);
  :Растеризация и вывод в текстуру;
  :Отображение кадра на холсте;
repeat while (Продолжать работу?) is (да)

:Штатное завершение приложения;
stop
@enduml
