Реферат: Задачи графических преобразований в приложениях моделирования с использованием ЭВМ
Перемножив найденные матрицы в порядке их построения, получим следующую матрицу:
[ T ][ Rx ][ Ry ][ Rz ][ Ry ]-1 [ Rx ]-1 [ T ]-1 .
Выпишем окончательный результат, считая для простоты, что ось вращения ходит через начальную точку.
l 2 + cos j(1 – l 2 ) l (1 – cos j)m + n sin j l (1 – cos j)n – m sin j 0
l (1 – cos j)m – n sin j m2 + cos j(1 – m2 ) m(1 – cos j)n + l sin j 0
l (1 – cos j)n + m sin j m(1 – cos j)n – l sin j n2 + cos j(1 - n2 ) 0
0 0 0 1
Рассматривая примеры подобного рода, мы будем получать в результате невырожденные матрицы вида
a1 a2 a3 0
|
|
g1 g2 g3 0
l m n 1
При помощи таких матриц можно преобразовать любые плоские и пространственные фигуры.
Пример 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 с., ил.
2. Вайсберг А. В., Гриценко М. Е. Формирование структуры станка на ранних стадиях проектирования. – Точность автоматизированных производств (ТАП – 97). Сборник статей международной научно-технической конференции. Пенза, 1997., с. 52 – 53.