<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE X3D PUBLIC "ISO//Web3D//DTD X3D 3.3//EN" "https://www.web3d.org/specifications/x3d-3.3.dtd">
<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 '>
<head>
<meta name='titlecontent='BoxSwitch.x3d'/>
<meta name='creatorcontent='Don Brutzman'/>
<meta name='createdcontent='30 December 2015'/>
<meta name='modifiedcontent='20 October 2019'/>
<meta name='descriptioncontent='Demonstrate simple Switch animation by sequencing through a set of Box nodes that are each covered by a different ImageTexture.'/>
<meta name='MovingImagecontent='BoxSwitch.mp4'/>
<meta name='referencecontent=' ../GeometricShapes/CubeWithLabeledSides.x3d'/>
<meta name='drawingcontent=' ../GeometricShapes/images/CubeSideImages.pdf'/>
<meta name='drawingcontent=' ../GeometricShapes/images/CubeSideImages.vsd'/>
<meta name='identifiercontent=' https://x3dgraphics.com/examples/X3dForAdvancedModeling/Animation/BoxSwitch.x3d '/>
<meta name='generatorcontent='X3D-Edit 3.3, https://savage.nps.edu/X3D-Edit'/>
<meta name='licensecontent=' ../license.html'/>
</head>
<!-- -->
<Scene>
<WorldInfo title='BoxSwitch.x3d'/>
<Background skyColor='0.8 0.8 0.9'/>
<NavigationInfo/>
<!-- ROUTE information for BoxSwitcher node:  [from Sequencer.value_changed to whichChoice ] -->
<Switch DEF='BoxSwitcherwhichChoice='-1'> </Switch>
<!-- Animated Box -->
<!-- ROUTE information for Clock node:  [from fraction_changed to Sequencer.set_fraction ] [from fraction_changed to CircularPathPositionInterpolator.set_fraction ] [from fraction_changed to CenterFacingOrientationInterpolator.set_fraction ] -->
<TimeSensor DEF='ClockcycleInterval='12loop='true'/>
<!-- ROUTE information for Sequencer node:  [from Clock.fraction_changed to set_fraction ] [from value_changed to BoxSwitcher.whichChoice ] -->
<IntegerSequencer DEF='Sequencerkey='0 0.1667 0.3333 0.5 0.6667 0.8333 1keyValue='0 1 2 3 4 5 0containerField='children'/>
<ROUTE fromNode='ClockfromField='fraction_changedtoNode='SequencertoField='set_fraction'/>
<ROUTE fromNode='SequencerfromField='value_changedtoNode='BoxSwitchertoField='whichChoice'/>
<!-- ROUTE information for OrbitingView node:  [from CircularPathPositionInterpolator.value_changed to position ] [from CenterFacingOrientationInterpolator.value_changed to orientation ] -->
<Viewpoint DEF='OrbitingViewdescription='Orbiting vieworientation='0 1 0 -1.57position='-8 0 0'/>
<!-- Animated Viewpoint, orbiting about the origin -->
<!-- ROUTE information for CircularPathPositionInterpolator node:  [from Clock.fraction_changed to set_fraction ] [from value_changed to OrbitingView.position ] -->
<PositionInterpolator DEF='CircularPathPositionInterpolatorkey='0 0.02778 0.05556 0.08333 0.11111 0.13889 0.16667 0.19444 0.22222 0.25 0.27778 0.30556 0.33333 0.36111 0.38889 0.41667 0.44444 0.47222 0.5 0.52778 0.55556 0.58333 0.61111 0.63889 0.66667 0.69444 0.72222 0.75 0.77778 0.80556 0.83333 0.86111 0.88889 0.91667 0.94444 0.97222 1keyValue='0 0 8 1.389 0 7.878 2.736 0 7.518 4 0 6.928 5.142 0 6.128 6.128 0 5.142 6.928 0 4 7.518 0 2.736 7.878 0 1.389 8 0 0 7.878 0 -1.389 7.518 0 -2.736 6.928 0 -4 6.128 0 -5.142 5.142 0 -6.128 4 0 -6.928 2.736 0 -7.518 1.389 0 -7.878 0 0 -8 -1.389 0 -7.878 -2.736 0 -7.518 -4 0 -6.928 -5.142 0 -6.128 -6.128 0 -5.142 -6.928 0 -4 -7.518 0 -2.736 -7.878 0 -1.389 -8 0 -0 -7.878 0 1.389 -7.518 0 2.736 -6.928 0 4 -6.128 0 5.142 -5.142 0 6.128 -4 0 6.928 -2.736 0 7.518 -1.389 0 7.878 0 0 8'/>
<ROUTE fromNode='ClockfromField='fraction_changedtoNode='CircularPathPositionInterpolatortoField='set_fraction'/>
<ROUTE fromNode='CircularPathPositionInterpolatorfromField='value_changedtoNode='OrbitingViewtoField='position'/>
<!-- ROUTE information for CenterFacingOrientationInterpolator node:  [from Clock.fraction_changed to set_fraction ] [from value_changed to OrbitingView.orientation ] -->
<OrientationInterpolator DEF='CenterFacingOrientationInterpolatorkey='0 0.3333 0.6667 1keyValue='0 1 0 0 0 1 0 2.094395 0 1 0 4.18879 0 1 0 0'/>
<ROUTE fromNode='ClockfromField='fraction_changedtoNode='CenterFacingOrientationInterpolatortoField='set_fraction'/>
<ROUTE fromNode='CenterFacingOrientationInterpolatorfromField='value_changedtoNode='OrbitingViewtoField='orientation'/>
<!-- Additional Viewpoints -->
<Viewpoint description='Front vieworientation='0 1 0 1.57position='8 0 0'/>
<Viewpoint description='Back vieworientation='0 1 0 -1.57position='-8 0 0'/>
<Viewpoint description='Left viewposition='0 0 8'/>
<Viewpoint description='Right vieworientation='0 1 0 3.1416position='0 0 -8'/>
<Viewpoint description='Top vieworientation='1 0 0 -1.57position='0 8 0'/>
<Viewpoint description='Bottom vieworientation='1 0 0 1.57position='0 -8 0'/>
</Scene>
</X3D>
<!--

Index for DEF nodes : BoxSwitcher, CenterFacingOrientationInterpolator, CircularPathPositionInterpolator, Clock, OrbitingView, Sequencer, UnitBox

Index for Viewpoint images : Viewpoint_1, Viewpoint_2, Viewpoint_3, Viewpoint_4, Viewpoint_5, Viewpoint_6, OrbitingView
-->

<!-- Color key: <X3dNode DEF='idName' field='value'/> matches <XmlElement DEF='idName' attribute='value'/>
(Light blue background: behavior node) (Grey background: inserted documentation) (Magenta background: X3D Extensibility)
-->

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