x3d提供了立方体(box)、圆柱(cylinder)、圆锥(cone)、球体(sphere)等基本3d造型节点。在本讲中,我们先来简单地介绍这些节点的使用,然后再来介绍节点的编组和节点的重复使用方法。
一、 立方体box
构造的代码如下:
说明:box节点的主要属性是size,用来确定长度(x方向)、高度(y方向)和宽度(z)方向的大小。这里是定义一个长为2,宽和高均为1的立方体。
结果如下图所示。
二、 圆柱体cylinder
代码如下:
说明:cylinder节点的主要属性有height(高度)、radius(半径)以及是否包含顶面(top)、侧面(side)和底面(bottom)等。这里定义的是一个高为2,半径为1的圆柱体,该圆柱体含有各个面。
结果如下图所示。
三、 圆锥体cone
代码如下:
说明:cone节点的主要属性有height(高度)、bottomradius(底面半径)以及是否包含侧面(side)和底面(bottom)等。这里定义的是一个高为3,半径为1的圆锥体,该圆锥体含有各个面。
结果如下图所示。
四、 球体sphere
构造的代码如下:
说明:sphere节点的主要属性是radius,用来确定球体的半径。
结果如下图所示。
五、 节点编组
节点编组是使用x3d的group节点进行的,通过多个节点构成一组以便构造出更复杂的几何造型。如下面的代码
说明:该例使用group 节点将两个shape 节点组织在一体,构造一个组合造型。结果如下图所示。
六、 节点的复用
在x3d场景中往往有多个相同属性的节点出现,为了不重复添加节点属性,x3d中的节点属性窗口中提供了def 和 use两个属性可以实现节点属性的复用。
def用来为节点定义一个节点名称以便后面的使用。该节点名称是大小写敏感(区分大小写),其取名规则基本上与c语言相似。
use是用来引用前面相同节点的属性。如下面的代码:

说明:在第一个出现的appearance节点中,我们将其定义一个名称color3d,而在后面出现的appearance节点,我们使用了use来调用第一个节点的属性。这样,两个立体的外观就一样了。
从上面可以看出,在x3d中构造基本3d立体是非常简单方便的,但是由于每一个立体的属性被最大化优化过,因此要想改立体的位置和旋转角度还需要另外一些方法。在下一讲中,我们重点介绍立体造型的几何变换。
闽公网安备 35060202000074号