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

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

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

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

Таблица В.В. Параметры команды д! Рсхеп'гапз(ег*() Значение Допустимый инициализации диапазон Тип Кивание параметра 6! МАР СОСОК 6! МАР 5ТЕМСП. 6! 1МОЕХ 5Н1ГТ 6! 1МОЕХ ОГГ5ЕТ 6! КЕО 5САСЕ 6! 6КЕЕй 5САСЕ 6! ВСОЕ 5САСЕ 6! АСРНА 5САСЕ й РЕРТН 5САСЕ 6! КЕО В1А5 6! 6КЕЕМ В1А5 6! В!ОЕ В1А5 6! АСРНА В1А5 6! ОЕРТН ВТА5 6! Р05Т СОМЧОСОТТОМ ЙЕО 5САСЕ 6! Р05Т СОИЧОСОТ10М 6ЙЕЕМ 5СА!Е 6! Р05Т СОМЧОСОТ10М В!НЕ 5САСЕ 6! Р05Т СОМЧОСОТ10И АСРНА 5САСЕ 6! Р05Т СОИЧОСОТ10М КЕО В1А5 6! Р05Т СОМЧОСОТ1ОМ 6КЕЕМ В1А5 6! Р05Т СОМЧОСОТ10й„В!НЕ В1А5 6! Р05Т СОМЧОСОТ10М АСРНА В1А5 6! Р05Т СОСОК МАТК1Х ЙЕО 5СА!Е 6! Р05Т СОСОК МАТК1Х ОВЕЕМ 5САСЕ й Р05Т СОСОК МАТЙ1Х В!НЕ 5СА(Е 6! Р05Т СОСОК МАТЙ1Х АСРНА 5САСЕ 6! Р05Т СО(ОЙ МАТК1Х ЙЕО В1А5 6! Р05Т СОСОК МАТЙ1Х ОВЕЕМ В1А5 6! Р05Т СОСОК МАТК1Х В(ОЕ В1А5 6! Р05Т СОСОК МАТЙ1Х АСРНА В1А5 6СЬоо(еап 6СЬоо(еап 6С)п! б!)и! 61йоа! б!йоас 66йоа! 6!два! 6Сйоа! 61йоа! 6!1!оа! 6(йоа! 6Сйоа! 6(йоас 6Сйоа! 6Сйоат 6Сйоаг 6(йоа! 6(йоа! 66йоа! 66йоа! 6!два! 66йоат 6Ейоа! 6(йоа1 66йоат ОСйоа! 61йоа! 6Сйоа! 66йоат ГАС5Е ГА!5Е 0 0 1.0 1.0 1.0 1.0 1.0 0.0 0.0 0.0 0.0 0.0 1.0 1.0 1.0 1.0 0.0 0.0 0.0 0.0 1.0 1.0 1.0 1.0 0.0 0.0 0.0 0.0 ТВОЕ/ГАС5Е ТВОЕ/ГАС5Е (-со, со) (-со, аа) (-аа, со) (-сос со) (-со, со) (-со, со) (-ах ао) ( — со, со) ( аа,со) (-со, со) (-со, со) (-аа, со) (-со, со) (-оа, ао) (-со, со) (-со, со) (-аа, со) (-со, со) ( — аа, со) (-со, со) (-со, аа) (-со, аа) (- со) (-со, со) (-со, ао) (-со, со) (- ') (-со, со) 284 Глава В «Вывод пикселов, битовых образов, шрифтов и изображений ВНИМАНИЕ Параметры 6С Р05Т СОННО«ОТ!ОН * н 6С Р05Т СОСОй МАТй!Х * имеют смысл, если ваша реализация Орепбк поддерживает конвейеризацию обработки изображений.

(См. раздел «Рас. шнренне !свай~яр 5цбвебн) Если параметр 6С ИАР СОЕОй или 6Е ИАР 5ТЕИС1Е установлен в ТВОЕ, доступно табличное преобразование (шарр)пй). Табличное преобразование рассматривается в следующем подразделе. Все остальные параметры непосредственно относятся к компонентам пикселов.

