![]() |
||||||||||||||||||||||||||||||||||||||||||||||||||
| Домой | ||||||||||||||||||||||||||||||||||||||||||||||||||
|
Меню:
Главная
AutoCAD
Исследования
МКЭ ANSYS
ANSYS (Басов К. А.)
Справочник AutoCAD
Взаимодействие фронтов
Проблемы охраны
Нелинейная динамика
Параметрический метод
Энерго информационная модель
Математическое моделирование
Институт теории образования
Коллапс волновой функции
Пенсионное обеспечение
Механосплавление металлов
Индуцированный распад
Фильтр
Электропроводность
Построение решения
Численное исследование
Об уравнениях
Нормирование
Фотолиз
Водородная связь
Концептуализация понятия
Термическая перегруппировка
Химическая поляризация
Многолетняя динамика
Индуцированное дефектообразование
Системы среднего
Морфология
Топологические дефекты
Правило Парето
Математическое моделирование
Метод уменьшения
Изменение
Содержание железа
Фауна
Алгоритм
Об идентификации
табличная модель
вероятности по частотам
Структурирование
Расчет
Анализ
Оценка
Частота
Закономерности
Клонируемые компьютеры
радионуклиды
манипуляция
Программная система
Тенденции
Физическая модель
|
[стр.-1] Еще одним при другом методом создания однородной матрицы масштабирования является использование однородных координат [3]. Например, для того, чтобы произвести однородное масштабирование с фактором 5, можно использовать следующие матрицы: S =
Использование правого нижнего элемента для создания однородной матрицы масштабирования может быть неэффективным, так как в этом случае необходимо производить деление в процессе усреднения (homogenization process). Если правый нижний элемент равен единице, деления не происходит. Если одно либо три значения фактора s отрицательны, создается матрица отражения (reflection matrix), также называемая зеркальной матрицей (mirror matrix). (В некоторых публикациях матрицей отражения называют матрицу, все компоненты фактора s которой равны -1, s = (-1, -1, -1)). Обычно в случае использования матриц отражения необходима дополнительная обработка. Например, треугольник с перечислением вершин против часовой стрелки (counter-clockwise order) преобразуется в треугольник с перечислением вершин по часовой стрелке (clockwise order). Изменение их порядка перечисления может вызвать неправильное освещение полигона и неправильную работу алгоритма отброса невидимых треугольников (back-face culling). Для того чтобы узнать, является ли данная матрица матрицей отражения, необходимо рассчитать определитель дополнительного минора для правого нижнего элемента, т.е. для левой верхней матрицы размерностью 3х3. Если определитель отрицательный, то это матрица отражения. Предположим, необходимо масштабировать объект в определенном направлении. С помощью матрицы S производится масштабирование только вдоль осей x, y и z. При масштабировании в другом направлении требуется составная трансформация. Предположим, масштабирование необходимо произвести вдоль ортонормированных право-ориентированных векторов f,f,f. Для начала построим матрицу F: F = (fx fy fz 0" V 0 0 0 1 / Координатная система строится из полученных векторов, далее используется стандартная матрица трансформации и затем осуществляется обратное преобразование. При этом требуемое преобразование Х будет иметь вид X = F S(s) FT. Сдвиг Другой класс трансформаций - это набор матриц сдвига (shearing). Такие трансформации могут быть использованы для искажения или деформации объекта. Существуют шесть базовых матриц сдвига: Hxy(s), Hxz(s), Hyx(s), Hyz(s), Hzx(s), Hzy(s). Первый индекс указывает на координату, которая будет изменена матрицей сдвига, второй индекс - на координату, по которой будет производиться сдвиг. Матрица сдвига может иметь вид (10 s 0 0 10 0 0 0 10 v0 0 0 1J Следует отметить, что индекс может быть использован для нахождения местоположения параметра s в матрице. (Координаты y и z не изменяются, тогда как координата меняется на сумму старого значения и фактора s умноженного на координату z) (рис. 3). ![]() Рис. 3. Сдвиг единичного прямоугольника матрицей Hxz(s). Обратной матрицей сдвига является матрица сдвига в противоположном направлении: т.е. Hyx-1(s)=Hyx(s). Определитель любой матрицы сдвига равен единице. Следовательно, это есть преобразование, сохраняющее объем. Совмещение трансформаций Вследствие того что операция произведения матриц некоммутативна , важен правильный порядок применения трансформаций. Другими словами, совмещенная трансформация зависит от порядка следования составляющих трансформаций. Предположим, необходимо применить две трансформации - S и R: S(2; 0.5; 1) масштабирует объект по x-компоненте с фактором 2 и по y-компоненте с фактором 0.5, Rz(n/6) вращает на л/6 радиан против часовой стрелки вокруг оси z. Матрицы могут быть перемножены двумя способами с совершенно различным результатом (рис. 4). ![]() Рис. 4. Зависимость порядка перемножения матриц Для повышения эффективности процесса целесообразно совмещение последовательности матриц в одну [3]. Предположим, что есть модель, составленная из сотен тысяч вершин, и необходимо произвести масштабирование, вращение и перемещение. Вместо того чтобы последовательно умножать все вершины на три матрицы, можно один раз умножить на совмещенную матрицу, которая будет иметь вид C=TRS. При одном подходе применяется матрица масштабирования S, поэтому она стоит в правой части выражения. Этот порядок предполагает, что TRSp=T[R(Sp)]. При другом распространенном в компьютерной графике подходе используют матрицы, в которых вектор сдвига располагается в нижней строке. В этом случае порядок умножения матриц должен быть обратным, т. е. порядок применения должен читаться слева направо. Имеется ввиду , что векторы и матрицы записаны в виде строк, поскольку векторы представляют собой строки. В статье использовалась запись в виде столбцов. Трансформация твердого тела Трансформация, при которой изменяются только позиция и ориентация объекта, называется трансформацией твердого тела (rigid-body transform). Для нее свойственно сохранение длин и углов [5]. Любая трансформация твердого тела X может быть определена матрицей, состоящей из композиции матрицы перемещения T(t) и матрицы вращения, R. Таким образом, матрица Х имеет вид X = T(t)R
Обратнаяматрица X-1 =(T(t)R)-1 R1 T(t)-1 =RTT(-t). вычисляется следующим образом: Трансформация нормалей Одна и та же матрица может быть использована для единообразной трансформации точек, линий, полигонов и других геометрических примитивов. Однако эта же матрица не всегда используется для преобразования важной геометрической сущности - нормали к поверхности (либо нормали, заданной в вершине для ее корректного освещения). Нормали должны преобразовываться матрицей, полученной транспонированием матрицы, обратной к той, которая использовалась для преобразования геометрии, т. е. при условии преобразования матрицей М. Для преобразования нормалей необходима матрица N вида, ЛКМрис. 5). ![]() Рис. 5. Примеры некорректной и корректной трансформации нормалей. Если известно, что матрица ортогональна, (т. е. это матрица вращения), нет необходимости рассчитывать обратную матрицу. Для трансформации нормалей можно применять саму матрицу, так как она будет обратной к ортогональной, являясь транспонированной матрицей. Двойное транспонирование дает нам исходную матрицу. Более того, перемещение не изменяет направление вектора, следовательно, любое количество перемещений может быть выполнено без изменения нормалей. |
Меню:
Стандартизация
Математика
Сапромат
Факторизация
Компьютерное моделирование
Обеспечение отказоустойчивости
Оптимизация доступа
Аномальный сдвиг
Экологические аспекты
Методические подходы
Возмущение ионосферы
основы
Инструментальное средство
Погрешность
Результаты
Изучение дефектов
Зависимость эндотелийзависимости
теплоперенос
Квантование
О дроблении
Экспериментальное изучение
Сравнительная оценка
пластинчатый теплообменник
экосистема
Моделирование
Многоэлектронные эффекты
Синтез
Распространение
Анализ видов
государство
Плотность состояний
Исследование
Квазитрехмерная модель
самшитовый биогеоценоз
временной ряд
вихревое поле
Эндотелийзависмый механизм
Теоретическое описание
коронирующий провод
построение модели
электрическое поле
формализм
Отклонения
Инновационное замещение
Динамика численности
сегрегация
среда обитания
специальный подход
инновационная деятельность
температура
Фоновая неоднородность
Цифровая обработка
Потенциалы
Связанность
|
||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||