Принцип работы программы «Вращение куба» на языке VB.NET — КиберПедия 

Адаптации растений и животных к жизни в горах: Большое значение для жизни организмов в горах имеют степень расчленения, крутизна и экспозиционные различия склонов...

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

Принцип работы программы «Вращение куба» на языке VB.NET

2021-04-19 88
Принцип работы программы «Вращение куба» на языке VB.NET 0.00 из 5.00 0 оценок
Заказать работу

 

После открытия программы Microsoft VisualStudio 2005 нужно создать новый проект, выбрав среди языков программированияVisualBasic, затем WindowsApplication.

На экране появилось окно- форма, на который в дальнейшем будет отображаться и вращаться куб. Теперь с помощью TextBox создаются четыре кнопки, с помощью которых будет вращаться куб вверх, вниз, вправо и влево.

Сначала в самом теле программы необходимо объявить все глобальные переменные(до стандартной функции Form_Load).

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

Далее, после Form_Load, создается функция vvod() для считывания параметров куба с текстового файла формата *.txt.

В этой функции считывание строк с файла осуществляет оператор sw.ReadLine(), а разбиение Mid(a, j, 1), гдеa-строка, j-номер символа, с которого записывать.

Функция val() осуществляет присвоение значений переменным, так же вычисляет координаты центра в трехмерных координатах, используя формулы.

 

(22)

(23)

Вместо половины ширины экрана использовано произвольное значение 300.

Функция val() позволяет вращать влево и вправо куб при помощи формул

 

(24)

  (25)

 

Таким образом, переменная angle1 отвечает за поворот вниз, а angle за поворот вверх.

Функция val1() используется при повороте вправо и влево, соответственно переменными angle1 и angle, которые при каждом нажатии на кнопки, либо увеличиваются, либо уменьшаются.

С помощью кнопок Button_Click составлены четыре процедуры, в которых происходит вращение.

В Button1_Click и Button3_Click вызывается функция val() для присвоения значений переменным и изменения угла. Затем в функции вычисляются координаты всех вершин куба с помощью формул. Рассмотрим одну из вершин:

 

   (26)

  (27)

(28)

 

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

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

Далее создается объект p для рисования и очистка экрана.

Dim p As Graphics = Me.CreateGraphics

p.Clear(Color.White)

Затем с помощь DrawPolygon выводится изображение куба на форму в виде 6 прямоугольников.

В Button2_Click и Button4_Click отличается от предыдущего тем, что вначале вызывается функция val1(), которая осуществляет поворот влево и вправо.

Так как программа считывает данные с файла, необходимо создать текстовый файл в каталоге программы WindowsApplication7\bin\Debug\. В этом файле в первой строке требуется указать три координаты прямоугольника через пробел (строку необходимо начать с пробела и после написания трех координат тоже поставить пробел). Например: 234 250 300.

 


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

Опора деревянной одностоечной и способы укрепление угловых опор: Опоры ВЛ - конструкции, предназначен­ные для поддерживания проводов на необходимой высоте над землей, водой...

История создания датчика движения: Первый прибор для обнаружения движения был изобретен немецким физиком Генрихом Герцем...

Таксономические единицы (категории) растений: Каждая система классификации состоит из определённых соподчиненных друг другу...

Археология об основании Рима: Новые раскопки проясняют и такой острый дискуссионный вопрос, как дата самого возникновения Рима...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.006 с.