Учебное пособие / Метематические основы машинной графики / exilim / 1.8.asp-ThemeID=1
.htmДвумерные преобразования - 1.8. Преобразование единичного квадрата A.l:link { text-decoration: none; font-size: 8pt; color: 666666; } A.l:hover { text-decoration: none; font-size: 8pt; color: 666666; } A.l:active { text-decoration: none; font-size: 8pt; color: 666666; } A.l:visited { text-decoration: none; font-size: 8pt; color: 666666; } A.std:link { text-decoration: none; font-size: 11pt; font-weight: bold; color: 8E5717; } A.std:hover { text-decoration: none; font-size: 11pt; font-weight: bold; color: 7F0000; } A.std:active { text-decoration: none; font-size: 11pt; font-weight: bold; color: 8E5717; } A.std:visited { text-decoration: none; font-size: 11pt; font-weight: bold; color: 8E5717; } A.li:link { text-decoration: none; font-size: 10pt; font-weight: bold; color: 666666; } A.li:hover { text-decoration: none; font-size: 10pt; font-weight: bold; color: 666666; } A.li:active { text-decoration: none; font-size: 10pt; font-weight: bold; color: 666666; } A.li:visited { text-decoration: none; font-size: 10pt; font-weight: bold; color: 666666; } A.lil:link { text-decoration: none; font-size: 11pt; color: 666666; } A.lil:hover { text-decoration: none; font-size: 11pt; color: 7F0000; } A.lil:active { text-decoration: none; font-size: 11pt; color: 666666; } A.lil:visited { text-decoration: none; font-size: 11pt; color: 666666; } Алгоритмические
основы Математические
основы Flash 5 CorelDraw 10 3D Studio Max3 [программа] [тесты] [лабораторные] [вопросы] [литература]
1. Двумерные преобразования
1.8. Преобразование единичного квадрата До сих пор мы рассматривали поведение точек и линий для определения результатов простых матричных преобразований. Однако можно корректно рассматривать применение матрицы к любой точке плоскости. Как было показано ранее, единственная точка, остающаяся инвариантной при воздействии матричных преобразований, - это точка начала координат. Все другие точки плоскости подвержены преобразованию, которое можно представить как растяжение исходной плоскости, системы координат и перевод в новую форму. Формально принято считать, что преобразование вызывает переход от одного координатного пространства к другому. Рассмотрим координатную сетку, состоящую из единичных квадратов на координатной плоскости xy. Четыре координатных вектора вершин единичного квадрата, проходящие под одним углом к началу координат, имеют следующий вид: A
B
C
D 0 0
1 0
1 1
0 1 Такой единичный квадрат изображен на рис. 1.5. Применяя к нему (2х2) матрицу общего преобразования, получаем 0 0
1 0
1 1
0 1 a b
c d = 0 0
a b
a + c b + d
c d Результаты этого преобразования показаны на рис. 1.5. Из предыдущего выражения следует, что начало координат не подвергается преобразованию, т.е. [A] = [A*] = [0 0]. Далее отметим, что координаты B* равны первой строке матрицы преобразования, а координаты D* - второй. Таким образом, матрица преобразования является определенной, если определены координаты В* и D* (преобразование единичных векторов [1 0], [0 1]). Поскольку стороны единичного квадрата первоначально параллельны и ранее было показано, что параллельные линии преобразуются снова в параллельные, то результирующая фигура является параллелограммом. Влияние элементов а, b, с и d матрицы 2х2 может быть установлено отдельно. Элементы b и с, как видно из рис. 1.5, вызывают сдвиг исходного квадрата в направлениях y и x соответственно. Как отмечалось ранее, элементы а и d играют роль масштабных множителей. Таким образом, 2х2-матрица задает комбинацию сдвига и масштабирования. Несложно определить также площадь параллелограмма А*В*С*D* из рис. 1.5, которую можно вычислить следующим образом: Ap = (a + c)(b + d) - 1
2 (ab) - 1
2 (cd) - c
2 (b + b + d) - b
2 (c + a + c) В результате получаем Ap = ad - bc = det a b
c d Можно показать, что что площадь любого параллелограмма Ар, образованного путем преобразования квадрата, есть функция от определителя матрицы преобразования и связана с площадью исходного квадрата As простым отношением Ар = As(ad - bс) = As det [T]. Фактически, так как площадь всей фигуры равна сумме площадей единичных квадратов, то площадь любой преобразованной фигуры Аt зависит от площади исходной фигуры Ai At = Ai(ad - bc). Это полезный способ определения площадей произвольных фигур. назад | содержание | вперед © ОСУ АВТФ