#INCLUDE ModelAnimation.inc oder #INCLUDE DomAnimation.inc
var myAnimation = NewAnimation( {
ModelRef: myModel,
OnModelChange: UpdateAll | function(modelRef,this){},
Delay: 0,
Repeat: 0,
RestartAction: 'stop|continue|restart|toEnd',
AutoInit: true,
AutoStart: false,
Mode: 'serial|parallel',
TaskList: [
{ AnimatorDefinition, TaskDefinition }
],
Condition: function(task){return true;},
OnLoopInit: function(task){},
OnLoopBegin: function(task){return true;},
OnLoopEnd: function(task){return false;},
OnTaskStart: function(task){},
OnTaskEnd: function(task){},
OnStop: function(task){},
SetValueFunc: function(value,modelRef,task){},
GetValueFunc: function(modelRef,task){return any;},
} );
myAnimation.Start();
myAnimation.Stop();
TaskList: [
{
Delay: 0,
Repeat: 0,
Mode: 'serial|parallel',
TaskList: [
{ AnimatorDefinition, TaskDefinition },
],
Condition: function(task){return true;},
OnLoopInit: function(task){},
OnLoopBegin: function(task){return true;},
OnLoopEnd: function(task){return false;},
OnTaskStart: function(task){},
OnTaskEnd: function(task){},
OnStop: function(task){},
SetValueFunc: function(value,modelRef,task){},
GetValueFunc: function(modelRef,task){return any;},
},
],
TaskList: [
{
ModelRef: Animator.ModelRef,
ValueRef: 'name',
ValueType: TypeOf(EndValue),
Unit: 'px',
StartValue: 0,
EndValue: StartValue,
EndValueFunc: function(this){return any;},
FormatValue: function(value,this){return value+'px';},
StopValue: 0,
SetValueFunc: function(value,modelRef,this){},
GetValueFunc: function(modelRef,this){return any;},
Condition: function(this){return true;},
Delay: 0,
TimeSpan: 0,
Speed: 0,
Sweep: 'linear|cosine|arccos|smooth',
SweepFunc: function(x){return x;},
OnTaskStart: function(this){},
OnTaskEnd: function(this){},
OnStop: function(this){}
},
],
var myAnimation = NewModelAnimation( {
NStates: 2,
ModelRef: myModel,
OnModelChange: DrawAll || function(this){},
OnAfterStateChange: function(this,currState){},
CurrState: 0,
PauseTime: 1000,
Repeat: 0,
AutoInit: true,
AutoPlay: false
} );
myAnimation.Init();
myAnimation.OnSetState( id, function(anim) {
var model = anim.ModelRef;
model.Prop = ...;
} );
myAnimation.AnimationToState( id, {
-> AnimatorDefinition
} );
myModel.Reset(); myModel.SetState( 0 ); myModel.ToState( 0 ); myModel.Next( Wrap=false ); myModel.Prev( Wrap=false ); myModel.SetNextState( Wrap=false ); myModel.SetPrevState( Wrap=false ); myModel.Stop(); myModel.StopSkip(); myModel.StopUndo(); myModel.Play( repeat=0, PauseTime );
myAnimation = NewDomAnimation( {
StateObjectName: 'StateObj',
NStageObjects: 1,
NStates: 2,
OnModelChange: function(this){},
OnAfterStateChange: function(this,currState){},
CurrState: 0,
PauseTime: 1000,
Repeat: 0,
AutoInit: true,
AutoPlay: false
} );
myAnimation.Init( ShowAll=false );
myAnimation.OnSetState( id, function(anim) {
anim.ShowAll();
anim.HideAll();
anim.HideAll().Show( 1, 2, 3 );
anim.SetVisi( 1, 0|1 );
anim.Show( 1, 2, 3 );
anim.SetOpac( 1, 1 );
anim.SetPos( 1, x, y );
anim.SetSize( 1, w, h );
anim.SetGeom( 1, x, y, w, h );
} );
myAnimation.AnimationToState( id, {
-> AnimatorDefinition
-> Hilfsfunktionen
} );
AnimatorDefinition, Hilfsfunktionen
myAnimation.AnimationToState( id, {
ModelRef: myModel,
OnModelChange: UpdateAll | function(modelRef,this){},
Delay: 0,
Repeat: 0,
RestartAction: 'stop|continue|restart|toEnd',
Mode: 'serial|parallel',
TaskList: [
TSet( id, 'x|y|w|h|o|v', end, time=0, delay=0 ] ),
TSet( id, 'x|y|w|h|o|v', [start,end], time=0, delay=0 ] ),
TSet( [id1,id2], ['x','y'], [end1,end2], [time1,time2], [delay1,delay2] ),
TSet( [id1,id2], ['x','y'], [[start1,end1],[start2,end2]], [time1,time2], [delay1,delay2] ),
TShow( id, delay=0 ),
TShow( [id1,id2], [delay1,]delay2] ),
THide( id1, delay=0 ),
THide( [id1,id2], [delay1,]delay2] ),
TSwap( hideId, ShowId, delay=0 ),
TSwap( [id1,id2], [id3,id4], [delay1,delay2] ),
TPos( id, x, y=y, time=0, delay=0 ),
TPosX( id, x, time=0, delay=0 ),
TPosY( id, y, time=0, delay=0 ),
TSize( id, w, h, time, delay ),
TGeom( id, x, y, w, h, time, delay ),
TGeomW( id, w, h, time, delay ),
TGeomH( id, w, h, time, delay ),
TOpac( id, opac, time, delay ),
TBlendIn( id, time, delay ),
TBlendOut( id, time, delay ),
TProp( TShow( id, delay ), 'prop', val ),
TSweep( TPosX( id, x, time, delay ), 'cosine' ),
TParallel|TSerial( Txxx(...), delay=0, repeat=0 ),
// Txxx() must return [ TaskDefinition, AnimatorDefinition ]
],
Condition: function(task){return true;},
OnLoopInit: function(task){},
OnLoopBegin: function(task){return true;},
OnLoopEnd: function(task){return false;},
OnTaskStart: function(task){},
OnTaskEnd: function(task){},
OnStop: function(task){},
SetValueFunc: function(value,modelRef,task){},
GetValueFunc: function(modelRef,task){return any;},
} );
myAnimation.AnimationToState( 1, {
TaskList: [
TParallel( TSweep( TPosX( [4,5,6], [34,49,64], tic ), 'cosine' ) ),
TSet( 2, ['color','backgroundColor'], ['red','yellow'] ), TBlendIn( 2, tic ), TSet( 2, ['color','backgroundColor'], '' ),
TParallel( TSwap( [1,2], 3) ),
TPosX( 2, 78, 0, tic ), TSet( 2, 'color', 'red' ), TBlendIn( 2, tic ), TSet( 2, 'color', '' ),
TParallel( TSwap( [2,6], 7 ) )
]
} );