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

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

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

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

Если исходный инжпс больше 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.

11'тп", зоовйас(ог); ьгеах; сазе 'Х': хооврас1ог -= 0.5; ! 1 (хоовйастог <= 0.5) хоовуасСог = 0.5; рг1птт("текущее значение масштабного коэффициента %4. 1('тп", хоовуасгог); Ьгеах; сазе 27: ех1С(0); Ьгеах; бе!ам(С: Ьгеах; ) ) Чтение и рисование прямоугольных областей Этот раздел подробно описывает процесс чтения и отображения прямоугольных областей пикселов.

Преобразование при чтении из буфера кадров в память похо. же на преобразование в обратном направлении — рисование, но не идентично ему. Материал этого раздела не обязателен при первом чтении, особенно если вн не планируете сразу начать выполнять подобные преобразования. Процесс вывода пиксельного прямоугольника Следующий список и рпс.

8.12 описывают операции отображения пикселов в буфер кадров. 1. Если пикселы представлены не индексами (то есть их формат отличен от 61 СОСОК 1ИОЕХ или 6с 5ТЕИС1С 1ИОЕХ), на первом шаге компоненты преобразуются в числа с плавающей запятой. (Подробности преобразования представлены в табл. 4.1.) 2, Если задан формат 6С СОМ!МАИСЕ нли 6с 'сОМ1ИАИСЕ АЕРНА, элемент яркости преобразуется в компоненты К, О и Б с назначением равной доли каждому Чтение и рисование прямоугольных областей 289 компоненту. Если формат — 6С СОН1МАМСЕ АСРНА, величина альфа-компонента равна значению А, которое, если указан параметр 6С СОН1НАИСЕ, устанавливается в 1.0. Рис.

8.12. Рисование пиксепов с помощью фогааР!хек() 3. Каждый компонент (К, С, В, А или глубина) умножается на соответствующий размерный козффициент, с добавлением смешения (Ь(аз). Например, компонент К умножается на величину 6С РЕО 5САСЕ и после к нему добавляется значение 6 С Р Е Р В 1 А 5. Е Если параметр 6с НАР сосок установлен в таце, каждый из К-, О-, В- и А- компонентов, ограниченный диапазоном [0.0, 1.0), умножается на целое число, меньшее на единицу размера таблицы, обрезается и ищется в таблице подставовки. (См. раздел «Советы по увеличению быстродействия вывода пикселов».) 5.

Затем К-, С-, В- и А-компоненты ограничиваются диапазоном [0.0, 1.0[, если зто еще не сделано, и преобразуются в число с десятичной точкой с таким количеством битов левее точки, сколько нужно для помещения в буфер кадров. 5. Если вы работаете с индексами (цвета или трафарета), сначала значения пре- образуются в числа с десятичной точкой (если они исходно представлены 290 Глава 8 ° Вывод пикселов, битовых образов, шрифтов и изображений в формате с плавающей запятой), с некоторым количеством неопределенных битов справа от точки. Для индексов, изначально представленных десятичными числами, любые биты справа от десятичной точки сбрасываются в нуль. Результирующее значение индекса сдвигается вправо пли влево в соответствии с абсолютным значением параметра 6С 1МОЕХ 5Н1ГТ; значение сдвигается влево, когда 6С 1МОЕХ 5Н1РТ > О, и вправо — в противном случае.

В заключение к индексу добавляется смешение 6ь 1мрех ОРР5ет. 7. Слелующий шаг зависит от используемой модели цвета — КСВА или инлексной. В первом случае индекс цвета преобразуется в КСВА с использованием параметров 6С Р1ХЕС МАР 1 ТО Р, 61 РХХЕС МАР 1 ТО 6, 6С РХХЕС МАР ! ТО В и 6С РХХЕС МАР 1 ТО А(см. раздел «Табличные преобразования пикселов»). Во втором варианте, если 6С МАР СОСОР определен как 6С ТРОЕ, индекс цвета замещается по таблице подстановки 6С РХХЕС МАР 1 ТО 1. (Если 6С МАР СОСОР— 6С РАС5Е, индекс не изменяется.) Когда изображение представлено индексами трафарета и если 6С МАР 5ТЕМС1 С определен как 6С ТРОЕ, используется таблица подстановки 6С РХХЕС МАР 5 ТО 5. Если 6С МАР 5ТЕМСХС вЂ” РАС5Е, индекс трафарета ие изменяется.

8. Наконец, если индексы еще не конвертированы в КСВА, они маскируются к количеству битов, нужному для буфера индекса цвета нли трафарета. Процесс считывания пиксельного прямоугольника Многие из преобразований, имеюших место во время отображения пиксельного прямоугольника, применяются и в процессе чтения данных из буфера кадров. Порядок чтения пикселов представлен следующим списком и на рис. 8.13. 1. Если читаемые пикселы не индексированы (то есть их формат отличен от 6Х СОСОР 1МОЕХ или 6С 5ТЕМСХС 1МОЕХ), они попалают в диапазон 10.0, 1.0~ — то есть имеет место противоположная процессу рисования ситуация.

2. Затем каждый компонент масштабируется со смегцением. Если параметр 6О МАР СОСОР равен 6С ТРОЕ, зги компоненты таблично преобразуются и снова сводятся к диапазону ХО.О; 1,0], При преобразовании от КСВ к яркости компоненты К, С и В суммируются (1 = К + С + В). 3. Если пикселы представлены индексами (цвета или трафарета), они сдвигают. ся (зП11теп), смещаются (оЪет) и, если параметр 6С МАР СОСОР установлен в 6С ТРОЕ, таблично преобразуются. 4. Если формат хРанения пикселов — 6С СОСОР 1МОЕХ или 6ь 5ТЕМСХС 1МОЕХ, индексы маскируются к количеству битов, поддерживаемому устройствои хранения (1, 8, 16 или 32), и упаковываются в память, как описано ранее.

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

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

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

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