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

1.2 Программирование

Прогресс в области производства аппаратуры в значительной степени изменил отношение к системам машинной графики. Уникальное и дорогостоящее средство - графический дисплей - теперь повсеместно заменяет алфавитно-цифровой видеотерминал как основное средство связи человека с ЭВМ. Такой же прогресс наблюдается и в области программного обеспечения МГ. Процесс совершенствования программного обеспечения был длительным и медленным. Был пройден путь от аппаратно-зависимых пакетов подпрограмм низкого уровня, поставляемых изготовителями вместе с конкретными дисплеями, к аппаратно-независимым пакетам высокого уровня. Такие пакеты могут быть использованы для управления самыми разнообразными графическими устройствами - графопостроителями, дисплеями растровыми и векторными.

Основная цель аппаратно-независимого пакета, используемого в сочетании с языком высокого уровня (FORTRAN, PASCAL, C) состоит в том, чтобы обеспечить мобильность прикладной программы при переходе с одной ЭВМ на другую и от одного графического устройства к другому.

Существенный шаг вперед сделан в середине 70-х годов с введением "Графической системы Core " [1], а затем группы "Графических стандартов ISO ", имеющих ядром стандарт GKS [6]. В настоящее время создано множество графических пакетов, среди которых могут быть отмечены такие пакеты как PAINTBRUSH, COREL DRAW и др. В состав языков высокого уровня (PASCAL, C) включены специальные графические модули, которые могут являться инструментом, как для создания прикладных графических пакетов, так и для создания отдельных графических подпрограмм.

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

1.2.1 Координатные пространства

Чтобы получить изображение прикладная программа должна описать для графической системы различные выходные примитивы, указав их положение и размеры в прямоугольной системе координат. Эти координаты по своей природе являются безразмерными, поэтому прикладная программа может задавать объекты в единицах, которые являются естественными для данного приложения и для пользователя. Так, например, размеры детали могут задаваться в миллиметрах, графики изменения температуры во времени (секунды, минуты или часы). Эти прикладные координаты являются координатами пользователя. Поскольку они позволяют отображать объекты в двумерном или трехмерном мире пользователя, их называют мировыми координатами. ГОСТ 27459-87 определяет мировые координаты как "независимые от устройства декартовы координаты, используемые в программах пользователя для задания входных и выходных данных" [5]. Таким образом, объекты могут быть заданы в мировой системе координат как для хранения в прикладной модели, так и с целью описания для графического пакета (ГП). Мировые координаты задаются обычно системой счисления с плавающей запятой.

После того, как объекты описаны для графического пакета в виде совокупности выходных примитивов, ГП формирует изображение объектов на экране, отображая независимые от устройства мировые координаты на логическую систему координат - нормированные координаты, в которых видовая поверхность нормируется действительными числами от 0 до 1 как по координате Х, так и по координате Y. По ГОСТ 27459-87 это "координаты, заданные в промежуточной не зависимой от устройства системе координат и нормированные относительно некоторого диапазона, обычно от нуля до единицы" [5]. Изображение, выраженное в нормированных координатах, располагается в одних и тех же относительных позициях при визуализации на любое устройство. Начало координат (Х=0, Y=0) располагается в левом нижнем (верхнем) углу видовой поверхности.

И, наконец, физические координаты устройства - это координаты, зависящие от устройства и задаваемые в элементах изображения - пикселях (дисплей), миллиметрах (графопостроитель) и т.п.

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