1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346
Макеты страниц
3.4. Аффинные преобразованияЛинейное преобразование вместе с последующим преобразованием сдвига составляют аффинное преобразование пространства Отображение L называется линейным преобразованием пространства для всех Матричная запись этого преобразования: служит примером следующей теоремы. Теорема 3.4.4. Пусть L — линейное преобразование из Доказательство. Рассмотрим стандартный базис в и вектор Тогда и с использованием условия линейности (3.12) получим: Векторы убеждаемся в том, что Рис. 3.7. Сдвиг Основное свойство линейного преобразования заключается в том, что оно переводит отрезки в отрезки. Чтобы удостовериться в этом, рассмотрим векторнозначную функцию: которая пробегает отрезок от х до у. Пусть L — линейное преобразование. По определению линейного преобразования: Следовательно, L преобразует отрезок Отображение Т называется преобразованием сдвига пространства где а — постоянный вектор. Эффект применения Т к произвольной кофигурации из Рис. 3.8. Аффинные преобразования для ковра Серпинского Таким образом, любое аффинное преобразование Т пространства В случае Мы будем пользоваться аффинными преобразованиями при построении фракталов с помощью алгоритмов систем итерированных функций (глава 4). Аффинные преобразования для ковра Серпинского показаны на рис. 3.8. В матричной форме они имеют следующий вид: Изометрия.Очевидно, такие преобразования, как сдвиг, поворот и отражение относительно оси, сохраняют расстояния. Все они есть частный случай изометрии. Формально, преобразование Как мы убедимся позднее, изометрия пространства Напомним, что скалярное произведение двух векторов и что ненулевые векторы х и у перпендикулярны, или ортогональны, тогда и только тогда, когда где I — единичная матрица порядка Лемма 3.4.2. Если 0 — неподвижная точка изометрии Т пространства Доказательство. Из определения изометрии и выражения (3.2) следует: Теорема 3.4.5. Изометрия где Q — ортогональная матрица, b — вектор-столбец. Доказательство. Положим Рассмотрим стандартный ортонормированный базис причем коэффициенты разложения выражаются через скалярные произведения: Пусть Следовательно, преобразование где Q — ортогональная матрица, составленная из столбцов Упр. 5 в конце этого параграфа посвящено различным видам изометрии плоскости Преобразование подобия.Обобщением изометрии является преобразование подобия, при помощи которого могут быть получены многие фракталы (глава 4). Преобразование Следующая теорема устанавливает общий вид преобразования подобия пространства Теорема 3.4.6. Преобразование подобия где Q — ортогональная матрица, b — вектор-столбец. Доказательство. Пусть где Q — ортогональная матрица. Следовательно, Упр. 6 в конце этого параграфа посвящено различным видам преобразования подобия плоскости Комплексные числа.Аффинное преобразование плоскости можно также описать при помощи комплексных чисел и операций над ними. Операции сложения и умножения двух комплексных чисел задаются формулами: Сопряженным комплексному числу Векторное пространство установив взаимно однозначное соответствие: Такие операции над векторами, как сложение и умножение на скаляр, заменяются сложением и умножением соответствующих комплексных чисел. Очевидный пример аффинного преобразования, записанного при помощи комплексных чисел: Это же преобразование в матричной форме: Как следует из выражения (3.19), далеко не все аффинные преобразования можно представить с помощью (3.18). Произвольное аффинное преобразование в комлексной записи имеет вид: где a, b и с — комплексные постоянные. Представлению (3.20) и его свойствам посвящено упр. 4 в конце этого параграфа. Представление аффинных преобразований плоскости с помощью комплексных чисел имеет одно замечательное преимущество с точки зрения программирования. Компьютерная реализация алгоритмов значительно упрощается при использовании языка программирования с встроенной поддержкой комплексной арифметики. Кроме того, использование комлексной записи облегчает геометрическую трактовку, благодаря тому, что с комплексными числами удобно работать в полярной системе координат: Здесь Угол в называется аргументом z. Это угол (с точностью до то есть модули перемножаются, а аргументы складываются. Таким образом, если мы положим 1. Повернуть фигуру относительно начала координат на угол 9. 2. Сжать фигуру к началу координат в 3. Сдвинуть фигуру на радиус-вектор b. Три преобразования Аффинные коэффициенты.В определении (3.15) произвольного аффинного преобразования плоскости имеется шесть параметров, или степеней свободы. Разумно предположить, что мы всегда в состоянии определить единственным образом все параметры аффинного преобразования, которое отображает три несовпадающие точки Рис. 3.9. Мировые и экранные координаты И это действительно так: коэффициенты Пример дается в конце этого параграфа. Замена координат.При реализации на компьютере систем итерированных функций (глава 4) для задания координат пикселов принято использовать переменные то нетрудно убедиться, что соответствие между координатами устанавливается формулой: где где Далее, остается вопрос, как записать аффинное или любое другое преобразование Т в экранных координатах. Пусть видно, что новое преобразование Т задается формулой: а для перехода в мировые координаты нужно воспользоваться следующей формулой: Теорема 3.4.7. Пусть где Доказательство. Имеем: где Еще раз повторим, что основная цель замены координат состоит в том, чтобы при построении фрактального изображения с помощью систем итерированных функций можно было производить вычисления напрямую с экранными координатами. Следующий алгоритм реализует переход из мировых координат в экранные. Алгоритм Назначение: для аффинного отображения Т, заданного в мировых координатах, вычисляет эквивалентное представление в экранных координатах. Отображение Т имеет вид: Вход:
Выход:
Шаги: Рис. 3.10. Отображение треугольника в треугольник Пример. Рассмотрим пример аффинного преобразования, заданного тремя точками (рис. 3.10): Матричная запись этого преобразования: Пусть мировые координаты изменяются в пределах Рис. 3.11. Пример перехода к экранным координатам Мы намеренно выбрали Преобразование из мировых координат в экранные дается формулой: В этой новой системе координат соответствие между точками запишется так (рис. 3.11): Преобразование (3.22) в новых координатах примет следующий вид:
|
Оглавление
|