@startuml
title Видимость процедурных фигур и кадрирование

start
:Взять отрезок/контур фигуры;
:Преобразовать координаты в систему viewport;

if (Полностью вне окна?) then (да)
  :Отбросить примитив;
  stop
else (нет)
  :Выполнить отсечение Liang-Barsky;
  if (После отсечения пусто?) then (да)
    :Отбросить примитив;
    stop
  else (нет)
    :Передать видимую часть на растеризацию;
  endif
endif

:Вернуть видимые сегменты в общий конвейер;
stop
@enduml
