Построение додекаэдра
Додекаэдр - наиболее сложное платоново тело. Оптимальный метод его построения заключается в предварительном создании икосаэдра и соединении центров его смежных граней ребрами.
Икосаэдр конструируется по следующему алгоритму.

(рис. 5)
В окружностях сечений цилиндра единичного радиуса строятся правильные пятиугольники 1-3-5-7-9-1 и 2-4-6-8-10-2 с координатами вершин xi=cos(36°i), zi=sin(36°i), yi=(-1)i+1h при i=1..10.
Соединяя вершины 1-2-3-4-5-6-7-8-9-10-1, получим десять средних треугольных граней икосаэдра с длиной горизонтальных ребер
Так как у нас нет смещения по х и по у то и , а поэтому получим
Из условия получения равносторонних треугольников. Найдем высоту h, для этого распишем длину ребер d через координаты 1 и 10 вершины.
Так как то получим


Вычислим радиус описанной сферы



(рис. 6)
Функция K формирует матрицу координат вершин икосаэдра.

Q - матрица координат вершин икосаэдра.

G - матрица номеров вершин образующих одну грань икосаэдра.


Функция VV формирует матрицу координат вершин додекаэдра. Для этого из матрицы Q берем координатные столбцы вершин, образующих одну грань, усредняем их и получаем соответствующий координатный столбец матрицы Q12.
- матрица координат вершин додекаэдра.

В матрицы G12 задаем обход додекаэдра (рис. 7) для прорисовки.

(рис. 7)

Результатом работы функции V(Q, G) является блочная матрица, элементы которой содержат соответственно только координаты X, Y и Z начальных и конечных вершин всех ребер, входящих в матрицу G12.

Далее средствами Mathcad по результатам работы функции V(Q12,G12) строим график поверхности додекаэдра:
Заключение

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