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

cos  sin  0 0

-sin

(4.16)

cos 0 0

0 0ɦ

72; 0

0 0 0 1

4-й шаг. Поворот вокруг оси ординат на угол -

5-й шаг. Поворот вокруг оси абсцисс на угол -

Однако вращение в пространстве некоммутативно. Поэтому порядок, в котором проводятся вращения, является весьма существенным.

6-й шаг. Перенос на вектор А (a, b, c).

Перемножив найденные матрицы в порядке их построения, получим следующую матрицу:

[ T ][ Rx ][ Ry ][ Rz ][ Ry ]-1[ Rx ]-1 [ T ]-1.

Выпишем окончательный результат, считая для простоты, что ось вращения ходит через начальную точку.

l2 + cos (1 – l2) l(1 – cos m + n sin l(1 – cos )n – m sin  0

l(1 – cos m – n sin m2 + cos 1 – m2) m(1 – cos n + lsin 0

l(1 – cos n + m sin m(1 – cos n – lsin n2 + cos - n2) 0

0 0 0 1

Рассматривая примеры подобного рода, мы будем получать в результате невырожденные матрицы вида



[ А ] =

(4.17)







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

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

Для этого сначала по геометрическому описанию отображения находим его матрицу [ A ]. Замечая далее, что произвольный выпуклый многогранник однозначно задается набором всех своих вершин

Vi ( xi, yi, zi), i = 1,…,n,

Строим матрицу

x1 y1 z1 1

V = . . . . . . . . . . (4.18)

xn yn zn 1

Подвергая этот набор преобразованию, описываемому найденной невырожденной матрицей четвертого порядка, [ V ][ A ], мы получаем набор вершин нового выпуклого многогранника – образа исходного (рис. 12).

Z

0

Y

X

Рис. 11

5. Заключение

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

Программа построена на основе принципов объектно-ориентированного программирования (ООП). Такой подход был признан оптимальным для данной задачи с учетом того, что модель станка строится на основе компоновочного кода. При реализации сначала была рассмотрена цепочка узлов, представляющая станок. Это привело к трудностям и неудобству реализации отображения 3-х мерной модели в эмулированном графическом пространстве. Поэтому была реализована концепция, рассматривающая станок, как “дерево” объектов, исходя из того, что один из узлов станка, а именно станина, является неподвижным и зафиксированным жесткой привязкой к системе координат. Таким образом, полученная модель представляла собой объект, из которого выходили две “ветви” объектов.

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

6. Список используемой литературы.

1. Шишкин Е. В., Боресков А. В. Компьютерная графика. М.: Диалог-МИФИ, 1995. – 288 с., ил.

Страница:  1  2  3  4  5  6  7  8  9  10 


Другие рефераты на тему «Математика»:

Поиск рефератов

Последние рефераты раздела

Copyright © 2010-2024 - www.refsru.com - рефераты, курсовые и дипломные работы