当前位置: 首页 > news >正文

如何做百度秒收录网站建设自己网站软件下载

如何做百度秒收录网站,建设自己网站软件下载,线下推广方案,unity可以做网站吗立体显示原理#xff1a;设没有立体显示的模型视图矩阵ModelView为Mv,投影矩阵为Mp#xff0c;则、物体空间的任何一点为P#xff0c;则变换到屏幕坐标P*MpMvP#xff1b;注意前面已经说过opengl里面坐标列优先#xff0c;所以矩阵都是右乘。 左眼和右眼的变换都是由中间的…立体显示原理设没有立体显示的模型视图矩阵ModelView为Mv,投影矩阵为Mp则、物体空间的任何一点为P则变换到屏幕坐标P*Mp×Mv×P注意前面已经说过opengl里面坐标列优先所以矩阵都是右乘。 左眼和右眼的变换都是由中间的变换矩阵变换而来则立体显示中左眼的变换矩阵公式为 P(L)*Ms(L) × Mp(L) × Mt(L) × Mv(L) × P 右眼的矩阵变换公式为 P(R)*Ms(R) × Mp(R) × Mt(R) × Mv(R) × P 其中MsMt是立体显示需要而增加的变换。 程序里面有几个参数现实世界眼睛到屏幕的距离Fd两眼之间的距离Sd比例尺R如图如上图没有立体显示视点位于就是中间的蓝色位置立体显示就是将左眼(红色)右眼(绿色)的视图分开绘制。 程序中左眼用红色去画右眼同时用绿色和蓝色绘制。代码 [cpp] view plaincopy#include windows.h  #include GL/glut.h  #include math.h    #pragma comment(lib,glut32.lib)  #pragma comment(lib,glu32.lib)  #pragma comment(lib,opengl32.lib)    void init(void)   {      GLfloat mat_diffuse[]  { 1.0, 1.0, 0.0 };      GLfloat mat_specular[]  {0.8, 0.8, 0.0, 1.0};      GLfloat mat_shininess[]  { 300. };      GLfloat light_position[]  { 1.0, 1.0, 1.0, 0.0 };      GLfloat light_diffuse[]  { 1.0, 1.0, 0.0 };      GLfloat light_ambient[]  {0.7, 0.2, 0.2, 1.0};        glClearColor (0.0, 0.0, 0.0, 0.0);      glShadeModel (GL_SMOOTH);        glMaterialfv(GL_FRONT, GL_SPECULAR, mat_specular);      glMaterialfv(GL_FRONT, GL_DIFFUSE, mat_diffuse);      glMaterialfv(GL_FRONT, GL_SHININESS, mat_shininess);      glLightfv(GL_LIGHT0, GL_POSITION, light_position);      glLightfv(GL_LIGHT0, GL_AMBIENT, light_ambient);      glLightfv(GL_LIGHT0, GL_DIFFUSE, light_diffuse);        glEnable(GL_LIGHTING);      glEnable(GL_LIGHT0);      glEnable(GL_DEPTH_TEST);  }  /**//*---------------------------------------------------------------------------- *    初始化参数     */  GLfloat PI3.1415926;  GLfloat Fd5.0;            //fusion distance  GLfloat RealScreenToEyeDistance1.0;  GLfloat R  Fd / RealScreenToEyeDistance;    //比例尺 R   Fd / RealScreenToEyeDistance  GLfloat Sd  0.05;                        //两眼之间的距离  GLfloat aspect  1.0;                        //gluLookAt函数里面的参数  GLfloat fovy  60.0;                        //张角  GLfloat f  1 / tan( (fovy * PI) / (2 * 180) );    //fctg(fovy/2);    //列优先的矩阵模型视图矩阵投影矩阵  GLfloat LeftModelViewMatrix[16]  {      1.0, 0.0, 0.0, 0.0,      0.0, 1.0, 0.0, 0.0,       0.0, 0.0, 1.0, 0.0,       Sd * R / 2.0, 0.0, 0.0, 1.0  };    GLfloat LeftProjectMatrix[16]  {      1.0, 0.0, 0.0, 0.0,      0.0, 1.0, 0.0, 0.0,       0.0, 0.0, 1.0, 0.0,       -(Sd * f) / (2.0 * Fd * aspect), 0.0, 0.0, 1.0      };    GLfloat RightModelViewMatrix[16]  {      1.0, 0.0, 0.0, 0.0,      0.0, 1.0, 0.0, 0.0,       0.0, 0.0, 1.0, 0.0,       -Sd * R / 2.0, 0.0, 0.0, 1.0  };    GLfloat RightProjectMatrix[16]  {      1.0, 0.0, 0.0, 0.0,      0.0, 1.0, 0.0, 0.0,       0.0, 0.0, 1.0, 0.0,       (Sd * f) / (2.0 * Fd * aspect), 0.0, 0.0, 1.0      };    //for the use of rotating  static GLfloat spin  0.0;    void display(void)  {      GLfloat matrix[16]{0.};        glColorMask(1.0, 1.0, 1.0, 1.0);      glClearColor(0.0, 0.0, 0.0, 1.0);      glClearDepth(1.0);        glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);      glColor3f(1.0, 1.0, 1.0);        //---------------------------------------------------------------------------------------------      //Left View port      glMatrixMode(GL_PROJECTION);      glPushMatrix();      {          glGetFloatv(GL_PROJECTION_MATRIX, matrix);          glLoadIdentity();          glMultMatrixf(LeftProjectMatrix);          glMultMatrixf(matrix);          {              glMatrixMode(GL_MODELVIEW);              glLoadIdentity();              glTranslated(0.0, 0.0, -Fd);              glPushMatrix();                  {                  glGetFloatv(GL_MODELVIEW_MATRIX, matrix);                  glLoadIdentity();                  glMultMatrixf(LeftModelViewMatrix);                          glMultMatrixf(matrix);                                      glColorMask(1.0, 0.0, 0.0, 1.0);                  /**//*                 *  物体的坐标Vp                 *  变换到屏幕坐标Vp LeftProjectMatrix×Mp × LeftModelViewMatrix×Mv × Mr×Vp                 */                  glPushMatrix();                  {                      glRotatef(spin, 0.0, 1.0, 0.0);                      glutSolidTeapot(1.0);                  }                  glPopMatrix();              }          }          glPopMatrix();          glMatrixMode(GL_PROJECTION);      }      glPopMatrix();      glFlush();            //---------------------------------------------------------------------------------------------      //Right View port      glMatrixMode(GL_PROJECTION);      glPushMatrix();      {          glGetFloatv(GL_PROJECTION_MATRIX, matrix);          glLoadIdentity();          glMultMatrixf(RightProjectMatrix);          glMultMatrixf(matrix);            glMatrixMode(GL_MODELVIEW);              glPushMatrix();          {              glGetFloatv(GL_MODELVIEW_MATRIX, matrix);              glLoadIdentity();              glMultMatrixf(RightModelViewMatrix);              glMultMatrixf(matrix);                                glColorMask(0.0, 1.0, 1.0, 1.0);              glClearDepth(1.0);              glClear(GL_DEPTH_BUFFER_BIT);              /**//*             *  物体的坐标Vp             *    变换到屏幕坐标Vp RightProjectMatrix×Mp× RightModelViewMatrix×Mv × Mr×Vp             */              glPushMatrix();              {                  glRotatef(spin, 0.0, 1.0, 0.0);                  glutSolidTeapot(1.0);                  //glutSolidSphere(1.0, 20, 5);              }          }          glPopMatrix();            glMatrixMode(GL_PROJECTION);      }      glPopMatrix();      glFlush ();        glutSwapBuffers();  }    void reshape (int w, int h)  {      if (h  0)      {          h  1;      }      glViewport (0, 0, (GLsizei) w, (GLsizei) h);      glMatrixMode (GL_PROJECTION);      glLoadIdentity();      //投影矩阵Mp       gluPerspective(fovy, (GLfloat)w / (GLfloat)h, 1.0, 20.0);      }  void spinDisplay(void)  {      spin  spin  1.0;      if (spin  360.0)      {          spin  spin - 360.0;      }      glutPostRedisplay();  }    int main(int argc, char** argv)  {      glutInit(argc, argv);      glutInitDisplayMode (GLUT_DOUBLE | GLUT_RGB | GLUT_DEPTH);      glutInitWindowSize (500, 500);       glutInitWindowPosition (100, 100);      glutCreateWindow (argv[0]);      init ();      glutDisplayFunc(display);       glutReshapeFunc(reshape);      glutIdleFunc(spinDisplay);      glutMainLoop();      return 0;  }
http://www.pierceye.com/news/977460/

