Реферат: Задачи графических преобразований в приложениях моделирования с использованием ЭВМ

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

х : у : 1 (3.2)

или, более общо,

х1 : х2 : х3 (3.3)

(здесь непременно требуется, чтобы числа х1 , х2 , х3 одновременно в нуль не обращались).

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

Рассмотрим, например, вопросы, связанные с изменением масштаба. Если устройство отображения работает только с целыми числами (или если необходимо работать только с целыми числами), то для произвольного значения h (например, h = 1) точку с однородными координатами (0.5, 0.1, 2.5) представить нельзя. Однако при разумном выборе h можно добиться того, чтобы координаты этой точки были целыми числами. В частности, при h = 10 для рассматриваемого примера имеем (5, 1, 25).

Рассмотрим другой случай. Чтобы результаты преобразования не приводили к арифметическому переполнению для точки с координатами (80000, 40000, 1000) можно взять, например, h = 0.001. В результате получим (80, 40, 1).

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

При помощи троек однородных координат и матриц третьего порядка можно описать любое аффинное преобразование плоскости.

Считая, h = 1, сравним две записи:


a g 0

(x * y * 1) = (x y 1) b d 0 (3.4)

l m 1

Нетрудно заметить, что после перемножения выражений, стоящих в правой части последнего соотношения, мы получим формулы (2.1) и (2.2) и верное числовое равенство 1 = 1. Тем самым сравниваемые записи можно считать равносильными.

Элементы произвольной матрицы аффинного преобразования не несут в себе явно выраженного геометрического смысла. Поэтомучтобы реализовать то или иное отображение, то есть найти элементы соответствующей матрицы по заданному геометрическому описанию, необходимы специальные приемы. Обычно построение этой матрицы в соответствии со сложностью поставленной задачи и с описанными выше частными случаями рзбивают на несколько этапов.

На каждом этапе пишется матрица, соответствующая тому или иному из выделенных выше случаев 1 – 4, обладающих хорошо выраженными геометрическими свойствами.

Выпишнм соответствующие матрицы третьего порядка.

А. Матрица вращения (rotation)


cos j sin j 0

[ R ] = -sin j cos j 0 (3.5)

0 0 1

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


a 0 0

[ D ] = 0 d 0 (3.6)

0 0 1

В. Матрица отражения (reflection)


1 0 0

[ M ] = 0 -1 0 (3.7)

0 0 1

Г. Матрица переноса (translation)


1 0 0

[ T ] = 0 1 0 (3.8)

l m 1

Рассмотрим примеры аффинных преобразований плоскости.

Пример 1. Построить матрицу поворота вокруг точки А (a, b) на угол j (рис. 9).

А
0
Y
X
j

Рис. 8

1-й шаг. Перенос на вектор – А (-a, -b) для смещения центра поворота с началом координат;


1 0 0

[ T-A ] = 0 1 0 (3.9)

-a -b 1

матрица соответствующего преобразования.

К-во Просмотров: 283
Бесплатно скачать Реферат: Задачи графических преобразований в приложениях моделирования с использованием ЭВМ