logo
Компьютерная графика / МАШ_ГРАФИКА

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)). Ее можно представить в виде произведения двух матриц поворота (вокруг x (Mnx(φ)), вокруг y (Mny(ξ))) и матрицы ортого-нального проецирования на плоскость z=0 (Mоpz (0)):

133

Mд(U, V, W) = Mоpz (0)Mny(ξ) Mnx(φ).

Перемножая матрицы Mny(ξ) и Mnx(φ), получим :

cosξ 0 sinξ 0 1 0 0 0

0 1 0 0 0 cosφ -sin φ 0

- sinξ 0 cosξ 0 x 0 sin φ cosφ 0 =

0 0 0 1 0 0 0 1

cosξ sin φ sinξ cosφ sinξ 0

0 cosφ -sin φ 0

= - sinξ sin φ cosξ cosφ cosξ 0 .

0 0 0 1

После ортогонального проецировании итоговая матрица преобразования примет вид:

cosξ sin φ sinξ cosφ sinξ 0

0 cosφ -sin φ 0

Mд(U, V, W) = 0 0 0 0 .

0 0 0 1

С помощью этой матрицы преобразования единичные векторы по оси х еx = [1 0 0 1], по оси у еy = [0 1 0 1], по оси z еz= 0 0 1 1 , преобразуются к виду :

134

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 /еly , 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а)

135

Подставляя найденное значение во второе и третье урав-нения, получим :

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.5)

Соответствующие значения углов ξ и φ равны :

ξ = arccos 2√2 / 3, φ = ½ arccos (3/4) . (7.6)

На Рис 7.1 показана диметрическая проекция при k=1/2

единичного куба, у которого одна из вершин совпадает с