- •7.Проективные изображения трехмерных объектов
- •7.1. Аксонометрические проекции
- •7.1.1.Ортогональные проекции
- •7.1.2 Диметрические проекции
- •Куб Диметрическая проекция
- •Текст функции dimetr дан в Приложении.
- •7.1. 3. Изометрическая проекция
- •7.2. Перспективные проекции
- •7.3. Построение проективных векторных изображений трёхмерных объектов
7.1.2 Диметрические проекции
Центр проецирования диметрических проекций на-ходится на бесконечности, равноудаленной от двух из осей и неодинаково удалённой от третьей, поэтому два показателя искажения равны друг другу и не равны третьему, который не равен нулю. Коэффициент, равный отношению третьего показателя к двум первым, обозначим через k. Рассмотрим проекцию, в которой точка равно-удалена от осей x, у . При этом U = V, а W = kV.
Для определения коэффициентов искажения составим систему из трех уравнений, добавив дополнительное усло-вие: U2 + V2 + W2 = 2.
U
= V;
W = kV;
U2 + V2 + W2 = 2.
Решением системы являются следующие значения:
. (7.3)
Рассмотрим определение матрицы диметрического проецирования Mд(U, V, W), соответствующей заданному коэффициенту k (и, соответственно, коэффициентам U, V, W (7.3)). Ее можно представить в виде произведения двух матриц поворота Mnx(φ) (вокруг x на некоторый угол φ) и Mny(ξ) (вокруг y на некоторый угол ξ), а также матрицы Mоpz(0) ортогонального проецирования на плоскость z=0 :
Mд(U, V, W) = Mоpz (0) Mny(ξ) Mnx(φ).
135
Определим, какие углы поворота ξ и φ необходимо задать, для того, чтобы выполнить диметрическую про-екцию с заданным коэффициентом k. Перемножая матрицы Mny(ξ) и Mnx(φ), получим :
После ортогонального проецировании итоговая мат-рица преобразования примет вид:
Для того, чтобы связать коэффициент k и коэффициен-ты искажения U, V, W с углами ξ и φ, рассмотрим, как изменяются после умножения на полученную матрицу векторы, направленные вдоль осей. Векторы единичной длины по оси х (еx = [1 0 0 1]), по оси у (еy = [0 1 0 1] ) и по оси z (еz= 0 0 1 1 ) преобразуются к векторам еx , еу , еz следующего вида:
136
cosξ
sin φ sinξ
0 cosφ
еx' = Mдеx = 0 ;еy ' = Mд еy = 0 ;
1 1
cosφ sinξ
- sin φ
еz ' = Mдеz = 0 .
1
Поскольку по определению U =ех / ех, V =еy / еy , W =еz / еz , то должны выполняться следующие условия:
(
еx')
2 =
cos 2
ξ
= U 2;
(еy') 2 = sin 2φ sin 2ξ + cos 2φ = V 2;
(еz') 2 = cos2φ sin2ξ + sin2φ = W 2 .
Полученная система содержит три уравнения с двумя неизвестными. Из первого уравнения следует:
ξ
= arccos U = arccos
(7.4а)
Подставляя найденное значение во второе и третье уравнения, получим :
137
cos2φ = (V 2 – W 2)/ cos 2ξ =(V 2 – W 2)/ U 2 = 1 – k2;
φ = 0.5* arccos[(V2 - W2)/ U2]= 0,5*arccos(1-k2). (7.4 б)
На практике наиболее употребительна диметрическая проекция при k = 1/2. Подставляя эту величину в решение системы для коэффициентов искажения (7.4 а-б), получим:
(7.5)
Соответствующие значения углов ξ и φ равны :
ξ = arccos 2√2 / 3, φ = ½ arccos (3/4) . (7.6)
На Рис 7.1 показана диметрическая проекция при k=1/2 единичного куба, у которого одна из вершин совпадает с началом координат, а рёбра ориентированы вдоль осей.
