InitialObjectDescriptor {
 objectDescriptorID 1
 audioProfileLevelIndication 1
 visualProfileLevelIndication 1
 sceneProfileLevelIndication 1
 graphicsProfileLevelIndication 1
 ODProfileLevelIndication 1
 esDescr [
  ES_Descriptor {
   ES_ID 2
   decConfigDescr DecoderConfigDescriptor {
    streamType 3
    decSpecificInfo BIFSConfig {
     isCommandStream true
     pixelMetric true
     pixelWidth 600
     pixelHeight 200
    }
   }
  }
 ]
}

OrderedGroup {
 children [
  Background2D {
   backColor 1 1 1
  }
  WorldInfo {
   info [
    "This test shows the usage of scalable flag in the XLineProperties node" 
    "We see that the right line's width changes during the animation while the left one does not change." 
    "" 
    "GPAC Regression Tests" "$Date: 2007-07-27 09:46:07 $ - $Revision: 1.3 $" 
    "(C) 2002-2004 GPAC Team"
    ]
    title "Scalability of the outline - the XLineProperties node"
  }
  DEF TR1 Transform2D {
   scale 2 2
   translation -150 -50
   children [
    Shape {
     appearance Appearance {
      material Material2D {
       lineProps LineProperties {
        lineColor 0 0 1
        width 2
       }
      }
     }
     geometry DEF LS IndexedLineSet2D {
      coord Coordinate2D {
       point [-50 0 0 50 50 0]
      }
     }
    }
   ]
  }
  Transform2D {
   translation -150 -50
   children [
    Shape {
     appearance DEF TEXTAPP Appearance {
      material Material2D {
       emissiveColor 0 0 0
       filled TRUE
      }
     }
     geometry Text {
      string ["Not scalable"]
      fontStyle DEF FS FontStyle {
       justify ["MIDDLE" "MIDDLE"]
       size 16
      }
     }
    }
   ]
  }
  DEF TR2 Transform2D {
   scale 2 2
   translation 150 -50
   children [
    Shape {
     appearance Appearance {
      material Material2D {
       lineProps XLineProperties {
        lineColor 0 0 1
        width 2
       }
      }
     }
     geometry USE LS
    }
   ]
  }
  Transform2D {
   translation 150 -50
   children [
    Shape {
     appearance USE TEXTAPP
     geometry Text {
      string ["Scalable"]
      fontStyle USE FS
     }
    }
   ]
  }
  DEF TS TimeSensor {
   cycleInterval 4
   loop TRUE
  }
  DEF PI PositionInterpolator2D {
   key [0 0.5 1]
   keyValue [1 1 3 3 1 1]
  }
 ]
}

ROUTE TS.fraction_changed TO PI.set_fraction
ROUTE PI.value_changed TO TR1.scale
ROUTE PI.value_changed TO TR2.scale

