
- •Понятие компьютерной графики. Задачи. Основные понятия и определения.
- •Основные направления машинной и компьютерной графики. Деловая графика. Основные направления компьютерной графики
- •Деловая графика
- •Виды компьютерной графики. Растровая графика. Векторная графика. Достоинства и недостатки.
- •Фрактальная графика.
- •Классы программ для работы с растровой графикой. Средства создания и обработки изображений.
- •Разрешение изображения и его размер.
- •Понятие растра. Методы растрирования
- •Rt (Rational-Tangent)-растрирование (растрирование по методу рациональных тангенсов)
- •Суперячейки
- •Растрирование по методу иррациональных тангенсов
- •Частотно-модулированное растрирование
- •Основы теории цвета. Цвет в машинной графике.
- •Основы теории цвета
- •У всех своя правда
- •Излучаемый и отражаемый свет
- •Цветное зрение
- •Метамерия цвета
- •Цветовая температура
- •Цветовая и яркостная адаптация зрения
- •Аддитивная цветовая модель rgb.
- •Числовое представление
- •Субтрактивная цветовая модель cmyk.
- •Преобразование между моделями rgb и cmyk.
- •Цветовая модель hsv.
- •Цветовая модель Lab.
- •Кодирование цвета.
- •Палитра.
- •Палитровые видеорежимы
- •Сравнение с HighColor и TrueColor
- •Индексные палитры.
- •Фиксированная палитра.
- •Безопасная палитра.
- •Алгоритмы вывода графических примитивов. Прямое вычисление координат.
- •Инкрементные алгоритмы. Алгоритм Брезенхэма вывода прямой линии.
- •Джойстики
- •Трекболл (trackball)
- •Тачпад (touchpad) и трекпоинт (trackpoint)
- •Сканеры
- •Дигитайзеры
- •Цифровая фотокамера
- •Принтеры
- •Устройства ввода. Основные характеристики.
- •Устройства ввода графической информации
- •Устройства ввода звуковой информации
- •Устройства ввода текстовой информации
- •Устройства вывода. Основные характеристики.
- •Устройства для вывода визуальной информации
- •Устройства для вывода звуковой информации
- •Устройства для вывода прочей информации
- •Основные геометрические характеристики растра.
- •Принципы формирования изображения на экране.
- •Вертикальная развертка и двойная буферизация.
- •Архитектура современных видеосистем. Видеопамять.
- •Архитектура современных видеосистем. Графический процессор.
- •Архитектура современных видеосистем. Локальная шина.
- •Графические видеорежимы. Эволюция видеоадаптеров.
- •Стандартные графические режимы:
- •Современные стандарты и интерфейсы программирования компьютерной графики.
- •Форматы графических файлов.
- •Векторные форматы
- •Растровые форматы
- •Методы 3d моделирования.
- •Поверхностный метод 3d моделирования.
- •Твердотельный тип 3d моделирования.
- •Алгоритмы вывода графических примитивов. Прямое вычисление координат. Построение линий, окружностей, эллипсов
- •Алгоритм Брезенхэма вывода окружности.
- •Фрактальная графика. Основные характеристики.
- •Программные средства для работы с фрактальной графикой.
- •Понятие фрактала. Фрактал Мандельброта.
- •Площадные фракталы
- •Фракталы на основе метода ifs
- •Свойства фракталов.
Принципы формирования изображения на экране.
Существует два способа реализации построения изображений на экране дисплея – векторный (функциональный) и растровый. В первом случае электронный луч поочередно рисует на экране различные знаки – элементы изображения. На современных персональных компьютерах чаще используется растровый способ изображения графической информации, в котором изображение представлено прямоугольной матрицей точек (пикселов), имеющих свой цвет из заданного набора цветов (палитры). Графический режим осуществляет видеоадаптер, управляющий работой электронной трубки и видеопамятью, в которой запоминается текущее изображение. Адаптер обеспечивает регулярное отображение видеопамяти на экране монитора.
Растровое изображение – это совокупность разноцветных точек. Координаты точек определяются декартовой (прямоугольной) системой с началом координат, как правило, в левом верхнем углу экрана. Абсцисса х точки увеличивается слева направо, ордината у – сверху вниз. Таким образом, любая графическая операция сводится к работе с отдельными точками экрана монитора – пикселами. Существуют специальные графические библиотеки программ, которые предназначены для изображения более сложных объектов, являющихся объединением группы пикселов; наиболее употребляемые линии, геометрические фигуры, шрифты и т.п.
В последние годы возрос интерес со стороны пользователей к специальным инструментальным программам машинной графики: графическим редакторам, издательским системам и т.п. В них предоставляется удобный интерфейс для пользователей, автоматизируется большое количество разнообразных действий с графической информацией – от построения простейших рисунков до создания мультипликационных (анимационных) роликов.
Вертикальная развертка и двойная буферизация.
Изображение на экране монитора формируется в специальной буферной памяти – видеопамяти. Схемы электронной развертки отображают построенное в видеопамяти изображение на экране. Программа может поместить нужное значение в видеопамять или прочитать из нее ранее установленное значение точно так, как это делается с обычной оперативной памятью.
Если данные видеопамяти изменились в момент прорисовки кадра, то луч сначала "дорисовывает" кадр на основе старых данных и только при новом проходе отображает измененные данные. Вследствие этого возникают (хотя и кратковременные) дефекты изображения, так называемое "мерцание" экрана. Одно из решений этой проблемы заключается в том, чтобы обновлять данные видеопамяти в тот момент, когда луч находится в правом нижнем углу экрана, но это не всегда возможно. Поэтому применяется метод двойной буферизации (double buffering), который заключается в следующем.
Создается невидимый "виртуальный" экран, и изображение рисуется только на нем. На основной экран содержимое виртуального экрана копируется в тот самый момент, когда луч находится в правом нижнем углу. Операция блокового копирования обычно производится очень быстро - для ее выполнения бывает достаточно даже сотой доли секунды.
Любая современная библиотека (например, DirectX для Windows) позволяет переназначать указатель видеопамяти на любой виртуальный экран, и указанный экран становится основным. Тогда никакого копирования вообще не происходит и механизм работает очень быстро. В этом случае, если требуется внести изменения в изображение (например, передвинуть объект), нет необходимости стирать что-то и рисовать в новой позиции, новый кадр рисуется с нуля и копируется поверх предыдущего на основной экран.
Таким образом, при использовании метода двойной буферизации каждый кадр накладывается на предыдущий, что позволяет получить плавную анимацию без эффекта мерцания.