Главная » Просмотр файлов » М. Ву, Т. Девис, Дж. Нейдер, Д. Шрайнер - OpenGL. Руководство по программированию (Библиотека программиста) (2006)

М. Ву, Т. Девис, Дж. Нейдер, Д. Шрайнер - OpenGL. Руководство по программированию (Библиотека программиста) (2006) (1124363), страница 27

Файл №1124363 М. Ву, Т. Девис, Дж. Нейдер, Д. Шрайнер - OpenGL. Руководство по программированию (Библиотека программиста) (2006) (М. Ву, Т. Девис, Дж. Нейдер, Д. Шрайнер - OpenGL. Руководство по программированию (Библиотека программиста) (2006)) 27 страницаМ. Ву, Т. Девис, Дж. Нейдер, Д. Шрайнер - OpenGL. Руководство по программированию (Библиотека программиста) (2006) (1124363) страница 272019-05-11СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 27)

Усеченная пирамида получает задаваемую по умолчанию ориентацию в трехмерном пространстве. Матрица проекций дает возможность выполнить некоторый поворот или перенос для изменения этой ориентации, но это сложно, и почти всегда можно без такого обойтись. Преобразования проецирования 121 Рис. 3,13. Определение объема видимости с помощью функции д)Ршвшю() ПРИМЕЧАНИЕ Усеченная пирамида не обязана быть симметричной, и ее ось не обязательно должна быть параллельна оси т. Например, д)Ргцэюгп0 сработает и для рисования изображения, получаемого при взгляде в прямоугольное окно, когда окно располагается выше, левее наблюдателя или под углом к нему. В фотосьемке такой ракурс применяется для получения необычной (двухточечной) перспективы.

Также эта функция помогает получить изображения с разрешением выше нормального экранного, например для распечатки. Допустим, нужно нарисовать изображение с разрешением в два раза большим, чем разрешение экрана. Тогда разрежем основание видимого объема на четыре части, используя усеченную пирамиду, которая заполняет весь экран одной четвертой частью иэображения, и выполним четыре рисования. Пиксельные данные каждого квадранта формируют соответствующую часть изображения высокого разрешения, собираемого в конечном итоге. (Ом, главу 8 для получения информации о чтении пиксельных данных.) Хотя, в общем, функция к1Р го зтцж () умозрительно понимаема, она не является понятной на интуитивном уровне.

Есть аналогичная по целям функция СШ к1црегзресс)че(), которая создает тот же объем видимости, что п функция х1Ргцзсцм0, но другим способом. Вместо определения углов ближней плоскости отсечения берутся угол поля зрения (0), как показано на рис. 3.14, в направлении у, в отношение ширины к высоте (хггу). (ясно, для квадратной части экрана отношение сторон равно 1.0.) Этих лвух параметров достаточно для задания неусеченной ннрамилы, ориентированной вдоль линии взгляда, как показано на рнс. 3.1гь уоЫ к)црегзресс1уе(С(х)оцЫеуоюу, С)к)оцЫе азресд С(х)оцЫе пеаг, С)х)оцЫе )ог); Создает матрицу для симметричной усеченной пирамиды и умножает на нее текущую матрицу.

Значение аргумента /ору — угол поля зрения в плоскости уд Его значение лежит в диапазоне [0.0, 180.0]. Аргумент аятесг определяет соотношение сторон усеченной пирамиды — ширины к высоте. Аргументы пеаг иуагуказывают расстояние между точкой наблюдения и плоскостями отсечения по оси г. Их значения всегда положительны. Усекается пирамида заданием расстояния между точкой наблюдения и ближней идальней плоскостями отсечения. Функция к1црегзрест1уе() умеет создавать 122 Глава 3 ° Визуализация только усеченные пирамиды, симметричные относительно осей х и у, ориентированные по линии взгляда, но обычно этого достаточно.

Рмс. 3.14. Определение объема видимости с помощью функции вмРегвресбуе() Так же, как и в случае с я1Егцэтцв(), здесь допустимо изменить ориентацию объема видимости по умолчанию, с помошью вращения или переноса. По умолчанию наблюдатель считается помещенным в начало координат, а линия взгляда — направленной вдоль отрицательной оси г. При использовании функции я1цРегврест1уе() нужно задать правильные значения для поля зрения, иначе изображение будет искажено. Чтобы выяснить, какие значении поля зрения правильны, ответьте на вопрос: как далеко обычно глаз располагается от экрана и насколько велико окно? Затем вычислите угол, соответствуюший таким размерам и такому расстоянию.

Наверняка он меньше, чем можно было предположить. Для сравнения: 94-градусное поле зрения с 35-миллиметровой камерой требуют 20-миллиметровых линз, которые являются широкоугольнымп. (См. раздел «Проблемы преобразованияь этой главы.) Конечно, ОрепСь все равно, дюймы это или миллиметры. Проецирование и другие преобразования, по сути, безразмерны. Если вам нравится думать, что ближняя и дальняя плоскости отсечения располагаются на расстоянии 1.0 и 20.0 метров, дюймов, километров или парсеков — это ваше право. Главное — использовать одинаковые единицы измерения.

