<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE X3D PUBLIC "ISO//Web3D//DTD X3D 3.0//EN" "https://www.web3d.org/specifications/x3d-3.0.dtd">
<X3D profile='Immersive' version='3.0' xmlns:xsd='http://www.w3.org/2001/XMLSchema-instance' xsd:noNamespaceSchemaLocation='https://www.web3d.org/specifications/x3d-3.0.xsd'>
  <head>
    <meta content='AnimatedViewpointRecorderExample.x3d' name='title'/>
    <meta content='Example authoring use of AnimatedViewpointRecorder prototype. Each tour recording output goes to the console, where it must be cut/pasted for further use. See AnimatedViewpointRecorderSample for sample output.' name='description'/>
    <meta content='Don Brutzman, Ken Curtin, Duane Davis, Christos Kalogrias' name='creator'/>
    <meta content='9 November 2003' name='created'/>
    <meta content='28 November 2019' name='modified'/>
    <meta content='AnimatedViewpointRecorderPrototype.x3d' name='reference'/>
    <meta content='AnimatedViewpointRecorderSample.x3d' name='reference'/>
    <meta content='recording animated viewpoint tour' name='subject'/>
    <meta content='https://www.web3d.org/x3d/content/examples/Savage/Tools/Authoring/AnimatedViewpointRecorderExample.x3d' name='identifier'/>
    <meta content='X3D-Edit 3.2, https://www.web3d.org/x3d/tools/X3D-Edit' name='generator'/>
    <meta content='../../license.html' name='license'/>
  </head>
  <Scene>
    <WorldInfo title='AnimatedViewpointRecorderExample.x3d'/>
    <ExternProtoDeclare appinfo='AnimatedViewpointRecorder captures view position and orientation tour to create a guided tour animation. The recording output goes to the browser console where the .x3d (or .x3dv) output can be cut/pasted for further use.' name='AnimatedViewpointRecorder' url='"AnimatedViewpointRecorderPrototype.x3d#AnimatedViewpointRecorder" "https://www.web3d.org/x3d/content/examples/Savage/Tools/Authoring/AnimatedViewpointRecorderPrototype.x3d#AnimatedViewpointRecorder" "AnimatedViewpointRecorderPrototype.wrl#AnimatedViewpointRecorder" "https://www.web3d.org/x3d/content/examples/Savage/Tools/Authoring/AnimatedViewpointRecorderPrototype.wrl#AnimatedViewpointRecorder"'>
      <field accessType='inputOnly' appinfo='Set start=true to commence recording viewpoint position/orientation.' name='start' type='SFBool'/>
      <field accessType='inputOnly' appinfo='Set stop=true to finish recording viewpoint position/orientation. Resulting VRML is added to scene resulting X3D and VRML is output to console.' name='stop' type='SFBool'/>
      <field accessType='initializeOnly' appinfo='default 0.1 seconds' name='samplingInterval' type='SFTime'/>
      <field accessType='initializeOnly' appinfo='whether to output .x3d syntax on browser console' name='outputX3D' type='SFBool'/>
      <field accessType='initializeOnly' appinfo='whether to output .x3d syntax on browser console' name='outputClassicVRML' type='SFBool'/>
      <field accessType='initializeOnly' appinfo='TODO not yet implemented' name='filterDeadTime' type='SFBool'/>
    </ExternProtoDeclare>
    <Viewpoint description='Entry view: start/stop recording'/>
    <Inline DEF='HelloWorld' url='"../../../HelloWorld.x3d" "https://www.web3d.org/x3d/content/examples/Basic/HelloWorld.x3d" "../../../HelloWorld.wrl" "https://www.web3d.org/x3d/content/examples/Basic/HelloWorld.wrl"'/>
    <ProtoInstance DEF='AnimatedViewpointRecorderTest' name='AnimatedViewpointRecorder'/>
    <Group DEF='RecordingControls'>
      <Transform translation='-3 0 0'>
        <Shape>
          <Text string='"Touch text to start" "recording new" "view animation"'>
            <FontStyle DEF='CenterJustify' justify='"MIDDLE" "MIDDLE"' size='0.5'/>
          </Text>
          <Appearance>
            <Material diffuseColor='0.2 0.8 0.2' transparency='0.5'/>
          </Appearance>
        </Shape>
        <Shape DEF='TransparentBox'>
          <Box size='3 1.75 0.01'/>
          <Appearance>
            <Material transparency='1'/>
          </Appearance>
        </Shape>
        <TouchSensor DEF='StartTouch' description='touch to start recording'/>
        <ROUTE fromField='isActive' fromNode='StartTouch' toField='start' toNode='AnimatedViewpointRecorderTest'/>
      </Transform>
      <Transform translation='3 0 0'>
        <Shape>
          <Text string='"Touch to stop" "recording new" "view animation"'>
            <FontStyle USE='CenterJustify'/>
          </Text>
          <Appearance>
            <Material diffuseColor='0.8 0.2 0.2' transparency='0.5'/>
          </Appearance>
        </Shape>
        <Shape USE='TransparentBox'/>
        <TouchSensor DEF='StopTouch' description='touch to stop recording'/>
        <ROUTE fromField='isActive' fromNode='StopTouch' toField='stop' toNode='AnimatedViewpointRecorderTest'/>
      </Transform>
    </Group>
  </Scene>
</X3D>