标题: [基础] X3D实战基础讲座之五
ljjk5
元帅
Rank: 1


荣誉会员奖章
UID 46706
精华 1
积分 99426
帖子 49690
威望 554
金币 48489
热心 505
阅读权限 100
注册 2007-2-25
状态 离线
X3D实战基础讲座之五

 在X3D场景空间中,每一个造型都有其空间坐标,通过修改空间坐标系就可以使该造型在场景空间中移动、旋转和缩放等。  X3D提供Transform节点来进行造型的几何变换,该节点的主要属性如下表所示:
  
属性含义默认值使用说明
translation平移0 0 0将几何体平移到指定的空间点位置
rotation旋转0 0 1 0前3个值是空间坐标点,该点和原点相连的线为旋转轴,第4个值为旋转角度(以弧度为单位)
center操作基点0 0 0 指定一个空间点作为几何变换的基点
scale比例1 1 1指定在X、Y、Z方向的比例系数以便进行缩放
scaleOrientation预旋转比例0 0 1 0缩放前子节点局部坐标系统的预旋转(允许沿着子节点任意方向缩放),其数值含义同rotation属性
bboxCenter边界盒的中心0 0 0指定几何体自身原点的位置
bboxSize边界盒的大小-1 -1 -1默认情况下是自动计算的,为了优化场景,也可以强制指定。

  下面就来介绍上述属性的使用方法。
  一、 平移
  示例代码如下:
  
  说明:上面例子中,我们构造了两个球。为了使另一个球在(3,0,0)位置上显示,我们使用了Transform节点,该节点是一个组节点,Shape等节点需要作为它的子节点才能进行几何造型的变换。
  结果如下图所示。
  
  二、 旋转
  代码如下:
  
  说明:立方体先平移到(3,0,0)点,然后按自身原点沿Z轴旋转45度(弧度值约为0.785),结果如下图所示。
  
  若将立方体自身原点移至最右侧面的中点,则上述代码可修改成:
  
  其结果如下:
  
  请仔细比较这两次结果的不同。
  三、 缩放
  代码如下:
  
  说明:上述代码中将第二个球沿X、Y、Z方向分别设置比例系数1、3和0.5,其结果如下图所示。
  
  四、 综合实例
  通过几何变换可以构造更多更复杂的几何造型,下面的示例代码就是用来构造一个三维坐标轴。
  
  说明:上述代码中,先用圆柱和圆锥构造Y轴,并将其合并成组Axis。然后对组Axis进行旋转变换,结果如下图所示。
  
  上述显示的场景是用鼠标改变其视角的结果。当然,视角的改变还可直接通过节点进行设置,在下一讲中,我们将讨论视点和导航的设置。

网友 ljjk5 签名 - 网友社区 ===
顶部
[广告] 免费域名(Free Subdomain) 免费空间(Free hosting) PR查询(Google Pagerank)



当前时区 GMT+8, 现在时间是 2008-10-11 10:28
信产部ICP备案:京ICP备05066424号 北京市公安局网监备案:1101050648号

Powered by Discuz! 5.5.0
清除 Cookies - 联系我们 - 网友俱乐部 - Archiver - WAP