Математика гильоша
После опубликования статьи «Полиграфические методы защиты» (КомпьюАрт № 1, 2 и 4’2002) у читателей возникло много вопросов о таких специфических для гильош-дизайна понятиях, как основы, огибающие и т.п. В этом обзоре мы постараемся кратко рассмотреть эти понятия.
Основы — базовые линии, определяющие вид создаваемого гильоширного элемента. Основы могут быть следующих типов: отрезок, эллипс, многоугольник, прямоугольник, полилиния, дуга эллипса, овал, сплайн, спираль, эвольвента, Лиссажу. Каждый тип основы имеет собственные параметры (BaseType).
Огибающие — линии, которые строятся на основе с использованием определенных пользователем функций (Funk). Основа выступает в роли своеобразной системы координат, в которой строится функция (Funk).
Заполнители — множество линий, построенных на основе двух огибающих с использованием функции, заданной пользователем. Линии заполняют пространство между двумя огибающими.
Основные и дополнительные параметры заполнителей различных типов подробнее описаны ниже.
Функции — заданные пользователем объекты, применяемые для описания кривых и поверхностей. Функции используются при задании огибающих, заполнителей, поверхностей и в других случаях. Существуют следующие способы задания функций (FunkType): ряд Фурье, аналитическая формула, растровый файл.
Поверхность — вспомогательный элемент для получения нерегулярных гильоширных сеток. Исходное изображение (например, сетка) накладывается на заданную пользователем трехмерную поверхность, в результате чего получается новое нерегулярное изображение.
Для использования трехмерной поверхности необходимо предварительно создать обычный гильоширный элемент, используя основы (Base), огибающие (Round), заполнители (Fill) и функции (Funk). Затем следует определиться со способом построения трехмерной поверхности (Def3D). Координаты X, Y, Z задают положение поверхности в пространстве. Размеры (Ширина, Глубина, Высота) определяют линейные размеры поверхности в пространстве.
Мы рассмотрели основные понятия применительно к математике гильоша. Теперь поговорим о них более подробно.
Типы основ
- отрезок (Base Line)
- эллипс (Base Ellips)
- многоугольник (Base PolyAngl)
- прямоугольник (Base Rect)
- полилиния (Base Polyline)
- дуга эллипса (Base Arc)
- овал (Base RectRound)
- сплайн (Base Spline)
- спираль (Base Spiral)
- эвольвента (Base Pro)
- лиссажу (Base_Liss).
Отрезок — основа в виде отрезка с началом в точке с координатами (X,Y) и размерами Ширина и Высота.
Эллипс — основа в виде эллипса с центром в точке (X,Y) и размерами Ширина и Высота. Угол поворота — задает угол поворота Основы относительно ее центра в градусах (0°...360°). Скользящий поворот — поворачивается только основа, а созданные на базе ее огибающие строятся под углом 0°.
Многоугольник — правильный многоугольник, вписанный в окружность заданного радиуса, с заданным числом сторон. Координаты центра — определяют положение многоугольника на рабочем поле в миллиметрах. Радиус окружности — задает радиус описанной окружности в миллиметрах. Число сторон — обозначает число сторон многоугольника. Угол поворота — угол поворота основы относительно ее центра в градусах (0°...360°). Скользящий поворот — поворачивается только основа, а созданные на базе ее огибающие строятся под углом 0°.
Прямоугольник — основа в виде прямоугольника с размерами Ширина и Высота. Координаты центра — определяют положение верхнего левого угла прямоугольника на рабочем поле в миллиметрах. Ширина — задает ширину прямоугольника в миллиметрах. Высота — задает высоту прямоугольника в миллиметрах. Угол поворота — угол поворота основы относительно ее центра в градусах (0°...360°). Скользящий поворот — поворачивается только Основа, а созданные на ее базе огибающие строятся под углом 0°.
Полилиния — произвольная линия (рис. 1), созданная в каком-либо графическом редакторе, например в CorelDRAW!. Основу этого типа можно редактировать прямо на рабочем поле. Координаты центра — определяют положение основы на рабочем поле в миллиметрах. Ширина — задает ширину полилинии в миллиметрах. Высота — задает высоту полилинии в миллиметрах. Угол поворота — угол поворота основы относительно ее центра в градусах (0...360°). Сглаживание — делает кривую гладкой.
Дуга эллипса — основа в виде дуги эллипса (рис. 2). Координаты центра — определяют положение центра эллипса на рабочем поле в миллиметрах. Ширина — задает ширину эллипса в миллиметрах. Высота — задает высоту эллипса в миллиметрах. Начало дуги — обозначает начало дуги в градусах. Конец дуги — задает конец дуги в градусах.
Овал — основа в виде прямоугольника со скругленными углами (рис. 3). Координаты центра — определяют положение верхнего левого угла прямоугольника на рабочем поле в миллиметрах. Ширина — задает ширину прямоугольника в миллиметрах. Высота — задает высоту прямоугольника в миллиметрах. Угол поворота — угол поворота Основы относительно ее центра в градусах (0°...360°). Скользящий поворот — поворачивается только Основа, а созданные на базе ее огибающие строятся под углом 0°. Радиус скругления — определяется пользователем, но не может быть больше половины наименьшей стороны прямоугольника.
Сплайн — основа, описываемая кривой Безье (рис. 4). Координаты узлов — задают положения узлов в миллиметрах.
Спираль — основа в виде спирали Архимеда (рис. 5). Координаты центра — определяют положение центра спирали на рабочем поле в миллиметрах. Минимальный радиус — это минимальный радиус спирали в миллиметрах. Максимальный радиус — это максимальный радиус спирали в миллиметрах. Количество витков — задает количество витков спирали. Угол поворота — обозначает угол поворота основы относительно ее центра в градусах (0°...360°).
Эвольвента — основа этого типа создается на базе ранее построенной огибающей (рис. 6). Огибающая — ранее построенная огибающая, которая будет использована для задания новой основы.
Лиссажу — основа строится в виде фигуры Лиссажу (рис. 7) с использованием ранее определенных функций (Funk). Координаты центра — определяют положение центра фигуры Лиссажу на рабочем поле в миллиметрах. Ширина — указывает ширину основы в миллиметрах. Высота — указывает высоту основы в миллиметрах. Функция 1 — задает функцию для построения основы по оси абсцисс. Функция 2 — задает функцию для построения Основы по оси ординат. Угол поворота — угол поворота основы относительно ее центра в градусах (0...360°). Скользящий поворот — поворачивается только основа, а созданные на ее базе огибающие строятся под углом 0°.
Параметры огибающих
Амплитуда — задает амплитуду функции (рис. 8).
Фаза — задает фазовый сдвиг функции (рис. 9).
Смещение — задает относительное расстояние функции от Основы (рис. 10).
Частота — задает количество повторов функции (рис. 11).
Основа — Основа, на базе которой будет строиться огибающая.
Функция — задает функцию, которая будет использована при построении огибающей.
Наклон — задает направление смещения функции относительно Основы (рис. 12) и задает переменный закон наклона (рис. 13).
Типы заполнителей
- Линейный (Fill Line)
- Фазовый (Fill Phase)
- Специальный (Fill BMP)
- Текстовый (Fill Txt)
- Орнамент (Fill Ornam)
- Комбинированный (Fill Combi)
- Лучевой (Fill Radial)
Линейный — тип заполнителя, который получается путем расположения функции между двумя огибающими (рис.14).
Параметры линейного заполнителя: Число линий — определяет количество линий, образующих заполнитель. Частота — обозначает количество повторов функции каждой линии заполнителя. Функция — ранее определенная функция, используемая для построения заполнителя. Огибающая 1-я, 2-я — ранее определенные огибающие, между которыми будет строиться заполнитель. Заполнение (%) — задает величину амплитуды функции одной линии заполнителя. Смещение (%) — задает относительное смещение линий заполнителя. Фазовый сдвиг (%) — задает величину фазового сдвига линий заполнителя относительно друг друга. Заполнение, Смещение и Фазовый сдвиг могут быть промодулированы с помощью заранее определенных функций.
Фазовый — тип заполнителя, образованный путем фазового сдвига линий между двумя огибающими (рис. 15).
Параметры фазового заполнителя: Число линий — определяет количество линий, образующих заполнитель. Частота — обозначает количество повторов функции каждой линии заполнителя. Функция — ранее определенная функция, используемая для построения заполнителя. Огибающая 1-я, 2-я — ранее определенные огибающие, между которыми будет строиться заполнитель. Заполнение (%) — задает величину амплитуды функции одной линии заполнителя. Смещение (%) — задает относительное смещение линий заполнителя. Фазовый сдвиг (%) — задает величину фазового сдвига линии заполнителя относительно друг друга. Заполнение и Фазовый сдвиг могут быть промодулированы с помощью заранее определенных функций.
Специальный — тип заполнителя, аналогичный линейному, но с возможностью использования растрового изображения для его построения. Растровое изображение (рисунок) используется для модуляции параметров построения заполнителя. Рисунок должен быть предварительно сохранен в формате BMP (Grayscale).
Параметры специального заполнителя: Число линий — обозначает количество линий, образующих заполнитель. Частота — определяет количество повторов функции каждой линии заполнителя. Функция — ранее определенная функция, используемая для построения заполнителя. Огибающая 1-я, 2-я — ранее определенные огибающие, между которыми будет строиться заполнитель. Заполнение (%) — задает величину амплитуды функции одной линии заполнителя. Смещение (%) — задает относительное смещение линий заполнителя. Фазовый сдвиг (%) — задает величину фазового сдвига линии заполнителя относительно друг друга. Заполнение, Смещение и Фазовый сдвиг могут быть промодулированы с помощью заранее определенных функций.
Параметры рисунка: Координаты X, Y (мм) — определяют положение рисунка на рабочем поле в миллиметрах. Ширина — задает ширину рисунка на рабочем поле в миллиметрах. Высота — задает высоту рисунка на рабочем поле в миллиметрах. Размытие — обозначает размытие исходного рисунка в пикселах. Загрузить — загрузить рисунок в формате BMP (Grayscale). Показать — разрешает предварительный просмотр рисунка на рабочем поле.
Параметры модуляции: Смещение — при этом способе относительное смещение линий заполнителя будет определяться исходным изображением. Амплитуда — при этом способе амплитуда линий заполнителя будет определяться исходным изображением. Частота — частота линий заполнителя будет определяться исходным изображением. Пунктир —здесь линии заполнителя являются пунктирными и определяются исходным изображением. Частота задает частоту повторения штрихов. Ширина — ширина линий заполнителя будет определяться исходным изображением. Градации — задают число градаций толщины линий.
Способы модуляции могут быть использованы совместно.
Текстовый — тип заполнителя, в котором вместо линий используется текст.
Параметры текстового заполнителя: Число линий — определяет количество линий, образующих заполнитель. Частота — обозначает количество повторов функции каждой линии заполнителя. Функция — ранее определенная функция, используемая для построения заполнителя. Огибающая 1-я, 2-я — ранее определенные огибающие, между которыми будет строиться заполнитель. Заполнение (%) — задает величину амплитуды функции одной линии заполнителя. Смещение (%) — задает относительное смещение линий заполнителя. Фазовый сдвиг (%) — задает величину фазового сдвига линии заполнителя относительно друг друга. Заполнение, Смещение и Фазовый сдвиг могут быть промодулированы с помощью заранее определенных функций. Текст заполнения — строка, используемая для получения заполнителя.
Параметры рисунка: Координаты X, Y (мм) — определяют положение рисунка на рабочем поле в миллиметрах. Ширина — задает ширину рисунка на рабочем поле в миллиметрах. Высота — задает высоту рисунка на рабочем поле в миллиметрах. Размытие — обозначает размытие исходного рисунка в пикселах. Загрузить — загрузить рисунок в формате BMP (Grayscale). Показать — разрешает предварительный просмотр рисунка на рабочем поле.
Орнамент — тип заполнителя, образуемый путем наложения друг на друга линий с разной шириной.
Параметры заполнителя: Число линий — определяет количество линий, образующих заполнитель. Частота — обозначает количество повторов функции каждой линии заполнителя. Функция — ранее определенная функция, используемая для построения заполнителя. Огибающая 1-я, 2-я — ранее определенные огибающие, между которыми будет строиться заполнитель. Заполнение (%) — задает величину амплитуды функции одной линии заполнителя. Смещение (%) — задает относительное смещение линий заполнителя. Фазовый сдвиг (%) — задает величину фазового сдвига линии заполнителя относительно друг друга. Заполнение и Фазовый сдвиг могут быть промодулированы с помощью заранее определенных функций. Количество повторов — обозначает, сколько линий будет накладываться друг на друга.
Комбинированный — тип заполнителя, включающий свойства линейного и фазового заполнителей (рис. 16).
Параметры комбинированного заполнителя: Число линий — определяет количество групп линий, образующих заполнитель. Частота — обозначает количество повторов функции каждой линии заполнителя. Функция — ранее определенная функция, используемая для построения заполнителя. Огибающая 1-я,2-я — ранее определенные огибающие, между которыми будет строиться заполнитель. Заполнение (%) — задает величину амплитуды функции одной линии заполнителя. Смещение (%) — задает относительное смещение линий заполнителя. Фазовый сдвиг (%) — задает величину фазового сдвига линии заполнителя относительно друг друга. Заполнение и Фазовый сдвиг могут быть промодулированы с помощью заранее определенных функций. Число линий в группе — обозначает количество линий в группе. Фазовый сдвиг в группе (%) — задает фазовый сдвиг между линиями в группе. Число оборотов — определяет число оборотов (имеет смысл только для замкнутых огибающих). Число оборотов, Число линий в группе и Частота должны быть взаимно простыми числами.
Лучевой — тип заполнителя, в котором линии, образующие заполнитель, располагаются по нормали к огибающим (рис. 17). Параметры лучевого заполнителя: Число линий — определяет количество групп линий, образующих заполнитель. Частота — обозначает количество повторов функции каждой линии заполнителя. Функция — ранее определенная функция, используемая для построения заполнителя. Огибающая 1-я, 2-я — ранее определенные огибающие, между которыми будет строиться заполнитель. Заполнение (%) — задает величину амплитуды функции одной линии заполнителя. Смещение (%) — задает относительное смещение линий заполнителя. Фазовый сдвиг (%) — задает величину фазового сдвига линии заполнителя относительно друг друга. Заполнение и Фазовый сдвиг могут быть промодулированы с помощью заранее определенных функций. Число линий в группе — обозначает количество линий в группе. Фазовый сдвиг в группе (%) — определяет фазовый сдвиг между линиями в группе.
Способы задания функций
- Ряд Фурье (Funkt Furje)
- Формула (Funkt Formula)
- Битовый образ (Funkt BMP)
Ряд Фурье — функция задается коэффициентами ряда Фурье.
Параметры ряда Фурье: Количество гармоник AB — число составляющих ряда Фурье, используемых для вычисления Y(t). Количество гармоник CD — число составляющих ряда Фурье, используемых для вычисления X(t). Таблица Y(t) — соответствующие коэффициенты A и B ряда Фурье. Таблица X(t) — соответствующие коэффициенты С и D ряда Фурье.
Формула — функция задается аналитическим выражением. В аналитическом выражении допустимо использовать константы, параметры, а также следующие операции и функции:
- +, –, *, / — арифметические операции;
- sin(), cos() — тригонометрические функции;
- abs() — модуль;
- pi — число р (пи);
- exp() — экспонента;
- atan(x,y) — арктангенс;
- sqrt() — квадратный корень.
Параметры задания функции: Формула X(t) — задает составляющую функции X(t) в параметрическом виде. Формула Y(t) — задает составляющую функции Y(t) в параметрическом виде. Формула Z(x,y) — задает двухмерную функцию, используемую для построения поверхности.
Битовый образ — функция задается битовым образом. Такая функция используется только для построения поверхности.
Параметры задания функции: задается битовый образ в формате BMP (Grayscale).
Задание трехмерной поверхности. Трехмерная поверхность может быть задана следующими способами: сложением двух, ранее определенных функций; выбором одной, ранее определенной двухмерной функции (Funk_Type).
КомпьюАрт 5'2002