QT OpenGL绘制三角形
时间: 2023-08-26 13:16:24 浏览: 54
您可以使用Qt中的QOpenGLWidget类来绘制三角形。下面是一个简单的示例代码:
```cpp
#include <QOpenGLWidget>
#include <QOpenGLFunctions>
class GLWidget : public QOpenGLWidget, protected QOpenGLFunctions
{
public:
GLWidget(QWidget *parent = nullptr) : QOpenGLWidget(parent) {}
protected:
void initializeGL() override
{
initializeOpenGLFunctions();
}
void paintGL() override
{
glClearColor(0.0f, 0.0f, 0.0f, 1.0f);
glClear(GL_COLOR_BUFFER_BIT);
glBegin(GL_TRIANGLES);
glColor3f(1.0f, 0.0f, 0.0f);
glVertex3f(-0.5f, -0.5f, 0.0f);
glColor3f(0.0f, 1.0f, 0.0f);
glVertex3f(0.5f, -0.5f, 0.0f);
glColor3f(0.0f, 0.0f, 1.0f);
glVertex3f(0.0f, 0.5f, 0.0f);
glEnd();
}
void resizeGL(int w, int h) override
{
glViewport(0, 0, w, h);
}
};
```
然后,您可以使用GLWidget类创建一个窗口并显示它:
```cpp
#include <QApplication>
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
GLWidget widget;
widget.resize(800