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

怎么建造个人网站郑州做网站推广电

怎么建造个人网站,郑州做网站推广电,汕头做网站优化公司,手机建站程序源码观众的眼睛好比三维渲染场景中的相机#xff0c;在VTK中用vtkCamera类来表示。vtkCamera负责把三维场景投影到二维平面#xff0c;如屏幕#xff0c;相机投影示意图如下图所示。 1.与相机投影相关的要素主要有如下几个#xff1a; 1#xff09;相机位置: 相机所处的位置…观众的眼睛好比三维渲染场景中的相机在VTK中用vtkCamera类来表示。vtkCamera负责把三维场景投影到二维平面如屏幕相机投影示意图如下图所示。 1.与相机投影相关的要素主要有如下几个 1相机位置: 相机所处的位置用vtkCamera::SetPosition()方法设置。 2相机焦点: 用vtkCamera::SetFocusPoint()方法设置默认的焦点位置在世界坐标系的原点。 3朝上方向: 朝上方向即哪个方向为相机朝上的方向。就好比直立看东西方向为头朝上看到的东西也是直立的如果倒立看某个东西这时方向头朝下看到的东西就是倒立的。相机位置、相机焦点和朝上方向三个因素确定了相机的实际方向即确定相机的试图。 4投影方向: 相机位置到相机焦点的向量方向即为投影方向。 5投影方法: 该要素用于确定Actor是如何映射到像平面的。 vtkCamera定义了两种投影方法 一种是正交投影(Orthographic Projection)也叫平行投影(Parallel Projection)即进入相机的光线与投影方向是平行的 另一种是透视投影(Perspective Projection)即所有光线相较于一点。该投影方法最符合人类眼睛对于景物所产生的近大远小的视觉习惯。 6视角: 透视投影时需要指定相机的视角(View Angle)默认的视角大小为30°可以用vtkCamera::SetViewAngle()方法设置。 7前后裁剪平面: 裁剪平面与投影方向相交一般与投影方向也是垂直的。裁剪平面主要用于评估Actor与相机距离的远近只有在前后裁剪平面之间的Actor才是可见的。裁剪平面的位置可以用vtkCamera::SetClippingRange()方法设置。 相机的视野范围是一个锥状体; 相机位置和焦点位置定义了相机的位置和投影方向前裁剪平面与后裁剪平面 之间为可见区域 相机坐标 相机所在的位置坐标; void SetPosition(double x, double y, double z);void SetPosition(const double a[3]) { this-SetPosition(a[0], a[1], a[2]); }vtkGetVector3Macro(Position, double); 相机焦点 相机焦点所在的位置坐标 void SetFocalPoint(double x, double y, double z);void SetFocalPoint(const double a[3]) { this-SetFocalPoint(a[0], a[1], a[2]); }vtkGetVector3Macro(FocalPoint, double); 通过设置相机焦点与相机坐标的距离来移动焦点坐标注意设置的值必须为正值。 void SetDistance(double); vtkGetMacro(Distance, double); 朝上方向 使用SetViewUp设置相机的朝上方向 一般默认朝上方向是Y轴正向(0,1,0) 修改相机的朝上方向可以实现相机绕XYZ轴旋转的功能 一般情况都是写0或者1如果是斜着旋转就要输入0-1范围内的小数大家可以动手自己实验一下 void SetViewUp(double vx, double vy, double vz);void SetViewUp(const double a[3]) { this-SetViewUp(a[0], a[1], a[2]); }vtkGetVector3Macro(ViewUp, double); 投影方式 设置/获取ParallelProjection实例变量的值。 这决定了相机应该进行透视投影还是平行投影。 void SetParallelProjection(vtkTypeBool flag);vtkGetMacro(ParallelProjection, vtkTypeBool);vtkBooleanMacro(ParallelProjection, vtkTypeBool); 投影方向 投影方向是指从相机位置到焦点方向的矢量。 double DirectionOfProjection[3]; vtkGetVector3Macro(DirectionOfProjection, double); 这通常与ViewPlaneNormal相反即垂直于屏幕的向量除非视图是倾斜的。 旋转 void Roll(double angle)围绕投影方向旋转相机 void Azimuth(double angle); 以焦点为中心围绕朝上方向方向向量即在焦点为中心焦距为半径的圆球的维度线上水平旋转 void Elevation(double angle); 以焦点为中心在焦点为中心焦距为半径的圆球的经度线方向上旋转垂直旋转 void Yaw(double angle); 同Azimuth相似以相机为中心移动焦点坐标 void Pitch(double angle); 同Elevation相似以相机为中心移动焦点坐标 调整裁剪平面距离 ClippingRange即剪切平面分为前后两个。只有在这两个剪切平面之间的内容才会被渲染和显示。默认值是(0.1,1000)。这个量一般不需要修改而是在vtkRenderer对象中调用ResetCameraClippingRange()方法来自动重设渲染范围。如果你的图像显示不完整但是稍微用鼠标旋转或平移一下又变完整了。建议试一下调用一次这个方法。 设置前裁剪平面和后裁剪平面前裁剪平面就是距离相机较近的平面后平面就是距离相机较远位置 dNear和dFar是距离相机坐标的距离在相机坐标向焦点方向上的距离 void SetClippingRange(double dNear, double dFar); void SetClippingRange(const double a[2]) { this-SetClippingRange(a[0], a[1]); } vtkGetVector2Macro(ClippingRange, double); 重置相机参数 vtkRenderer类可以重置使用的相机参数 virtual void ResetCamera(); 根据可见的vtkActor自动设置相机参数。使得相机会重新定位以观察演员的中心点并沿其初始视图平面法线移动即从镜头位置到焦点这样所有的vtkActor都可以在相机中看到。 从源码中可以看到ResetCamera()只会重置相机的焦点焦距朝上方向等信息不会重置旋转角度如果要从一个Renderer中获取多个旋转后图像需要对角度进行修正后计算每次ResetCamera()都会保留上一次旋转的角度
http://www.w-s-a.com/news/709152/

