X3D Model Documentation: Windmill.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='Interchange' 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='Windmill.x3d'/>
  6            <meta name='descriptioncontent='This world builds a windmill whose sails spin about. Several viewpoints are added to look at the windmill from different angles.'/>
  7            <meta name='creatorcontent='David R. Nadeau, John L. Moreland, Michael M. Heck'/>
  8            <meta name='translatorcontent='Don Brutzman'/>
  9            <meta name='createdcontent='1 July 1998'/>
 10            <meta name='translatedcontent='2 February 2014'/>
 11            <meta name='modifiedcontent='20 October 2019'/>
 12            <meta name='referencecontent='originals/windmill.wrl'/>
 13            <meta name='referencecontent='http://www.siggraph.org/s98'/>
 14            <meta name='referencecontent='http://www.siggraph.org/s98/conference/courses/18.html'/>
 15            <meta name='referencecontent='http://www.sdsc.edu/~moreland/courses/Siggraph98/vrml97/slides/mt0356.htm'/>
 16            <meta name='referencecontent='http://www.sdsc.edu/~moreland/courses/Siggraph98/vrml97/vrml97.htm'/>
 17            <meta name='referencecontent='https://www.web3d.org/x3d/content/examples/X3dResources.html'/>
 18            <meta name='identifiercontent='https://www.web3d.org/x3d/content/examples/Vrml2Sourcebook/Siggraph98Course/Windmill.x3d'/>
 19            <meta name='generatorcontent='Vrml97ToX3dNist, http://ovrt.nist.gov/v2_x3d.html'/>
 20            <meta name='generatorcontent='X3D-Edit, https://savage.nps.edu/X3D-Edit'/>
 21            <meta name='licensecontent='../license.html'/>
 22       </head>
<!--

<!--
Event Graph ROUTE Table shows event connections.
-->

<!-- to top Index for DEF nodes: Clock, Rotator, Sail, Sails, Tile, Wood

