96SEO 2026-02-20 08:08 0
。

范围内可见#xff0c;范围外不可见。
视景体就是这么一个概念。
在OGL中#xff0c;有两种投影方式#xff0c;对应两种视景体。
第一种#xff0c;正交投影#xf…1.视景体
人眼看世界有一个可见范围。
范围内可见范围外不可见。
视景体就是这么一个概念。
在OGL中有两种投影方式对应两种视景体。
第一种正交投影第二种透视投影更符合人眼。
//视口是一个矩形区域它定义了OpenGL窗口中可以显示图形的区域glMatrixMode(GL_PROJECTION);
nRange*2.0f);glMatrixMode(GL_MODELVIEW);
lightingglEnable(GL_LIGHTING);//
0glLightModelfv(GL_LIGHT_MODEL_AMBIENT,whiteLight);glLightfv(GL_LIGHT0,GL_AMBIENT,sourceLight);glLightfv(GL_LIGHT0,GL_DIFFUSE,sourceLight);glLightfv(GL_LIGHT0,GL_POSITION,lightPos);glEnable(GL_LIGHT0);//
trackingglEnable(GL_COLOR_MATERIAL);//
valuesglColorMaterial(GL_FRONT,
colorglClear(GL_COLOR_BUFFER_BIT
rotationsglPushMatrix();glRotatef(xRot,
fZ);glVertex3f(-35.0f,50.0f,fZ);//
fZ);glVertex3f(50.0f,-50.0f,fZ);//
bZ);glVertex3f(-50.0f,50.0f,bZ);//
fZ);glEnd();glFrontFace(GL_CW);
bZ);glVertex3f(-35.0f,50.0f,bZ);//
bZ);glVertex3f(50.0f,-50.0f,bZ);//
bZ);glVertex3f(-35.0f,35.0f,bZ);//
bZ);glEnd();glFrontFace(GL_CCW);
argv);glutInitDisplayMode(GLUT_DOUBLE
//需要动画使用的是双缓冲glutInitWindowSize(800,
600);glutCreateWindow(Orthographic
Projection);//回调函数glutReshapeFunc(ChangeSize);
//改变窗口大小glutSpecialFunc(SpecialKeys);
//敲击特殊键glutDisplayFunc(RenderScene);
//显示//初始化函数SetupRC();glutMainLoop();return
colorglClear(GL_COLOR_BUFFER_BIT
matrixglMatrixMode(GL_MODELVIEW);glLoadIdentity();glTranslatef(0.0f,
红色实心球AglColor3ub(255,255,0);glPushMatrix();glRotatef(fElect1,
//黄色实心球1ABCglPopMatrix();//xRot由特殊键控制glPushMatrix();glRotatef(45.0f,
//黄色实心球2ADEFglPopMatrix();glPushMatrix();glRotatef(300.0f,0.0f,
Window/*millis指定的时间间隔以毫秒为单位。
callback指向回调函数的指针该回调函数在指定时间间隔过后被调用。
data传递给回调函数的整型数值参数*/glutTimerFunc(10,
h);glMatrixMode(GL_PROJECTION);glLoadIdentity();//正交投影(left,
argv);glutInitDisplayMode(GLUT_DOUBLE
GLUT_DEPTH);glutInitWindowSize(800,
Atom);glutReshapeFunc(ChangeSize);
//改变窗口大小时的回调函数glutSpecialFunc(SpecialKeys);
//敲击特殊键的回调函数glutDisplayFunc(RenderScene);
///new!!(保持连续变化SetupRC();glutMainLoop();return
{glClear(GL_COLOR_BUFFER_BIT);glColor3f(1.0,
1.0);glPushMatrix();glRotatef((GLfloat)year,
//画线框太阳A///思考加上这两句的效果会怎样//glPopMatrix();//glPushMatrix();glTranslatef(2.0,
//画线框地球ABCglPopMatrix();glutSwapBuffers();
h);glMatrixMode(GL_PROJECTION);glLoadIdentity();gluPerspective(60.0,(float)
20.0);glMatrixMode(GL_MODELVIEW);glLoadIdentity();gluLookAt(0.0,
argv);glutInitDisplayMode(GLUT_DOUBLE
GLUT_RGB);glutInitWindowSize(500,
500);glutInitWindowPosition(500,
100);glutCreateWindow(earthmoon);init();
//初始化函数glutDisplayFunc(display);
//显示的回调函数glutReshapeFunc(reshape);
//改变窗口大小的回调函数glutKeyboardFunc(keyboard);
//点击键盘的回调函数glutMainLoop();return
如果点击‘D’或者‘d’矩阵C变化地球实现自转的效果如果点击‘Y’或者‘y’矩阵A变化太阳自转地球跟着太阳转如果同时按下‘D’或者‘d’以及‘Y’或者‘y’地球自转的同时绕着太阳公转同时太阳也在自转。
GL_DEPTH_BUFFER_BIT);glMatrixMode(GL_MODELVIEW);glPushMatrix();glLoadIdentity();glTranslatef(0.0f,
//BglDisable(GL_LIGHTING);glColor3ub(255,
太阳(AB)glEnable(GL_LIGHTING);glLightfv(GL_LIGHT0,
//AB再复制一份放到栈顶glRotatef(fEarthRot*para[i][2],
//CglColor3ub(0,0,255);glTranslatef(para[i][1],0.0f,0.0f);
//ABCD再复制一份放到栈顶glLoadIdentity();
//FglDisable(GL_LIGHTING);glColor3f(1,0,0);glBegin(GL_LINE_LOOP);
弹出弹出后栈顶元素变为ABglEnable(GL_LIGHTING);}glPopMatrix();
{glEnable(GL_DEPTH_TEST);glFrontFace(GL_CCW);glEnable(GL_CULL_FACE);glEnable(GL_LIGHTING);glLightModelfv(GL_LIGHT_MODEL_AMBIENT,whiteLight);glLightfv(GL_LIGHT0,GL_DIFFUSE,sourceLight);glLightfv(GL_LIGHT0,GL_POSITION,lightPos);glEnable(GL_LIGHT0);glEnable(GL_COLOR_MATERIAL);glColorMaterial(GL_FRONT,
GL_AMBIENT_AND_DIFFUSE);glClearColor(0.3f,
(float)w/(float)h;glMatrixMode(GL_PROJECTION);glLoadIdentity();gluPerspective(40.0f,
//透视投影glMatrixMode(GL_MODELVIEW);glLoadIdentity();
argv);glutInitDisplayMode(GLUT_DOUBLE
GLUT_DEPTH);glutInitWindowSize(800,
600);glutCreateWindow(Earth/Moon/Sun
System);glutReshapeFunc(ChangeSize);
//改变窗口大小的回调函数glutDisplayFunc(RenderScene);
0.0f;glClear(GL_COLOR_BUFFER_BIT
rotationsglMatrixMode(GL_MODELVIEW);glPushMatrix();glLoadIdentity();glTranslatef(0.0f,
//AglDisable(GL_LIGHTING);glColor3ub(255,
//BglColor3ub(0,0,255);glTranslatef(105.0f,0.0f,0.0f);
///地球ABCglColor3ub(200,200,200);glRotatef(fMoonRot,0.0f,
jetglEnable(GL_LIGHTING);glLightModelfv(GL_LIGHT_MODEL_AMBIENT,whiteLight);glLightfv(GL_LIGHT0,GL_DIFFUSE,sourceLight);glLightfv(GL_LIGHT0,GL_POSITION,lightPos);glEnable(GL_LIGHT0);glEnable(GL_COLOR_MATERIAL);glColorMaterial(GL_FRONT,
GL_AMBIENT_AND_DIFFUSE);glClearColor(0.3f,
{glutPostRedisplay();glutTimerFunc(100,
(float)w/(float)h;glMatrixMode(GL_PROJECTION);glLoadIdentity();gluPerspective(45.0f,
resetglMatrixMode(GL_MODELVIEW);glLoadIdentity();}///
argv);glutInitDisplayMode(GLUT_DOUBLE
GLUT_DEPTH);glutInitWindowSize(800,
600);glutCreateWindow(Earth/Moon/Sun
System);glutReshapeFunc(ChangeSize);
//改变窗口大小的回调函数glutDisplayFunc(RenderScene);
(GL_COLOR_BUFFER_BIT);glPushMatrix();
//将当前栈顶矩阵ABCDFGHI弹出glPopMatrix();
//透视投影glMatrixMode(GL_MODELVIEW);glLoadIdentity();glTranslatef
//初始化函数glutDisplayFunc(display);
//显示的回调函数glutReshapeFunc(reshape);
//改变窗口大小时的回调函数glutKeyboardFunc(keyboard);
//敲击键盘的回调函数glutMainLoop();return
显示函数中旋转之前都有一个平移。
也就是物体进行缩放后长度变为2先向右平移一个单位之后再进行旋转这样物体的最左侧位于原点位置相当于物体以其最右侧为旋转固定中心进行旋转。
完成这一效果之后再进行平移也不影响这一效果物体以其最右侧为旋转固定中心进行旋转。
作为专业的SEO优化服务提供商,我们致力于通过科学、系统的搜索引擎优化策略,帮助企业在百度、Google等搜索引擎中获得更高的排名和流量。我们的服务涵盖网站结构优化、内容优化、技术SEO和链接建设等多个维度。
| 服务项目 | 基础套餐 | 标准套餐 | 高级定制 |
|---|---|---|---|
| 关键词优化数量 | 10-20个核心词 | 30-50个核心词+长尾词 | 80-150个全方位覆盖 |
| 内容优化 | 基础页面优化 | 全站内容优化+每月5篇原创 | 个性化内容策略+每月15篇原创 |
| 技术SEO | 基本技术检查 | 全面技术优化+移动适配 | 深度技术重构+性能优化 |
| 外链建设 | 每月5-10条 | 每月20-30条高质量外链 | 每月50+条多渠道外链 |
| 数据报告 | 月度基础报告 | 双周详细报告+分析 | 每周深度报告+策略调整 |
| 效果保障 | 3-6个月见效 | 2-4个月见效 | 1-3个月快速见效 |
我们的SEO优化服务遵循科学严谨的流程,确保每一步都基于数据分析和行业最佳实践:
全面检测网站技术问题、内容质量、竞争对手情况,制定个性化优化方案。
基于用户搜索意图和商业目标,制定全面的关键词矩阵和布局策略。
解决网站技术问题,优化网站结构,提升页面速度和移动端体验。
创作高质量原创内容,优化现有页面,建立内容更新机制。
获取高质量外部链接,建立品牌在线影响力,提升网站权威度。
持续监控排名、流量和转化数据,根据效果调整优化策略。
基于我们服务的客户数据统计,平均优化效果如下:
我们坚信,真正的SEO优化不仅仅是追求排名,而是通过提供优质内容、优化用户体验、建立网站权威,最终实现可持续的业务增长。我们的目标是与客户建立长期合作关系,共同成长。
Demand feedback