<?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=' LoadSensorExample.x3d '/>
<meta name='descriptioncontent='Simple test of LoadSensor node'/>
<meta name='creatorcontent='Don Brutzman'/>
<meta name='createdcontent='17 July 2008'/>
<meta name='modifiedcontent='14 June 2020'/>
<meta name='rightscontent='Copyright Don Brutzman and Leonard Daly 2008'/>
<meta name='subjectcontent='X3D LoadSensor example'/>
<meta name='identifiercontent=' https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter12EnvironmentSensorSound/LoadSensorExample.x3d '/>
<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: HelloWorld, InlineLoadSensor, PivotTextSigns, SignRotationClock, SignRotationInterpolator, TraceScript, ViewAll

Index for Viewpoint node: ViewAll
-->
<Scene>
<WorldInfo title='LoadSensor.x3d'/>
<Viewpoint DEF='ViewAlldescription='LoadSensor testposition='0 0 12'/>
<Inline DEF='HelloWorld'
  url=' "../HelloWorld.x3d" "https://www.web3d.org/x3d/content/examples/HelloWorld.x3d" ' />

<Inline USE=' HelloWorldcontainerField='watchList'/>
</LoadSensor>
<!-- ROUTE information for PivotTextSigns node:  [from SignRotationInterpolator.value_changed to set_rotation ] -->
<Transform DEF='PivotTextSignstranslation='0 3 0'>
<!-- First sign indicates waiting... -->
<Shape>
<Text length='0string='"LoadSensor waiting for HelloWorld scene..."'>
<FontStyle justify='"MIDDLE" "MIDDLE"size='0.7style='ITALIC'/>
</Text>
<Appearance>
<Material emissiveColor='0.878431 0.262745 0'/>
</Appearance>
</Shape>
<!-- Second sign indicates completed, initially rotated 90 degrees out of view -->
<Transform rotation='0 1 0 1.57'>
<Shape>
<Text length='0string='"LoadSensor reports HelloWorld scene loading complete."'>
<FontStyle justify='"MIDDLE" "MIDDLE"size='0.7style='ITALIC'/>
</Text>
<Appearance>
<Material emissiveColor='0 0.278431 0.027451'/>
</Appearance>
</Shape>
</Transform>
</Transform>
<!-- ROUTE information for SignRotationInterpolator node:  [from SignRotationClock.fraction_changed to set_fraction ] [from value_changed to PivotTextSigns.set_rotation ] -->
<OrientationInterpolator DEF='SignRotationInterpolatorkey='0 1keyValue='0 1 0 0 0 1 0 -1.57'/>

<!-- ROUTE information for SignRotationClock node:  [from InlineLoadSensor.loadTime to set_startTime ] [from fraction_changed to SignRotationInterpolator.set_fraction ] -->
<TimeSensor DEF='SignRotationClockcycleInterval='0.8'/>

< ROUTE  fromNode=' InlineLoadSensor' fromField='loadTime' toNode=' SignRotationClock' toField='set_startTime'/>
< ROUTE  fromNode=' SignRotationClock' fromField='fraction_changed' toNode=' SignRotationInterpolator' toField='set_fraction'/>
< ROUTE  fromNode=' SignRotationInterpolator' fromField='value_changed' toNode=' PivotTextSigns' toField='set_rotation'/>
<!-- ROUTE information for TraceScript node:  [from InlineLoadSensor.isLoaded to eventLoaded ] [from InlineLoadSensor.loadTime to loadTimeEvent ] -->
<Script DEF='TraceScript'>
<field name='eventLoadedtype='SFBoolaccessType='inputOnly'/>
<field name='loadTimeEventtype='SFTimeaccessType='inputOnly'/>
<![CDATA[
      
ecmascript:
function eventLoaded (value)
{
	Browser.println ('InlineLoadSensor isLoaded=' + value);
}
function loadTimeEvent (value)
{
	Browser.println ('InlineLoadSensor loadTime=' + value);
}

    
]]>
</Script>
< ROUTE  fromNode=' InlineLoadSensor' fromField='isLoaded' toNode=' TraceScript' toField='eventLoaded'/>
< ROUTE  fromNode=' InlineLoadSensor' fromField='loadTime' toNode=' TraceScript' toField='loadTimeEvent'/>
</Scene>
</X3D>
<!--

to top <!-- Event Graph ROUTE Table shows event connections -->
 
<!-- Index for DEF nodes: HelloWorld, InlineLoadSensor, PivotTextSigns, SignRotationClock, SignRotationInterpolator, TraceScript, ViewAll

Index for Viewpoint node: ViewAll
-->

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.

InlineLoadSensor
LoadSensor
loadTime
SFTime

ROUTE
event to
(1)
SignRotationClock
TimeSensor
set_startTime
SFTime

 
 
then
SignRotationClock
TimeSensor
fraction_changed
SFFloat

ROUTE
event to
(2)
SignRotationInterpolator
OrientationInterpolator
set_fraction
SFFloat

 
 
then
SignRotationInterpolator
OrientationInterpolator
value_changed
SFRotation

ROUTE
event to
(3)
PivotTextSigns
Transform
set_rotation
SFRotation
InlineLoadSensor
LoadSensor
isLoaded
SFBool

ROUTE
event to
(1)
TraceScript
Script
eventLoaded
SFBool
InlineLoadSensor
LoadSensor
loadTime
SFTime

ROUTE
event to
(1)
TraceScript
Script
loadTimeEvent
SFTime


-->

<!-- Online at
https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter12EnvironmentSensorSound/LoadSensorExampleIndex.html -->
<!-- Version control at
https://sourceforge.net/p/x3d/code/HEAD/tree/www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter12EnvironmentSensorSound/LoadSensorExample.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. -->