OpenGL 交互程序与应用

OpenGL 交互程序与应用

ID:39466686

大小:134.00 KB

页数:8页

时间:2019-07-04

OpenGL 交互程序与应用_第1页
OpenGL 交互程序与应用_第2页
OpenGL 交互程序与应用_第3页
OpenGL 交互程序与应用_第4页
OpenGL 交互程序与应用_第5页
资源描述:

《OpenGL 交互程序与应用》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、实验名称OpenGL交互程序与应用一、实验目的学习基于OpenGL的图形学交互编程,掌握键盘、鼠标交互程序设计的基本过程与程序的基本结构。二、实验内容利用前面实验生成的应用程序,编写新的函数实现键盘、鼠标交互程序来完成控制设计基于OpenGL的应用程序,实现基本图形的绘制功能的控制。三、实验步骤1、添加相应的回调函数,实现键盘、鼠标交互程序。2、在回调函数中实现基本图形(三角形,多边形及圆)的绘制。3、编写菜单控制程序,实现一定功能的快捷菜单功能。实验代码及程序运行结果截图如下://2008.cpp:Definestheentrypointfortheconsolea

2、pplication.//#include"stdafx.h"#include"GLglut.h"#include"math.h"#include"stdlib.h"#defineNULL0#defineHEAD1#defineTRIANGLE2#definePOLYGON3#defineCIRCLE4voiddraw_triangle();//画三角形voiddraw_polygon();//画多边形voiddraw_circle();//画圆voiddraw_head();//画人头voidkboard(unsignedcharkey,intx,inty);vo

3、idspecial_key(intkey,intx,inty);voidmousef(intbutton,intstate,intx,inty);voidtop_menu(intid);voidsize_menu(intid);voidinit();voiddisplay();voidmyinit();GLdoublewh=0,ww=0;GLfloatsize=3.0;GLintflag=1;GLintr=1,g=0,b=0;voiddraw_triangle()//画三角形{glBegin(GL_POLYGON);//DrawthetriangleglColor3f

4、(r,g,b);//SetcurrentcolortoredglVertex2f(-0.7,-0.7);glColor3f(g,b,r);//SetcurrentcolortogreenglVertex2f(0.7,-0.7);glColor3f(b,r,g);//SetcurrentcolortoblueglVertex2f(0,0.7);glEnd();}voiddraw_polygon()//画多边形{glBegin(GL_LINE_LOOP);glColor3f(r,0.9*g,0.8*b);glVertex2f(0,0.6);glVertex2f(1,0.6

5、);glVertex2f(0.1,0);glVertex2f(0.5,1);glVertex2f(0.9,0);glEnd();glFlush();}voiddraw_circle()//画圆{glBegin(GL_LINE_LOOP);glColor3f(r,g,b);intn=100;doublet;for(inti=0;i

6、OOTH);glEnable(GL_LINE_SMOOTH);glEnable(GL_POLYGON_SMOOTH);glBegin(GL_POLYGON);//DrawthemouthglColor3f(1.0,0.0,0.0);glVertex2f(0.53,0.16);glVertex2f(0.67,0.17);glVertex2f(0.72,0.25);glVertex2f(0.45,0.22);glEnd();glBegin(GL_TRIANGLES);//DrawthenoseglColor3f(1.0,1.0,0.0);glVertex2f(0.58,0

7、.52);glVertex2f(0.5,0.3);glVertex2f(0.66,0.3);glEnd();glBegin(GL_TRIANGLE_FAN);//DrawthehairglColor3f(0.5*r,0.9*g,0.7*b);glVertex2f(0.7,0.95);glVertex2f(0.3,0.9);glVertex2f(0.15,0.65);glVertex2f(0.55,0.75);glVertex2f(0.6,0.55);glVertex2f(0.8,0.75);glVertex2f(0.99,0.7);glEnd();g

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。