Опубликован: 20.10.2007 | Уровень: специалист | Доступ: платный
Алгоритмические основы современной компьютерной графики Излагаются методы, алгоритмы и технические средства компьютерной графики. В основу изложения положены наиболее распространенные алгоритмы двумерной и трехмерной графики. Уделяется внимание также вычислительной геометрии и оценкам сложности алгоритмов.
Курс дает представление о современных технических и программных средствах компьютерной графики. Значительная часть курса уделена математическому аппарату, используемому в алгоритмах работы с изображениями. Излагаются способы представления геометрической информации. Рассматриваются различные виды проекций трехмерных объектов на плоскость, а также некоторые специальные картографические проекции. Описываются основные методы работы с цветом в задачах визуализации, способы закрашивания геометрических тел.
Цель: Познакомить теоретически и практически с методами, алгоритмами и специальными приемами работы с плоскими и трехмерными графическими объектами.
Необходимые знания: Желательно знакомство с основами аналитической геометрии и линейной алгебры, начальные сведения по математическому анализу. Необходимо знакомство с языком программирования C.

План занятий

ЗанятиеЗаголовок <<Дата изучения
-
Лекция 1
52 минуты
Общее введение в компьютерную графику
Предмет и области применения компьютерной графики. Краткая история развития компьютерной графики. Технические средства поддержки компьютерной графики: ЭЛТ, устройства ввода, видеоадаптер, графопостроители, принтеры, сканеры. Программные средства поддержки компьютерной графики: драйверы устройств, библиотеки графических программ, специализированные графические системы и пакеты программ
Оглавление
    -
    Тест 1
    18 минут
    -
    Лекция 2
    43 минуты
    Цвет в компьютерной графике
    Цветовые модели: RGB,HSV, CMY и другие. Переход от одной модели к другой. Цветовой график МКО. Однородные цветовые пространства Luv, PHS
    Оглавление
      -
      Тест 2
      18 минут
      -
      Лекция 3
      1 час 54 минуты
      Геометрические преобразования
      Системы координат и геометрические преобразования (параллельный перенос, масштабирование, вращение). Задание геометрических преобразований с помощью матриц. Конгруэнтные преобразования. Переход в другую систему координат. Задача вращения относительно произвольной оси
      Оглавление
        -
        Тест 3
        30 минут
        -
        Лекция 4
        36 минут
        Представление геометрической информации
        Геометрические примитивы. Системы координат: мировая, объектная, наблюдателя и экранная. Однородные координаты. Задание геометрических преобразований в однородных координатах с помощью матриц
        Оглавление
          -
          Тест 4
          18 минут
          -
          Лекция 5
          43 минуты
          Отсечение (клиппирование) геометрических примитивов
          Алгоритм деления отрезка пополам. Коды Сазерланда — Коэна. Клиппирование многоугольников. Штрихование многоугольной области. Переход к трехмерному клиппированию пирамидой видимости
          Оглавление
            -
            Тест 5
            18 минут
            -
            Лекция 6
            1 час 8 минут
            Удаление невидимых поверхностей и линий
            Исторический экскурс. Методы переборного типа. Метод Z-буфера. Методы удаления нелицевых граней многогранника. Алгоритмы Варнака и Вейлера — Азертона. Методы приоритетов (художника, плавающего горизонта). Метод двоичного разбиения пространства. Алгоритмы построчного сканирования для криволинейных поверхностей. Алгоритм определения видимых поверхностей путем трассировки лучей
            Оглавление
              -
              Тест 6
              24 минуты
              -
              Лекция 7
              50 минут
              Проецирование пространственных сцен
              Основные типы проекций. Прямая и перспективная проекция. Специальные картографические проекции. Экзотические проекции земной сферы
              Оглавление
                -
                Тест 7
                21 минута
                -
                Лекция 8
                38 минут
                Растровое преобразование графических примитивов
                Алгоритмы Брезенхема растровой дискретизации отрезка. Алгоритмы Брезенхема растровой дискретизации окружности и эллипса. Алгоритмы заполнения внутренних областей
                Оглавление
                  -
                  Тест 8
                  18 минут
                  -
                  Лекция 9
                  38 минут
                  Закрашивание. Рендеринг полигональных моделей
                  Модели освещения. Закраска граней: плоское закрашивание, метод Гуро, метод Фонга. Устранение ступенчатости (антиэлайзинг)
                  Оглавление
                    -
                    Тест 9
                    18 минут
                    -
                    Лекция 10
                    44 минуты
                    Визуализация пространственных реалистических сцен
                    Свето-теневой анализ. Метод излучательности. Глобальная модель освещения с трассировкой лучей. Алгоритм обратной трассировки
                    Оглавление
                      -
                      Тест 10
                      18 минут
                      -
                      5 часов
                      -
                      Сабина Бахриддинова
                      Сабина Бахриддинова
                      Дмитрий Трефилов
                      Дмитрий Трефилов

                      Константин Леденев
                      Константин Леденев
                      Россия
                      Олег Равков
                      Олег Равков
                      Россия

                      ( ! ) Warning: include_once(./includes/unicode.entities.inc) [<a href='function.include-once'>function.include-once</a>]: failed to open stream: No such file or directory in /.2/var_www_new.intuit.ru/htdocs/includes/unicode.inc on line 340
                      Call Stack
                      #TimeMemoryFunctionLocation
                      13.7424102146984watchdog( )../bootstrap.inc:0
                      23.7427102149432module_invoke( )../bootstrap.inc:967
                      33.7427102151288call_user_func_array ( )../module.inc:462
                      43.7427102151624devel_watchdog( )../module.inc:462
                      53.7428102152472decode_entities( )../devel.module:382
                      63.7428102154392drupal_error_handler( )../devel.module:340
                      73.7429102158000watchdog( )../common.inc:663
                      83.7429102160048module_invoke( )../bootstrap.inc:967
                      93.7429102161904call_user_func_array ( )../module.inc:462
                      103.7429102162240devel_watchdog( )../module.inc:462
                      113.7429102162936decode_entities( )../devel.module:382

                      ( ! ) Warning: include_once() [<a href='function.include'>function.include</a>]: Failed opening './includes/unicode.entities.inc' for inclusion (include_path='.:/usr/local/zend/var/libraries/Zend_Framework_1/default/library:/usr/local/zend/share/pear') in /.2/var_www_new.intuit.ru/htdocs/includes/unicode.inc on line 340
                      Call Stack
                      #TimeMemoryFunctionLocation
                      13.7424102146984watchdog( )../bootstrap.inc:0
                      23.7427102149432module_invoke( )../bootstrap.inc:967
                      33.7427102151288call_user_func_array ( )../module.inc:462
                      43.7427102151624devel_watchdog( )../module.inc:462
                      53.7428102152472decode_entities( )../devel.module:382
                      63.7428102154392drupal_error_handler( )../devel.module:340
                      73.7429102158000watchdog( )../common.inc:663
                      83.7429102160048module_invoke( )../bootstrap.inc:967
                      93.7429102161904call_user_func_array ( )../module.inc:462
                      103.7429102162240devel_watchdog( )../module.inc:462
                      113.7429102162936decode_entities( )../devel.module:382

                      ( ! ) Warning: include_once(./includes/unicode.entities.inc) [<a href='function.include-once'>function.include-once</a>]: failed to open stream: No such file or directory in /.2/var_www_new.intuit.ru/htdocs/includes/unicode.inc on line 340
                      Call Stack
                      #TimeMemoryFunctionLocation
                      13.7424102146984watchdog( )../bootstrap.inc:0
                      23.7427102149432module_invoke( )../bootstrap.inc:967
                      33.7427102151288call_user_func_array ( )../module.inc:462
                      43.7427102151624devel_watchdog( )../module.inc:462
                      53.7428102152472decode_entities( )../devel.module:382
                      63.7436102154584drupal_error_handler( )../devel.module:340
                      73.7436102158272watchdog( )../common.inc:663
                      83.7436102160320module_invoke( )../bootstrap.inc:967
                      93.7436102162176call_user_func_array ( )../module.inc:462
                      103.7436102162512devel_watchdog( )../module.inc:462
                      113.7437102163288decode_entities( )../devel.module:382

                      ( ! ) Warning: include_once() [<a href='function.include'>function.include</a>]: Failed opening './includes/unicode.entities.inc' for inclusion (include_path='.:/usr/local/zend/var/libraries/Zend_Framework_1/default/library:/usr/local/zend/share/pear') in /.2/var_www_new.intuit.ru/htdocs/includes/unicode.inc on line 340
                      Call Stack
                      #TimeMemoryFunctionLocation
                      13.7424102146984watchdog( )../bootstrap.inc:0
                      23.7427102149432module_invoke( )../bootstrap.inc:967
                      33.7427102151288call_user_func_array ( )../module.inc:462
                      43.7427102151624devel_watchdog( )../module.inc:462
                      53.7428102152472decode_entities( )../devel.module:382
                      63.7436102154584drupal_error_handler( )../devel.module:340
                      73.7436102158272watchdog( )../common.inc:663
                      83.7436102160320module_invoke( )../bootstrap.inc:967
                      93.7436102162176call_user_func_array ( )../module.inc:462
                      103.7436102162512devel_watchdog( )../module.inc:462
                      113.7437102163288decode_entities( )../devel.module:382

                      ( ! ) Warning: include_once(./includes/unicode.entities.inc) [<a href='function.include-once'>function.include-once</a>]: failed to open stream: No such file or directory in /.2/var_www_new.intuit.ru/htdocs/includes/unicode.inc on line 340
                      Call Stack
                      #TimeMemoryFunctionLocation
                      13.7441102147528watchdog( )../bootstrap.inc:0
                      23.7442102149576module_invoke( )../bootstrap.inc:967
                      33.7442102151432call_user_func_array ( )../module.inc:462
                      43.7442102151768devel_watchdog( )../module.inc:462
                      53.7442102152472decode_entities( )../devel.module:382
                      63.7442102154392drupal_error_handler( )../devel.module:340
                      73.7442102158000watchdog( )../common.inc:663
                      83.7443102160048module_invoke( )../bootstrap.inc:967
                      93.7443102161904call_user_func_array ( )../module.inc:462
                      103.7443102162240devel_watchdog( )../module.inc:462
                      113.7443102162936decode_entities( )../devel.module:382

                      ( ! ) Warning: include_once() [<a href='function.include'>function.include</a>]: Failed opening './includes/unicode.entities.inc' for inclusion (include_path='.:/usr/local/zend/var/libraries/Zend_Framework_1/default/library:/usr/local/zend/share/pear') in /.2/var_www_new.intuit.ru/htdocs/includes/unicode.inc on line 340
                      Call Stack
                      #TimeMemoryFunctionLocation
                      13.7441102147528watchdog( )../bootstrap.inc:0
                      23.7442102149576module_invoke( )../bootstrap.inc:967
                      33.7442102151432call_user_func_array ( )../module.inc:462
                      43.7442102151768devel_watchdog( )../module.inc:462
                      53.7442102152472decode_entities( )../devel.module:382
                      63.7442102154392drupal_error_handler( )../devel.module:340
                      73.7442102158000watchdog( )../common.inc:663
                      83.7443102160048module_invoke( )../bootstrap.inc:967
                      93.7443102161904call_user_func_array ( )../module.inc:462
                      103.7443102162240devel_watchdog( )../module.inc:462
                      113.7443102162936decode_entities( )../devel.module:382

                      ( ! ) Warning: include_once(./includes/unicode.entities.inc) [<a href='function.include-once'>function.include-once</a>]: failed to open stream: No such file or directory in /.2/var_www_new.intuit.ru/htdocs/includes/unicode.inc on line 340
                      Call Stack
                      #TimeMemoryFunctionLocation
                      13.7441102147528watchdog( )../bootstrap.inc:0
                      23.7442102149576module_invoke( )../bootstrap.inc:967
                      33.7442102151432call_user_func_array ( )../module.inc:462
                      43.7442102151768devel_watchdog( )../module.inc:462
                      53.7442102152472decode_entities( )../devel.module:382
                      63.7449102154584drupal_error_handler( )../devel.module:340
                      73.7449102158272watchdog( )../common.inc:663
                      83.7449102160320module_invoke( )../bootstrap.inc:967
                      93.7449102162176call_user_func_array ( )../module.inc:462
                      103.7449102162512devel_watchdog( )../module.inc:462
                      113.7450102163288decode_entities( )../devel.module:382

                      ( ! ) Warning: include_once() [<a href='function.include'>function.include</a>]: Failed opening './includes/unicode.entities.inc' for inclusion (include_path='.:/usr/local/zend/var/libraries/Zend_Framework_1/default/library:/usr/local/zend/share/pear') in /.2/var_www_new.intuit.ru/htdocs/includes/unicode.inc on line 340
                      Call Stack
                      #TimeMemoryFunctionLocation
                      13.7441102147528watchdog( )../bootstrap.inc:0
                      23.7442102149576module_invoke( )../bootstrap.inc:967
                      33.7442102151432call_user_func_array ( )../module.inc:462
                      43.7442102151768devel_watchdog( )../module.inc:462
                      53.7442102152472decode_entities( )../devel.module:382
                      63.7449102154584drupal_error_handler( )../devel.module:340
                      73.7449102158272watchdog( )../common.inc:663
                      83.7449102160320module_invoke( )../bootstrap.inc:967
                      93.7449102162176call_user_func_array ( )../module.inc:462
                      103.7449102162512devel_watchdog( )../module.inc:462
                      113.7450102163288decode_entities( )../devel.module:382