
- •Часть 2.
- •1. Введение в простые графические спецэффекты
- •1.1. Природа спецэффектов
- •1.2. Приёмы программирования графических спецэффектов
- •1.2.1. Хранение изображения в памяти
- •1.2.2. Цветовые преобразования
- •1.2.3. Фильтрация изображений
- •1.2.4. Разбиение изображения на слои
- •1.2.5. Использование масок
- •1.2.6. Афинные преобразования изображения
- •1.2.7. Морфинг
- •1.2.8. Работа с твёрдыми телами
- •1.2.8. Текстуры.
- •1.3.4. Вид через запотевшее стекло
- •2. Особенности программирования компьютерной графики
- •2.1. Обеспечение быстродействия
- •2.2. Программирование на языках высокого уровня
- •2.3. Программирование на языках сверхвысокого уровня
- •2.4. Использование готовых графических пакетов
- •Список литературы
2.3. Программирование на языках сверхвысокого уровня
Языками сверхвысокого уровня называются интерпретируемые языки программирования с очень высоким уровнем абстракции. В таких языках программа может пониматься уже не как последовательность действий, а как нечто иное. К таким языкам относится и семейство языков LISP/Scheme, на котором написаны наши примеры. Такие языки сильно проигрывают в быстродействии. Ассемблерные вставки в таких языках, как правило, уже не предусмотрены. Чтобы создать быстродействующую функцию, избегая холостого использования процессорного времени на интерпретацию программного кода, доступен приём, аналогичный ассемблерным вставкам - использование программ на C++ или другом ЯВУ. Например, среда PLT Scheme имеет специальные средства для написания функций на C++.
2.4. Использование готовых графических пакетов
В состав многих программных сред входят готовые графические пакеты. Если среда не создавалась специально для работы с графикой, стандартная графическая библиотека может быть очень скудной. Но можно найти дополнительные библиотеки, написанные в интересующей среде на соответствующем языке программирования. Есть также много других форм существования готовых пакетов, например - DLL - динамические библиотеки MS Windows. Программный пакет доступен через некий интерфейс, и доступ к этому интерфейсу обеспечивается средствами интересующей программной среды, к которой мы хотим подключить пакет. Этот интерфейс называется API - Application Programming Interface, то есть "интерфейс программирования приложений". Чтобы использовать функции графического пакета, нужно узнать, какое у него "API". Некоторые пакеты содержат пользовательскую среду для работы с компьютерной графикой, и позволяют расширять себя (добавлять в свой состав новые функции), разрабатывая "плагины" (дополнения) для этих пакетов.
Графический пакет GIMP
Для полноты изложения упомянем мощный графический пакет GIMP. GIMP (GNU Image Manipulation Program) включает в себя средства для создания и обработки растровой графики, и растровый графический редактор. Частично поддерживается и векторная графика. GIMP позволяет обрабатывать и ретушировать фотографии, работать со слоями, преобразовывать изображения в различные форматы. GIMP позволяет автоматизировать выполнение повторяющихся действий, и является высококачественным средством для создания экранной и веб-графики. GIMP является платформой для создания мощных и современных алгоритмов обработки графики учёными и дизайнерами, и легко расширяем за счёт простой установки дополнений. Как и среда PLT Scheme, GIMP распространяется по открытой лицензии (open-source). GIMP может являться альтернативой платному пакету Adobe Photoshop.
Список литературы
1 Хювёнен Э., Сеппянен Й. Мир Лиспа. В 2-х томах. М.: Мир, 1990.
Т.1 : Введение в язык Лисп и функциональное программирование. 447 с.
ISBN 5-03-001935-9
2 Павлидис Т. Алгоритмы машинной графики и обработки изображений.
М. Радио и связь, 1986. 384 c. 3 Шикин Е.В., Боресков А.Г. Компьютерная графика. Динамика, реалистические
изображения. Москва, "Диалог-МИФИ", 1995. 288 c. ISBN 5-86404-061-4
4 Роджерс Д. Алгоритмические основы машинной графики. Москва, Мир, 1989. 495 с.
5 Гонсалес Р., Вудс Р. Цифровая обработка изображений. Москва, Техносфера, 2005. 1072
с. ISBN: 5-94836-028-8
6 Иванов Д.В., Хропов А.А. и др. Алгоритмические основы растровой графики.
Интернет-университет информационных технологий, Бином. Лаборатория знаний,
2007 г.
Web-сайты: 7 Википедия - свободная энциклопедия: http://wikipedia.org/