Главная

Популярная публикация

Научная публикация

Случайная публикация

Обратная связь

ТОР 5 статей:

Методические подходы к анализу финансового состояния предприятия

Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века

Ценовые и неценовые факторы

Характеристика шлифовальных кругов и ее маркировка

Служебные части речи. Предлог. Союз. Частицы

КАТЕГОРИИ:






Описание разработки программы




Для создания этой программы были использованы языки программирования Си и С++. Они являются распространенными языками программирования и позволяют создавать интерактивные программы.

В качестве среды программирования был выбран программный продукт Visual Studio 2005.

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

При запуске программы пользователю в меню необходимо выбрать пункт «Файл» - «Построить фигуру». Тогда на экране отобразится каркасная модель трехмерного объекта.

Для просмотра анимации необходимо во вкладке «Файл» выбрать пункт «Анимация».

Для просмотра меню помощи нужно нажать вкладку «Помощь» - «О программе».

Для выхода можно нажать крестик и выбрать соответствующий пункт в меню.

Алгоритм построения фигуры имеет следующий вид:


 

 

Начало
Считывание из файла координат объекта
Считывание связей
Проецирование
Вывод фигуры на экран
Конец
Рисунок 1. Алгоритм построения фигуры


Формулы проецирования записаны в программе:

 

 


 

i = 0; i < c_number; i++

coor_2d[i].sx = coor_3d[i].x * dist/(coor_3d[i].z + dist)
coor_2d[i].sy = coor_3d[i].y * dist/(coor_3d[i].z + dist);

 

 


i

Рисунок 2. Алгоритм проецирования

 

 


где coor_2d[i].sx и coor_2d[i].sy – двумерные координаты по х и по у, coor_3d[i].x, coor_3d[i].y, coor_3d[i].z – трехмерные координаты, dist – дистанция от камеры до начала координат.

 

Вывод фигуры на экран осуществляется следующим образом:

 

 


 

i = 0; i < links_number; i++

MoveToEx(hdc, coor_2d[links[i].one].sx, coor_2d[links[i].one].sy, NULL);
LineTo(hdc, coor_2d[links[i].two].sx, coor_2d[links[i].two].sy);

 

 


i

 

 

Рисунок 3. Алгоритм вывода фигуры на экран


Ниже представлена структурная схема алгоритма.

нет
нет
k += 0.01;
alpha++
Рисунок 4. Структурная схема алгоритма
да
Enter
spinmatrix(alpha, 1);
начало
VK_UP
да
нет
scalematrix(k, 1);
VK_ADD
нет
да
нет
считывание данных
конец
multiply(); draw();
VK_F1
VK_F4
да
да

 






Не нашли, что искали? Воспользуйтесь поиском:

vikidalka.ru - 2015-2024 год. Все права принадлежат их авторам! Нарушение авторских прав | Нарушение персональных данных