X3D Model Documentation: AnimatedViewpointRecorderExample.x3d

  1  <?xml version="1.0" encoding="UTF-8"?>
  2 
<!DOCTYPE X3D PUBLIC "ISO//Web3D//DTD X3D 3.0//EN" "https://www.web3d.org/specifications/x3d-3.0.dtd">
  3  <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'>
  4       <head>
  5            <meta name='titlecontent=' AnimatedViewpointRecorderExample.x3d '/>
  6            <meta name='descriptioncontent='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.'/>
  7            <meta name='creatorcontent='Don Brutzman, Ken Curtin, Duane Davis, Christos Kalogrias'/>
  8            <meta name='createdcontent='9 November 2003'/>
  9            <meta name='modifiedcontent='28 November 2019'/>
 10            <meta name='referencecontent=' AnimatedViewpointRecorderPrototype.x3d '/>
 11            <meta name='referencecontent=' AnimatedViewpointRecorderSample.x3d '/>
 12            <meta name='subjectcontent='recording animated viewpoint tour'/>
 13            <meta name='identifiercontent=' https://www.web3d.org/x3d/content/examples/Savage/Tools/Authoring/AnimatedViewpointRecorderExample.x3d '/>
 14            <meta name='generatorcontent='X3D-Edit 3.2, https://www.web3d.org/x3d/tools/X3D-Edit'/>
 15            <meta name='licensecontent='../../license.html'/>
 16       </head>
<!--

<!--
Event Graph ROUTE Table shows event connections.
-->
<!-- to top DEF nodes index: AnimatedViewpointRecorderTest, CenterJustify, HelloWorld, RecordingControls, StartTouch, StopTouch, TransparentBox

Index for Viewpoint node: Viewpoint_1

Index for ExternProtoDeclare definition: AnimatedViewpointRecorder
-->
 17       <Scene>
 18            <WorldInfo title='AnimatedViewpointRecorderExample.x3d'/>
 19            <ExternProtoDeclare name='AnimatedViewpointRecorderappinfo='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.'   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" '>
 20                 <field name='starttype='SFBoolaccessType='inputOnly'
                appinfo='Set start=true to commence recording viewpoint position/orientation.'/>
 21                 <field name='stoptype='SFBoolaccessType='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.'/>
 22                 <field name='samplingIntervaltype='SFTimeaccessType='initializeOnly'
                appinfo='default 0.1 seconds'/>
 23                 <field name='outputX3Dtype='SFBoolaccessType='initializeOnly'
                appinfo='whether to output .x3d syntax on browser console'/>
 24                 <field name='outputClassicVRMLtype='SFBoolaccessType='initializeOnly'
                appinfo='whether to output .x3d syntax on browser console'/>
 25                 <field name='filterDeadTimetype='SFBoolaccessType='initializeOnly'
                appinfo='TODO not yet implemented'/>
 26            </ExternProtoDeclare>
 27            <Viewpoint description='Entry view: start/stop recording'/>
 28            <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" '/>
 29 
          <!-- ROUTE information for AnimatedViewpointRecorderTest node:  [from StartTouch.isActive to start ] [from StopTouch.isActive to stop ] -->
          <ProtoInstance name='AnimatedViewpointRecorderDEF='AnimatedViewpointRecorderTest'/>
 30            <Group DEF='RecordingControls'>
 31                 <Transform translation='-3 0 0'>
 32                      <Shape>
 33                           <Text string='"Touch text to start" "recording new" "view animation"'>
 34 
                              <!-- FontStyle CenterJustify is a DEF node that has 1 USE node: USE_1 -->
                              <FontStyle DEF='CenterJustifyjustify='"MIDDLE" "MIDDLE"size='0.5'/>
 35                           </Text>
 36                           <Appearance>
 37                                <Material diffuseColor='0.2 0.8 0.2transparency='0.5'/>
 38                           </Appearance>
 39                      </Shape>
 40 
                    <!-- Shape TransparentBox is a DEF node that has 1 USE node: USE_1 -->
                    <Shape DEF='TransparentBox'>
 41                           <Box size='3 1.75 0.01'/>
 42                           <Appearance>
 43                                <Material transparency='1'/>
 44                           </Appearance>
 45                      </Shape>
 46 
                    <!-- ROUTE information for StartTouch node:  [from isActive to AnimatedViewpointRecorderTest.start ] -->
                    <TouchSensor DEF='StartTouchdescription='touch to start recording'/>
 47                      < ROUTE  fromNode='StartTouch' fromField='isActive' toNode='AnimatedViewpointRecorderTest' toField='start'/>
 48                 </Transform>
 49                 <Transform translation='3 0 0'>
 50                      <Shape>
 51                           <Text string='"Touch to stop" "recording new" "view animation"'>
 52                                <FontStyle USE='CenterJustify'/>
 53                           </Text>
 54                           <Appearance>
 55                                <Material diffuseColor='0.8 0.2 0.2transparency='0.5'/>
 56                           </Appearance>
 57                      </Shape>
 58                      <Shape USE='TransparentBox'/>
 59 
                    <!-- ROUTE information for StopTouch node:  [from isActive to AnimatedViewpointRecorderTest.stop ] -->
                    <TouchSensor DEF='StopTouchdescription='touch to stop recording'/>
 60                      < ROUTE  fromNode='StopTouch' fromField='isActive' toNode='AnimatedViewpointRecorderTest' toField='stop'/>
 61                 </Transform>
 62            </Group>
 63       </Scene>
 64  </X3D>
<!--

<!--
Event Graph ROUTE Table shows event connections.
-->
<!-- to top DEF nodes index: AnimatedViewpointRecorderTest, CenterJustify, HelloWorld, RecordingControls, StartTouch, StopTouch, TransparentBox

Index for Viewpoint node: Viewpoint_1

Index for ExternProtoDeclare definition: AnimatedViewpointRecorder
-->
X3D Tooltips element index: Appearance, Box, ExternProtoDeclare, field, FontStyle, Group, head, Inline, Material, meta, ProtoInstance, ROUTE, Scene, Shape, Text, TouchSensor, Transform, Viewpoint, WorldInfo, X3D, plus documentation for accessType definitions, type definitions, XML data types, and field types

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

StartTouch
TouchSensor
isActive
SFBool

ROUTE
event to
(1)
AnimatedViewpointRecorderTest
ProtoInstance
start
SFBool

StopTouch
TouchSensor
isActive
SFBool

ROUTE
event to
(1)
AnimatedViewpointRecorderTest
ProtoInstance
stop
SFBool

      AnimatedViewpointRecorderTest
ProtoInstance
AnimatedViewpointRecorder
No direct ROUTE connection found for events to/from this node.
This ProtoInstance contains SFNode/MFNode fieldValue declarations with
direct access to other nodes, and thus has potential to produce run-time animation. 

Additional guidance on X3D animation can be found in the 10-Step Animation Design Process and Event Tracing hint sheets. Have fun with X3D! 😀

-->
<!-- Online at
https://www.web3d.org/x3d/content/examples/Savage/Tools/Authoring/AnimatedViewpointRecorderExampleIndex.html -->
<!-- Version control at
https://sourceforge.net/p/x3d/code/HEAD/tree/www.web3d.org/x3d/content/examples/Savage/Tools/Authoring/AnimatedViewpointRecorderExample.x3d -->

<!-- Color-coding legend: X3D terminology <X3dNode  DEF='idNamefield='value'/> matches XML terminology <XmlElement  DEF='idNameattribute='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. -->