相关文章:

  • 免费网站服务陕西省咸阳市建设银行网站
  • 网站建设活动计划做网站意义
  • 莱芜新闻主持人名单seo sem 外贸建站 网站建设 文化墙设计
  • 易语言可以做网站嘛赣州网站建设开发
  • 网站建设规范布局网站建设费往什么科目
  • 乐清手机网站设计哪个汽车网站汽贸店免费做
  • 网站建设课程总结报告推广软文
  • 企业网站哪里可以做烟台seo网站推广
  • 怎样建设网站优化珠海网站建设开发
  • 泰兴住房和城乡建设厅网站福州app开发
  • 免费制作公司网站seo前线
  • 导购网站怎么推广有网站源码怎么搭建网站
  • 网站开发问题杭州制作公司网站
  • 网站推广seo是什么wordpress 去除顶部
  • 建筑学不会画画影响大吗电子商务沙盘seo关键词
  • 重庆网站建设找承越上海建设工程招投标网
  • 网站建设四个步骤下单的网站建设教程
  • 网站建设合同的验收表响应式网站建设哪家好
  • 手机网站建设视频长沙百家号seo
  • 网站未备案怎么访问网站开发前端需要学什么
  • 正黄集团博弘建设官方网站wordpress设置固定链接和伪静态
  • wordpress 建网站视频如何实现网站生成网页
  • 杭州品牌网站建设推广个人的网站建设目标
  • 济南有哪些网站是做家具团购的贸易公司自建免费网站
  • wap网站psd成立公司在什么网站
  • 网站建设婚恋交友聊城网站建设费用
  • 沈阳网站建设联系方式尉氏县金星网架公司
  • 医院网站建设实施方案基础微网站开发信息
  • 网站建设开发服务费记账百度指数搜索
  • 网站建设备案流程windows优化大师有必要安装吗