SMIL:SMIL Model: Difference between revisions

killing SVGDev
m (SVGDev:SMIL Model moved to SVG:SMIL Model: killing SVGDev)
(killing SVGDev)
Line 1: Line 1:
These pages contain a proposed [[SVGDev:Timing Model|Timing Model]] and [[SVGDev:Animation Model|Animation Model]] as implemented at [http://brian.sol1.net/svg/ http://brian.sol1.net/svg/].
These pages contain a proposed [[SVG:Timing Model|Timing Model]] and [[SVG:Animation Model|Animation Model]] as implemented at [http://brian.sol1.net/svg/ http://brian.sol1.net/svg/].


= Approach and credits =
= Approach and credits =
Line 30: Line 30:
http://brian.sol1.net/svg/designs/current/overview.png
http://brian.sol1.net/svg/designs/current/overview.png


The design is broken up into two main parts: the [[SVGDev:Timing Model|timing
The design is broken up into two main parts: the [[SVG:Timing Model|timing
model]] and the [[SVGDev:Animation Model|animation model]] as well as some
model]] and the [[SVG:Animation Model|animation model]] as well as some
supporting infrastructure.
supporting infrastructure.


The [[SVGDev:Timing Model|timing model]] is responsible for:
The [[SVG:Timing Model|timing model]] is responsible for:


* begin and end times
* begin and end times
Line 43: Line 43:
* restart
* restart


The [[SVGDev:Animation Model|animation model]] is responsible for:
The [[SVG:Animation Model|animation model]] is responsible for:


* from/to/by/values
* from/to/by/values
Line 70: Line 70:
This registry is used to register with the timing and animation model.
This registry is used to register with the timing and animation model.


nsSVGAnimateElement is represented in the [[SVGDev:Animation Model|animation model]] by an [[SVGDev:Animation Model#nsSMILAnimationFunction|nsSMILAnimationFunction]] and in the
nsSVGAnimateElement is represented in the [[SVG:Animation Model|animation model]] by an [[SVG:Animation Model#nsSMILAnimationFunction|nsSMILAnimationFunction]] and in the
[[SVGDev:Timing Model|timing model]] by an [[SVGDev:Timing Model#nsSMILTimedElement|nsSMILTimedElement]]. This approach, composition rather than inheritance should reduce the coupling between the SVG and SMIL modules and help us avoid MI nightmares.
[[SVG:Timing Model|timing model]] by an [[SVG:Timing Model#nsSMILTimedElement|nsSMILTimedElement]]. This approach, composition rather than inheritance should reduce the coupling between the SVG and SMIL modules and help us avoid MI nightmares.


All the parsing work including supplying default values is performed in the
All the parsing work including supplying default values is performed in the
[[SVGDev:Animation Model#nsSMILAnimationFunction|nsSMILAnimationFunction]] and [[SVGDev:Timing Model#nsSMILTimedElement|nsSMILTimedElement]]. This simplifies nsSVGAnimateElement considerably and allows this functionality to be re-used by other animation elements such as <tt>&lt;animateColor&gt;</tt> and even in other host languages for SMIL.
[[SVG:Animation Model#nsSMILAnimationFunction|nsSMILAnimationFunction]] and [[SVG:Timing Model#nsSMILTimedElement|nsSMILTimedElement]]. This simplifies nsSVGAnimateElement considerably and allows this functionality to be re-used by other animation elements such as <tt>&lt;animateColor&gt;</tt> and even in other host languages for SMIL.


View the details of the:
View the details of the:


* [[SVGDev:Animation Model|Animation model]], and
* [[SVG:Animation Model|Animation model]], and
* [[SVGDev:Timing Model|Timing model]].
* [[SVG:Timing Model|Timing model]].


= UML and XPCOM =
= UML and XPCOM =
Confirmed users, Bureaucrats and Sysops emeriti
969

edits