Точечный примитив: ПОЛИМАРКЕР - ЯГС генерирует набор символов некоторого типа, которые центрируются в указанных точках. Эти символы называются маркерами и отмечают последовательность позиций знаками требуемой формы.
Текстовый примитив: ТЕКСТ — ЯГС генерирует строку литер с началом в указанной позиции.
Растровые примитивы: ПОЛИГОНАЛЬНАЯ ОБЛАСТЬ (FILL AREA) - ЯГС генерирует многоугольник; область, которую он ограничивает, может быть пустой, иметь фоновую окраску, быть покрытой узором по шаблону или заштрихованной.
МАТРИЦА ЯЧЕЕК (CELL ARRAY) - ЯГС генерирует матрицу прямоугольных ячеек, каждой из которых присвоен индивидуальный цвет. Этот примитив является обобщением матрицы пикселей растрового устройства. Тем не менее ячейки этого примитива не обязательно должны взаимно однозначно соответствовать аппаратным пикселям.
Примитив общего назначения: ОБОБЩЕННЫЙ ПРИМШИВ ВЫВОДА (ОПВ) (GENERALIZED DRAWING PRIMITIVE - GDP) - с помощью этого примитива ЯГС предоставляет возможность использовать специфические средства графического вывода стан-
Масштаб толщины линии — фактическая толщина линии определяется произведением номинальной толщины на коэффициент масштабирования (масштаб толщины линии). Линии различной толщины показаны на рис. 1.
Цвет — нужный цвет достигается заданием интенсивностей красного (К), зеленого (3) -и синего (С) цветов, т. е. КЗС-интенсивности.
Модель цвета КЗС-интенсивности можно представить в виде цветового куба. Три оси трехмерной системы координат с началом в одном из углов куба определяют значение интенсивностей красного, зеленого и синего цветов соответственно. Значения интенсивностей лежат в интервале 0...1. Любая точка внутри куба (включая грани) задает некоторый цвет. Черному цвету соответствуют " КЗС-интенсивность с координатой (0, 0, 0), белому - с координатой (1,1,1).
Таблица 1. Атрибуты примитивов вывода
ЛОМАНАЯ
ИДЕНТИФИКАТОР УКАЗАНИЯ МАСШТАБ ТОЛЩИНЫ ЛИНИИ
ТИП ЛИНИИ ЦВЕТ
ПОЛИМАРКЕР
ИДЕНТИФИКАТОР УКАЗАНИЯ МАСШТАБ МАРКЕРА
ТИП МАРКЕРА ЦВЕТ
ТЕКСТ
ИДЕНТИФИКАТОР УКАЗАНИЯ НАПРАВЛЕНИЕ ТЕКСТА МЕЖЛИТЕРНЫЙ ПЮСВЕТ ВЫРАВНИВАНИЕ ТЕКСТА
ВЫСОТА ЛИТЕРЫ ВЕРТИКАЛЬ ЛИТЕРЫ ШРИФТ ЦВЕТ
ПОЛИГОНАЛЬНАЯ ОБЛАСТЬ
ИДЕНТИФИКАТОР УКАЗАНИЯ РАЗМЕР ШАБЛОНА ТОЧКА ПРИВЯЗКИ ШАБЛОНА
МАТРИЦА ШАБЛОНА
ВИД ЗАПОЛНЕНИЯ ВИД ШТРИХОВКИ ЦВЕТ
МАТРИЦА ЯЧЕЕК
ИДЕНТИФИКАТОР, УКАЗАНИЯ
ЦВЕТ
ОБОБЩЕННЫЙ ПРИМИТИВ ВЫВОДА
ИДЕНТИФИКАТОР УКАЗАНИЯ
ЦВЕТ
Тип маркера — число, указывающее конкретный знак, который будет использоваться для отметки позиций, заданных при определении полимаркера.
Масштаб маркера — реальный размер маркера-определяется произведением номинального размера на коэффициент масштабирования (масштаб маркера). Маркеры различных типов и размеров показаны на рис. 1.
Шрифт — задается числом, выбирающим то или иное написание литер текста исходя из возможностей станции. Примеры написания текста различным шрифтом показаны на рис. 7.
Рис. 7 Примеры текста с различными атрибутами
Точность текста - атрибут, отражающий точность, до которой позиционирование литер выходного текста, их размеры, ориентация и шрифт соответствуют запросам прикладной программы. Точность представления текста обеспечивается по возрастающей с точностью до строки, до литеры, до штриха. Обычно размеры и ориентации литер текста, генерируемого аппаратными знакогенераторами, могут изменяться в ограниченном диапазоне. Например, если строки текста могут выводиться только горизонтально и литерами трех возможных размеров, то такой текст обеспечивает представление с точностью до строки. Вывод литер текста с точностью до штриха, скорее всего, потребует их формирования с помощью программного знакогенератора.
Высота литеры — размер литеры по вертикали (кегль шрифта).
Вертикаль литеры — вектор ориентации вертикальной (продольной) оси литеры.
Масштаб расширения литеры — коэффициент, определяющий отклонение отношения значений ширины (толщины) литеры к ее высоте от номинального значения, принятого при разработке данного шрифта. Направление текста — порядок, в котором выводится последовательность литер. Нормальный порядок письма, используемый в этой книге, — "вправо". Это значит, что литеры текста, который вы читаете, следуют слева направо. В ЯГС дополнительно • предусмотрены следующие направления письма: влево, вверх и вниз.
Межлитерный просвет — дополнительное смещение между рядом стоящими литерами, добавляемое к нормальному расстоянию (просвету), принятому при разработке данного шрифта.
Выравнивание текста — атрибут, описывающий размещение строки литер относительно ее точки привязки, заданной при определении текстового примитива (например, выравнивание может быть левое, центральное).
Примеры текста с различными значениями высоты литер, их вертикали, масштаба расширения, направления текста и выравнивания приведены на рисунке 2.
Вид заполнения — используется для указания характера заполнения полигональной области. Может принимать следующие значения: пусто, заливка (цветом), по шаблону, штриховка.
Примеры полигональных областей, заполненных различным способом, приведены на рис. 8.
Рисунок 8 - Примеры полигональных областей
Все фигуры были получены начерно-белом растровом графопостроителе. Чтобы получить область, заполненную по шаблону, ее площадь последовательно покрывается повторяющейся фигурой шаблона, определяемого размером, точной привязки и матрицей задания шаблона.
Размер шаблона — задает размеры базового прямоугольника, в который помещается фигура шаблона.
Точка привязки шаблона - определяет исходную точку внутри области, с которой совмещается левый нижний угол базового прямоугольника шаблона. Затем фигура шаблона последовательно воспроизводится в обоих направлениях, вплоть до полного заполнения узором всей внутренней области.
Матрица шаблона — задается матрицей прямоугольных ячеек, каждой из которых присвоен определенный цвет. Эта цветовая палитра используется при раскраске базового прямоугольника шаблона и всех его копий. Пример заполнения прямоугольной области по шаблону дан на рис. 3
Вид штриховки — число, определяющее одну из реализованных для данной графической станции групп параметров, описывающих характер штриховки.