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 400 } } } ] } OrderedGroup { children [ Background2D { backColor 1 1 1 } WorldInfo { info [ "This shows line texturing with a composite texture using the CompositeTexture2D node using variable width and different line alignment" "" "GPAC Regression Tests" "(C) 2002-2006 GPAC Team" ] title "Complex line texturing with the XLineProperties node" } Transform2D { translation 0 150 children [ Shape { appearance DEF TEXTAPP Appearance { material Material2D { emissiveColor 0 0 0 filled TRUE } } geometry Text { string ["Line width varying between 0 and 100"] fontStyle DEF FS FontStyle { justify ["MIDDLE" "MIDDLE"] size 20 } } } ] } Transform2D { translation -140 0 children [ Shape { appearance Appearance { material Material2D { lineProps DEF XLP XLineProperties { width 20 textureTransform TextureTransform { scale 8 8} texture DEF IM CompositeTexture2D { pixelWidth 32 pixelHeight 32 children [ Shape { appearance Appearance { material Material2D { emissiveColor 0 1 0 filled TRUE } } geometry DEF C Circle { radius 6 } } ] } } } } geometry Rectangle { size 150 150 } } Transform2D { translation 0 -150 children [ Shape { appearance USE TEXTAPP geometry Text { string ["Line centered on shape"] fontStyle USE FS } } ] } ] } Transform2D { translation 160 0 children [ Shape { appearance Appearance { material Material2D { lineProps DEF XLP2 XLineProperties { isCenterAligned FALSE width 0 texture USE IM } } } geometry Rectangle { size 150 150 } } Transform2D { translation 0 -150 children [ Shape { appearance USE TEXTAPP geometry Text { string ["Line inside shape"] fontStyle USE FS } } ] } ] } DEF TS TimeSensor { cycleInterval 2 loop TRUE } DEF SI ScalarInterpolator { key [0 0.5 1] keyValue [0 100 0] } DEF SI2 ScalarInterpolator { key [0 0.5 1] keyValue [6 10 6] } ] } ROUTE TS.fraction_changed TO SI.set_fraction ROUTE SI.value_changed TO XLP.width ROUTE SI.value_changed TO XLP2.width ROUTE TS.fraction_changed TO SI2.set_fraction ROUTE SI2.value_changed TO C.radius