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 300
     pixelHeight 300
    }
   }
  }
 ]
}

OrderedGroup {
 children [
  Background2D {
   backColor 1 1 1
  }
  WorldInfo {
   info [
    "This test shows how to modify the color components on a graphical object using the ColorTransform node."
    "A group made of a circle and a rectangle is reused under a ColorTransform node which sets the color components to 0 and the alpha component is animated from 0 to 1" 
    "" 
    "GPAC Regression Tests" "$Date: 2007-07-27 09:46:07 $ - $Revision: 1.3 $" 
    "(C) 2002-2006 GPAC Team"
   ]
   title "ColorTranform and color changes"
  }
  DEF TR Transform2D {
   children [
    Shape {
     appearance Appearance {
      material Material2D {
       emissiveColor 0 1 1
       filled TRUE
      }
     }
     geometry Rectangle {
      size 200 50
     }
    }
    Shape {
     appearance Appearance {
      material Material2D {
       emissiveColor 1 0 1
       filled TRUE
      }
     }
     geometry Circle {
      radius 50
     }
    }
   ]
  }
  DEF CT ColorTransform {
   mrr 0
   mgg 0
   mbb 0
   maa 0
   ta 1
   children [
    DEF MX TransformMatrix2D {
     mxx 0.5
     mxy 0.5
     myy 0.5
     ty -100
     children [
      USE TR
     ]
    }
   ]
  }
  DEF TS TimeSensor {
   cycleInterval 2
   loop TRUE
  }
  DEF CI PositionInterpolator2D {
   key [0 0.5 1]
   keyValue [0 0 100 100 0 0]
  }
  DEF SI ScalarInterpolator {
   key [0 0.5 1]
   keyValue [0 1 0]
  }
 ]
}

ROUTE TS.fraction_changed TO CI.set_fraction
ROUTE CI.value_changed TO TR.translation
ROUTE TS.fraction_changed TO SI.set_fraction
ROUTE SI.value_changed TO CT.mrb

