Switch开关节点(选择型节点)

 Switch开关节点在X3D程序设计中,可作为选择开关使用。该节点也是一个组节点,也被称为选择型组节点。在这个节点中可以创建不同的子节点,但在同一时刻只能选择一个子节点(也可以一个特不选择),因此增加了X3D程序的交互性,使用户用更大的选择权。

 

Switch开关节点域、域名和域值:

DEF为节点定义一个名字,给该节点定义了唯一的ID,在其他节点就可以引用这个节点; 

USE用来引用DEF定义的节点ID,即引用DEF定义的节点名字,同时忽略其他的属性和子对象;

whichChoice域:该域值是选择children域中的哪个子节点,其中0代表第一个子节点,1代表第二个子节点,依次类推;

bboxCenter域:指定了边界盒的中心从局部坐标系统原点的位置的偏移,默认值是:0.0 0.0 0.0;

bboxSize域:指定了边界盒尺寸在x、y、z轴方向的大小;

containerField域:表示容器域是field域标签的前缀,表示了子节点与父节点的关系;

class域:是用空格分开的类的列表,保留给XML样式表使用,只有X3D场景用XML编码时才支持class属性。

 

源代码:

  1. xml version="1.0" encoding="UTF-8"?>
  2.                      "file:///www.web3d.org/TaskGroups/x3d/translation/x3d-3.1.dtd">
  3. <X3D profile="Immersive" version="3.1"
  4.   xmlns:xsd="http://www.w3.org/2001/XMLSchema-instance" xsd:noNamespaceSchemaLocation="http://www.web3d.org/specifications/x3d-3.1.xsd">
  5.   <head>
  6.     <meta content="px3d7-4.x3d" name="filename"/>
  7.     <meta content="zjz-zjr-zjd" name="author"/>
  8.     <meta content="*enter name of original author here*" name="creator"/>
  9.     <meta
  10.       content="*enter copyright information here* Example:  Copyright (c) Web3D Consortium Inc. 2006" name="rights"/>
  11.     <meta
  12.       content="*enter online Uniform Resource Identifier (URI) or Uniform Resource Locator (URL) address for this file here*" name="identifier"/>
  13.     <meta
  14.       content="X3D-Edit, http://www.web3d.org/x3d/content/README.X3D-Edit.html" name="generator"/>
  15.   head>
  16.   <Scene>
  17.     <Background skyColor="0.98 0.98 0.98"/>
  18.     <Switch bboxCenter="0 0 0" bboxSize="-1 -1 -1"
  19.       containerField="children" whichChoice="2">
  20.       <Shape>
  21.         <Appearance>
  22.           <Material diffuseColor="1 0 1"/>
  23.         Appearance>
  24.         <Text string="0:First Text:X3D"/>
  25.       Shape>
  26.       <Shape>
  27.         <Appearance>
  28.           <Material diffuseColor="0 1 1"/>
  29.         Appearance>
  30.         <Text string="1:Second Text:X3DV"/>
  31.       Shape>
  32.       <Shape>
  33.         <Appearance>
  34.           <Material diffuseColor="0 0 1"/>
  35.         Appearance>
  36.         <Text string="1:Third Text:VRML"/>
  37.       Shape>
  38.     Switch>
  39.   Scene>
  40. X3D>

 

你可能感兴趣的:(X3D学习)