ЛР4. Интерактивные эффекты.

Задание

Разработать приложение для создания векторных изображений с учетом возможностей, представленных в примере (архив с бинарным графическим приложением для ОС Linux, фреймворк gtk2, платформа x86-64, версия 1.0), версия 1.01.
Базовое требование к разрабатываемому приложению: реализация всех возможностей, предоставляемых примером любой версии, выбранной студентом.

Основные компоненты, используемые в примере:
TPaintBox - для визуализации набора векторных примитивов и организации интерактивного управления ими.
TFlowPanel с набором TSpeedButton - для формирования панели управления

Вспомогательные компоненты, используемые в примере:
TMainMenu - для формирования главного меню
TStatusBar - для визуализации текущего состояния приложения
TPanel - для группировки компонентов

Студент имеет право использовать вместо указанных другие компоненты, входящие в базовый состав среды программирования.


После защиты основного задания предлагаются бонусы, зачитываемые исключительно последовательно, с включением в каждом последующем бонусе всех предыдущих:
  1. +20 баллов первым четырем студентам - за реализацию элементов главного меню. Предполагается возможность хранения изображения на диске в своем собственном векторном формате и экспорт в минимум один из распространенных растровых форматов изображений (bmp,png,jpg,pbm и т.п.). Для работы с растровым изображением рекомендуется использовать специализированные потоки из базовой поставки FreePascal. Предполагается использование html-справки в отдельной форме.
  2. +30 баллов первым трем студентам - за возможность настраивать параметры любого векторного элемента, как при построении, так и впоследствии. К параметрам относятся: 1) цвет, стиль и толщина линии; 2) (если применимо) цвет, стиль и прозрачность заливки; 3) позиция в Z-упорядочивании
  3. +50 баллов первым двум студентам - за поддержку следующих видов фигур: 1) произвольная ломаная линия; 2) сплайн; 3) произвольная рисованная линия; 4) произвольный многоугольник с заливкой. Настройка параметров должна учитывать дополнительные характеристики новых видов фигур.