ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ Томский государственный университет систем управления и радиоэлектроники (ТУСУР) УТВЕРЖДАЮ Проректор по УР ТУСУР _______________М.Т. Решетников ________________2007 г. РАБОЧАЯ ПРОГРАММА По дисциплине «Компьютерная графика» для специальности 230102 – «Автоматизированные системы обработки информации и управления» Факультет: Систем управления Профилирующая кафедра: АОИ Курс: 2 Семестр: 4 Учебный план набора 2004 г. и последующих лет Распределение учебного времени: Лекции 34 часа Лабораторные работы 51 час Самостоятельная работа 85 часов Общая трудоемкость 170 часа Экзамен 4 семестр 2007 Рабочая программа составлена на основании государственного образовательного стандарта профессионального образования для направления 230102 - Автоматизированные системы обработки информации и управления. Рабочая программа обсуждена и утверждена на заседании кафедры АОИ, протокол № 218 от 15 января 2007 г. Разработчик программы: ст. преп. каф. АОИ, к.т.н. Т.О. Перемитина Зав. кафедрой АОИ, д.т.н., профессор Ю.П. Ехлаков Рабочая программа согласована с факультетом Декан ФСУ, д.т.н., профессор Н.В. Замятин 2 1. ЦЕЛИ И ЗАДАЧИ ДИСЦИПЛИНЫ, ЕЕ МЕСТО В УЧЕБНОМ ПРОЦЕССЕ Целью данного курса является изучение математических и алгоритмических основ компьютерной графики, а также освоение средств разработки программного обеспечения для визуализации реалистичных изображений сложных трехмерных сцен. В результате изучения дисциплины студенты должны изучить: фундаментальные методы компьютерной графики; геометрическое моделирование графических объектов; реализацию алгоритмов создания реалистических изображений. Обучение в рамках данной дисциплины базируется на знаниях курса «Информатика», «Программирование на языке высокого уровня» изучаемых в предыдущих семестрах. 2. СОДЕРЖАНИЕ ДИСЦИПЛИНЫ Лекции – 34 часа. 1. Основные понятия компьютерной графики – 4 часа. Определение, задачи и области применения компьютерной графики. Графические объекты, примитивы и их атрибуты. Графическая система. Пользователи графических систем. Системы растровой и векторной графики. Форматы файлов графики. Цветовые модели. Фракталы. 2. Математические основы компьютерной графики – 4 часа. Геометрическое моделирование. Геометрическое определение базовых типов. Математическое определение: векторное и аффинное пространство. Информационное определение: векторное и аффинное пространство. Координатный метод. Системы координат. Преобразования координат. Аффинные преобразования. Двумерные аффинные преобразования. Аффинные преобразования в пространстве. 3. Графическое программирование– 2 часа. OpenGl. Архитектура и особенности синтаксиса. Интерфейс OpenGL. Визуализация двумерных объектов. Матрицы преобразований в OpenGL. 4. Методы и алгоритмы двумерной и трехмерной графики – 10 часов. Область визуализации и функция кадрирования. Отсечение. Двумерный алгоритм Коэна-Сазерленда. Алгоритм Лианга-Барского. Визуализация трехмерных изображений. Виды проектирования. Параллельное проектирование. Перспективное проектирование. Реализация в OpenGL. Удаление невидимых линий и поверхностей. Удаление нелицевых граней. Алгоритм Zбуфера. Алгоритм Робертса. Алгоритм построчного сканирования. Закрашивание поверхностей. Модели отражения света. Вычисление нормалей и углов отражения. Метод Гуро. Метод Фонга. Преломление света. Вычисление вектора преломленного луча. Трассировка лучей. Примеры изображения трехмерных объектов. 5. Визуальные эффекты в OpenGL – 4 часа. Источник света. Объемные объекты. Quadric-объекты, tess-объекты. Свойства материала. Поверхность произвольной формы. Буфер трафарета. Смешение цветов и прозрачность. Туман. Текстура. Вывод текста. 6. Операции с изображением на уровне растра – 4 часа. Простейшие свойства множеств на целочисленной решетке. Алгоритм вывода прямой линии. Прямое вычисление координат. Инкрементные алгоритмы. Алгоритм вывода окружности. Алгоритмы вывода фигур. Заполнение сплошных областей. Тест принадлежности точки многоугольнику. Заполнение многоугольников. Стиль заполнения. Кисть. Текстура. Реализация в OpenGL. 3 7. Кривые и криволинейные поверхности – 6 часов. Представление кривых линий и поверхностей. Представление в явной форме. Неявная форма представления. Параметрическая форма представления. Общая характеристика полиномиальной параметрической формы представления. Параметрически заданные кубические сплайны. Интерполяция. Кривые Эрмита. Кривые и порции поверхности в форме Безье. Кубические В-сплайны. Обобщенные В-сплайны. Построение кривых и поверхностей. Реализация в OpenGL. Лабораторные работы – 51 час. Возможности графического редактора Photoshop – 4 часа. Построение и аффинные преобразования двумерных (2D) объектов – 4 часа. Подключение графической библиотеки OpenGL. Работа со структурой TPIXELFORMATDESCRIPTOR. Примитивы OpenGL – 5 часов. 4. Масштабирование, поворот, перенос в OpenGL – 4 часа. 5. Создание простейшего 3D изображения – 6 часов. 6. Работа со свойством материала и освещением – 4 часа. 7. Использование текстуры – 4 часа. 8. Вывод примитивов средствами GLU и GLUT – 4 часа. 9. Вывод текста – 4 часа. 10. Работа с туманом – 4 часа. 11. Использование буфера трафарета – 4 часа. 12. Реализация прозрачности – 4 часа. 1. 2. 3. Самостоятельная работа 1. Проработка лекционного материала. Форма контроля: тестовый опрос, экзамен – 30 часов. 2. Подготовка к лабораторным работам. Форма контроля: опрос – 30 часов. 3. Выполнение индивидуальных заданий. Форма контроля: Отчет. Программа. – 25 часов. Темы контрольных работ В курсе предусмотрено проведение 3 контрольные работы. 1. Матричные преобразования в графике. 2. Методы и алгоритмы двумерной и трехмерной графики. 3. Кривые и криволинейные поверхности. 4 Применение рейтинговой системы Максимальный рейтинг дисциплины в семестре – 120 баллов. Набор баллов: Лабораторные работы – 60 баллов: № 1. 2. 3. Вид контроля Баллы Возможности графического редактора Photoshop Построение и аффинные преобразования двумерных (2D) объектов Подключение графической библиотеки OpenGL. Работа со структурой TPIXELFORMATDESCRIPTOR. Примитивы OpenGL 5 5 5 4. Реализация аффинных преобразований в OpenGL 5 5. Создание простейшего 3D изображения 5 6. Работа со свойством материала и освещением 5 7. Использование текстуры 5 8. Вывод примитивов средствами GLU и GLUT 5 9. Вывод текста 5 10. Работа с туманом 5 11. Использование буфера трафарета 5 12. Реализация прозрачности 5 Всего 60 При сдаче лабораторной работы позже установленного срока студент теряет от 50 до 100 % баллов, которые возможно получить за задание. Контрольные работы – 40 баллов: Основные понятия компьютерной графики – 10 баллов. Виды плоских проекций – 10 баллов. Основные элементы в OpenGL – 10 баллов. Итоговая контрольная работа – 10 баллов. Если студент по уважительной причине не посетил занятие, на котором проводилась контрольная работа, то он может написать контрольную работу в резервный день. 1. 2. 3. 4. Тестовые опросы на лекциях – 10 баллов. Индивидуальное задание – 10 баллов. Индивидуальное задание выполняют студенты желающие повысить свой рейтинг (не является обязательным). 5 1. 2. 3. 4. Основная литература: Перемитина Т.О. Компьютерная графика. Учебное пособие. – Томск: Томский межвузовский центр дистанционного образования, 2006. Поляков А.Ю. Машинная графика и геометрическое моделирование: Учебное пособие. – Томск: Томский межвузовский центр дистанционного образования, 2001. Энджел Й. О.Практическое введение в машинную графику: пер. с англ. М.: Радио и связь, 1984. Иванов В.П. Трехмерная компьютерная графика. - М.: Радио и связь, 1995. Дополнительная литература: 5. Порев В. Н. Компьютерная графика. – СПб.: БХВ-Санкт-Петербург, 2004. 6. Краснов М.В. OpenGl. Графика в проектах Delphi. – СПб.: БХВ-Санкт-Петербург, 2000. 6