<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE X3D PUBLIC "ISO//Web3D//DTD X3D 3.2//EN" "https://www.web3d.org/specifications/x3d-3.2.dtd">
<X3D profile='Immersive'  version='3.2 xmlns:xsd='http://www.w3.org/2001/XMLSchema-instance' xsd:noNamespaceSchemaLocation =' https://www.web3d.org/specifications/x3d-3.2.xsd ' >
<head>
<meta name='titlecontent=' TestSliders.x3d '/>
<meta name='descriptioncontent='X3D Follower example'/>
<meta name='creatorcontent='Herbert Stocker'/>
<meta name='translatorcontent='Don Brutzman'/>
<meta name='createdcontent='18 April 2006'/>
<meta name='translatedcontent='2 December 2011'/>
<meta name='modifiedcontent='20 October 2019'/>
<meta name='referencecontent='originals/test_Sliders.wrl'/>
<meta name='referencecontent=' Stocker_06_Followers.pdf '/>
<meta name='referencecontent=' http://www.hersto.com/Publications/Followers '/>
<meta name='requirescontent='X3D version 3.2 or greater'/>
<meta name='subjectcontent='X3D Follower Chaser Damper'/>
<meta name=' warning content=' under development '/>
<meta name='referencecontent=' https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html '/>
<meta name='identifiercontent=' https://www.web3d.org/x3d/content/examples/Basic/Followers/TestSliders.x3d '/>
<meta name='generatorcontent=' Vrml97ToX3dNist, http://ovrt.nist.gov/v2_x3d.html '/>
<meta name='generatorcontent='X3D-Edit 3.3, https://savage.nps.edu/X3D-Edit'/>
<meta name='licensecontent=' ../../license.html'/>
</head>
<!--

to top <!-- Event Graph ROUTE Table shows event connections -->
 
<!-- Index for DEF nodes: App, SldX, SldY, SldZ, SmoothWorker, TchBox, Trans, Worker

Index for Viewpoint nodes: Viewpoint_1, Viewpoint_2, Viewpoint_3, Viewpoint_4, Viewpoint_5, Viewpoint_6 Index for ExternProtoDeclare definition: Slider
-->
<Scene>
<WorldInfo title='TestSliders.x3d'/>
<ExternProtoDeclare name='Slider'
  url=' "Slider.x3d#Slider" "https://www.web3d.org/x3d/content/examples/Basic/Followers/Slider.x3d#Slider" "Slider.wrl#Slider" "https://www.web3d.org/x3d/content/examples/Basic/Followers/Slider.wrl#Slider" ' >
