opengl 实现的立体旋转球
一个用OpenGL实现的立体旋转球,帮助学习OpenGL的用户快速学习,提供一个简单的例子供参考。
代码片段和文件信息
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 217088 2009-05-08 23:10 立方体旋转计算机图形学立方体旋转 更新版sphereDebugsphere.exe
文件 245008 2009-04-10 22:56 立方体旋转计算机图形学立方体旋转 更新版sphereDebugsphere.ilk
文件 26581 2009-04-10 22:56 立方体旋转计算机图形学立方体旋转 更新版sphereDebugsphere.obj
文件 349352 2009-04-10 22:56 立方体旋转计算机图形学立方体旋转 更新版sphereDebugsphere.pch
文件 377856 2009-04-10 22:56 立方体旋转计算机图形学立方体旋转 更新版sphereDebugsphere.pdb
文件 33792 2009-04-10 22:56 立方体旋转计算机图形学立方体旋转 更新版sphereDebugvc60.idb
文件 45056 2009-04-10 22:56 立方体旋转计算机图形学立方体旋转 更新版sphereDebugvc60.pdb
文件 6209 2009-04-10 22:56 立方体旋转计算机图形学立方体旋转 更新版spheresphere.cpp
文件 4284 2009-04-10 23:07 立方体旋转计算机图形学立方体旋转 更新版spheresphere.dsp
文件 520 2009-04-10 22:56 立方体旋转计算机图形学立方体旋转 更新版spheresphere.dsw
文件 33792 2009-04-10 23:07 立方体旋转计算机图形学立方体旋转 更新版spheresphere.ncb
文件 48640 2009-04-10 23:07 立方体旋转计算机图形学立方体旋转 更新版spheresphere.opt
文件 888 2009-04-10 22:56 立方体旋转计算机图形学立方体旋转 更新版spheresphere.plg
文件 50118 2004-11-30 03:27 立方体旋转计算机图形学立方体旋转 更新版使用说明.CHM
文件 34962 2009-03-31 23:35 立方体旋转计算机图形学立方体旋转 更新版立方体旋转DebugDrawDlg.obj
文件 0 2009-03-31 23:35 立方体旋转计算机图形学立方体旋转 更新版立方体旋转DebugDrawDlg.sbr
文件 3138560 2009-03-31 23:35 立方体旋转计算机图形学立方体旋转 更新版立方体旋转Debugiu.bsc
文件 122880 2009-05-08 23:10 立方体旋转计算机图形学立方体旋转 更新版立方体旋转Debugiu.exe
文件 225212 2009-03-31 23:35 立方体旋转计算机图形学立方体旋转 更新版立方体旋转Debugiu.ilk
文件 13572 2009-03-31 23:35 立方体旋转计算机图形学立方体旋转 更新版立方体旋转Debugiu.obj
文件 6870840 2009-03-31 23:35 立方体旋转计算机图形学立方体旋转 更新版立方体旋转Debugiu.pch
文件 295936 2009-03-31 23:35 立方体旋转计算机图形学立方体旋转 更新版立方体旋转Debugiu.pdb
文件 2892 2009-03-31 23:35 立方体旋转计算机图形学立方体旋转 更新版立方体旋转Debugiu.res
文件 0 2009-03-31 23:35 立方体旋转计算机图形学立方体旋转 更新版立方体旋转Debugiu.sbr
文件 26384 2009-03-31 23:35 立方体旋转计算机图形学立方体旋转 更新版立方体旋转DebugiuDlg.obj
文件 0 2009-03-31 23:35 立方体旋转计算机图形学立方体旋转 更新版立方体旋转DebugiuDlg.sbr
文件 106310 2009-03-31 23:35 立方体旋转计算机图形学立方体旋转 更新版立方体旋转DebugStdAfx.obj
文件 1375172 2009-03-31 23:35 立方体旋转计算机图形学立方体旋转 更新版立方体旋转DebugStdAfx.sbr
文件 214016 2009-04-01 00:18 立方体旋转计算机图形学立方体旋转 更新版立方体旋转Debugvc60.idb
文件 364544 2009-03-31 23:35 立方体旋转计算机图形学立方体旋转 更新版立方体旋转Debugvc60.pdb
............此处省略30个文件信息
#include
#include
#include
#define M_PI 3.14159
typedef double point[3];
static double translate=0.0;
static bool m=false;
static bool n=false;
unsigned char key;
double c=3.14159/180.0;
double thetaphixyz;
GLfloat static rsphere=0.0;
GLsizei ww=500 wh=500;
void myInit()
{
glClearColor(1.01.01.01.0);
glColor3f(1.01.00.0);
GLfloat light_position[]={20.030.00.00.0};
GLfloat light_ambient[]={0.00.00.01.0};
GLfloat light_diffuse[]={1.01.01.01.0};
GLfloat light_specular[]={1.01.01.01.0};
glLightfv(GL_LIGHT0GL_AMBIENTlight_ambient);
glLightfv(GL_LIGHT0GL_DIFFUSElight_diffuse);
glLightfv(GL_LIGHT0GL_SPECULARlight_specular);
glLightfv(GL_LIGHT0 GL_POSITION light_position);
glColorMaterial(GL_FRONTGL_DIFFUSE);
glEnable(GL_COLOR_MATERIAL);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrtho(0.0500.00.0500.0-10.010.0);
glMatrixMode(GL_MODELVIEW);
}
void draw_sphere()
{
void draw_sphere_2();
void myReshaped(intint);
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glLoadIdentity();
glTranslatef(0.00.0translate);
glRotatef(55.01.00.00.0);
glRotatef(rsphere0.00.01.0);
for(phi=-80.0; phi<=80.0; phi+=10)
{
glBegin(GL_QUAD_STRIP);
for(theta=-180.0; theta<=180.0; theta+=10.0)
{
x=sin(c*theta)*cos(c*phi);
y=cos(c*theta)*cos(c*phi);
z=sin(c*phi);
glNormal3d(xyz);
glVertex3d(xyz);
x=sin(c*theta)*cos(c*(phi+10.0));
y=cos(c*theta)*cos(c*(phi+10.0));
z=sin(c*(phi+10.0));
glNormal3d(xyz);
glVertex3d(xyz);
}
glEnd();
}
x=0.0;
y=0.0;
z=1.0;
glBegin(GL_TRIANGLE_FAN);
glNormal3d(xyz);
glVertex3d(xyz);
z=sin(c*80.0);
for(theta=-180; theta<=180.0; theta+=10)
{
x=sin(c*theta)*cos(c*80.0);
y=cos(c*theta)*cos(c*80.0);
glNormal3d(xyz);
glVertex3d(xyz);
}
glEnd();
x=y=0;
z=-1;
glBegin(GL_TRIANGLE_FAN);
glNormal3d(xyz);
glVertex3d(xyz);
z=-sin(c*80.0);
for(theta=-180; theta<=180.0; theta+=10)
{
x=sin(c*theta)*cos(c*80.0);
y=cos(c*theta)*cos(c*80.0);
glNormal3d(xyz);
glVertex3d(xyz);
}
glEnd();
if(n)
{
draw_sphere_2();
}
glFlush();
glutSwapBuffers();
}
void draw_line()
{
for (phi=-80.0;phi<=80.0;phi+=10.0)
{
glBegin(GL_LINES);
for(theta=-180.0;theta<=180.0;theta+=10.0)
{
x=sin(c*theta)*cos(c*phi);
y=cos(c*theta)*cos(c*phi);
z=sin(c*phi);
glVertex3d(xyz);
x=1.2*sin(c*theta)*cos(c*phi);
y=1.2*cos(c*theta)*cos(c*phi);
z=1.2*sin(c*phi);
glVertex3d(xyz);
}
glEnd();
}
glFlush();
glutSwapBuffers();
}
void draw_sphere_2()
{
glPushAttrib(GL_ALL_ATTRIB_BITS);
glPushMatrix();
glTranslatef(3.00.00.0);
glRotatef(55.01.00.00.0);
glRotatef(rsphere
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 217088 2009-05-08 23:10 立方体旋转计算机图形学立方体旋转 更新版sphereDebugsphere.exe
文件 245008 2009-04-10 22:56 立方体旋转计算机图形学立方体旋转 更新版sphereDebugsphere.ilk
文件 26581 2009-04-10 22:56 立方体旋转计算机图形学立方体旋转 更新版sphereDebugsphere.obj
文件 349352 2009-04-10 22:56 立方体旋转计算机图形学立方体旋转 更新版sphereDebugsphere.pch
文件 377856 2009-04-10 22:56 立方体旋转计算机图形学立方体旋转 更新版sphereDebugsphere.pdb
文件 33792 2009-04-10 22:56 立方体旋转计算机图形学立方体旋转 更新版sphereDebugvc60.idb
文件 45056 2009-04-10 22:56 立方体旋转计算机图形学立方体旋转 更新版sphereDebugvc60.pdb
文件 6209 2009-04-10 22:56 立方体旋转计算机图形学立方体旋转 更新版spheresphere.cpp
文件 4284 2009-04-10 23:07 立方体旋转计算机图形学立方体旋转 更新版spheresphere.dsp
文件 520 2009-04-10 22:56 立方体旋转计算机图形学立方体旋转 更新版spheresphere.dsw
文件 33792 2009-04-10 23:07 立方体旋转计算机图形学立方体旋转 更新版spheresphere.ncb
文件 48640 2009-04-10 23:07 立方体旋转计算机图形学立方体旋转 更新版spheresphere.opt
文件 888 2009-04-10 22:56 立方体旋转计算机图形学立方体旋转 更新版spheresphere.plg
文件 50118 2004-11-30 03:27 立方体旋转计算机图形学立方体旋转 更新版使用说明.CHM
文件 34962 2009-03-31 23:35 立方体旋转计算机图形学立方体旋转 更新版立方体旋转DebugDrawDlg.obj
文件 0 2009-03-31 23:35 立方体旋转计算机图形学立方体旋转 更新版立方体旋转DebugDrawDlg.sbr
文件 3138560 2009-03-31 23:35 立方体旋转计算机图形学立方体旋转 更新版立方体旋转Debugiu.bsc
文件 122880 2009-05-08 23:10 立方体旋转计算机图形学立方体旋转 更新版立方体旋转Debugiu.exe
文件 225212 2009-03-31 23:35 立方体旋转计算机图形学立方体旋转 更新版立方体旋转Debugiu.ilk
文件 13572 2009-03-31 23:35 立方体旋转计算机图形学立方体旋转 更新版立方体旋转Debugiu.obj
文件 6870840 2009-03-31 23:35 立方体旋转计算机图形学立方体旋转 更新版立方体旋转Debugiu.pch
文件 295936 2009-03-31 23:35 立方体旋转计算机图形学立方体旋转 更新版立方体旋转Debugiu.pdb
文件 2892 2009-03-31 23:35 立方体旋转计算机图形学立方体旋转 更新版立方体旋转Debugiu.res
文件 0 2009-03-31 23:35 立方体旋转计算机图形学立方体旋转 更新版立方体旋转Debugiu.sbr
文件 26384 2009-03-31 23:35 立方体旋转计算机图形学立方体旋转 更新版立方体旋转DebugiuDlg.obj
文件 0 2009-03-31 23:35 立方体旋转计算机图形学立方体旋转 更新版立方体旋转DebugiuDlg.sbr
文件 106310 2009-03-31 23:35 立方体旋转计算机图形学立方体旋转 更新版立方体旋转DebugStdAfx.obj
文件 1375172 2009-03-31 23:35 立方体旋转计算机图形学立方体旋转 更新版立方体旋转DebugStdAfx.sbr
文件 214016 2009-04-01 00:18 立方体旋转计算机图形学立方体旋转 更新版立方体旋转Debugvc60.idb
文件 364544 2009-03-31 23:35 立方体旋转计算机图形学立方体旋转 更新版立方体旋转Debugvc60.pdb
............此处省略30个文件信息
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。
评论列表(条)