副标题#e#
在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 | 默认环境下是自动计较的,为了优化场景,也可以强制指定。 |
#p#副标题#e#
下面就来先容上述属性的利用要领。
一、平移
示例代码如下:
说明:上面例子中,我们结构了两个球。为了使另一个球在(3,0,0)位置上显示,我们利用了Transform节点,该节点是一个组节点,Shape等节点需要作为它的子节点才气举办几许造型的调动。
功效如下图所示。
二、旋转
代码如下:
说明:立方体先平移到(3,0,0)点,然后按自身原点沿Z轴旋转45度(弧度值约为0.785),功效如下图所示。
若将立方体自身原点移至最右侧面的中点,则上述代码可修改成:
其功效如下:
请仔细较量这两次功效的差异。
三、缩放
代码如下:
说明:上述代码中将第二个球沿X、Y、Z偏向别离配置比例系数1、3和0.5,其功效如下图所示。
四、综合实例
通过几许调动可以结构更多更巨大的几许造型,下面的示例代码就是用来结构一个三维坐标轴。
说明:上述代码中,先用圆柱和圆锥结构Y轴,并将其归并成组Axis。然后对组Axis举办旋转调动,功效如下图所示。
上述显示的场景是用鼠标改变其视角的功效。虽然,视角的改变还可直接通过节点举办配置,在下一讲中,我们将接头视点和导航的配置。