Лекции по "Компьютерной графике"
Курс лекций, 18 Октября 2011, автор: пользователь скрыл имя
Краткое описание
Работа содержит лекции по дисциплине "Компьютерная графика".
Файлы: 1 файл
kr - extended version.doc
— 1.24 Мб (Скачать)На первом – нижнем уровне находятся аппаратно-зависимые драйверы устройств (иногда организованные в виде самостоятельных графпакетов), обладающие достаточным набором типичных элементарных функций. Назначение этого уровня - формирование файлов вывода на графические устройства.
На
втором – среднем уровне находится
аппаратно-независимый
На
третьем – верхнем уровне находятся
проблемно-ориентированные
Адаптируемость прикладных программ в части средств вывода естественным образом обеспечивается последовательным использованием иерархического принципа, т.е. либо заменой требуемого уровня, либо надстройкой необходимых уровней.
Мобильность
прикладных программ по отношению к
изменению технических средств
обеспечивается возможностью использования
соответствующих драйверов
Основные
преимущества подхода с использованием
графпакетов состоят в
- Легкая обучаемость, так как пользователь пакета не выходит за рамки удобного либо
привычного ему языка.
- Легкая расширяемость за счет написания самим пользователем подпрограмм, необходимых для его приложения. Задача системных программистов состоит в том, чтобы дать базисный пакет, пригодный для многих пользователей и многих приложений.
- Легкая переносимость прикладной программы на другие ЭВМ.
- Легкая адаптируемость к новым требованиям либо аппаратным возможностям.
- Легкое обеспечение многоязыковости либо за счет наличия функционально идентичного пакета для другого языка, либо за счет использования одной и той же библиотеки в рамках многоязыковой системы программирования, либо за счет единого исполнительного модуля, доступного с помощью пакетов процедур связи из различных систем программирования.
Очевидными недостатками такого подхода являются:
- Недостаточная гибкость, связанная с тем, что заранее фиксированный выбор базисного пакета со сравнительно ограниченными средствами может значительно усложнить прикладную программу, требующую функций, выходящих за рамки базисных.
- Громоздкость, связанная с тем, что простота расширений в сочетании с недостаточной гибкостью провоцирует либо на создание множества подпрограмм по разному выполняющих схожие функции, либо на создание универсальных подпрограмм с большим числом разного рода дополнительных параметров для преодоления ограничений или неэффективностей.
Несмотря на отмеченные недостатки, можно уверенно утверждать, что создание пакетов
графических
подпрограмм является основным средством
разработки графического программного
обеспечения.
IGES (Initial Graphics
Exchange Specification), Прикладные графические
протоколы это объектно-ориентированные
протоколы передачи данных между прикладными
системами. Они наиболее компактны (вследствие
высокой семантической насыщенности),
допускают свободу в выборе различных
способов графического представления,
но требуют большей мощности локальной
ЭВМ для интерпретации. Прикладные протоколы
наиболее стандартизованы для САПР машиностроения
и электроники.
CGM (Computer Graphics
Metafile) - аппаратно-независимый формат обмена
графической информацией. Используется
для передачи и запоминания информации,
описывающей изображения.
WMF (Windows Metafile
Format) В системе Windows фирмы Microsoft для сохранения
и последующего использования цветных
изображений используется свой формат
метафайла. В WMF используется двоичный
способ кодирования, он, наиболее компактен
и обеспечивает наибольшие скорости упаковки
и воспроизведения, но неудобен для просмотра
и анализа человеком. Метафайл содержит
заголовок и собственно описание изображения
в виде записей GDI (Graphical Device Interface) функций.
Всего предусмотрено три варианта метафайла
– стандартный (все изображение), размещаемый
(placeable, изображение вставляемое в документ)
и буферный (clipboard, для временного хранения
и вставки). Отличия вариантов состоят
только в разных структурах заголовков.
В составе Windows предусмотрены функции
для создания и проигрывания метафайлов
и манипулирования ими.
GKS (Graphical Kernel
System) В 1979 г. GKS была принята в
качестве отправной точки
GDI (Graphical Device
Interface) Стандарт для Windows, возможна
работа с перекрывающимися прямоугольными
окнами за счет использования контекста
рисования (набора текущих параметров
рисования) для каждого окна. Более широкий
набор примитивов.
CGI (Computer Graphics
Interface) Это стандарт на интерфейс
между аппаратно-независимой
- управление устройством,
- вывод графических примитивов,
- изменение графических атрибутов,
- сегментация изображений,
- графический ввод,
- растровые операции.
Отличительными
особенностями CGI (по сравнению со стандартами
на интерфейс базисной графической
системы) являются следующие: расширенный
набор графических примитивов, возможность
преобразования координат, увеличенное
количество логических устройств ввода,
наличие растровых операций. В целом набор
функций CGI достаточно удобен для создания
надстроенного над ним графического программного
обеспечения. Последнее позволяет эффективно
создавать на основе CGI различные базисные
графические системы. Следует отметить,
что стандарт на интерфейс виртуального
устройства ориентирован в первую очередь
на унификацию способа взаимодействия
с различными графическими устройствами
и предназначен для системных, но не прикладных
программистов. Он был утвержден после
появления множества проектов по стандартизации
программных интерфейсов базисной графической
системы.
VESA (Video Electronics
Standards Association) позволяет работать с отдельными
пикселами изображения.
X-Window
Это развитие графических систем под юникс, Архитектура Х-системы базируется на модели клиент-сервер. Клиент - прикладная программа. Сервер - программа, вызванная на компьютере, к которому физически подключен дисплей. В ней сосредоточена вся аппаратная зависимость.
Основные критерии, которыми руководствовались в разработке Х-системы:
- транспортабельность - система должна быть применима к различным дисплеям;
- аппаратная независимость приложений;
- сетевая прозрачность - приложения могут быть вызваны как локально, так и на удаленных ЭВМ без каких-либо их изменений и без необходимости информирования об отличиях. Должны быть поддержаны различные сетевые протоколы;
- конкурирующие приложения - дисплей может делиться между несколькими приложениями. Возможен вывод из нескольких приложений как в единственное, так и в несколько окон;
- интерфейсы с приложениями и управление окнами не предписывает какого либо одного способа работы с окнами, например, только перекрывающимися;
- перекрытия окон - ввод/вывод должны быть возможны для полностью или частично затененных окон.
Одно из основных
отличительных свойств Х-
кими клиентами и наоборот одного
клиента с несколькими
Cоздание пользовательского
интерфейса
Инструментарий
создания пользовательского интерфейса
- это библиотека технологических
интерактивных средств, дающих возможность
использовать физические устройства ввода
(мышь, клавиатура, планшет...) для ввода
значений (таких как команда, число,
положение или имя) при наличии обратной
связи, отображаемой на экране. Программист
использует этот инструментарий для организации
взаимодействия с человеком. Инструментарий
содержит набор функций, реализующий компоненты
интерфейса нижнего уровня такие как:
меню, кнопки, зоны диалога, подокна, зоны
прокрутки.
Возможные модели управления:
1. Внутренняя
(прикладная программа
2. Внешняя
(интерфейсные процедуры
3. Смешанная,
включающая модули с
Пути реализации:
- механизм обратного вызова (прикладная программа организована как набор процедур вызываемых инструментарием);
- разделяемая память (между прикладной программой и инструментарием);
- передача сообщений;
- механизм обработки событий.