我试图在一些C ++ OpenGL入门代码中跟踪执行路径,但主要方法几乎没有做到这一点:
QApplication app(argc, argv);
MainWindow main_window;
main_window.resize(QSize(width, height));
main_window.show();
return app.exec();
这些是.h和.cpp文件:
GLShape.h GLTransformStack.h main.cpp Matrix4x4.h
GLState.cpp GLWidget.cpp MainWindow.h
GLState.h GLWidget.h Matrix3x3.h
所有各种功能似乎相当明显,但我找不到任何被调用/实例化的地方。我怀疑这是由QApplication
在幕后完成的。
QApplication
相对于这些文件是否有标准的执行流程?
特别是,我想创建一个组织为形状树的动画。为此,我试图添加一个类PivotGroup,它包含所有与旋转点相关联的形状组。每个PivotGroup都有PivotGroup子元素的向量,因此可以构造一个树。
代码创建树的最佳位置在哪里?它似乎作为一个小部件有意义,但我不知道是否正在创建一个或多个小部件。
答案 0 :(得分:2)
通常在使用带有Qt的OpenGL时,GLWidget类将在MainWindow类的构造函数中实例化,这两个类都继承自Qt类。您还可以在那里向MainWindow添加其他小部件。