Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
1blok.docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
2.83 Mб
Скачать

7. Графические функции и основные категории.

При знакомстве читателей с графическими пакетами мы будем использовать подход, ставший уже классическим в кибернетике, — концепцию черного ящика (black box). Этим термином в технике принято называть устройства и системы, функциональные возможности которых описываются только соответствием между определенной входной и выходной информацией, а о внутреннем механизме работы никакой информации не имеется. Таким обра-

зом, мы будем считать графическую систему подобным черным ящиком, входом которого являются различные функции, вызываемые из прикладной программы, информация, передаваемая с помощью устройств ввода, таких как мышь или клавиатура, и сообщения, передаваемые операционной системой. Выходом системы являются в первую очередь графические образы, формируемые на экране. На данном этапе входом для черного яшика будут только вызовы функций, а выходом — примитивы, отображаемые на экране ЭЛТ (рис. 2.6). Аналогичный подход можно использовать и при изучении других графических API.

Описывать возможности API мы будем через функции его библиотеки. В состав мощного пакета API может входить несколько сотен функций, а потому желательно сразу же разделить

их на категории. Мы рассмотрим функции шести категорий.

¦ Функции описания примитивов {primitive functions) определяют объекты нижнего уровня иерархии — примитивы, — которые способна отображать графическая система. В большинстве графических API имеются такие примитивы, как точки, отрезки

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

¦ Если с помощью примитивов определяется, что появится на экране, то с помощью атрибутов определяется, как будут выглядеть тображаемые объекты, т.е. атрибуты определяют способ вывода объектов на экран. Функции задания атрибутов (Attribute

functions) позволяют прикладному программисту выполнять широкий круг операций настройки изображения — от выбора цвета до указания образца заливки внутренней области многоугольника или шрифта для надписей на графике.

Нужно задать параметры используемой модели синтезированной камеры, с помощью которой создается изображение. Как было сказано в главе 1, от прикладного программиста требуется выбрать положение и ориентацию камеры в мировой системе коорди-

нат и параметры объектива, в частности фокусное расстояние. Зная эти параметры системы, он сможет не только правильно построить изображение, но и отсечь те объекты, которые оказываются вне поля зрения. Последнее позволяет не тратить времени впустую. Функции визуализации (viewing functions) позволяют задать разнообразные виды, хотя разные типы API существенно отличаются возможностями манипулирования видами.

¦ Одна из наиболее интересных возможностей хорошего графического пакета — набор функций геометрических преобразований (transformation functions), которые позволя-

ют пользователю выполнять различные преобразования объектов — поворот, плоскопараллельный перенос, масштабирование и т.п. Такого рода операции мы часто будем использовать при описании методов визуализации (глава 5) и моделирования (глава 8).

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]