<?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">
<![CDATA[
ecmascript: function value_changed (eventValue, timeStamp) { if (timeStamp - timeStampPreviousReport >= reportInterval) { Browser.println ('Trace_ROUTE_PositionInterpolator_PositionAnimator type=SFVec3f value_changed=' + eventValue.toString()); timeStampPreviousReport = timeStamp; } } function key (eventValue) { Browser.println ('Trace_ROUTE_PositionInterpolator_PositionAnimator type=MFFloat key=' + eventValue.toString()); } function keyValue (eventValue) { Browser.println ('Trace_ROUTE_PositionInterpolator_PositionAnimator type=MFVec3f keyValue=' + eventValue.toString()); }
]]>
<![CDATA[
ecmascript: function traceValue (eventValue, timeStamp) { // input eventValue received for trace field if (timeStamp - timeStampPreviousReport >= reportInterval) { Browser.println ('Trace_ROUTE_PositionAnimator_value_changed_TO_Pointer_translation type=SFVec3f value=' + eventValue.toString()); timeStampPreviousReport = timeStamp; } } function timeOfDay (someTime) { hh = Math.floor (someTime /(60*60)) % 24; mm = Math.floor (someTime / 60) % 60; ss = Math.floor (someTime) % 60; if (hh < 9) hour = '0' + hh; else hour = hh; if (mm < 9) minute = '0' + mm; else minute = mm; if (ss < 9) second = '0' + ss; else second = ss; return '(' + hour + ':' + minute + ':' + second + ' GMT)'; }
]]>
<![CDATA[
ecmascript: function traceValue (eventValue, timeStamp) { // input eventValue received for trace field if (timeStamp - timeStampPreviousReport >= reportInterval) { Browser.println ('Trace_ROUTE_AnimationClock_fraction_changed_TO_PositionAnimator_set_fraction type=SFFloat value=' + eventValue); timeStampPreviousReport = timeStamp; } } function timeOfDay (someTime) { hh = Math.floor (someTime /(60*60)) % 24; mm = Math.floor (someTime / 60) % 60; ss = Math.floor (someTime) % 60; if (hh < 9) hour = '0' + hh; else hour = hh; if (mm < 9) minute = '0' + mm; else minute = mm; if (ss < 9) second = '0' + ss; else second = ss; return '(' + hour + ':' + minute + ':' + second + ' GMT)'; }
]]>
Event Graph ROUTE Table entries with 9 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.
<!--
Online at
https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter07EventAnimationInterpolation/PositionOrientationInterpolatorsExampleTracedIndex.html
-->
<!--
Version control at
https://sourceforge.net/p/x3d/code/HEAD/tree/www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter07EventAnimationInterpolation/PositionOrientationInterpolatorsExampleTraced.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)
-->
<!-- For additional help information about X3D scenes, please see X3D Tooltips, X3D Resources, and X3D Scene Authoring Hints. -->