资源简介
基于opengl的旋转地球仪,可用鼠标右键选择个大洲,既可以自动旋转也可用鼠标控制旋转‘
代码片段和文件信息
/*********************包含链接的库文件*******************************************************************************************/
#pragma comment( lib “opengl32.lib“ )
#pragma comment( lib “glu32.lib“ )
#pragma comment( lib “glut32.lib“)
#pragma comment( lib “glew32.lib“)
#pragma comment( lib “glaux.lib“)
#pragma comment( lib “vfw32.lib“ )
/********************************************************************************************************************************/
#include
#include
#include
#include
#include
#define PI 3.14159265358979323846
GLfloat corner=0.0;
GLUquadricObj* qobj; //二次方程对象 a1x^2 + a2y^2 + a3z^2 + a4xy + a6xz + a7x + a8y + a9z + a10 = 0
GLuint texName texName1 texName2;
GLuint flag=1;
GLfloat bracket_diffuseCoeff[]={0.53 0.37 0.10 1.0};
GLfloat bracket_specularCoeff[]={0.53 0.37 0.10 1.0};
GLfloat bracket_surfEmissionCoeff[]={0.2 0.2 0.2 1.0};
GLfloat underpan_diffuseCoeff[]={0.5 0.5 0.0 1.0};
GLfloat underpan_specularCoeff[]={0.5 0.5 0.0 1.0};
GLfloat underpan_surfEmissionCoeff[]={0.2 0.2 0.2 1.0};
GLfloat wall_mat[]={0.60.60.61};
GLfloat wall_mat1[]={1001};
GLfloat wall_mat2[]={0.60.60.61};
GLfloat shininess[]={25.0};
void draw_semi_circle(float r) //中心在(xy0),半径为r的半圆
{
float angle;
glBegin(GL_LINE_STRIP);
for(angle = 2*PI; angle >= PI; angle -= PI/540)
{
glVertex3f(r*cos(angle)r*sin(angle)0);
}
glEnd();
}
void draw_salver(float x float y float a float b) //中心在(xy0),长半轴为a,短半轴为b的椭圆
{
float angle;
glTranslatef(xy0);
glBegin(GL_TRIANGLE_FAN);
for(angle = 2*PI; angle >= 0; angle -= PI/360)
{
glVertex3f(a*cos(angle)b*sin(angle)0);
}
glEnd();
}
void draw_tellurion()//地球仪
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glLoadIdentity();
glPushMatrix();
GLfloat light0_ambient[] = { 0.3 0.4 0.6 1};
GLfloat light0_diffuse[] = { 0.5 0.4 0.4 1 };
GLfloat light0_specular[] = { 0.5 0.5 0.5 1};
GLfloat light0_position[] = { 1 1 1 0 }; //方向性光源,类似太阳
glEnable(GL_LIGHTING);
glEnable(GL_LIGHT0);
glLightfv(GL_LIGHT0 GL_SPECULAR light0_specular);
glLightfv(GL_LIGHT0 GL_DIFFUSE light0_diffuse);
glLightfv(GL_LIGHT0 GL_AMBIENT light0_ambient);
glLightfv(GL_LIGHT0 GL_POSITION light0_position);
glPopMatrix();
glPushMatrix();
GLfloat light1_diffuse[] = { 0.3 1 0 1};
GLfloat light1_position[] = {0.8 1 0.4 1 };
glEnable(GL_LIGHTING);
glEnable(GL_LIGHT1);
glLightfv(GL_LIGHT1 GL_DIFFUSE light1_diffuse);
glLightfv(GL_LIGHT1 GL_POSITION light1_position);
glPopMatrix();
glPushMatrix();
GLfloat light2_diffuse[] = { 1 0.2 0 1 };
GLfloat light2_position[] = {0.5 0.2 1 1 }; //点光源
glEnable(GL_LIGHTING);
glEnabl
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 885 2012-10-25 16:56 01_ba
..A..H. 16384 2012-11-07 21:59 01_ba
文件 3393 2006-08-03 02:59 01_ba
文件 11726 2012-11-01 09:32 01_ba
文件 12024 2005-10-19 15:32 01_ba
文件 1312394 2005-10-19 15:32 01_ba
文件 474288 2006-03-04 03:19 01_ba
文件 281360 2006-03-04 03:19 01_ba
文件 12672 2002-08-09 23:09 01_ba
文件 21440 1998-08-18 23:24 01_ba
文件 79898 1998-08-18 23:25 01_ba
文件 76924 2002-08-09 23:10 01_ba
文件 39310 2006-03-04 03:19 01_ba
文件 5612 2012-10-25 16:56 01_ba
文件 5205 2012-10-25 17:06 01_ba
文件 143 2012-10-25 16:56 01_ba
文件 920 2012-10-25 16:56 01_ba
文件 49206 2000-05-18 02:04 01_ba
文件 196662 2000-08-22 00:17 01_ba
文件 3145784 2009-06-18 07:44 01_ba
文件 11449 2012-10-25 16:45 01_ba
文件 192512 2006-03-04 03:19 01_ba
文件 121856 2004-08-04 08:52 01_ba
文件 169984 1998-08-18 23:25 01_ba
文件 713728 2004-08-04 08:52 01_ba
文件 1988 2012-11-01 09:32 01_ba
文件 63 2012-11-01 09:32 01_ba
文件 478208 2012-11-01 09:32 01_ba
文件 118784 2012-11-01 09:32 01_ba
文件 24812 2012-11-01 09:32 01_ba
............此处省略59个文件信息
- 上一篇:64位BDE+ SYba
se12.5客户端 - 下一篇:zemax 汉化破解版
相关资源
- OpenGL编程指南原书第9版高清完整版
- OpenGL着色语言 中文高清版
- OpenGL编程指南原书第9版内
- openGL绘制虚拟教室
- 基于OpenGL的3D赛车游戏的研究与实现源
- OpenGL绘制一个多边形 添加颜色
- OpenGL三维图形系统开发与实用技术 基
- OpenGL鼠标交互3D模型
- 图形学的几道基础练习计算机图形学
- 交互式计算机:图形学基于OpenGL着色
- 基于opencv与opengl实现增强现实
- OpenGl三维镂垫绘制附使用说明
- OpenGL三维图形系统开发与实用技术基
- opengl导入FBX模型代码
- OPENGL载入3DS
- opengl超级宝典第七版
- 高级着色语言GLSL渲染obj文件
- Visual Studio 搭建好的OpenGL环境GLFW3+GL
- OpenGL实现三维仿真系统
- 山东大学计算机图形学实验1
- 直线的四种裁剪算法
- Computer graphics with opengl 4th edition 计算
- 山东大学计算机图形学实验课程资源
- 计算机图形学(OpenGL版)第3版.pdf
- OpenGL SuperBible 7 pdf
- OpenGL编程指南(原书第8版) + OpenGL超
- VS2017OpenGL 配置步骤
- 读OBJ模型,加载多纹理
- OpenGL红宝书第七版带目录完整版PDF+源
- opengl自定义函数实现平移旋转缩放
评论
共有 条评论