您的位置:首页 > 其它

Transform空间坐标变换节点

2008-08-31 18:49 351 查看
Transform空间坐标变换节点,可在X3D立体空间创建一个新的空间坐标。程序中的每个Transform空间坐标变换节点都创建一个相对于已有坐标系的局部坐标系统,该节点所包含的空间物体造型都是在这个局部坐标系统上建立的。利用Transform空间坐标变换节点,可以在X3D场景中创建多个局部坐标系,而这些坐标系可随意平移、定位、旋转和缩放、从而使坐标上的造型实现平移、定位、旋转和缩放。Transform空间坐标变换节点通常被用作Shape模型节点的父节点。

Transform空间坐标变换节点域、域名和域值:

DEF为节点定义一个名字,给该节点定义了唯一的ID,在其他节点就可以引用这个节点;
USE用来引用DEF定义的节点ID,即引用DEF定义的节点名字,同时忽略其他的属性和子对象;
translation域:指定了在世界坐标系的原点和局部坐标系的原点之间x、y、z轴方向上的距离,默认值是:0.0 0.0 0.0;
rotation域:指定了一个局部坐标系旋转轴和旋转角度,默认值是0.0 0.0 1.0 0.0,表示以z轴为旋转轴,但不发生旋转;
center域:指定了一个从局部坐标原点的位移偏、旋转和缩放,其默认值为0.0 0.0 0.0;
scale域:指定了局部坐标系在x、y、z轴方向上的缩放系数;
scaleOrientation域:指定了一个旋转轴和旋转角度,该值域的前3个值为局部坐标系上的x、y、z分量,第四个值为以弧度为计量单位的旋转角度;
bboxCenter域:指定了边界盒的中心从局部坐标系统原点的位置的偏移,默认值是:0.0 0.0 0.0;
bboxSize域:指定了边界盒尺寸在x、y、z轴方向的大小;
containerField域:表示容器域是field域标签的前缀,表示了子节点与父节点的关系;
class域:是用空格分开的类的列表,保留给XML样式表使用,只有X3D场景用XML编码时才支持class属性。

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE X3D PUBLIC "http://www.web3d.org/specifications/x3d-3.1.dtd"

"file:///www.web3d.org/TaskGroups/x3d/translation/x3d-3.1.dtd">

<!--Warning: transitional DOCTYPE in source .x3d file-->

<X3D profile="Immersive" version="3.1"

xmlns:xsd="http://www.w3.org/2001/XMLSchema-instance" xsd:noNamespaceSchemaLocation="http://www.web3d.org/specifications/x3d-3.1.xsd">

<head>

<meta content="px3d7-1.x3d" name="filename"/>

<meta content="zjz-zjr-zjd" name="author"/>

<meta content="*enter name of original author here*" name="creator"/>

<meta

content="*enter copyright information here* Example: Copyright (c) Web3D Consortium Inc. 2006" name="rights"/>

<meta

content="*enter online Uniform Resource Identifier (URI) or Uniform Resource Locator (URL) address for this file here*" name="identifier"/>

<meta

content="X3D-Edit, http://www.web3d.org/x3d/content/README.X3D-Edit.html" name="generator"/>

</head>

<Scene>

<Background skyColor="0.98 0.98 0.98"/>

<Transform translation="0 2.2 0">

<Shape>

<Appearance>

<Material ambientIntensity="0.1" diffuseColor="1 0 0"

shininess="0.15" specularColor="0.8 0.8 0.8"/>

</Appearance>

<Sphere radius="0.8"/>

</Shape>

</Transform>

<Transform translation="0 0 0">

<Shape>

<Appearance>

<Material ambientIntensity="0.4" diffuseColor="0.5 0.5 0.7"

shininess="0.2" specularColor="0.8 0.8 0.9"/>

</Appearance>

<Cylinder bottom="true" height="6" radius="0.3" side="true" top="true"/>

</Shape>

</Transform>

</Scene>

</X3D>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: