Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Инж.геометрия_часть3.doc
Скачиваний:
26
Добавлен:
23.09.2019
Размер:
1.96 Mб
Скачать

4.2. Пространственные преобразования

Способность визуализировать или изображать пространственный объект является основой для понимания формы этого объекта. Кроме того, во многих случаях для этого важна способность вращать, переносить и строить виды проекций объекта. Чтобы понять форму объекта следует вращать объект, отодвигать на расстояние вытянутой руки, передвигать вверх и вниз, вперед и назад и т. д. Чтобы сделать то же самое с помощью компьютера, необходимо распространить предшествующий двумерный анализ на три измерения. Основываясь на полученном опыте, немедленно ввести однородные координаты. Таким образом, точка в трехмерном пространстве [хуz] представляется четырехмерным вектором

,

где [Т] является матрицей некоего преобразования. Как и ранее, преобразование их однородных координат в обычные задается формулой

. (4.61)

Обобщенную матрицу преобразования размерности 44 для трехмерных однородных координат можно представить в следующем виде:

. (4.62)

Матрицу преобразования из (4.62) можно разделить на четыре отдельные части:

Верхняя левая (33)-подматрица задает линейное преобразование, проводящее линейную комбинацию векторов в ту же самую линейную комбинацию преобразования векторов, в форме масштабирования, сдвига, отражения и вращения. Левая нижняя (13)-подматрица задает перемещение, а правая верхняя (31)- подматрица – перспективное преобразование. Последняя правая нижняя (11)-подматрица задает общее масштабирование. Общее преобразование, полученное после применения этой (44)-матрицы к однородному вектору и вычисления обычных координат, называется билинейным преобразованием – результат двух последовательных линейных преобразований. В общем случае данное преобразование осуществляет комбинацию сдвига, локального масштабирования, вращения, отражения, перемещения, перспективного преобразования и общего масштабирования.

4.2.1. Трехмерное масштабирование

Диагональные элементы (44)-матицы обобщенного преобразования задают локальное и общее масштабирование. Для иллюстрации этого рассмотрим преобразование

, (4.63)

которое показывает действие локального масштабирования.

Рассмотрим прямоугольный параллелепипед RРР (рис. 4.17, а) со следующими однородными координатами вершин:

.

Чтобы получить единичный куб из RPP с помощью локального масштабирования, необходимы масштабные множители 1/2, 1/3, 1 вдоль осей х, у, z соответственно (рис. 4.17, б). Преобразование локального масштабирования задается матрицей

.

На рис. 4.17, в показано общее изменение масштаба за счет изменения правой нижней подматрицы:

.

Рис. 4.17

Простой трехмерный сдвиг единичного куба выполняется с помощью матрицы преобразования:

,

т. е. верхняя левая подматрица (33) осуществляет сдвиг в трех измерениях.

Если определитель матрицы (33) равен +1, то имеет место вращение около начала координат.

4.2.2. Трехмерное вращение вокруг осей координат

При вращении вокруг оси х размеры вдоль оси х не изменяются, тогда матрица преобразования, соответствующая повороту на угол θ, имеет вид (вращение положительное):

.

При вращении на угол φ вокруг оси у матрица преобразования определяется выражением:

.

Аналогично матрица преобразования для вращения на угол ψ вокруг оси z имеет вид:

.

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