<field name='initial_positiontype='SFFloataccessType='initializeOnly'/>
<field name='radiusKnobtype='SFFloataccessType='inputOutput'/>
<field name='radiusSticktype='SFFloataccessType='inputOutput'/>
<field name='mintype='SFFloataccessType='inputOutput'/>
<field name='position_changedtype='SFFloataccessType='outputOnly'/>
<field name='appearancetype='SFNodeaccessType='inputOutput'/>
<field name='smoothMovementstype='SFBoolaccessType='inputOutput'/>
<field name='set_positiontype='SFFloataccessType='inputOnly'/>
<field name='pageSizetype='SFFloataccessType='inputOutput'/>
<field name='maxtype='SFFloataccessType='inputOutput'/>
<field name='heighttype='SFFloataccessType='inputOutput'/>
</ExternProtoDeclare>
<NavigationInfo type='"EXAMINE"'/>
<Viewpoint description='view 1orientation='-0.527 0.846 0.075 0.462position='2.741 3.259 6.6'/>
<Viewpoint description='view 2orientation='0.973 0.232 0.024 0.466position='0.865 -1.591 6.723'/>
<Viewpoint description='view 3orientation='0.997 0.06 0.05 1.705position='0.934 -5.744 -0.794'/>
<Viewpoint description='view 4orientation='0.888 0.23 0.399 3.139position='5.165 3.009 -4.663'/>
<Viewpoint description='view 5orientation='0.116 0.234 -0.965 1.866position='0.424 -2.489 8.627'/>
<Viewpoint description='view 6orientation='-0.3 0.639 -0.708 1.922position='6.309 -1.261 2.853'/>
<Transform>
<Transform rotation='0.983 0.152 0.098 0.286'>
<Transform rotation='0.705 0.654 -0.274 -1.09'>
<Transform rotation='0.0 0.0 -1.0 1.5708translation='2.5 0.0 0.0'>
<!-- ROUTE information for SldX node:  [from position_changed to Worker.set_X ] -->
<ProtoInstance name='SliderDEF='SldX'>
<fieldValue name='initial_positionvalue='2.5'/>
<fieldValue name='radiusKnobvalue='0.225'/>
<fieldValue name='minvalue='1.0'/>
<fieldValue name='radiusStickvalue='0.15'/>
<fieldValue name='appearance'>
<Appearance DEF='App'>
<Material ambientIntensity='0.055diffuseColor='0.75 0.0 0.55emissiveColor='0.1 0.0 0.07shininess='0.157specularColor='0.67 0.67 0.67'/>
</Appearance>
</fieldValue>
<fieldValue name='pageSizevalue='1.0'/>
<fieldValue name='maxvalue='5.0'/>
</ProtoInstance>
<Transform translation='0.0 -1.25 0.0'>
<Shape>
<Appearance USE=' App'/>
<Cylinder height='2.5radius='0.02'/>
</Shape>
</Transform>
</Transform>
<Transform translation='0.0 2.5 0.0'>
<!-- ROUTE information for SldY node:  [from position_changed to Worker.set_Y ] -->
<ProtoInstance name='SliderDEF='SldY'>
<fieldValue name='initial_positionvalue='2.5'/>
<fieldValue name='radiusKnobvalue='0.225'/>
<fieldValue name='minvalue='1.0'/>
<fieldValue name='radiusStickvalue='0.15'/>
<fieldValue name='appearance'>
<Appearance USE=' App'/>
</fieldValue>
<fieldValue name='pageSizevalue='1.0'/>
<fieldValue name='maxvalue='5.0'/>
</ProtoInstance>
<Transform translation='0.0 -1.25 0.0'>
<Shape>
<Appearance USE=' App'/>
<Cylinder height='2.5radius='0.02'/>
</Shape>
</Transform>
</Transform>
<Transform rotation='1.0 0.0 0.0 1.5708translation='0.0 0.0 2.5'>
<!-- ROUTE information for SldZ node:  [from position_changed to Worker.set_Z ] -->
<ProtoInstance name='SliderDEF='SldZ'>
<fieldValue name='initial_positionvalue='2.5'/>
<fieldValue name='radiusKnobvalue='0.225'/>
<fieldValue name='minvalue='1.0'/>
<fieldValue name='radiusStickvalue='0.15'/>
<fieldValue name='appearance'>
<Appearance USE=' App'/>
</fieldValue>
<fieldValue name='pageSizevalue='1.0'/>
<fieldValue name='maxvalue='5.0'/>
</ProtoInstance>
<Transform translation='0.0 -1.25 0.0'>
<Shape>
<Appearance USE=' App'/>
<Cylinder height='2.5radius='0.02'/>
</Shape>
</Transform>
</Transform>
</Transform>
</Transform>
</Transform>
<Transform rotation='0.983 0.152 0.098 0.286'>
<Transform rotation='0.705 0.654 -0.274 -1.09'>
<!-- ROUTE information for Trans node:  [from Worker.Pos_changed to scale ] -->
<Transform DEF='Trans'>
<!-- ROUTE information for TchBox node:  [from touchTime to SmoothWorker.Box_touched ] -->
<TouchSensor DEF='TchBoxdescription='touch to activate'/>

