
- •Предмет компьютерная графика.
- •Эволюция технических средств компьютерной графики.
- •3. Программистская модель машинной графики.
- •4. Графический пакет. Основные понятия и определения.
- •Простой графический пакет.
- •Независимость пакета от графических устройств.
- •Геометрические преобразования.
- •Алгоритм Брезинхейма рисования отрезка.
- •Алгоритм впервые разработан для графопостроителя
- •Рисование окружности методом Брезинхейма.
- •Компьютерные шрифты.
- •Термины, относящиеся к шрифтам.
- •Метрические параметры шрифтов.
- •Заполнение областей.
- •Растровая развертка многоугольника.
- •Реалистичные изображения.
- •I. Поверхностные модели
- •Сплайновая кривая.
- •II. Модели сплошных тел.
- •III. Модель сплошных конструктивов.
- •Полигональные сетки.
- •Параметрические кубические кривые.
- •Цвет компьютерной графики.
- •5 Уровней освещенности:
- •Цветовые модели кг.
- •Методы закраски.
- •Закраска полигональной сетки.
- •Параметрические кубические кривые и поверхности.
- •Параметрические бикубические поверхности.
- •Удаление невидимых линий и поверхностей.
- •Сравнение по глубине и перспективным преобразованием.
- •Метод сортировки по глубине.
- •Метод плавающего горизонта.
- •Метод построчного сканирования.
- •Метод разбиения области.
- •Алгоритм Варнока
- •Комбинация примитивов.
- •Взаимное положение точки и объекта.
- •Определение видимых точек.
- •Изображение основных примитивов методом трассировки лучей.
- •2. Квадратичные поверхности.
- •Изображение прозрачных, преломляющих и зеркальных поверхностей.
- •Управление процессом формирования изображения.
- •Детализация поверхностей.
- •Способы вывода изображения в Windows.
Способы вывода изображения в Windows.
Общая схема:
HEL – слой эмулированной аппаратуры
HAL – слой абстрактной аппаратуры
GDI – интерфейс графического устройства (традиционный путь рисования)
GDI – набор подпрограмм для взаимодействия с растровыми графическими устройствами.
Программа взаимодействует с окном на экране, окно имеет контекст, в контексте окна определены шрифт, перо, кисть.
Перед началом рисования программа должна «захватить» контекст и установить значение для кисти, пера, шрифта. После этого методом вызова процедур GDI происходит рисование. После контекст освобождается.
GDI –механизм аппаратно независимый. Он опирается на DIB – устройства битовой карты, DIB – драйвер обобщенного оастрового устройства, драйвер на аппаратном уровне реализует свойства.
Недостаток: программист отделен от аппаратуры, огромное количество условностей и ограничений скорость вывода изображения существенно ограничена.
Альтернативный путь – библиотека Direct x – набор библиотек, предназначенная для осуществления быстрого доступа к аппаратным ресурсам компьютера для приложений типа игр и т.д.
В состав Direct x входят следующие элементы: Direct Draw – библиотека для прямого доступа к видеоадаптеру; Direct 3D – библиотека для вывода и обработки 3-х мерных изображений.
Direct Sound – библиотека для доступа к звуковой аппаратуре.
Direct Play – библиотека для доступа к игровым устройствам
Direct Setup – набор средств для настройки элементов операционной системы.
Open Gl – процедурный графический язык, является универсальным, реализован на разных платформах.
HAL – Hardware Abstraction Layer – слой абстрактной аппаратуры.
Direct x построен на основе СОМ – модели. СОМ – компонент ???? модель
В СОМ-модели функции ОС производятся СОМ-серверами. Сервер предоставляет пользователю набор интерфейсов. Интерфейс – есть совокупность функций. Интерфейс напоминает понятие метода, список методов, которые выполняет сервер.
Интерфейсы наследуются друг от друга. Самый простой интерфейс – базовый Iun Known. Он содержит несколько методов: может добавлять к себе ссылку – регистрировать нового клиента; освобождать ссылку и метод Query Interface, с помощью которого можно запрашивать поддерживает ли сервер некий интерфейс. Интерфейс описывается GUID – глобальным уникальным идентификатором, который отличает один интерфейс от другого.
HAL представляет собой некую абстрактную обобщенную видеокарту. Этот слой предоставляет адрес к видеокарте. С точки зрения этого слоя видеокарта – непрерывная последовательность видеопамяти.
HEL – Hardware Emulation Layer – выполняет функции, которые аппаратно не способна выполнять видеокарта, например, некоторые карты поддерживают аппаратный блитинг (перенос), если карта не может, то это делает HEL.
С точки зрения пространства он представляет собой следующее: пр-ст взаимодействует с поверхностью Surfase, поверхность – область видеопамяти, поверхность может занимать всю видеопамять, часть видеопамяти:
Спрайт – некий элементарный самостоятельный элемент изображения.
Политра – если формат пикселов на поверхности 1, 4 или 8 бит, то используется политра: значение пиксела в видеопамяти не определяет цвет, а служит для выбора одного из элементов политры. Элемент политры содержит RGB – код цвета, каждой поверхности, своя политра или одна политра на все поверхности.
Само по себе изображение может быть полноэкранным или оконным, если оконное, то политру нужно делить с GDI. GDI резервирует 20 элементов политры, 236 для программиста остается.
Если режим полноэкранный, то ограничений нет.
Если оконный режим, то с поверхностью связана ограничивающая структура Direct Draw Clipper – отсекает элементы изображения, которые не покидают окно.
Если полноэкранный режим, то чтобы совместить с работой GDI, формируется окно, которое имеет размер экрана и расположен поверх всех окон.
Чтобы вывести с помощью GDI надпись, Direct Draw позволяет связать поверхность с контекстом окна.
Direct 3D – есть набор интерфейсов для формирования 3-мерных изображений.
Direct 3D:
Изображение формируется на основе совокупности примитивов. Примитивы помещаются в буфер выполнения, перед тем как формируется изображение.
Ракурс – описание масштаба, вида проекции, направление проецирования и т.д.
Свет – описание источников света и их параметров.
Материал – материал объекта и его отражающие свойства.
Машина Direct 3D
с
остоит
из:
Буфер выполнения, его структура: Команда представляет из себя следующее:
Команда
обработ.
вершин
Список вершин
Матричное произведение
Команда материала
Треугольник
Треугольник
Треугольник