X3D Model Documentation: CoordinateAxes.x3d

  1  <?xml version="1.0" encoding="UTF-8"?>
  2  <!DOCTYPE X3D PUBLIC "ISO//Web3D//DTD X3D 3.3//EN" "https://www.web3d.org/specifications/x3d-3.3.dtd">
  3  <X3D profile='Immersive' version='3.3 xmlns:xsd='http://www.w3.org/2001/XMLSchema-instance' xsd:noNamespaceSchemaLocation='https://www.web3d.org/specifications/x3d-3.3.xsd'>
  4       <head>
  5            <meta name='titlecontent='CoordinateAxes.x3d'/>
  6            <meta name='creatorcontent='Don Brutzman, Byounghyun Yoo'/>
  7            <meta name='createdcontent='14 July 2000'/>
  8            <meta name='modifiedcontent='20 October 2019'/>
  9            <meta name='descriptioncontent='X Y Z axis arrows and labels in X3D coordinate system. See CoordinateAxesExample for use as an Inline coordinate-system reference frame.'/>
 10            <meta name='referencecontent='https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter03Grouping/CoordinateAxes.x3d'/>
 11            <meta name='referencecontent='https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter03Grouping/CoordinateAxesNSEW.x3d'/>
 12            <meta name='referencecontent='https://savage.nps.edu/Savage/Tools/Authoring/CoordinateAxes.x3d'/>
 13            <meta name='referencecontent='https://savage.nps.edu/Savage/Tools/Authoring/CoordinateAxesNSEW.x3d'/>
 14            <meta name='identifiercontent='https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter03Grouping/CoordinateAxes.x3d'/>
 15            <meta name='generatorcontent='X3D-Edit 3.3, https://savage.nps.edu/X3D-Edit'/>
 16            <meta name='licensecontent='../license.html'/>
 17       </head>
<!--

<!-- -->

