基于Logitech三维鼠标的虚拟建筑漫游系统(4)

发布时间:2021-06-08

基于Logitech三维鼠标的虚拟建筑漫游系统

径的位置和方向信息赋予目标物体。视点还有一个特点,即一旦将视点与传感器相连,传感器的变换和旋转信息就将被发送给视点,从而使传感器能够控制视点。需要注意的是视点的最终行为取决于传感器控制的合力,即传感器之间可能存在冲突。有些传感器是相互冲突的,他们不能在一起共同工作。如果贸然将一个视点与多个传感器相连,极有可能引起冲突。函数引用语句为:

void WTviewpoint_addsensor(WTviewpoint *viewpoint,WTsensor *sensor);

2:设定传感器灵敏度

函数WTsensor_setsensitivity能够设定指定的传感器的灵敏度,默认灵敏度为1.0。用户的任何将灵敏度值设为负值的企图都将被系统认为是无效行为,即不会对灵敏度值做出任何实质性的修改。函数的引用语句为:

void WTsensor_setsensitivity(WTsensor *sensor,float sensitivity);

2.4 Logitech三维鼠标在场景漫游中的应用

三维场景的漫游就是观察者在三维空间中不断改变视点的位置,并进行俯视、仰视、环视等多种方式的观察。由计算机图形学理论我们可知,对于一个构造在世界坐标系中的三维场景,漫游的本质就是通过改变观察空间来达到从不同位置、角度观察场景的目的。在观察空间的其它参数(如:前后界面离视点的距离、视角、纵横比等)不变的情况下,可以用4ⅹ4的变换矩阵进行视点变换来改变观察空间位置和方向。因此,用Logitech三维鼠标作为场景漫游的视点跟踪传感器时,其漫游过程为:

1:接收信号:从控制单元获取三维鼠标的状态数据;

2:视点更新:根据所获取的数据生成变换矩阵,并用它更新视点位置和视线方向;

3:场景重新渲染:在用户视窗内更新场景显示。

图2 场景遍历过程 图3 Logitech三维鼠标的硬件构成

3 层次型场景结构

层次型结构场景的基本思想是:将整个场景用一颗倒置的树(即一颗根节点在上,分支节点和叶节点在下的树,我们称之为“场景树”)来描述和组织,场景树中的节点包含了场景中的所有元素,如:几何体、变换矩阵、光源、纹理等。在层次型场景中,根结点是整个场景树的入口点,场景的绘制必须要遍历(Traverse)场景树的所有节点。其遍历过程是基于“深度优先(depth-first)”策略的,如图3所示。

在场景遍历过程中,如遇到物体几何体对象节点,绘制引擎首先要将对象结点的变换矩阵装入

基于Logitech三维鼠标的虚拟建筑漫游系统(4).doc 将本文的Word文档下载到电脑

精彩图片

热门精选

大家正在看

× 游客快捷下载通道(下载后可以自由复制和排版)

限时特价:7 元/份 原价:20元

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219