<?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:
// this input function receives the currently interpolated rotation angle value,
// and then computes the position and orientation of each of the cones.
function angle (value)
{
positionRed = new SFVec3f (Math.cos (value), 1.5 * Math.sin(value), 0.5);
positionGreen = new SFVec3f (Math.cos (value+2.094), 1.5 * Math.sin(value+2.094), 0);
positionTurquoise = new SFVec3f (Math.cos (value+4.189), 1.5 * Math.sin(value+4.189), -0.5);
// The values 2.094 and 4.189 are 1/3 and 2/3 of 2*pi radians.
orientationRed = new SFRotation (0, 0, 1, -2*value);
orientationGreen = new SFRotation (0, 0, 1, -2*(value+2.094));
orientationTurquoise = new SFRotation (0, 0, 1, -2*(value+4.189));
}
]]>
<!--
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. -->