Обеспечение графических возможностей в вычислительных системах
Информация: текстовая и графическая.
Текстовая – совокупность алфавитно – цифровых символов и специальных знаков.
Графическая – любая совокупность документов, изображений и текстов.
Графика – результат визуального представления реального или воображаемого объекта, полученный традиционными методами: рисованием или печатанием худ. образов.
Компьютерная графика – оптимизация (автоматизация) кодирования, обработки, декодирования оптической информации в специальном ПО, на выходе – различные графические изображения.
Основа компьютерной графики – геометрия (начертательная, прикладная…), вычислительная математика и программирование на языках высокого уровня.
Направления компьютерной графики (направления обработки информации):
1) Создание изображения и его визуализация (DRAW, корень);
2) Обработка изображений (преобразование уже существующих изображений; улучшение, реставрация, значительные изменения - EDIT);
3) Распознавание изображений (выделение отдельных фрагментов, классификация изображения как такового).
Теоретические основы компьютерной графики: модель геометрического объекта -> прикладная графическая программа
-> графическая оболочка (Математические основы) -> ЭВМ (ОС компаратора, ПО для обработки)
Обеспечение графическими возможностями вычислительную систему(несколько подходов):
1) В языки высокого уровня включены графические операторы, которые позволяют описать и реализовать эти графические объекты (операторы языка формируют графические примитивы и позволяют реализовать некоторые действия над этими графическими примитивами).
Например, в языке Cи мы имеем минимальный набор графических функций:
• initgr(...) функция инициализации графики;
• move(x,y) перемещение в точку (перо на графопостроители или луч);
• draw(x,y) рисовать отрезок от текущей точки до точки с координатами x,y;
• endgr() завершение работы в графическом режиме
Этот примитивный набор операторов позволяет строить изображение на уровне точек, линий и т.д. Данный подход требует знания соответствующего языка программирования.
Графическая программа реализует обобщенные методы и алгоритмы, которые должны обязательно соответствовать архитектуре компьютера.
API- application program interface – интерфейс разработки прикладных программ.
Примитив API – функция set pixel (hdc, x,y, clr) – 1 пиксель на экране. hdc – идентификатор контекста графического устройства или числовое значение, знание которого позволяет вывод. x,y – координаты пикселя; clr – цвет (4 байтное слово _RGB, 0-255).
Графические библиотеки – OpenGL (Open Graphic Library), DirectX 3D
2) Использование пакетов графических процедур, САПР (этот подход наиболее развит на сегодняшний день). Примеры:
• PCad (для инженерного применения - точные построения объектов);
• AutoCad (позволяет строить очередь построения; пакет, позволяющий строить трёхмерные графические объекты);
• "ЛАД" (для моделирования поведения цифровых устройств).
То есть это достаточно сложная система графических процедур, которая имеет определённые правила работы в данной системе. Такие графически оболочки не требуют изучения языков программирования высокого уровня. Это такие пакеты, как:
• Paint Brash;
• Corel Draw.
Современные пакеты имеют достаточно большой набор графических примитивов и разнообразные команды преобразования (имеют большой набор средств).
3) Псевдографика - построение изображения, используя стандартную клавиатуру компьютера (символы, …).