Visualizzazione dei risultati da 1 a 6 su 6

Discussione: componente tween info

  1. #1

    componente tween info

    ciao a tutti... sto' studiando il componente tween (o si dice classe?? ... bo')...
    ho capito come usarlo, ma magari voi mi potete dare delle delucidazioni.

    quando all'inizio andiamo a importare:

    import mx.transitions.Tween;
    import mx.transitions.easing.*;

    cos'e' mx?
    transition posso immaginare che è l'oggetto che regola tutti i parametri di movimento.... giusto?

    so'o che posso muovere il mo mc cosi:
    var myTween:Tween = new Tween(mioMC, "_x", Strong.easeInOut, 0, 200, 10, false);

    e se volessi rispostarlo da un altra parte? e magari non solo sulle x? come dovrei fare?
    grazie mille e scusate per le tante domande.....

    PS: come sono a livello di CPU? ciucciano? è meglio utilizzare i classici tipo mc._x += (newPosition - mc._x) / 4; per script semplici???

    grazie mille!!!

  2. #2
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182

    Re: componente tween info

    >> quando all'inizio andiamo a importare:
    >> import mx.transitions.Tween;
    >> import mx.transitions.easing.*;
    >> cos'e' mx?

    mx è il pacchetto che contiene una serie di librerie, tra cui le transitions, che a loro volta contengono le classi, tra cui la classe Tween e la libreria "easing" che, ancora una volta, contiene le classi che gestiscono i calcoli dei movimenti (Regular, Strong, Back, Bounce, Elastic, None)

    le due righe importano i pacchetti necessari

    ps. per flash 8 non va bene importare così... meglio così

    import mx.transitions.*;
    import mx.transitions.easing.*;


    >> so'o che posso muovere il mo mc cosi:
    >> var myTween:Tween = new Tween(mioMC, "_x", Strong.easeInOut, 0, 200, 10, false);
    >> e se volessi rispostarlo da un altra parte? e magari non solo sulle x? come dovrei fare?
    >> grazie mille e scusate per le tante domande.....

    per fargli fare il percorso inverso esiste il metodo "yoyo"

    var myTween:Tween = new Tween(mioMC, "_x", Strong.easeInOut, 0, 200, 10, false);
    myTween.onMotionFinished = myTween.yoyo;

    per muovere anche sulla _y, basta aggiungere la riga della _y

    var myTween:Tween = new Tween(mioMC, "_x", Strong.easeInOut, 0, 200, 10, false);
    var myTween:Tween = new Tween(mioMC, "_y", Strong.easeInOut, 0, 200, 10, false);
    myTween.onMotionFinished = myTween.yoyo;


    >>PS: come sono a livello di CPU? ciucciano? è meglio utilizzare i classici tipo mc._x +=
    >>(newPosition - mc._x) / 4; per script semplici???

    il livello di consumo CPU è accettabile e vanno bene in qualsiasi situazione, dalla più semplice alla più intricata

  3. #3
    grazie mille sei stato troppo gentile!!!

    un ultima cosa.... ma ogni volta che dobbiamo muovere il mc dobbiamo creare un oggetto tween?
    o magari possiamo mettere l'ogetto tween dentro una funzione e richiamare soloo quella...no?
    sto' dicendo cavolate?

    grazie ancora....

  4. #4
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    Originariamente inviato da zoc
    grazie mille sei stato troppo gentile!!!

    un ultima cosa.... ma ogni volta che dobbiamo muovere il mc dobbiamo creare un oggetto tween?
    o magari possiamo mettere l'ogetto tween dentro una funzione e richiamare soloo quella...no?
    sto' dicendo cavolate?

    grazie ancora....
    l'oggetto va ricreato comunque, però ad esempio puoi fare una prototype per lo spostamento di x e y, utilizzando sempre gli stessi parametri per la transizione, es:

    codice:
    MovieClip.prototype.moveThis = function (x:Number, y:Number){
    	import mx.transitions.*;
    	import mx.transitions.easing.*;
    	var tx = new Tween(this, "_x", Regular.easeOut, this._x, x, 30, false);
    	var ty = new Tween(this, "_y", Regular.easeOut, this._y, y, 30, false);
    }
    e la applichi all'mc "pippo" ad esempio, con:

    codice:
    pippo.moveThis(300,500);

  5. #5
    bellissimo!!! era quello che intendevo!!!
    ma scusa nel prototype bisogna inserire l'import? non basta farlo una sola volta, che ne sò, a inizio filmato?

    grazie ancora!!

  6. #6
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    >> ma scusa nel prototype bisogna inserire l'import?
    >> non basta farlo una sola volta, che ne sò, a inizio filmato?

    in effetti è un'aggiunta che si può omettere, se l'import viene fatto all'inizio, altrimenti si può evitare di fare l'import, richiamando direttamente l'intero percorso della classe

    codice:
    MovieClip.prototype.moveThis = function (x:Number, y:Number){
    	var tx = new mx.transitions.Tween(this, "_x", mx.transitions.easing.Regular.easeOut, this._x, x, 30, false);
    	var ty = new mx.transitions.Tween(this, "_y", mx.transitions.easing.Regular.easeOut, this._y, y, 30, false);
    }

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.