WikiDer > Упаковка (графика)

Wrapping (graphics)

В компьютерной графике оберточная бумага это процесс ограничения позиции областью. Хороший пример упаковки: обои на стену, один шаблон повторяется бесконечно над стена. Обертка используется в 3D компьютерная графика повторить текстура через многоугольник, устраняя необходимость в больших текстурах или множестве полигонов.

Завершить позицию Икс на область шириной ш, рассчитать значение .

Выполнение

Для вычислительных целей обернутое значение Икс' из Икс можно выразить как

куда - максимальное значение в диапазоне, а - наименьшее значение в диапазоне.

Псевдокод для переноса значения в диапазон, отличный от 0–1,

функция wrap (X, Min, Max: Real): Real; X: = X - Int ((X - Мин) / (Макс - Мин)) * (Макс - Мин); если Х <0 тогда // Это устраняет проблему, вызванную использованием Int вместо Floor X: = X + Max - Min; возвращаться ИКС;

Псевдокод для переноса значения в диапазон 0–1 является

функция обертка (X: Real): Real; X: = X - Int (X); если Х <0 тогда        Х: = Х + 1; возвращаться ИКС;

Псевдокод для переноса значения в диапазон 0–1 без ветвления есть,

функция обертка (X: Real): Real; возвращаться ((X mod 1.0) + 1.0) mod 1.0;

Смотрите также