Index for Viewpoint nodes: Viewpoint_1, Viewpoint_2, Viewpoint_3, Viewpoint_4, Viewpoint_5, Viewpoint_6
-->
 23       <Scene>
 24            <!-- EXPERIMENTATION -->
 25            <!-- Add additional windmills to the world. Make each windmill's sails rotate at a slightly different speed. This will insure that the windmills don't all rotate in sync, thereby making the scene look more natural. -->
 26            <!-- Make the windmill door an anchor. Clicking on the door leads to another world describing the windmill interior. -->
 27            <!-- Add panorama cloud and mountain textures to the Background node. -->
 28            <!-- Remove the windmill's sails and, instead, create a rotating water wheel. -->
 29            <WorldInfo info='"Copyright (c) 1997, David R. Nadeau"title='Windmill'/>
 30            <Viewpoint description='Entry vieworientation='1.0 0.0 0.0 0.2position='0.0 1.65 35.0'/>
 31            <Viewpoint description='Close-uporientation='1.0 0.0 0.0 0.5position='0.0 1.65 15.0'/>
 32            <Viewpoint description='Front doororientation='0.0 1.0 0.0 0.785position='7.05 1.65 7.05'/>
 33            <Viewpoint description='Far awayorientation='0.0 1.0 0.0 2.356position='35.0 1.65 -35.0'/>
 34            <Viewpoint description='Roof toporientation='0.00128 0.959 0.282 3.1503position='0.0 14.43 2.0'/>
 35            <NavigationInfo headlight='falsespeed='3.0'/>
 36            <Background skyAngle='1.3 1.471skyColor='0.0 0.2 0.8 0.1 0.3 0.9 0.7 0.7 0.7'/>
 37            <DirectionalLight ambientIntensity='0.8direction='-1.0 -1.0 -1.0'/>
 38            <Transform translation='0.0 -0.005 0.0'>
 39                 <Shape>
 40                      <Appearance>
 41                           <TextureTransform scale='2.0 2.0'/>
 42                           <Material ambientIntensity='0.7diffuseColor='0.0 0.5 0.1'/>
 43                           <ImageTexture   url=' "fire_g.jpg " "https://www.web3d.org/x3d/content/examples/Vrml2Sourcebook/Siggraph98Course/fire_g.jpg " '/>
 44                      </Appearance>
 45                      <IndexedFaceSet coordIndex='0 1 2 3texCoordIndex='0 1 2 3'>
 46                           <TextureCoordinate point='0.0 0.0 1.0 0.0 1.0 1.0 0.0 1.0'/>
 47                           <Coordinate point='-100.0 0.0 100.0 100.0 0.0 100.0 100.0 0.0 -100.0 -100.0 0.0 -100.0'/>
 48                      </IndexedFaceSet>
 49                 </Shape>
 50            </Transform>
 51            <Transform translation='0.0 5.0 0.0'>
 52                 <Shape>
 53                      <Appearance>
 54                           <TextureTransform scale='2.0 2.0'/>
 55                           <Material ambientIntensity='0.3diffuseColor='1.0 1.0 1.0'/>
 56                           <ImageTexture   url=' "swall1.jpg " "https://www.web3d.org/x3d/content/examples/Vrml2Sourcebook/Siggraph98Course/swall1.jpg " '/>
 57                      </Appearance>
 58                      <Cylinder bottom='falseheight='10.0radius='5.0top='false'/>
 59                 </Shape>
 60            </Transform>
 61            <Transform translation='0.0 12.0 0.0'>
 62                 <Shape>
 63 
                    <!-- Appearance Tile is a DEF node that has 1 USE node: USE_1 -->
                    <Appearance DEF='Tile'>
 64                           <TextureTransform scale='4.0 4.0'/>
 65                           <Material ambientIntensity='0.3diffuseColor='0.8 0.0 0.0'/>
 66                           <ImageTexture   url=' "wtile.jpg " "https://www.web3d.org/x3d/content/examples/Vrml2Sourcebook/Siggraph98Course/wtile.jpg " '/>
 67                      </Appearance>
 68                      <Cone bottomRadius='6.0height='4.0'/>
 69                 </Shape>
 70            </Transform>
 71            <Transform rotation='0.0 1.0 0.0 0.785translation='3.55 0.0 3.55'>
 72                 <Transform translation='0.0 3.6 0.0'>
 73                      <Shape>
 74                           <Appearance USE='Tile'/>
 75                           <Cone bottomRadius='1.5'/>
 76                      </Shape>
 77                 </Transform>
 78                 <Shape>
 79                      <Appearance>
 80                           <Material ambientIntensity='0.3diffuseColor='0.4 0.2 0.0'/>
 81                           <ImageTexture   url=' "wdoor.jpg " "https://www.web3d.org/x3d/content/examples/Vrml2Sourcebook/Siggraph98Course/wdoor.jpg " '/>
 82                      </Appearance>
 83                      <IndexedFaceSet coordIndex='0 1 2 3 -1 4 0 3 7 -1 1 5 6 2 -1texCoordIndex='0 1 2 3 -1 4 5 6 7 -1 4 5 6 7 -1'>
 84                           <TextureCoordinate point='0.0 0.0 1.0 0.0 1.0 1.0 0.0 1.0 0.0 0.0 0.08 0.0 0.08 1.0 0.0 1.0'/>
 85                           <Coordinate point='-0.7 0.0 0.15 0.7 0.0 0.15 0.7 2.9 0.15 -0.7 2.9 0.15 -0.7 0.0 -0.05 0.7 0.0 -0.05 0.7 2.9 -0.05 -0.7 2.9 -0.05'/>
 86                      </IndexedFaceSet>
 87                 </Shape>
 88                 <Transform translation='0.0 0.05 0.5'>
 89                      <Shape>
 90                           <Appearance>
 91                                <Material diffuseColor='0.4 0.4 0.4'/>
 92                           </Appearance>
 93                           <Box size='2.0 0.1 1.0'/>
 94                      </Shape>
 95                 </Transform>
 96            </Transform>
 97 
          <!-- ROUTE information for Sails node:  [from Rotator.value_changed to set_rotation ] -->
          <Transform DEF='Sailstranslation='0.0 8.0 6.5'>
 98                 <Viewpoint description='On a sailposition='0.0 6.5 -0.1'/>
 99                 <Transform rotation='1.0 0.0 0.0 1.571translation='0.0 0.0 -0.75'>
100                      <Shape>
101 
                         <!-- Appearance Wood is a DEF node that has 1 USE node: USE_1 -->
                         <Appearance DEF='Wood'>
