2009-05-29 12 views
0

Comment puis-je utiliser ActionScript pour dessiner sur différentes images d'un clip. Autrement dit, faites en sorte que movieClip.gotoAndStop (0); montrera quelque chose de différent à movieClip.gotoAndStop (1);Flex: Dessiner sur différentes images d'un MovieClip

+0

Un système à base de trame peut ne pas être la meilleure solution pour votre problème si vous travaillez en flex - qu'essayez-vous d'accomplir? –

+0

Je voulais faire de l'animation en chargeant chaque image de l'animation dans une image différente d'un clip. Depuis, j'ai décidé d'écrire ma propre classe d'animation en utilisant BitmapData etc. – Jesse

+0

Oui, c'est probablement une meilleure approche. –

Répondre

0

Vous pouvez utiliser addFrameScript dans votre code. Par exemple, supposons que vous ayez un MovieClip associé à la classe CustomMovieClip.

Dans votre constructeur de CustomMovieClip, vous pouvez écrire quelque chose comme ce qui suit (code non testé):

classe CustomMovieClip {

...

CustomMovieClip fonction

() { stop() ;

// ajouter du code dans drawGraphicsForFrame1 cadre 0

addFrameScript (0, drawGraphicsForFrame1);

// ajouter le code drawGraphicsForFrame2 dans une trame

addFrameScript (1, drawGraphicsForFrame2); ...

}

fonction privée drawGraphicsForFrame1(): void { stop();

var sprite: Sprite = nouveau Sprite(); addChildAt (image-objet, 1);

// dessiner dans sprite

sprite.graphics.lineStyle ...

}

fonction privée drawGraphicsForFrame2(): void {

// remove the previous sprite (assumption: it's always at layer 1) 

if (getChildAt(1) != null) 
    removeChildAt(1); 

// draw new sprite 

var sprite:Sprite = new Sprite(); 
addChildAt(sprite, 1); 

sprite.graphics.lineStyle ... 

}

...