[英]How to draw a 4 pointed star using glut openGL
我想在 C++ 中使用 GLUT 和 openGL 绘制一个四角星。 这是我的代码
glBegin(GL_TRIANGLE_FAN);
glVertex3f(0.0f,6.0f,0.0f);
glVertex3f(1.0f,4.0f,0.0f);
glVertex3f(3.0f,3.0f,0.0f);
glVertex3f(1.0f,2.0f,0.0f);
glVertex3f(0.0f,0.0f,0.0f);
glVertex3f(-1.0f,2.0f,0.0f);
glVertex3f(-3.0f,3.0f,0.0f);
glVertex3f(-1.0f,4.0f,0.0f);
glEnd();
问题是形状从 0,6 直接变为 3,3
谁能帮我解决这个问题,截图
我想要这样的期望输出
GL_TRIANGLE_FAN
primitiv 的第一个点始终保持固定(参见三角形基元)。 只需在“内部”点之一启动GL_TRIANGLE_FAN
primitiv:
glBegin(GL_TRIANGLE_FAN);
glVertex3f(1.0f,4.0f,0.0f);
glVertex3f(3.0f,3.0f,0.0f);
glVertex3f(1.0f,2.0f,0.0f);
glVertex3f(0.0f,0.0f,0.0f);
glVertex3f(-1.0f,2.0f,0.0f);
glVertex3f(-3.0f,3.0f,0.0f);
glVertex3f(-1.0f,4.0f,0.0f);
glVertex3f(0.0f,6.0f,0.0f);
glEnd();
您正在创建一个三角形扇形,但将其中心顶点(初始顶点)设置为 0,6,0。
您可能想要更改几何形状,以便您的中心顶点位于原点(为了对称)。 正如@Rabbid76 所示,它还可以将第一个顶点向下移动到底部。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.