InitialObjectDescriptor { objectDescriptorID 1 audioProfileLevelIndication 255 visualProfileLevelIndication 254 sceneProfileLevelIndication 1 graphicsProfileLevelIndication 1 ODProfileLevelIndication 1 esDescr [ ES_Descriptor { ES_ID 1 decConfigDescr DecoderConfigDescriptor { streamType 3 decSpecificInfo BIFSConfig { isCommandStream true pixelMetric true pixelWidth 600 pixelHeight 400 } } } ] } PROTO GEOMETRY_PROTO [ exposedField SFVec2f translation 0 0 exposedField SFVec2f scale 1 1 exposedField SFFloat rotation 0 exposedField SFColor Color 1 1 1 exposedField SFBool filled TRUE exposedField SFFloat transparency 0 exposedField SFColor lineColor 0 0 0 exposedField SFFloat lineWidth 0 exposedField SFNode obj NULL ] { Transform2D { rotationAngle IS rotation scale IS scale translation IS translation children [ DEF S Shape { geometry IS obj appearance Appearance { material DEF M Material2D { emissiveColor IS Color filled IS filled transparency IS transparency lineProps LineProperties { lineColor IS lineColor width IS lineWidth } } } } DEF TOUCH TouchSensor {} ] } DEF TS TimeSensor { loop TRUE } DEF C Conditional { buffer { DELETE ROUTE RTS } } DEF RC Conditional { buffer { INSERT ROUTE DEF RTS TS.fraction_changed TO M.transparency } } DEF RTS ROUTE TS.fraction_changed TO M.transparency ROUTE TOUCH.isActive TO C.activate ROUTE TOUCH.isActive TO RC.reverseActivate } OrderedGroup { children [ Background2D { backColor 1 1 1 } WorldInfo { info ["This shows usage of ROUTES inside a proto" "with deletion/insertion through conditionals" "" "GPAC Regression Tests" "(C) 2002-2004 GPAC Team"] title "Simple proto Test" } GEOMETRY_PROTO { translation 200 0 scale 1 1.5 rotation 0.78 Color 1 0 1 transparency 0.75 lineColor 1 0 0 lineWidth 2 obj DEF C Circle { radius 75 } } Transform2D { translation -300 0 children [ GEOMETRY_PROTO { translation 200 0 scale 1 1.5 rotation 0.78 Color 0 0 1 obj USE C } ] } ] }