Тогда конечное изображение будет с правильными пропорциями. Ортогональное проецирование При ортогональном (прямоугольном) проецировании объем видимости представляет собой прямоугольный параллелепипед, или коробку (рис. 3.15). В отличие от перспективного проецирования размер объема видимости не изменяется от одного конца к другому, н расстояние от камеры не влияет на размер объектов.

Этот тип проецирования применяется в архитектурных чертежных приложениях и системах автоматизированного проектирования, где необходимо знать реальные размеры объектов и углы между ними. Преобразования проецирования 123 юр (аг К точке просмотра Рис. 3.1Б. Ортогонапьный объем видимости команда К10 г с по () создает ортогональный параллельный объем видимости. так же, как и в функции к1р го этиа(), задаются углы ближней плоскости отсечения и расстояние до дальней плоскости отсечения.

чоЫ К10гтпо(С(.г(опЫе 1еД СМопЫе пдйг, СИопЫе Ьоггоя, С) ОопЫе гор, СМоиЫе пеап С1.бопЫе)'аг); Создает матрицу для ортогонального объема видимости и умножает на нее текущую матрицу. Аргументы (1е)д Ьоггот, -пеаг) и (ттдЬА (ор, -пеаг) определяют точки на ближней плоскости отсечения, соответствующие левому нижнему и правому верхнему углам окна просмотра.

Аргументы (1еД Ьог(от, -)аг) и (щ60 Го)т, -/аг) определяют точки на дальней плоскости отсечения, которые соответствуют тем же проецируемым углам окна просмотра. Аргументы пеаг и )аг могут быть положительными, отрицательными и равными пулю, но не одними и теми же. Бели не заданы другие преобразования, направление проецирования параллельно осн д а наблюдатель смотрит в отрицательном направлении оси ж Для особых случаев проецирования двухмерных изображений на двухмерный экран используется функция СШ к1обгтво20О.

Она идентична своей трехмерной версии, за тем исключением, что все координаты г объектов на экране считаются лежащими в диапазоне от -1.0 до 1.0. Если для построения двухмерных сбьектов использовались двухмерные функции определения вершин, все коордииаты т равны нулю.

Таким образом, никакие объекты не будут отсечены. чек) к1оОг гпо20(СИопЫе (е)г, С1.допЫе пяйд С).с)опЫе Ьог(от, СИопЫе гор); Создает матрицу для проецирования двухмерных координат на экран и умножает на нее текущую матрицу. Отсекающей областью является прямоугольник с левым нижним углом в точке ((е)д Ьоггот) и правым верхним углом в точке (пдйд гор). 124 Глава 3 ° Визуализация Пособие по проецированию от Нэйта Робинса Если у вас есть набор программ Нзйта Робинса, запустите снова пособие по проецированию. На этот раз поэкспериментируйте с аргументами функций я1ирегзрест! уе(), к10гтво() и а1р1озтоа(), Отсечение объемом видимости После того как все вершины сцены изменены модельно-видовой матрицей и матрпцей проекций, каждый примитив, находящийся вне объема видимости, отсека- ется.

)еометрня видимого объема определяется шестью плоскостями отсечения. Вместе с тем можно определять дополнительные плоскости отсечения и располагать пх где угодно. (См. раздел «Дополнительные плоскости отсечения».) Запомните, что ОрепСЕ перестраивает углы многоугольников, попадающих под отсечение. Преобразование окна просмотра Вернувшись к впало~ни с фотокамерой, напомним, что преобразование окна просмотра (у)етурогг) соответствует этапу выбора размера фотографии. Вы хотите сделать стандартную альбомную фотографию илн большой плакат? Так как мы имеем дело с компьютерной графикой, окно просмотра — это прямоугольная область окна, в,которой рисуется изображение.

На рис. 3.16 показано окно просмотра, занимающее собой весь экран. Окно просмотра указывается в координатах, которые отражают позицию пикселов на экране, относительно левого нижнего угла окна. Напомним, что к атому моменту все вершины уже прошли модельновидовые преобразования н преобразования проекции, а те, что оказались за границами видимого объема, отсечены. Рис. 3.16. Прямоугольное окно просмотра Определение окна просмотра Оконная система, а не Орепо)., отвечает за открытие окна на экране.

Однако по умолчанию окно просмотра подразумевает соответствие размерам экранного окна. Функция В1Ч1енрогт() может быль использована для выбора меньшей области рисования. Например, так можно получить эффект «картинка в картинке» или отображения одновременно нескольких различных видов в одном окне. Преобразование окна просмотра 125 чо((1 9\)у(енрогт(С1(пг х, Сйпт у, С з(зе( югс(ГЬ, С1 з(ге( Ье(яЬ(); Определяет прямоугольник пикселов, в котором показывается изображение. Аргументы (х, у) задают левый нижний угол окна просмотра, а ю(гг(Ь и ЬегяЬР устанавливают его размер.

Характеристики

Список файлов книги

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6401
Авторов
на СтудИзбе
307
Средний доход
с одного платного файла
Обучение Подробнее