﻿<?xml version="1.0" encoding="UTF-8"?>
<X3D profile="Immersive"  version="3.1">
  <Transform>
    <MetadataSet name='Template'>
      <MetadataString containerField='value' name='TemplateID' value='"RollTransitionTemplate"'/>
      <MetadataInteger containerField='value' name='TemplateKind' value='3'/>
      <MetadataString containerField='value' name='TimeDependentNode' value='""'/>
      <MetadataString containerField='value' name='TemplateTitle' value='"@"'/>
      <MetadataString containerField='value' name='TemplateCategory' value='"Reveals"'/>
      <MetadataString containerField='value' name='TemplateThumbnailPath' value='""'/>
      <MetadataInteger containerField='value' name='TemplateSubType' value='2'/>
      <MetadataInteger containerField='value' name='TemplateEffectKind' value='2'/>
      <MetadataInteger containerField='value' name='TransitionCompatibility' value='2'/>
    </MetadataSet>

    <!--OUT properties -->
    <Transform>
      <MetadataSet DEF='OutSockets'>
        <MetadataSet containerField='value' name='OutSocket'>
          <MetadataString containerField='value' name='socketName' value='"rotate"'/>
          <MetadataFloat containerField='value' name='socketCompatibilitySet' value='1.0'/>
          <MetadataString containerField='value' name='socketParentDEF' value='"RollInterpolator"'/>
          <MetadataString containerField='value' name='socketConnectAttribute' value='"value_changed"'/>
          <MetadataString containerField='value' name='socketConnectToExtent' value='"previous"'/>
        </MetadataSet>
        <MetadataSet containerField='value' name='OutSocket'>
          <MetadataString containerField='value' name='socketName' value='"centerOfRotation"'/>
          <MetadataFloat containerField='value' name='socketCompatibilitySet' value='1.0'/>
          <MetadataString containerField='value' name='socketParentDEF' value='"RollCenterInterpolator"'/>
          <MetadataString containerField='value' name='socketConnectAttribute' value='"value_changed"'/>
          <MetadataString containerField='value' name='socketConnectToExtent' value='"previous"'/>
        </MetadataSet>
      </MetadataSet>
    </Transform>

    <!--IN properties -->
    <Transform>
      <MetadataSet DEF='InSockets'>
        <MetadataSet containerField='value' name='InSocket'>
          <MetadataString containerField='value' name='socketName' value='"transitionTimer"'/>
          <MetadataFloat containerField='value' name='socketCompatibilitySet' value='1.0'/>
          <MetadataString containerField='value' name='socketParentDEF' value='"RollInterpolator"'/>
          <MetadataString containerField='value' name='socketConnectAttribute' value='"set_fraction"'/>
        </MetadataSet>
        <MetadataSet containerField='value' name='InSocket'>
          <MetadataString containerField='value' name='socketName' value='"projectAspectRatio"'/>
          <MetadataFloat containerField='value' name='socketCompatibilitySet' value='1.0'/>
          <MetadataString containerField='value' name='socketParentDEF' value='"RollCenterInterpolator"'/>
          <MetadataString containerField='value' name='socketConnectAttribute' value='"set_fraction"'/>
        </MetadataSet>
      </MetadataSet>
    </Transform>

    <!--Nodes that need to be injected-->
    <Transform DEF='InjectSet'>
      <OrientationInterpolator DEF='RollInterpolator' key='0 1' keyValue='0 0 -1 0, 0 0 -1 1.5707963267948966192313216916398'/>
      
      <!--Aspect ratio calculation: the lower right corner will always be 3 units down from the center,
      so just adjust the X value based on the aspect ratio (if it's 1, we want 3 -3 0)-->
      <PositionInterpolator DEF='RollCenterInterpolator' key='0 10' keyValue='0 -3 0, 30 -3 0'/>
    </Transform>

    <!--X3d containing Out Node's -THIS WILL NOT BE INJECTED INTO THE SCENE-->

  </Transform>
</X3D>