<Shape>
<Appearance>
<Material ambientIntensity='0.0933diffuseColor='0.37 0.0 0.75emissiveColor='0.05 0.0 0.1shininess='0.41specularColor='0.91 0.91 0.91'/>
</Appearance>
<Box size='0.3 0.3 0.3'/>
</Shape>
</Transform>
</Transform>
</Transform>
<field name='set_Ztype='SFFloataccessType='inputOnly'/>
<field name='set_Ytype='SFFloataccessType='inputOnly'/>
<field name='set_Xtype='SFFloataccessType='inputOnly'/>
<field name='Postype='SFVec3fvalue='1.0 1.0 1.0accessType='initializeOnly'/>
<field name='Pos_changedtype='SFVec3faccessType='outputOnly'/>
<![CDATA[
      
ecmascript:

function set_X(x) { Pos.x= x; }
function set_Y(y) { Pos.y= y; }
function set_Z(z) { Pos.z= z; }

function eventsProcessed()
{
    Pos_changed= Pos;
}

    
]]>
</Script>
< ROUTE  fromNode=' SldX' fromField='position_changed' toNode=' Worker' toField='set_X'/>
< ROUTE  fromNode=' SldY' fromField='position_changed' toNode=' Worker' toField='set_Y'/>
< ROUTE  fromNode=' SldZ' fromField='position_changed' toNode=' Worker' toField='set_Z'/>
< ROUTE  fromNode=' Worker' fromField='Pos_changed' toNode=' Trans' toField='scale'/>
<!-- ROUTE information for SmoothWorker node:  [from TchBox.touchTime to Box_touched ] -->
<Script DEF='SmoothWorker'>
<field name='SmoothMovementstype='SFBoolaccessType='outputOnly'/>
<field name='Box_touchedtype='SFTimeaccessType='inputOnly'/>
<![CDATA[
      
ecmascript:

function initialize()
{
    SmoothMovements= true;
}

function Box_touched(now)
{
    SmoothMovements= !SmoothMovements;
}

    
]]>
</Script>
< ROUTE  fromNode=' TchBox' fromField='touchTime' toNode=' SmoothWorker' toField='Box_touched'/>
</Scene>
</X3D>
<!--

to top <!-- Event Graph ROUTE Table shows event connections -->
 
<!-- Index for DEF nodes: App, SldX, SldY, SldZ, SmoothWorker, TchBox, Trans, Worker

Index for Viewpoint nodes: Viewpoint_1, Viewpoint_2, Viewpoint_3, Viewpoint_4, Viewpoint_5, Viewpoint_6 Index for ExternProtoDeclare definition: Slider
-->

Event Graph ROUTE Table entries with 5 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.

TchBox
TouchSensor
touchTime
SFTime

ROUTE
event to
(1)
SmoothWorker
Script
Box_touched
SFTime


      SmoothWorker
Script
No ROUTE connection found for output from this node.
 


SldX
ProtoInstance
position_changed
SFFloat

ROUTE
event to
(1)
Worker
Script
set_X
SFFloat

 
 
then
Worker
Script
Pos_changed
SFVec3f

ROUTE
event to
(2)
Trans
Transform
scale
SFVec3f


SldY
ProtoInstance
position_changed
SFFloat

ROUTE
event to
(1)
Worker
Script
set_Y
SFFloat

 
 
then
Worker
Script
Pos_changed
SFVec3f

ROUTE
event to
(2)
Trans
Transform
scale
SFVec3f


SldZ
ProtoInstance
position_changed
SFFloat

ROUTE
event to
(1)
Worker
Script
set_Z
SFFloat

 
 
then
Worker
Script
Pos_changed
SFVec3f

ROUTE
event to
(2)
Trans
Transform
scale
SFVec3f


-->

<!-- Online at
https://www.web3d.org/x3d/content/examples/Basic/Followers/TestSlidersIndex.html -->
<!-- Version control at
https://sourceforge.net/p/x3d/code/HEAD/tree/www.web3d.org/x3d/content/examples/Basic/Followers/TestSliders.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)
    <ProtoInstance name='ProtoName'> <field name='fieldName'/> </ProtoInstance> -->

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