Масштабирование (зса!е) и отклонение (Ь(аз) применимы к красному, зеленому, синему, альфа-компонентам и к глубине. Например, можно масштабировать компоненты КСВ в процессе свеления их к яркости. Яркость вычисляется как сумма красного, зеленого и синего цветов, поэтому, если вгя используете для них значения по умолчанию (6С йЕО 5САЕЕ, 6Е 6йЕЕН 5САСЕ и 6С ВСОЕ 5САЕЕ), каждый из компонентов внесет свой вклад в значение результирующей интенсивноста (яркости).

Если преобразование из модели КСВ к яркости выполняется согласно стандарту !чТЗС, нужно устанавливать компоненты в конкретные значения: 61 йЕО 5САСŠ— О.З, 61 6йЕЕЙ 5САСŠ— 0.59 и 6С ВЕОЕ 5САЕŠ— 0.11. Индексы (цвета и трафарета) также могут быть преобразованы. В этом случае применяются сдвиг (зЬ1(г) и смещение (оГ!зек). Это полезно, если вам нужно управлять частью таблицы цветов, принимающей участие в построении изображения. Табличные преобразования пикселов Все компоненты цвета, индексы цвета и трафарета могут быть модифицированы с помощью таблиц подстагговки (гаые 1оо)сцр) перед их помещением в видеопамять.

Этот процесс называется табличным преобразованием (!парр)пй) и управ. ляется командой В1Р1хе1Иар*(). уоЫ В1Р1хетнар(п1 цз т)х(С1.епцщ тар, Сййпк тара(эе, сопят ТУРЕ "па!иек); Загружает пиксельную карту (таблицу) тар, состояшуко из тара!ге элементов, соответствуюгпих значениям (массива) па!иеа Таблица В.б содержит список названий карт и значений; по умолчанию все размеры считаются равными 1, а значения — О. Размер каждой карты должен быть степенью 2. Таблица В.б. Названия н значения аргументов команды В!Р)хе!Мар«() Значение Адрес Название карты Индекс цвета Индекс трафарета й Индекс цвета Индекс трафарета Индекс цвета Индекс цвета Индекс цвета Индекс цвета й бс Р1ХЕ),МАР ! ТО 1 6с Р1ХЕС МАР 5 ТО 5 6! Р1ХЕс МАР 1 ТО й 6! Р!ХЕ! МАР 1 ТО 6 6Е Р1ХЕ! МАР 1 ТО В 61 Р!ХЕ« МАР 1 ТО А 6С Р1ХЕЕ МАР й ТО й Конвейерная обработка изображений 285 Значение Адрес Ниааиие карты 6( Р1ХЕ( МАР С ТО С 61 Р1ХЕ! МАР В ТО В 6( Р1ХЕ(,МАР А ТО А Максимальный размер карт машинно-зависим.

Вы можете узнать, какие размеры пнксельных карт поддерживаются на вашей машине, с помощью команды 616е(1пгепегх(). Если нужно узнать размер по всем картам, используйте лля запроса параметр СЕ ИАХ Р1ХЕс ИАР ТАВ(Е, и используйте параметр СЕ Р1ХЕ( НАР * ТО * 511Е, чтобы узнать текущий размер конкретной карты. Для шести нарт, адресуемых индексом цвета или трафарета, подразумевается размер, кратный степени 2. Четыре РСВА-карты могут иметь любой размер от 1 до значения 6( ИАХ Р1ХЕЕ ИАР ТАВсЕ.

Чтобы понять, как работают таблицы, рассмотрим простой пример. Предполонны, что вы хотите создать 256-элементную таблицу, отображающую индекс цвенс индекс цвета с помощью параметра СЕ Р1ХЕс ИАР 1 ТО 1. Вы создаете табпнпу с элементами лля каждого нз значений в лиапазоне 0-255 и инициируете ее пссредством В1Р1хе1нар*(). Допустим, что вам нужна таблица для пороговой сбработки (гоген)1о!сйпй), инлексы, меньшие 101 (0-100), требуется установить в В,ассе индексы от 101 — заменить числом 255.

В этом случае ваша таблица будет кхтоять из 101 нуля и из 155 чисел 255. Чтобы сделать пиксельную карту досгупной, используйте 81Р1хе1Тгаозтег»(), установив параметр С( ИАР СОЕОВ в 1ППЕ. После того как пиксельная карта загружена и доступна, все исходные цвегсные индексы могут быть преобразованы: те, которые меньше 101, станут нулина, а принадлежащие диапазону 101 — 255 отобразятся в 255. Если исходный инжпс больше 255, он сначала маскируется числом 255, то есть сбрасываются все 6нты старше гюсьмого, а результирующее значение замещается числом из таблипы. Если исходный индекс представлен числом с плавающей запятой (скансн, 88,14585), он будет округлен до ближайшего целого значения (давая в итога 88), и тогда уже этот номер ищется в таблице (получаем О). Используя пиксельные карты, вы можете также отображать инлексы трафарета нпп преобразовывать индексы цвета в модель ВСВ.

(См. раздел «Чтение и рисомнпе прямоугольных областей» для получения информации о преобразовании ннпексов.) Гистяжение, сжатие и зеркальное отражение изображений Песне применения режимов сохранения пнкселов и операций при перелаче пиксыон изображения и битовые образы растеризуются. В простом варианте каждоау пнкселу изображения соответствует один пиксел экрана. Вместе с тем вы нправе произвольно увеличивать н уменьшать изображение и даже зеркально отрскать (Йцн ге(!ес() его с помощью команды В1Рпхе17ооа().

286 Глава 8 ° Вывод пикселов, битовых образов, шрифтов и изображений чоЫ я1Р1хе1Еоо«с(СЕ[)оаС гоотх, СЕ([оаС гооту); Задает коаффициенты растяжения (шайи[(у) и сжатия (тес[псе) для операций записи пикселов (к10гаиР]хе1з () и к! СоруР]хе1з () ) по горизонтали и вертикали. По умолчанию значения гоот„н аоот„устанавливаются в 1.

Так, если оба значения равны 2,0, каждый пиксел изображения рисуется четырьмя пнкселами экрана. Заметьте, что допускаются дробные значения факторов масштабирования, а также отрицательные. Г[оследние служат для зеркального отражения изображения относительно текущей позиции растра. Во время растеризации каждый пиксел изображения интерпретируется как прямоугольник с размералси гоот„х гоот„сс фрагменты генерируются для всех пикселов, центры которых находятся в пределах этого прямоугольника. Если говорить более точно, (х; у ) является текущей позицией растра. Если определенная группа элементов (индексов или компонентов) строки п принадлежит столбцу т, рассматриваемая нами область в оконных координатах ограничена прямоугольником с углами (х е зоот» х л, у, + гоотх х т) н (х„+ аоот„(л + 1), у + зоот„(т + 1)).

Все фрагменты с центрами внутри прямоугольника (или на нижней или левой границе) ставятся в соответствие означенной группе элементов. Отрицательные значения гоот используются при зеркальном отражении изображений. ОрепСЕ описывает изображения в направлении от нижнего ряда пиксе. лов к верхнему (и слева направо). Если вы имеете изображение вида «сверху вниз», такое как видеокадр, вы можете захотеть воспользоваться операцией к1Р]хе1200«с (1.0, 1.0), чтобы получить из изображения правильное с точки зрения ОрепС[..

Убедитесь, что вы задали верную текущую позицию растра, если это требуется. Листинг 8А демонстрирует использование к1Р]хе1Еоое О. Изображение шахматной лоски изначально находится в левом нижнем углу окна. При нажатии кнопки мыши или при передвижении мыши вы можете использовать к16оруР(хе1б() для копирования изображения пз исходного положения в окне в точку, соответ. ствующую положению указателя мыши.

(Разумеется, копировать изображение само в себя не имеет смысла!) Копируемое изображение масштабируется; пе умолчанию с коэффициентом 1.0, но вы вправе задать другое значение. Клавиша х и 2 связаны с увеличением и уменьшением коэффициента лсасштабирования вз значение 0.5.

Любое «повреждение» содержимого окна влечет за собой перервсовку последнего. Нажатие клавиши г сбрасывает коэффициенты в первоначаль. нос состояние. Листинг 8.4. Рисование, копирование и масштабирование пикселов; кпайе.с №Ье11пе свесь]еакеисЕСЬ 64 №Ее11ле сьесх[яэзеНе!кЬС 64 6(ььу(е сьесх1ваае[сьесх]еааеНе1№ЬС] (свеев]еабен!ЕСЬ] [3]; зСаС]с 6[ооише соовбасСог = 1,0: 5СаС]с 6Ь(ЬС Ье1ХЬС: 288 Глава 8 ° Вывод пикселов, битовых образов, шрифтов и изображений Листинг Вгф (продолжение) чотб Кеуооагб(цпз)Хлеб сьаг Кеу, !п1 х, 1пс у) ( зи!ссп (!сеу) ( сазе 'г': сазе 'й': зоовуас1ог = 1.0; ХсцСРозтаеб!зр!ау(); рг1п11("масштабный козффициент сброшен в 1.01п"); Ьгеан; сазе хоовгасСОГ е= 0.5; 1! (соовгассог >= 3.0) хоовйасгог = 3.8; ргтпС!("текущее значение масштабного коэффициента Х4.

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

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

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