102                                <Material diffuseColor='0.6 0.4 0.0'/>
103                           </Appearance>
104                           <Cylinder bottom='falseheight='1.5radius='0.8'/>
105                      </Shape>
106                 </Transform>
107 
               <!-- Transform Sail is a DEF node that has 3 USE nodes: USE_1, USE_2, USE_3 -->
               <Transform DEF='Sailtranslation='0.0 3.5 0.1'>
108                      <Transform translation='0.0 1.0 0.1'>
109                           <Shape>
110                                <Appearance>
111                                     <TextureTransform scale='2.0 6.0'/>
112                                     <Material diffuseColor='1.0 1.0 1.0'/>
113                                     <ImageTexture   url=' "sails.jpg " "https://www.web3d.org/x3d/content/examples/Vrml2Sourcebook/Siggraph98Course/sails.jpg " '/>
114                                </Appearance>
115                                <Box size='2.0 6.0 0.1'/>
116                           </Shape>
117                      </Transform>
118                      <Shape>
119                           <Appearance USE='Wood'/>
120                           <Box size='0.1 7.0 0.1'/>
121                      </Shape>
122                 </Transform>
123                 <Transform rotation='0.0 0.0 1.0 1.571'>
124                      <Transform USE='Sail'/>
125                 </Transform>
126                 <Transform rotation='0.0 0.0 1.0 -1.571'>
127                      <Transform USE='Sail'/>
128                 </Transform>
129                 <Transform rotation='0.0 0.0 1.0 3.141'>
130                      <Transform USE='Sail'/>
131                 </Transform>
132            </Transform>
133 
          <!-- ROUTE information for Clock node:  [from fraction_changed to Rotator.set_fraction ] -->
          <TimeSensor DEF='ClockcycleInterval='10.0loop='truestartTime='1.0'/>
134 
          <!-- ROUTE information for Rotator node:  [from Clock.fraction_changed to set_fraction ] [from value_changed to Sails.set_rotation ] -->
          <OrientationInterpolator DEF='Rotatorkey='0.0 0.5 1.0keyValue='0.0 0.0 1.0 0.0 0.0 0.0 1.0 3.141 0.0 0.0 1.0 6.282'/>
135            < ROUTE  fromNode='Clock' fromField='fraction_changed' toNode='Rotator' toField='set_fraction'/>
136            < ROUTE  fromNode='Rotator' fromField='value_changed' toNode='Sails' toField='set_rotation'/>
137       </Scene>
138  </X3D>
<!--

<!--
Event Graph ROUTE Table shows event connections.
-->

<!-- to top Index for DEF nodes: Clock, Rotator, Sail, Sails, Tile, Wood

Index for Viewpoint nodes: Viewpoint_1, Viewpoint_2, Viewpoint_3, Viewpoint_4, Viewpoint_5, Viewpoint_6
-->
X3D Tooltips element index: Appearance, Background, Box, Cone, Coordinate, Cylinder, DirectionalLight, head, ImageTexture, IndexedFaceSet, Material, meta, NavigationInfo, OrientationInterpolator, ROUTE, Scene, Shape, TextureCoordinate, TextureTransform, TimeSensor, Transform, Viewpoint, WorldInfo, X3D, accessType and type, XML data types, field types

Event Graph ROUTE Table with 2 ROUTE connections total, showing X3D event-model relationships for this scene.

Each row shows an event cascade that may occur during a single timestamp interval between frame renderings, as part of the X3D execution model.

Clock
TimeSensor
fraction_changed
SFFloat

ROUTE
event to
(1)
Rotator
OrientationInterpolator
set_fraction
SFFloat
then
 
 
 
Rotator
OrientationInterpolator
value_changed
SFRotation

ROUTE
event to
(2)
Sails
Transform
set_rotation
SFRotation
Additional guidance on X3D animation can be found in the 10-Step Animation Design Process and Event Tracing hint sheets. Have fun with X3D! 😀

-->
<!-- Online at
https://www.web3d.org/x3d/content/examples/Vrml2Sourcebook/Siggraph98Course/WindmillIndex.html -->
<!-- Version control at
https://sourceforge.net/p/x3d/code/HEAD/tree/www.web3d.org/x3d/content/examples/Vrml2Sourcebook/Siggraph98Course/Windmill.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. -->