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

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

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

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

Ье(ВЬС; чо!д !и!с(чо!Ь) ( l« Задание матрицы цвета дпя переупорядочивания компонентов нэ моделя й68 в 68й '/ 6111оаС в(16] = ( 8,0, 1.0, О.О, 8.0, 0.8, 0,0. 1.8, 0.8, 1.0, 0.0. 0.0, 0.0, 8.8, 9.0, 0,0, 1.8 ): р(хе15 = геао1вззе("Оасаг1ееоз.ь)п", ан(ось, аье(зьс); Всйихе(бтоге!(61 ОМРАСК А(16ММЕМТ, 1); 9161еагсо1ог(8.8. 0.0, 0.0, 0.0); Вснз(г!хноее(6С СО(Ой); 91Соаонатг!хс(в); 91иатг!кисее(6С МООЕСЧ1ЕН); чо!О П!зр1ау(чо!Е) ( 9161еаг(6( СОСОй ВОЕЕЕй 81Т); Всйазтеггозз!(1, 910ганР!хе1»(н(ЕСЬ, Ье(ВЬС, 61 й68, 6С ЬМ516МЕО ВЧТЕ, р!х«1»); $1Е1цзь (); Операции, дополняющие преобразование по матрице цвета Подобно пост-операциям свертки, к пикселам можно применить масштабирование и отклонение уже после срабатывания матрицы цеста. Вызов й1Р(хе1- Тгапзтег«() с параметром 61 РО5Т СОСОй МАТР1Х ' 5САЕЕ нли 6Е РО5Т Расширение 1шад)пд 50Ьзет ЗОБ СО10В МАТВ!Х * В!А5 задает соответствующие коэффициенты масштабирования и отклонения.

По выполнении пост-операций значения пикселов сводятся к диапазону [О, 1). Гистограмма С помощью расширения !шая!пя БпЬзег вы можете собирать статистическую информацию об изображении. Гистограмма демонстрирует распределение значений цвета в изображении, знания о котором вам пригодятся, например, при корректиРовке контраста. Команда 81Н(эгодгае() задает, какие компоненты изображения вы хотите вижть на гистограмме и достаточно ли вам просмотреть статистику или же требуется продолжить обработку изображения. Для того чтобы разрешить сбор статистики, вы должны вызвать команду 81ЕпаЫе(61 Н15Т06НАМ). Подобно цветовым палитрам (см.

раздел «Таблицы цветов»), в вашем распоря- кении посреднический механизм для определения наличия необхолимых ресурсов системы. Если ресурсов нелостаточно, ширина, формат и разрешение гистограммы устанавливаются в нуль. Воспользоваться прокоп-механизлюм можно с помощью команды 816егН1эгоВгааРагаиегег(), описанной в разделе «Команды запросов> приложения Б. чо)г! 81Н1Э(одгаи(И.епшп гагпет, 61.з|ЗЕ! гепйп, Ы спшп ттегпа!рог»па(, 6(Ьоо!еап з!п)г); Определяет, в каком виде будут сохранены данные гистограммы.

Аргумент Гагяе(должен быть зш(ан как бС Н15Т06НАИ или 60 РНОХУ Н!5Т06НАМ. Ширина (юЫгп) указывает количество элементов в таблице гистограммы. Это значение должно быть степенью 2. Внутренний формат (1пгегпа!Еогшаг) отвечает за то, как булуг сохранены ланные гистограммы. Допустимые значения: 60 АСРНА, 6( АСРНА4, 6( АСРНА8, 60 АСРНА12, 60 АЕРНА16, 60 10И1ЙАМСЕ, 60 СОИ1МАМСЕ4, 61 СОИ1МАМСЕ8, 60 СОИ1МАМСЕ12, 60 СОМ1МАМСЕ16, 61 10И1МАМСЕ АСРНА, 60 СОИ1МАМСЕ4 АСРНА4, 61 00М1МАМСЕ6 АСРНА2, 60 00И1МАМСЕВ АСРНА8, 6С СОМ1МАМСЕ12 АЕРНА4, 6( СОМ)МАМСЕ12 АСРНА12, 60 10М1МАМСЕ16 АСРНА16, 60 868, 60 Н682, 60 8684, 6С 8685, 60 Н688, 60 86810, 60 86812, 61 86816, 60 868А, 60 86ВА2, 60 86ВА4, 60 86В5 А1, 61 86ВА8, 60 86810 А2, 60 86ВА12 и 60 86ВА16. Этот список не включает в себя значения 6( 1МТЕМ51ТТ*.

Этим он отлпчается от списка команды 81Со1огтаЬ1е(). Аргумент я!пй задает, следует ли обрабатывать пикселы на минимаксном этапе конвейерной обработки. После прохожления пикселов по конвейеру через операцию 810гаиР1хе1я () вы можете извлечь результаты формирования гистограммы с помощью вызова 816егН(э(оВгаи(). В дополнение к возврату самих значений, команда 8\беГН1этокгаиО может быть использована для внутренней памяти гистограммьь Она же может быть сброшена напрямую, через вызов 818еэегН)этодгэе(), как описывается парой страниц ниже. 306 Глава В ° Вывод пикселов, битовых образов, шрифтов и изображений чо]с] К16еСН! 5Соягаю(С?.еппщ та!дед С?]топ]еап гезе(, С?епцгп 1огтлад С1 епщп гуре, С?.чоЫ "с/а!иез)/ Возвращает собранную для гистограммы статистику. Аргумент гагдет задается как 6С Н? 5Т06КАИ.

Аргумент гехет отвечает за очистку таблиц (внутренней памяти) гистограммы. Формат (/оппае) и тип (гуре) задают способ сохранения массива значений (па1иез) и то, как данные гистограммы будут переданы приложению. Онп принимают те же значения, что и их аналоги для команды к10ганР! хе15 () . Программа из листинга 8.8 подготавливает гистограмму изображения и рисует результирующее распределение в окне. В этом примере клавиша 5 служит для управления параметром 3(л]г, отвечаютцим за допуск пикселов к последующим этапам конвейерной обработки. Листинг 8.8.

Подготовка и рисование гистограммы: П]5(оогапс.с абетсне Н15Т06КАМ 517Е 256 /* Должно быть степенью 2 */ ехтегп 6(иьуте' геаб[юаве(сонат сПаг', 6(в!ге!', 6(в!ге!*); ОсиЬуте 'р]хе1в; 6свтхе! н!бСП, Пе]ВПС; чо(б сп]С(чотб) ( рсхе1в = геаб]юаве("Оата/1еебв. Ьтп", антбСП, апетВПС): В1Р! хе!5тоге! (6С ОИРАСК А(16ИИЕИТ, 1); В[С[еагсо[ (В.О, О.О. О.О, О.О); В1нтвтовгаю(6С Н?5ТООКАН, Н]5Т06КАИ 5]7Е, 6( КОВ, 6С РА(5Е); В1Епаще(6С Н?5ТООКАМ); ) чо(б б!вр1ау(чо!б) ( спс (; 6ьивпогт ча1нев[Н15ТООКАМ 517Е][3]; В161еаг(6( СОСОК ВОРРЕК В[Т): В1КавеегРов2т(1, 1); В]оганР(хе]в(н!НСП, Пе(ВПС, ВС КОВ, 6С ОН516ИЕО ВУТЕ, Ртхе]в). В16еСН]втовгаю(6С Н?5ТООКАМ, 6С ТКОЕ, 6С К6В, 6С ОН516НЕО 5НОКТ, ча1иев); /* Рисование гистограммы */ В1веатп(6С С]ИЕ 5ТК[Р); 61Со1ог3((1.В, О.В, В.О); Гпг (! = 0; ! < Н?5ТООКАМ 517Е; т++) В1ЧегСех2в(т, ча1иев[т][0]); В1Епб(); В1вев(п(6( С]ИЕ 5ТК[Р); В1со1ог31(О.В, 1.0, 0.0); гог (! = 0; ! < Н]5ТООКАИ 5?7Е; !++) В1чегтех2в(т, ча1нев [!] [ 1] ); Расширение 1гпад!пд 5ЫЬэет 307 51Ело(>; пт В)Веа!п(6Е 'с1НЕ 5ТН1Р); В)оь)огэг(В.В, В.О, 1.В>; 1вг (! = В: ! < Н15ТО6ВАИ 512Е; ! В1негтех25(1, ча1иев(1)(2)); 51Ело О; Гся па- Гий ри- 515(ввь(>: су<ит гю- м!Ь ХеуЬоаге(вл51Влее слаг Хеу, !лт х, зл! У) 1 5151!с осьоо(еал 5!лк = 6Г РАс\Е; 5и!Гсл (Хеу) ( саве '5': 5!лк = !5!лк; В1Н151оагав(ос Н15ТО6РАИ, Н15ТОВНАИ 512Е, 6Е аоВ.

5!ли); Ьгеак; саве 22: /' Клавиша Евс *l ех!Г(0>; Ьгеак; ) 51исРовснео15р1ау(); Команда Н1незетн15соагавГ() сбрасывает гистограмму без извлечения ее данных, чо(с( 61неэетн151ЬВгам(сеепшп та!пег); Сбрасывает счетчики гистограммы в нуль. Аргумент (агнес задается как 61 Н15Т06НАИ. Метод минимакса но(гд а1И! омах(СЕепшп Гагдет, С1.епшп (птегпа!Еогтат, С1Ьоо)еап 5(пй); Определяет минимальное и максимальное значения компонентов пикселов в изображении. Аргумент гагпе( должен быть установлен в 6Е И1НИАХ. Внутренний формат (Гптегпа(гаплат) задает, какие компоненты пвета привлека- ются к обработке. Значения этого аргумента те же, что и для а1Н15токгам().

Если аргумент 5ГП» залаН КаК 61 ТННЕ, пикселы не записываются в буфер кад- ров, а если как 61 ЕАЕ5Š— вьпюлняется построение изображение Команда а16етИ! омах () используется для получения найденных экст ~емальных дначений. Подобно а1И151окгам(), обращешш к внутренним дань„,дм может выть объединено с их сбросом. Функция а1Н1лвГах() находит экстремальные (минимальное и максимальное) дначения компонентов пиксела.

Как и в случае к1Н15токгап(), после ее вьшол- нення вы можете продолжить обработку пикселов или отказаться от дальнейших действий. 308 Глава В ° Вывод пнкселов, битовых образов, шрифтов и изображений чо[с[ Я16етн1пвах(СЕепшп гагкед С].Ьоо]еап гезег, С[.епшп (огтлаг, С[.енот (уре, С[ чоЖ ира1иез)( Возвращает результаты операции метода минимакса. Аргумент Гпгяет должен быть установлен в 61 И1МИАХ. Если аргумент гезег задан как 6С Т МОЕ, выполняется также сброс минимального и максимального значений. Формат (уогп)аг) и тип (туре) определяют способ помещения выходных данных в массив оа1иез, этн аргументы принимают те же значения, что н для к[0 гаиР] хе15 () . Листинг В 9 демонстрирует использование В1И1пвах () для случая формата ВСВ. Чтобы разрешить применение операции минимакса, вы должны вызвать команду й1Епао[е(6С И1МИАХ).

Минимальное и максимальное значения помещаются в массив оа1иез и группируются по компонентам. Например, при задании константы 6С Я6В для формата, первые три значения массива представляют минимальные величины красного, зеленого и синего компонентов, а следующие трн — их максимальные значения. Листинг 8.9. Нахождение минимального и максимального значений пикселов: ш]оспах.с ехсегп 6(оьусе' геаб1вайе(сопаг спаг', 6(а1ге(", 6(атае1'); 6[оьусе *р1хе1а; 61кгае1 и1б(П, Пе]ВП(: чо[б 1п11(чо1б) ( р1хе15 = геаб1вайе("вага!1ееба лип", аи[бгп, апе]ВПС): 61Р1хе15(оге! (6( ОМРАСК А[16МИЕМТ, 1); В[С1еагСо1ог(В.О.

В.О, 0.0, 0.0); 51И!Пвах(6[ И1МИАХ, 6( ЯЕВ, 6( РА[5Е); 61Епаще(6( И1МИАХ); чо]б баар1ау(чо]б) ( 61ооуге ча1оеа[б]; а161еаг(6( СОСОЯ ВОРРЕЯ В1Т); В]йазгегроа21(1, 1); 610гаиР1хе1а(и1б(П, Пе]ВП(, 6( ЯВВ, ВС ОМ516МЕ0 ВТТЕ, р1'хе1а); В16еСИ[пвах(6( И!МИАХ, 6( ТЯОЕ, 6( ЯОВ, 6( ОМ516МЕ0 ВЧТЕ, ча1оеа); В[Р1оап(); рг]пс((" Красный: мин = Ъб макс = аб)п", ча1оеа[0], ча1оеа[З)); рг!п(1("Зеленый: мин = хб макс = ЖО1п", ча1оеа[ 1], ча1оеа[4]); рг]пг((" Синий: мин = Мб макс = Хб(п", ча1оеа[2], ча1оеа[5]): ] Команда к16е[И1пвах () после извлечения результатов может сбрасывать буфер значений, чо вы можете сделать это и явно вызовом Я1Яезетм]пвах (). чо[с[ В1хезети]пвах(с1епнш (огне(); Сбрась,вает минимальное и максимальное значения к их значениям инициализации.

Аргумент гагяег задается равным 61 И1МИАХ. Наложение текстур После прочтения этой главы вы научитесы Понимать, что наложение текстур в состоянии привнести в вашу сцену Задавать изображения текстур со сжатием и без сжатия Управлять фильтрацией изображения текстуры при его применении к фрагменту Создавать изображения текстур в объектах текстур и управлять ими, а также, если это возможно, управлять высокопроизводительным набором этих объектов текстур Устанавливать, как значения цвета в изображении будут комбинироваться с фрагментами, к которым изображение применяется Дополнять изображение координатами текстуры, показывающими, как изображение текстуры должно быть выровнено относительно объектов сцены Автоматически генерировать координаты текстуры для получения таких эффектов, как контуры предметов и структура природных объектов Выполнять сложные операции над текстурами за один проход посредством мультитекстурирования (последовательности модулей текстур) Использовать комбинированные функции текстур для математического оперирования текстурой, фрагментом и значениями цвета Обрабатывать фрагменты после текстурирования с помощью вторичных цветов Выполнять матричные преобразования координат текстур Отображать тонированные объекты, основываясь на глубине 310 Глава 9 ° Наложение тексгур До настоящего момента мы либо однотонно закрашивали каждьш геометрический примитив,:шбо плавно изменяли цвет от вершины к вершине — то есть все примитивы были нарисованы без применения текстур.

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

Тип файла
PDF-файл
Размер
56,35 Mb
Тип материала
Высшее учебное заведение

Список файлов учебной работы

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