OpenGL的填充属性函数之线框图方法

本文介绍如何利用OpenGL技术实现多边形的线框图方法和填充内部同时用不同颜色显示边的方法,包括代码实现和环境配置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

OPNEGL的填充属性函数之————————

线框图方法

我们可以仅显示多边形的边,这生成线框图或多边形的空心显示,也可以通过显示一组顶点来显示多边形,主要由glPolygonMode()函数来选定。

另一个显示多边形的选项是在填充内部的同时用不同的颜色或图案来显示他的边或顶点。这通过指定该多边形两次来实现。

还是先配置好环境,然后编写c++代码,我写的实现的是填充内部的同时用不同的颜色显示他的边,其他的功能只要稍微修改代码即可。代码如下:

#include <windows.h>

#include <GL/gl.h>

#include <GL/glu.h>

#include <GL/glut.h>

void display(void)

{

glClear(GL_COLOR_BUFFER_BIT);

    glColor3f(0.0,1.0,0.0);

glBegin(GL_TRIANGLES);

glVertex2i(50,50);

glVertex2i(150,50);

glVertex2i(75,150);

glEnd();

glLineWidth(4.0);//为了更清楚的显示,可以将线宽设为4.o像素

glColor3f(1.0,0.0,0.0);

glPolygonMode(GL_FRONT,GL_LINE);//多边形的前面仅显示它的边

    glBegin(GL_TRIANGLES);

glVertex2i(50,50);

glVertex2i(150,50);

glVertex2i(75,150);

glEnd();

glFlush ();

}

void myinit (void) 

{

glClearColor (0.0, 0.0, 0.0, 1.0);

glMatrixMode (GL_PROJECTION);       // Set projection parameters.

gluOrtho2D (0.0, 400.0, 0.0, 150.0);

//glShadeModel (GL_FLAT); 

}

int main(int argc, char** argv)

{

glutInitDisplayMode(GLUT_SINGLE | GLUT_RGBA);

glutInit (&argc, argv);

//glutInitPosition 

glutInitWindowPosition(0, 0);

glutInitWindowSize (350, 150);      

glutCreateWindow ("An Example OpenGL Program"); 

//glutInitWindow (argv[0]);

myinit();

glutDisplayFunc(display);

glutMainLoop();

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值