OpenGL
无心流泪
这个作者很懒,什么都没留下…
展开
-
OpenGL Glut剖析(3)--重绘回调函数的使用
http://anony3721.blog.163.com/blog/static/51197420114382654698/(一)引言 有过Windows GDI编程经验的人都知道当窗口的尺寸发生变化时,或该窗口被另外一个窗口遮住时窗口应该发生重绘。OpenGL当然也不例外。例如下面一段程序运行后拖动窗口的边沿窗口以及里面显示的物体大小会随之变化。由于我们没转载 2013-06-13 19:53:47 · 5162 阅读 · 1 评论 -
opengl绘制一个圆
#include #include#include #define DEG_TO_RAD 0.017453 //角度转为弧度的参数,即 2*PI/360 GLboolean rotate = GL_TRUE;float theta=30.0; //直线与X轴正方向的夹角float length=200.0; //直线的长度float x=300.0, y=200.0;原创 2013-06-15 22:56:13 · 2251 阅读 · 0 评论 -
OpenGL采用显示列表显示文字完整范例
http://anony3721.blog.163.com/blog/static/511974201142334846347/(一)显示英文OpenGL并没有直接提供显示文字的功能,并且,OpenGL也没有自带专门的字库。因此,要显示文字,就必须依赖操作系统所提供的功能了。各种流行的图形操作系统,例如Windows系统和Linux系统,都提供了一些功能,以便能够在OpenGL程序转载 2013-06-16 00:41:41 · 1348 阅读 · 0 评论 -
键盘回调函数的使用
#include #include#include #define DEG_TO_RAD 0.017453 //角度转为弧度的参数,即 2*PI/360 GLboolean rotate = GL_TRUE;float theta=30.0; //直线与X轴正方向的夹角float length=200.0; //直线的长度float x=300.0, y=200.0;原创 2013-06-15 22:33:30 · 3589 阅读 · 0 评论 -
关于glTranslatef函数
#includevoid display(){ glClearColor(0.0,0.0,0.0,0.0); glOrtho(-10,10,-10,10,-10,10); glClear(GL_COLOR_BUFFER_BIT); glTranslatef(-4.5f,0.0f,-6.0f); glBegin(GL_TRIANGLES); glColor3f(原创 2013-06-16 01:27:16 · 3259 阅读 · 1 评论 -
glLoadIdentity()与glTranslatef()和glRotatef()--坐标变换
glLoadIdentity()将当前的用户坐标系的原点移到了屏幕中心:类似于一个复位操作1.X坐标轴从左至右,Y坐标轴从下至上,Z坐标轴从里至外。2.OpenGL屏幕中心的坐标值是X和Y轴上的0.0f点。3.中心左面的坐标值是负值,右面是正值。 移向屏幕顶端是正值,移向屏幕底端是负值。 移入屏幕深处是负值,移出屏幕则是正值。glTranslatef转载 2013-06-16 01:38:19 · 877 阅读 · 0 评论 -
OpenGL视点变换,模型变换,投影变换,视口变换详解
http://blog.csdn.net/yhb5566/article/details/7714319OpenGL视点变换,模型变换,投影变换,视口变换详解作者:luck_net | 出处:博客园 | 2012/2/22 14:46:49 | 阅读112次OpenGL通过相机模拟、可以实现计算机图形学中最基本的三维变换,即几何变换、转载 2013-06-16 02:09:55 · 9037 阅读 · 0 评论 -
创建GLUT菜单
OpenGL Glut剖析(3)--重绘回调函数的使用 2011-05-03 22:29:11| 分类: 默认分类 | 标签:opengl |字号 订阅(一)引言 有过Windows GDI编程经验的人都知道当窗口的尺寸发生变化时,或该窗口被另外一个窗口遮住时窗口应该发生重绘。OpenGL当然也不例外。例如下面一段程序运行后拖动窗口的边沿窗口以及里面显示的物体大小会随之变化。由于原创 2013-06-14 13:25:10 · 842 阅读 · 0 评论 -
reshape
OpenGL Glut剖析(3)--重绘回调函数的使用 2011-05-03 22:29:11| 分类: 默认分类 | 标签:opengl |字号 订阅(一)引言 有过Windows GDI编程经验的人都知道当窗口的尺寸发生变化时,或该窗口被另外一个窗口遮住时窗口应该发生重绘。OpenGL当然也不例外。例如下面一段程序运行后拖动窗口的边沿窗口以及里面显示的物体大小会随之变化。由于原创 2013-06-16 03:26:49 · 2144 阅读 · 0 评论 -
glViewport
#include // 函数RenderScene用于在窗口中绘制需要的图形void RenderScene(void){ //用当前清除色清除颜色缓冲区,即设定窗口的背景色 glClear(GL_COLOR_BUFFER_BIT); //设置当前绘图使用的RGB颜色 glColor3f(1.0f, 0.0f, 0.0f); //使用当前颜色绘制一个填充的矩形 g原创 2013-06-16 11:17:11 · 2918 阅读 · 0 评论 -
opengl绘制钟表
#include #include #include #include #define PI 3.1415926float h,m,s;void Draw(){ int i; float R,TR,h_Angle,m_Angle,s_Angle,count,h_Length,m_Length,s_Length; R=0.5; TR=R-0.05; glCle原创 2013-06-16 22:19:36 · 3438 阅读 · 0 评论 -
绘制球体
#include #include#include void cube(){glClear(GL_COLOR_BUFFER_BIT);glutWireSphere(1,100,100);//glutSolidSphere(1,100,100);glFlush();}void init (void){ glClearColor (0.0, 0.0,原创 2013-06-17 13:03:50 · 1418 阅读 · 0 评论 -
glViewport()函数和glOrtho()函数的理解(转)
在OpenGL中有两个比较重要的投影变换函数,glViewport和glOrtho。glOrtho是创建一个正交平行的视景体。 一般用于物体不会因为离屏幕的远近而产生大小的变换的情况。比如,常用的工程中的制图等。需要比较精确的显示。 而作为它的对立情况, glFrustum则产生一个透视投影。这是一种模拟真是生活中,人们视野观测物体的真实情况。例如:观察两条平行的火车到,在过了很远之后,这转载 2013-06-17 13:13:15 · 1008 阅读 · 0 评论 -
绘制犹他壶
#include void cube(){glClear(GL_COLOR_BUFFER_BIT);glutWireTeapot(0.6f);//glutSolidSphere(1,100,100);glFlush();}void init (void){ glClearColor (0.0, 0.0, 0.0, 0.0); glMatrixMod原创 2013-06-17 13:20:02 · 2301 阅读 · 0 评论 -
绘制正方体
#include void display();void init();void display() { glClear(GL_COLOR_BUFFER_BIT); glMatrixMode(GL_MODELVIEW); glColor3f(1.0,0.0,0.0); glPushMatrix(); glutWireCube(1.0); glPopMa原创 2013-06-17 13:12:20 · 1549 阅读 · 0 评论 -
OpenGL 3d 入门
http://blog.csdn.net/rorger/article/details/6589257 OpenGL 3d 入门 摘录了计算机图形学书上的一个例子,嘿嘿,比想象的简单啊;稍微修改下,算是3D入门吧;#include "glut.h"void axis(double length){ glPushMatrix(); glBe转载 2013-06-17 13:26:54 · 1206 阅读 · 0 评论 -
Opengl生成各种基本图形
/* * GLUT Shapes Demo * * Written by Nigel Stewart November 2003 * * This program is test harness for the sphere, cone * and torus shapes in GLUT. * * Spinning wireframe and smooth shaded shap原创 2013-07-02 23:41:27 · 1745 阅读 · 0 评论 -
鼠标回调函数的使用
#include #include#include #define DEG_TO_RAD 0.017453 //角度转为弧度的参数,即 2*PI/360 GLboolean rotate = GL_TRUE;float theta=30.0; //直线与X轴正方向的夹角float length=200.0; //直线的长度float x=300.0, y=200.0;原创 2013-06-15 22:39:27 · 2080 阅读 · 0 评论 -
试用OpenGL实现用黑白相间的棋盘图案填充图形
计算机图形学第五次实验试用OpenGL实现用黑白相间的棋盘图案填充图形一、 实验目的学会在OpenGL中写程序;学会用OpenGL实现用黑白相间的棋盘图案填充多边形。二、 实验内容用OpenGL实现黑白相间的棋盘图案填充多边形三、 实验步骤相关算法及其原理多边形图案填充,需要使用函数void glPolygonStipple(const GLubyte *mask)转载 2013-06-16 21:54:43 · 4998 阅读 · 0 评论 -
使用opengl绘制一个立方体
#include void display(){ glClear(GL_COLOR_BUFFER_BIT); glMatrixMode(GL_MODELVIEW); glLoadIdentity(); gluLookAt(1.0,1.0,1.0, 0.0,0.0,0.0, 0.0,1.0,0.0); glutWireCube(0.5); glutSwapBuffers();原创 2013-06-13 22:03:26 · 4631 阅读 · 1 评论 -
画一个白色的矩形
#include void display();void init();int main(int argc, char ** argv){ glutInit(&argc, argv);glutCreateWindow("simple");glutDisplayFunc(display);init();glutMainLoop();}void di原创 2013-06-13 23:42:04 · 1593 阅读 · 0 评论 -
opengl光照模型
http://blog.sina.com.cn/s/blog_47c4d33e010005ym.html1. 几个概念环境光——经过多次反射而来的光称为环境光,无法确定其最初的方向,但当特定的光源关闭后,它们将消失.全局环境光——它们并非来自特定的光源,这些光经过了多次散射,已经无法确定其光源位于何处.散射光——来自同一方向,照射到物体表面后,将沿各个方向均匀反射,因此,无论从转载 2013-06-14 01:14:07 · 1434 阅读 · 0 评论 -
锥形螺旋曲线的绘制
#include#include #define PI 3.14void drawMyLines(){ float t; float x,y,z; float a=2,b=3,c=18; glColor3f(1.0,0.5,0.5); glBegin(GL_LINE_STRIP); for(t=0.0;t<=2*PI;t+=0.0002) { x=a*t*cos(c原创 2013-06-13 23:46:23 · 2781 阅读 · 0 评论 -
glShadeModel函数 GL_SMOOTH与GL_FLAT的区别
http://blog.csdn.net/chenqiai0/article/details/8316258glShadeModel函数用于控制opengl中绘制指定两点间其他点颜色的过渡模式参数一般为GL_SMOOTH(默认),GL_FLATopengl默认是将制定的两点颜色进行插值,绘制之间的其他点如果两点的颜色相同,使用两个参数效果相同如果两点颜色转载 2013-06-14 16:38:01 · 1339 阅读 · 0 评论 -
直线的绘制
#include void display();void init();int main(int argc, char ** argv){ glutInit(&argc, argv);glutInitWindowSize(400, 400); glutInitWindowPosition(400, 200); glutCreateWindow("几何图元类型");gl原创 2013-06-15 20:11:28 · 732 阅读 · 0 评论 -
Idle回调函数的使用
#include #include #define DEG_TO_RAD 0.017453 //角度转为弧度的参数,即 2*PI/360 float theta=30.0; //直线与X轴正方向的夹角float length=200.0; //直线的长度float x=300.0, y=200.0; //直线的第一个端点 void init (void){转载 2013-06-15 21:29:49 · 5546 阅读 · 0 评论 -
OpenGL基本常识
说起编程作图,大概还有很多人想起TC的#include 吧?但是各位是否想过,那些画面绚丽的PC游戏是如何编写出来的?就靠TC那可怜的640*480分辨率、16色来做吗?显然是不行的。本帖的目的是让大家放弃TC的老旧图形接口,让大家接触一些新事物。OpenGL作为当前主流的图形API之一,它在一些场合具有比DirectX更优越的特性。1、与C语言紧密结合。OpenGL命令最初就是用C原创 2013-03-14 18:38:44 · 1146 阅读 · 0 评论 -
点的绘制
#include void display();void init();int main(int argc, char ** argv){ glutInit(&argc, argv);glutInitWindowSize(400, 400); glutInitWindowPosition(400, 200); glutCreateWindow("几何图元类型");gl原创 2013-06-15 19:52:42 · 680 阅读 · 0 评论 -
OpenGL Glut剖析(2)--平行投影及其显示范围
http://anony3721.blog.163.com/blog/static/51197420114282720194/OpenGL Glut剖析(2)--平行投影及其显示范围 2011-05-02 22:11:46| 分类: 默认分类 | 标签:opengl |字号 订阅首先强调一个看似废话的概念:OpenGL中无论是平行投影还是转载 2013-06-15 20:50:55 · 2871 阅读 · 0 评论 -
OpenGL显示列表
http://blog.csdn.net/jocket1024/article/details/4554902#comments今天介绍关于OpenGL显示列表的知识。本课内容并不多,但需要一些理解能力。在学习时,可以将显示列表与C语言的“函数”进行类比,加深体会。我们已经知道,使用OpenGL其实只要调用一系列的OpenGL函数就可以了。然而,这种方式在一些时候可能导致问题。转载 2013-06-16 00:17:24 · 1142 阅读 · 0 评论 -
关于glRotatef(angle, x, y, z)函数
不知道为什么glLoadIdentity();glTranslatef(0.0f,0.0f,-6.0f);glBegin(GL_TRIANGLES);glVertex3f(0.0f,0.0f, 0.0f);glVertex3f(1.0f,0.0f, 0.0f);glVertex3f(0.0f,1.0f, 0.0f);glEnd();这样的话总是无法显示,求大神告诉旋转原创 2013-06-16 01:35:24 · 1316 阅读 · 0 评论 -
OpenGL函数思考-glClear and glClearColor
http://blog.csdn.net/shuaihj/article/details/7230138OpenGL函数思考-glClear函数原型: void glClear(GLbitfield mask);参数说明: GLbitfield:可以使用 | 运算符组合不同的缓冲标志位,表明需要清除的缓冲,例如glClear(GL_C转载 2013-06-15 21:48:07 · 2214 阅读 · 0 评论 -
Opengl光照(茶壶)
http://www.cnblogs.com/opengl/archive/2012/11/14/2770745.html#include// Initialize material property, light source, lighting model, * and depth buffer.void init(void){GLfloat mat_specular[]转载 2013-06-16 03:20:18 · 5044 阅读 · 1 评论 -
OpenGL Glut剖析(3)--重绘回调函数的使用
http://anony3721.blog.163.com/blog/static/51197420114382654698/OpenGL Glut剖析(3)--重绘回调函数的使用 2011-05-03 22:29:11| 分类: 默认分类 | 标签:opengl |字号 订阅(一)引言 有过Windows GDI编程经转载 2013-06-15 20:16:31 · 2214 阅读 · 0 评论 -
关于opengl的混合
#include void display();void init();int main(int argc, char ** argv){ glutInit(&argc, argv);glutInitWindowSize(400, 400); glutInitWindowPosition(400, 200); glutCreateWindow("几何图元类型");gl原创 2013-06-16 20:06:27 · 755 阅读 · 0 评论 -
GL_PROJECTION和GL_MODELVIEW的作用
http://blog.csdn.net/eit520/article/details/7629023这两个都是glMatrixMode()函数的参数,那就先说说glMatrixMode吧~,这个函数其实就是对接下来要做什么进行一下声明,也就是在要做下一步之前告诉计算机我要对“什么”进行操作了,这个“什么”在glMatrixMode的“()”里的选项(参数)有,GL_PROJECTION,转载 2013-06-13 23:03:07 · 807 阅读 · 0 评论