Формиране на тела на въртене - реализация на алгоритъма на OpenGl

Необходими знания:

Разработването на програмата започва със създаването на обвивка. Създайте прозорец на програмата и поставете елементаopenglsimplecontrolвърху него, както е показано на фигура 1, след което задайте неговия размер на500x500.

Преименувайте този обект наAnT.

Освен това задайте елементаtrackBarкъм прозореца на формуляра. Отивайки до неговите свойства, задайтеориентациянаВертикална. Задайте максималния диапазон на100.

Също така не забравяйте да зададете връзки към използваниTaoбиблиотеки (фиг. 3).

алгоритъма
Фигура 3. Свързване на необходимите библиотеки. Ще се използва таймер за изпълнение на изобразяването - след като прозорецът бъде инициализиран, той ще генерира събитие, наречено отметка на таймера на всеки30милисекунди. Добавете елемент на таймер, преименувайте екземпляра наRenderTimerи задайте времето за отметка на30милисекунди (както е показано на фигура 5) и добавете събитие за отметка към него.Уверете се, че сте активирали таймера (свойството enabled трябва да е зададено на true). Събитието, което ще се изпълни при следващия тик на таймера, ще извика функцията за изобразяване на сцена.
opengl
Фигура 4. Настройка на таймера. Инициализирането на прозореца иOpenGlе същото като в предишните проекти.

Трябва да декларираме редица променливи за по-нататъшната работа на програмата:

Както преди, функциятаForm1_Loadотговаря за инициализирането наOpenGL. Но сега тук все още изграждаме масив от геометрия на тялото, изграден чрез ротация въз основа на предварително дефиниран масивGeometricArray. Form1_Load е функцията за манипулиране на събития Load за формуляра, върху който поставяме елементи.управление.

И така, геометрията на обекта е изградена, остава да се обработи съобщението на таймера, за да се извика функцията за рисуване, както и директно да се приложи функциятаDraw.

Във функциятаDrawще разгледаме три вида визуализация, които ще се използват в зависимост от режима, зададен в елементаcomboBox.

Точковата визуализация е най-простата. Визуализацията с линии или многоъгълници е по-трудна.

Опитайте се да анализирате алгоритъма възможно най-внимателно, за да разберете същността на неговата работа.

Фигури 5, 6, 7 показват резултатите от програмата: въртящо се тяло с различни режими на изобразяване на геометрията.

въртене
Фигура 5. Пример за изграждане на обект в точков режим.
формиране
Фигура 6. Пример за изграждане на обект в режим линия.
алгоритъма
Фигура 7. Пример за изграждане на обект в многоъгълен режим. В следващата глава ще разгледаме създаването на3D-обекти, чиято реализация вече е налична в библиотекатаGLUT, както и функциитеOpenGLза промяна на тяхната позиция в пространството и мащабиране без промяна на структурата на геометрията на обекта.