Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
382
Добавлен:
18.03.2016
Размер:
4.2 Mб
Скачать

 

 

 

 

 

 

 

89

 

 

 

 

 

 

 

 

1-й шаг

 

 

2-й шаг

 

 

 

3-й шаг

 

1

0

0

 

α 0

0

 

 

 

1 0 0

[T

] =

0

1

0

;

[D] =

0

δ

0

;

[T

] =

0 1

0 .

A

 

a

b

 

 

 

0

0

 

 

A

 

 

 

 

 

1

 

 

1

 

 

 

a b

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Перемножив матрицы в том же порядке [T-A][D][TA], получим окончательно:

 

 

α

0

0

{x* y* 1} = {x y 1}

 

0

δ

 

 

 

0 .

 

(1

α)a (1

δ)b 1

 

 

 

 

 

 

 

Аффинные преобразования в пространстве

Обратимся теперь к трехмерному случаю (3D) (3-dimension) и начнем рассмотрение сразу с введения однородных координат.

Поступая аналогично тому, как это было сделано в двухмерном случае, заменим координатную тройку (х, у, z), задающую точку в пространстве, на четверку чисел (x, y, z, 1) или, более общо, на чет-

верку (hx, hy, hz), h0.

Каждая точка пространства (кроме начальной точки О) может быть задана четверкой одновременно неравных нулю чисел; эта четверка чисел определена однозначно с точностью до общего множителя.

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

Любое аффинное преобразование в трехмерном пространстве может быть представлено в виде суперпозиции поворотов, растяжений, отражений и переносов. Поэтому вполне уместно сначала подробно описать матрицы именно этих преобразований (ясно, что в данном случае порядок матриц должен быть равен четырем).

А. Матрицы вращения в пространстве:

90

вокруг оси абсцисс на угол ϕ :

 

 

1

0

0

0

 

[R

 

0

cosϕ

sinϕ

0

;

X

] =

sinϕ

cosϕ

 

 

0

0

 

 

 

 

0

0

 

 

 

 

0

1

 

вокруг оси аппликат на угол χ :

 

 

cos χ

sin χ

0

0

[R

 

sin χ

cos χ

0

0

] =

0

0

1

.

Z

 

0

 

 

0

0

0

 

 

 

1

вокруг оси ординат на угол ψ :

 

cosψ

0

sinψ

0

 

[R

 

0

1

0

0

;

] =

 

0

cosψ

 

Y

sinψ

0

 

 

 

0

0

0

 

 

 

 

1

 

Примечание. Полезно обратить внимание на место знака "-"в каждой из трех приведенных матриц.

Б. Матрица растяжения (сжатия):

 

 

 

 

 

 

 

α

0

0

0

 

где α > 0 - коэффициент растяжения (сжатия)

 

 

 

 

вдоль оси абсцисс;

 

 

 

 

 

 

 

 

β

0

 

 

 

β > 0 - коэффициент растяжения (сжатия)

[D] = 0

0 ,

 

 

 

0

0

γ

0

 

 

вдоль оси ординат;

 

 

 

 

 

 

 

 

0

0

 

 

 

γ > 0 - коэффициент растяжения (сжатия)

 

 

0

1

 

 

вдоль оси аппликат.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

В. Матрицы отражения:

 

 

 

 

 

 

 

 

 

 

относительно

 

 

 

 

относительно

 

 

относительно

 

 

плоскости ху

 

 

 

 

плоскости уz

 

 

плоскости zx

 

 

1 0

0 0

 

 

 

1 0 0 0

 

 

1 0 0

0

[M

 

0 1

0 0

;

[M

 

 

0 1 0 0

[M

 

0

1 0

0

Z

] =

 

 

 

X

] =

;

Y

] =

 

.

 

0 0

1 0

 

 

 

0 0 1 0

 

0 0 1

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0 0

0 1

 

 

 

 

0 0 0 1

 

 

0 0 0

1

Г. Матрицы переноса (здесь λ, µ, ν – координаты вектора переноса):

 

1

0

0

0

 

0

1

0

0

[T ] =

 

0

1

.

0

0

 

 

µ

ν

 

λ

1

91

Примечание. Как и в двухмерном случае, все выписанные матрицы невырождены.

Таким образом, любое сложное аффинное преобразование может быть достаточно просто получено путем комбинации четырех базовых преобразований.

5.2. Проецирование

Вычерчивание трехмерных объектов независимо от того, на бумаге ли это происходит или на экране дисплея, осуществляется при помощи двухмерных проекций. В плоской проекции каждая точка предмета проецируется определенным образом на плоскость проекции, и её образ называется точкой проекции. Если линии проекции, соединяющие точки предмета с соответствующими точками проек-

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

Процесс проецирования эквивалентен сдвигу плоскости проекции и предмета до тех пор, пока плоскость проекции не пройдет через начало координат. Чтобы восстановить точку объекта, необходимо выполнить обратные преобразования.

Общая формула преобразования:

a

x

x

p

 

где a, d, е – масштабирование;

x

d

x

q

 

m, n ,l – смещение;

,

p, q ,r – проецирование;

 

x

e

 

s – комплексное масштабирование;

x

r

 

 

n

l

 

 

х – вращение.

m

s

 

 

Среди параллельных проекций выделяются следующие виды:

1)ортографическая проекция (параллельно одной из координатных плоскостей);

2)аксонометрическая проекция (проектирующие прямые перпендикулярны картинной плоскости):

-триметрическая проекция (нормальный вектор картинной плоскости образует с ортами координатных осей попарно различные углы);

-диметрическая проекция (два угла между нормалью картинной плоскости и координатными осями равны);

92

- изометрическая проекция (три угла равны);

3)косоугольная проекция:

-свободная проекция;

-кабинетная проекция. Перспективные проекции:

-одноточечная (r 0);

-двухточечная (p, q 0), меняя p и q, мы регулируем точки схода

(рис. 5.6.);

Рис. 5.6. Двухточечная перспективная проекция

- трехточечная (p, q, r 0) (рис. 5.7).

Рис. 5.7. Трехточечная перспективная проекция

При орфографической проекции координатная плоскость параллельна или совпадает с одной из координатных плоскостей. Если она параллельна, то необходимо умножить на матрицу сдвига с параметром m,n,l 0.

Соседние файлы в папке Брундасов. Компьютерная графика. Лекции