<!-- to top Index for DEF nodes: ArrowBlue, ArrowCone, ArrowCylinder, ArrowGreen, ArrowRed, Blue, DoNotCollideWithVisualizationWidget, Green, LABEL_APPEARANCE, LABEL_FONT, Red
-->
 18       <Scene>
 19            <WorldInfo title='CoordinateAxes.x3d'/>
 20            <Collision DEF='DoNotCollideWithVisualizationWidget'>
 21                 <!-- Invoke CoordinateAxes in other scenes as an Inline child inside a scaling Transform node, at the topmost level of the scene graph. -->
 22                 <!-- This NavigationInfo allows examine mode and will be overridden by any parent scene. -->
 23                 <!-- Each arrow goes from +1m to -1m to allow linear scaling to fit a scene -->
 24                 <!-- Note each label rotates about the scene's vertical Y axis for consistency, enabling local orientation by user -->
 25                 <Group>
 26                      <!-- Vertical Y arrow and label -->
 27                      <Group DEF='ArrowGreen'>
 28                           <Shape>
 29 
                              <!-- Cylinder ArrowCylinder is a DEF node that has 2 USE nodes: USE_1, USE_2 -->
                              <Cylinder DEF='ArrowCylinderradius='.025top='false'/>
 30 
                              <!-- Appearance Green is a DEF node that has 1 USE node: USE_1 -->
                              <Appearance DEF='Green'>
 31                                     <Material diffuseColor='.1 .6 .1emissiveColor='.05 .2 .05'/>
 32                                </Appearance>
 33                           </Shape>
 34                           <Transform translation='0 1 0'>
 35                                <Shape>
 36 
                                   <!-- Cone ArrowCone is a DEF node that has 2 USE nodes: USE_1, USE_2 -->
                                   <Cone DEF='ArrowConebottomRadius='.05height='.1'/>
 37                                     <Appearance USE='Green'/>
 38                                </Shape>
 39                           </Transform>
 40                      </Group>
 41                      <Transform translation='0 1.08 0'>
 42                           <Billboard>
 43                                <Shape>
 44 
                                   <!-- Appearance LABEL_APPEARANCE is a DEF node that has 2 USE nodes: USE_1, USE_2 -->
                                   <Appearance DEF='LABEL_APPEARANCE'>
 45                                          <Material diffuseColor='1 1 .3emissiveColor='.33 .33 .1'/>
 46                                     </Appearance>
 47                                     <Text string='"Y"'>
 48 
                                        <!-- FontStyle LABEL_FONT is a DEF node that has 2 USE nodes: USE_1, USE_2 -->
                                        <FontStyle DEF='LABEL_FONTfamily='"SANS"justify='"MIDDLE" "MIDDLE"size='.2'/>
 49                                     </Text>
 50                                </Shape>
 51                           </Billboard>
 52                      </Transform>
 53                 </Group>
 54                 <Transform rotation='0 0 1 -1.57079'>
 55                      <!-- Horizontal X arrow and label -->
 56                      <Group>
 57                           <Group DEF='ArrowRed'>
 58                                <Shape>
 59                                     <Cylinder USE='ArrowCylinder'/>
 60 
                                   <!-- Appearance Red is a DEF node that has 1 USE node: USE_1 -->
                                   <Appearance DEF='Red'>
 61                                          <Material diffuseColor='.7 .1 .1emissiveColor='.33 0 0'/>
 62                                     </Appearance>
 63                                </Shape>
 64                                <Transform translation='0 1 0'>
 65                                     <Shape>
 66                                          <Cone USE='ArrowCone'/>
 67                                          <Appearance USE='Red'/>
 68                                     </Shape>
 69                                </Transform>
 70                           </Group>
 71                           <Transform rotation='0 0 1 1.57079translation='.072 1.1 0'>
 72                                <!-- note label rotated back to original coordinate frame -->
 73                                <Billboard>
 74                                     <Shape>
 75                                          <Appearance USE='LABEL_APPEARANCE'/>
 76                                          <Text string='"X"'>
 77                                               <FontStyle USE='LABEL_FONT'/>
 78                                          </Text>
 79                                     </Shape>
 80                                </Billboard>
 81                           </Transform>
 82                      </Group>
 83                 </Transform>
 84                 <Transform rotation='1 0 0 1.57079'>
 85                      <!-- Perpendicular Z arrow and label, note right-hand rule -->
 86                      <Group>
 87                           <Group DEF='ArrowBlue'>
 88                                <Shape>
 89                                     <Cylinder USE='ArrowCylinder'/>
 90 
                                   <!-- Appearance Blue is a DEF node that has 1 USE node: USE_1 -->
                                   <Appearance DEF='Blue'>
 91                                          <Material diffuseColor='.3 .3 1emissiveColor='.1 .1 .33'/>
 92                                     </Appearance>
 93                                </Shape>
 94                                <Transform translation='0 1 0'>
 95                                     <Shape>
 96                                          <Cone USE='ArrowCone'/>
 97                                          <Appearance USE='Blue'/>
 98                                     </Shape>
 99                                </Transform>
100                           </Group>
101                           <Transform rotation='1 0 0 -1.57079translation='0 1.1 .072'>
102                                <!-- note label rotated back to original coordinate frame -->
103                                <Billboard>
104                                     <Shape>
105                                          <Appearance USE='LABEL_APPEARANCE'/>
106                                          <Text string='"Z"'>
107                                               <FontStyle USE='LABEL_FONT'/>
108                                          </Text>
109                                     </Shape>
110                                </Billboard>
111                           </Transform>
112                      </Group>
113                 </Transform>
114            </Collision>
115       </Scene>
116  </X3D>
<!--

<!-- -->

<!-- to top Index for DEF nodes: ArrowBlue, ArrowCone, ArrowCylinder, ArrowGreen, ArrowRed, Blue, DoNotCollideWithVisualizationWidget, Green, LABEL_APPEARANCE, LABEL_FONT, Red
-->
X3D Tooltips element index: Appearance, Billboard, Collision, Cone, Cylinder, FontStyle, Group, head, Material, meta, Scene, Shape, Text, Transform, WorldInfo, X3D, accessType and type, XML data types, field types

-->
<!-- Online at
https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter03Grouping/CoordinateAxesIndex.html -->
<!-- Version control at
https://sourceforge.net/p/x3d/code/HEAD/tree/www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter03Grouping/CoordinateAxes.x3d -->

<!-- Color legend: X3D terminology <X3dNode DEF='idName' field='value'/> matches XML terminology <XmlElement DEF='idName' attribute='value'/>
(Light-blue background: event-based behavior node or statement) (Grey background inside box: inserted documentation) (Magenta background: X3D Extensibility)
-->

to top <!-- For additional help information about X3D scenes, please see X3D Tooltips, X3D Resources, and X3D Scene Authoring Hints. -->