相关文章:

  • 网站开发接口文档模板个人在线网站推广
  • 百度关键词排名销售长沙网站优化
  • 阿里云部署多个网站wordpress 导航站点
  • 网站品牌词优化怎么做全国网站建设公司
  • 沧州做网站哪家好wordpress站点进入时弹窗
  • 中国化工建设网站做淘宝网站如何提取中间的提成
  • 柳州网站制作推荐怀化网站seo
  • iis网站ip兰州网站排名分析
  • 珠海建网站多少钱网站月流量
  • 彩网站开发购物小程序源码
  • 优秀的网站建设开发案例合肥备案
  • 做网站怎么签订协议大数据下的精准营销
  • wordpress模版建站城乡建设部网站施工员证书查询
  • 手机网站前端网站开发成本包括
  • 有了主机和域名后如何做网站seo网站建站公司的主页
  • 株洲网站制作360广告联盟平台
  • 网站pv是什么意思vps开wordpress
  • 国外网站模版免费下载南通建设网站公司
  • 网站建设 广西学3d建模学费一般多少
  • 整站外包优化公司金山西安网站建设
  • 做3d动画网站广州公关公司排行榜
  • 网站开发确认表seo技术教程博客
  • 彩票网站建设一条龙淘客app
  • 泰安网站推广优化网站百度收录是什么意思
  • 免费虚拟主机控制面板长沙推广优化公司
  • 重庆企业网站建站公司建站系统
  • 规划设计网站推荐自己做采集电影网站
  • 免费学编程的网站有哪些做网站设计用什么软件
  • 网站成品超市学室内设计去哪好
  • 网站备案一个主体无锡建设银行网站