实验一 OpenGL初识
主题:实验1——OpenGL初识(计算机图形学(OpenGL版))
代码1:
1 #include <GL/glut.h> 2 3 void myDisplay(void){ 4 5 glClearColor(0.0,0.0,0.0,0.0); 6 glClear(GL_COLOR_BUFFER_BIT); 7 8 glColor3f(1.0f,1.0f,1.0f); 9 glRectf(-0.5f,-0.5f,0.5f,0.5f); 10 11 glBegin (GL_TRIANGLES); 12 glColor3f(1.0f,0.0f,0.0f);glVertex2f(0.0f,1.0f); 13 glColor3f(0.0f,1.0f,0.0f);glVertex2f(0.8f,-0.5f); 14 glColor3f(0.0f,0.0f,1.0f);glVertex2f(-0.8f,-0.5f); 15 glEnd(); 16 17 glPointSize(3); 18 19 glBegin(GL_POINTS); 20 21 glColor3f(1.0f,0.0f,0.0f);glVertex2f(-0.4f,-0.4f); 22 glColor3f(0.0f,1.0f,0.0f);glVertex2f(0.0f,0.0f); 23 glColor3f(0.0f,0.0f,1.0f);glVertex2f(0.4f,0.4f); 24 25 glEnd(); 26 27 28 glFlush(); 29 30 31 } 32 33 int main(int argc,char *argv[]){ 34 glutInit(&argc,argv); 35 glutInitDisplayMode(GLUT_RGB|GLUT_SINGLE); 36 glutInitWindowPosition(100,100); 37 glutInitWindowSize(400,400); 38 glutCreateWindow("Hello World!"); 39 glutDisplayFunc(&myDisplay); 40 glutMainLoop(); 41 return 0; 42 43 }
运行结果:
代码2:
1 #include <GL/glut.h> 2 3 void myDisplay(void){ 4 5 glClearColor(0.0,0.0,0.0,0.0); 6 glClear(GL_COLOR_BUFFER_BIT); 7 8 glColor3f(1.0f,1.0f,1.0f); 9 glRectf(-0.5f,-0.5f,0.5f,0.5f); 10 11 glBegin (GL_TRIANGLES); 12 glColor3f(1.0f,0.0f,0.0f);glVertex2f(0.0f,1.0f); 13 glColor3f(0.0f,1.0f,0.0f);glVertex2f(0.8f,-0.5f); 14 glColor3f(0.0f,0.0f,1.0f);glVertex2f(-0.8f,-0.5f); 15 glEnd(); 16 17 glPointSize(3); 18 19 glBegin(GL_POINTS); 20 21 glColor3f(1.0f,0.0f,0.0f);glVertex2f(-0.4f,-0.4f); 22 glColor3f(0.0f,1.0f,0.0f);glVertex2f(0.0f,0.0f); 23 glColor3f(0.0f,0.0f,1.0f);glVertex2f(0.4f,0.4f); 24 25 glEnd(); 26 27 28 glBegin(GL_LINE_LOOP); 29 30 glColor3f(1.0f,1.0f,1.0f);glVertex2f(0.4f,0.25f); 31 glColor3f(1.0f,1.0f,1.0f);glVertex2f(0.0f,-0.5f); 32 glColor3f(1.0f,1.0f,1.0f);glVertex2f(-0.4f,0.25f); 33 34 glEnd(); 35 36 glFlush(); 37 38 39 } 40 41 int main(int argc,char *argv[]){ 42 glutInit(&argc,argv); 43 glutInitDisplayMode(GLUT_RGB|GLUT_SINGLE); 44 glutInitWindowPosition(100,100); 45 glutInitWindowSize(400,400); 46 glutCreateWindow("Hello World!"); 47 glutDisplayFunc(&myDisplay); 48 glutMainLoop(); 49 return 0; 50 51 }
运行结果:
转载于:https://www.cnblogs.com/mallocxw/p/5366623.html
实验一 OpenGL初识相关推荐
- 实验1 OpenGL初识
一.实验目的 熟悉编程环境:了解光栅图形显示器的特点:了解计算机绘图的特点: 利用VC+OpenGL作为开发平台设计程序,以能够在屏幕上生成任意一个像素点作为本实验的目标. 二.实验内容 了解和使用V ...
- 实验一OpenGL图形编程入门
实验一OpenGL图形编程入门 一. 实验目的 1.了解和掌握OpenGL的安装. 2.掌握一个简单的基于OpenGL的C++程序结构. 3.掌握Win32程序框架. 4.掌握OpenGL中若干基本图 ...
- 实验5 OpenGL模型视图变换
1.实验目的: 理解掌握OpenGL程序的模型视图变换. 2.实验内容: (1)阅读实验原理,运行示范实验代码,理解掌握OpenGL程序的模型视图变换: (2)根据示范代码,尝试完成实验作业: 3.实 ...
- 实验3 OpenGL几何变换
转自:http://www.cnblogs.com/opengl/archive/2012/10/30/2747130.html 1.实验目的: 理解掌握一个OpenGL程序平移.旋转.缩放变换的方法 ...
- 计算机图形学实验四 OpenGL的鼠标交互绘制
一.实验目的 1.掌握OpenGL的鼠标按钮响应函数. 2.掌握OpenGL的鼠标移动响应函数. 3.进一步巩固OpenGL的基本图元绘制基础. 二.实验内容 1.鼠标画草图--实现鼠标点到哪,线就画 ...
- 计算机图形学:实验二——OpenGL绘制基本图形
1. 实验目的 练习OpenGL基础编程,实现OpenGL的颜色混合和渐变效果. 2. 实验内容和要求 按要求完成以下两个绘图,提交纸质实验报告,同时提交实验报告和代码的电子版. I). 利用Open ...
- 深圳大学计算机图形学实验一——OpenGL绘制布布头像
尝试利用OpenGL绘制一些可爱的表情包. 一二布布是较为流行的一套萌系表情包.我选择绘制一二布布系列的一张表情包.这张表情包描绘了趴在窗户上的一只小棕熊布布. 表情包印在手机壳的样例如下: 头的绘制 ...
- 计算机图形学实验(OpenGL实现):Spinning Pinwheel
实验要求: 构建且渲染一个3D风车模型(如下图所例示).其中,三个叶片(包括中间的黄色三角形)在一个2D平面上,手柄在另外一个离相机更近的2D平面上.三个叶片.中心的三角形.手柄分别用不同的颜色显示. ...
- 计算机图形学基础:实验5 OpenGL二维几何变换
1.实验目的: 理解并掌握OpenGL二维平移.旋转.缩放变换的方法. 2.实验内容: 阅读实验原理,掌握OpenGL程序平移.旋转.缩放变换的方法. 根据示范代码,完成实验作业. 3.实验原理: ( ...
最新文章
- php字符串处理函数相关操作
- docker dockerfile 映射端口范围 批量映射端口
- 部门名称部门结构叠用_DYT|部门名称创意设计比赛,你pick哪一个?
- java自学难点_java学习重难点
- .NET获取根目录方法
- 5下载的demo在哪_归类专业能力水平评价练习盘!快来下载呀
- mysql 全文索引 权重_MySQL中的全文索引
- JS的条形码和二维码生成
- SSLRobot:适用于HttpWatch的免费SSL / TLS测试工具
- 最好用的数据可视化神器,没有之一
- 如何使用给定的部分名称杀死所有进程?
- flask常用内容:
- ORA-01157报错cannot identify/lock data file
- android手表微信运动,华为手表(华为运动健康APP)终于能绑定微信运动
- volatile能保持线程安全吗_volatile变量能保证线程安全性吗?为什么?
- 以太网未识别的网络win10_win10系统遇到以太网无法识别网络如何解决
- C语言编写的学生考勤信息管理系统
- kail详细安装教程
- 使用python进行视频地址的获取,下载
- 微信的url服务器接收微信信息的配置