Process SMIL directives in XML data: Difference between revisions

From Rosetta Code
Content added Content deleted
m (removed extraneous empty line)
(content)
Line 1: Line 1:
{{draft task}}
{{draft task}}


In order to represent evolutions of data over time, the [http://www.w3.org/TR/SMIL/ SMIL] standard provides a solution to record the animation of data formated in XML.
In order to represent evolutions of contents over time, the [http://www.w3.org/TR/SMIL/ SMIL] standard provides a solution to record the animation of data formated in XML.


The task is to create an utility that given the first Smiled XML file, would return the second one
The task is to create an utility that given the first Smiled XML file, would return the second one

Revision as of 14:27, 25 May 2014

Process SMIL directives in XML data is a draft programming task. It is not yet considered ready to be promoted as a complete task, for reasons that should be found in its talk page.

In order to represent evolutions of contents over time, the SMIL standard provides a solution to record the animation of data formated in XML.

The task is to create an utility that given the first Smiled XML file, would return the second one

And here is the same data with additional Smil statments that you should load, display and animate with OpenGL (or something else):

<lang xml><?xml version="1.0" ?> <smil> <X3D>

 <Scene>
   <Viewpoint position="0 0 8" orientation="0 0 1 0"/>
   <PointLight color='1 1 1' location='0 2 0'/>
   <Transform translation='0.0 0.0 0.0' scale='1 1 1'>
     <Shape>
       <Box size='2 1 2'>
         <animate attributeName="size" from="2 1 2"
                                         to="1 2 1" begin="0s" dur="10s"/>
       </Box>
       <Appearance>
         <Material diffuseColor='0.0 0.6 1.0'>
           <animate attributeName="diffuseColor" from="0.0 0.6 1.0"
                                                   to="1.0 0.4 0.0" begin="0s" dur="10s"/>
         </Material>
       </Appearance>
     </Shape>
   </Transform>
 </Scene>

</X3D></smil></lang>

At t = 0 second here is the expected output:

<lang xml><?xml version="1.0" ?> <X3D>

 <Scene>
   <Viewpoint position="0 0 8" orientation="0 0 1 0"/>
   <PointLight color='1 1 1' location='0 2 0'/>
   <Transform translation='0.0 0.0 0.0' scale='1 1 1'>
     <Shape>
       <Box size='2 1 2'/>
       <Appearance>
         <Material diffuseColor='0.0 0.6 1.0'/>
       </Appearance>
     </Shape>
   </Transform>
 </Scene>

</X3D></lang>

At t = 2 second here is the expected output:

<lang xml><?xml version="1.0" ?> <X3D>

 <Scene>
   <Viewpoint position="0 0 8" orientation="0 0 1 0"/>
   <PointLight color='1 1 1' location='0 2 0'/>
   <Transform translation='0.0 0.0 0.0' scale='1 1 1'>
     <Shape>
       <Box size='1.8 1.2 1.8'/>
       <Appearance>
         <Material diffuseColor='0.2 0.56 0.8'/>
       </Appearance>
     </Shape>
   </Transform>
 </Scene>

</X3D></lang>