首页 > 解决方案 > 画出这个形状

问题描述

glBegin(GL_POLYGON);
// color of the shape
glColor3f(1.0, 1.0, 1.0);
// draw shape
glVertex2f(50, 200);
glVertex2f(50, 170);
glVertex2f(80, 200);
glVertex2f(80, 240);
glVertex2f(50, 240);
glEnd();

我正在努力绘制下面的形状。我的形状只需要旋转。

预习:

在此处输入图像描述

形状应该是这样的:

在此处输入图像描述

标签: c++opengl

解决方案


原始类型GL_POLYGON将顶点坐标连接到凸多边形。最后一点连接到第一个点。对于具有 4 个角点的形状,4 个顶点坐标就足够了:

                    + (80, 240)
                  / |
Y                /  |
^               /   |
|   (50, 200) +     |
|             |     |
|             |     |
|             |     |
|   (50, 170) +-----+ (80, 170)
|
+-------------> X    
glBegin(GL_POLYGON);
glVertex2f(50, 170);
glVertex2f(80, 170);
glVertex2f(80, 240);
glVertex2f(50, 200);
glEnd();

推荐阅读