Композиции двумерных преобразований


 

Но обычно при работе с графической системой объект подвергается сразу нескольким преобразованиям. Для получения желаемого результата используют композицию преобразований, объединяя матрицы . К точке более эффективно применять одно результирующее преобразование, чем ряд преобразований последовательно.

Рассмотрим, например, поворот объекта относительно некоторой точки .

До этого был рассмотрен поворот относительно начала координат. Для решения этой задачи разобьем ее на три части (три элементарных преобразования):

· Перенос точки в начало координат), .

· Поворот, .

 

 

Рис. 2.5

 

· Перенос точки из начала координат в начальную позицию, .

Результирующее преобразование имеет вид:

 

,

 

или:

 

 

Этот пример хорошо иллюстрирует, как применение однородных координат упрощает задачу.

Аналогично, если надо промасштабировать объект относительно точки , а не начала координат, то надо:

· Перенести точку в начало координат, .

· Масштабировать, .

· Перенести точку назад, .

Результат имеет вид:

 

 

Если надо промаштабировать, повернуть и расположить в нужном месте домик, (центром поворота и масштабирования является точка ), то необходимо выполнить:

· Перенос точки в начало координат, .

· Масштабирование, .

· Поворот, .

· Перенос точки из начала координат назад, .

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

 

.

 



Дата добавления: 2016-07-18; просмотров: 1834;


Поиск по сайту:

Воспользовавшись поиском можно найти нужную информацию на сайте.

Поделитесь с друзьями:

Считаете данную информацию полезной, тогда расскажите друзьям в соц. сетях.
Poznayka.org - Познайка.Орг - 2016-2024 год. Материал предоставляется для ознакомительных и учебных целей.
Генерация страницы за: 0.01 сек.