- •Цели и задачи компьютерной графики
- •Растровая и векторная визуализация изображений. Основные характеристики растровых изображений
- •Аддитивная цветовая модель rgb. Кодирование цвета. Палитра
- •Графические форматы. Работа с растровыми изображениями (форматы ddb, dib, bmp – файлы)
- •Понятие об инкрементных алгоритмах растеризации. Растровое представление отрезка (вывод алгоритма). Реализация алгоритма (Листинг функции по лабораторной работе)
- •Понятие об инкрементных алгоритмах растеризации. Алгоритм построения окружности методом средней точки (вывод алгоритма). Реализация алгоритма. (Листинг функции по лабораторной работе)
- •Стиль линии (перо). Алгоритмы вывода линий
- •Стиль заполнения, кисть, текстура
- •Геометрические основы компьютерной графики. Системы координат (декартова, полярная, сферическая) и векторы. Скалярное и векторное произведение векторов
- •Построение кривых. Интерполяционный полином Лагранжа. Достоинства и недостатки. (Листинг функции для реализации полинома Лагранжа по лабораторной работе).
- •Построение кривых. Интерполяционный кубический сплайн. (Листинг функции для реализации кубического сплайна по лабораторной работе).
- •Мировые и экранные координаты. Алгоритм пересчета мировых 2d-координат в оконные. Вывод и реализация (Листинг функции SpaceToWindow)
- •15. Физическая и логическая системы координат. Режимы отображения (без настройки параметров). Алгоритм преобразования координат в gdi и его связь с алгоритмом пересчёта мировых координат в оконные
- •16. Режимы отображения и настройка их параметров (функции класса cdc mfc). Функция SetMyMode, назначение, параметры и реализация
- •17. Аффинные преобразования на плоскости. Преобразование системы координат: смещение, растяжение-сжатие, поворот
- •18. Аффинные преобразования на плоскости. Преобразование объектов: смещение, растяжение-сжатие, поворот
- •19. Аффинные преобразования в пространстве. Преобразование системы координат: смещение, растяжение-сжатие, повороты вокруг осей координат
- •20. Аффинные преобразования в пространстве. Преобразования объектов: смещение, растяжение-сжатие, повороты вокруг осей координат
- •21. Основные типы проекций. Видовая система координат (вывод матрицы преобразования)
- •22. Перспективные преобразования (вывод матрицы преобразования). Схема пересчёта координат при переходе от мировых 3d-координат к экранным
- •23. Модели описания поверхностей
- •24. Каркасная визуализация трёхмерных изображений. Принцип удаления невидимых граней для выпуклого многогранника. Реализация
- •26. Закрашивание поверхностей. Модели отражения света
- •27. Закрашивание поверхностей. Вычисление нормалей и углов отражения. Реализация
- •28. Метод закрашивания Гуро
- •30. Графическая библиотека OpenGl. Структура glut-приложения. Пример
- •31. Графическая библиотека OpenGl. Рисование графических примитивов. Дисплейные списки. Удаление нелицевых граней. Вывод текста. Примеры
- •32. Графическая библиотека OpenGl. Системы координат. Модельно-видовые преобразования. Примеры
- •33. Графическая библиотека OpenGl. Проекции. Область вывода. Создание анимации. Примеры
- •34. Графическая библиотека OpenGl. Материалы и освещение. Примеры
- •35. Графическая библиотека OpenGl. Структура приложения с использованием библиотеки mfc
Графические форматы. Работа с растровыми изображениями (форматы ddb, dib, bmp – файлы)
Графическим форматом называют порядок (структуру), согласно которому данные, описывающие изображение, записаны в файле.
Форматы:
Векторный формат наиболее удобен для хранения изображений, которые можно разложить на простые геометрические фигуры (например, чертежи или текст).
Растровый формат используется для хранения растровых данных.
Битовые изображения, как правило, выводятся на экран быстрее, так как их внутренняя структура аналогична (до некоторой степени) структуре видеопамяти.
Метафайловый формат позволяет хранить в одном файле и векторные, и растровые данные.
Битовое изображение DDB есть набор бит в оперативной памяти, который может быть отображен на устройстве вывода. Как правило, изображения DDB либо загружаются из ресурсов приложения, либо создаются непосредственно в оперативной памяти. Для вывода изображений DDB на экран используются такие функции, как BitBlt и StretchBlt. Изображения DIB, в отличие от изображений DDB, являются аппаратно-независимыми, поэтому без дополнительного преобразования их нельзя отображать на экране с помощью функций BitBlt и StretchBlt. В операционной системе Windows битовые изображения хранятся в файлах с расширением имени bmp, при этом используется аппаратно-независимый формат DIB.
Понятие об инкрементных алгоритмах растеризации. Растровое представление отрезка (вывод алгоритма). Реализация алгоритма (Листинг функции по лабораторной работе)
Брезенхэм предложил подход, позволяющий разрабатывать так называемые инкрементные алгоритмы растеризации. Основной целью для разработки таких алгоритмов было построение циклов вычисления координат на основе только целочисленных операций сложения/вычитания без использования умножения и деления. Инкрементные алгоритмы выполняются как последовательное вычисление координат соседних пикселов путем добавления приращений координат.
Разработаны инкрементные алгоритмы для вывода отрезка, окружности, эллипса.
Алгоритм вывода прямой линии
Пусть
на растре заданы две точки
и
с целочисленными координатами (рис.
4.1).
Запишем уравнение прямой, проходящей через эти точки
или
(4.1)
где
,
,
,
Понятие об инкрементных алгоритмах растеризации. Алгоритм построения окружности методом средней точки (вывод алгоритма). Реализация алгоритма. (Листинг функции по лабораторной работе)
Брезенхэм предложил подход, позволяющий разрабатывать так называемые инкрементные алгоритмы растеризации. Основной целью для разработки таких алгоритмов было построение циклов вычисления координат на основе только целочисленных операций сложения/вычитания без использования умножения и деления. Инкрементные алгоритмы выполняются как последовательное вычисление координат соседних пикселов путем добавления приращений координат.
Разработаны инкрементные алгоритмы для вывода отрезка, окружности, эллипса.
