Guida di riferimento di ActionScript® 3.0 per la piattaforma Adobe® Flash®
Home  |  Nascondi elenco pacchetti e classi |  Pacchetti  |  Classi  |  Novità  |  Indice  |  Appendici  |  Perché in inglese?
Filtri: Recupero dati dal server...
Recupero dati dal server...
 

Elementi XML di Motion  

È possibile descrivere un’interpolazione di movimento mediante il codice XML e le classi ActionScript nel pacchetto fl.motion. Adobe Flash Professional dispone di un comando "Copia movimento come ActionScript" che genera codice XML e ActionScript basato su un’interpolazione di movimento nella linea temporale, in modo che possa essere utilizzato in altri simboli o progetti. È possibile anche creare uno script personalizzato per l’interpolazione di movimento. A condizione che le classi fl.motion siano presenti nel percorso di classe in fase di compilazione, l’interpolazione viene applicata all’oggetto di visualizzazione specificato. Per ulteriori informazioni sulle classi motion, vedete il pacchetto fl.motion. Gli elementi del codice XML di supporto corrispondono alle classi e proprietà della Guida di riferimento di ActionScript 3.0.

La gerarchia degli elementi XML è la seguente:

<Motion> 
 <Source> 
      <dimensions/> 
        <geom:Rectangle /> 
      </dimensions> 
      <transformationPoint> 
        <geom:Point /> 
      </transformationPoint> 
  </Source> 
  <Keyframe> 
    <color>  
      <Color /> 
    </color>      
    <tweens> 
      <SimpleEase /> 
      <CustomEase> 
      <BezierControl /> 
        <BezierNode /> 
      </CustomEase> 
    </tweens> 
    <filters>  
      <filters /> 
    </filters>    
  </Keyframe> 
</Motion>

Nella tabella seguente sono descritti in breve gli elementi e gli attributi XML che possono essere assegnati a un oggetto Motion. Per ulteriori dettagli su ciascun elemento, fate riferimento alle proprietà elencate nelle classi relative all’elemento:

ElementoAttributoTipoDescrizione
Motion  Definisce l’istanza Motion, in modo che possano esservi assegnate proprietà che caratterizzano l’interpolazione di movimento. Vedete la classe fl.motion.Motion.
 durationNumberNumero di fotogrammi dell’interpolazione di movimento selezionata. Vedete la proprietà fl.motion.MotionBase.duration.
source  Contiene le proprietà dell’oggetto visivo originale associato al movimento. Vedete la classe fl.motion.Source.
SourceframeRateNumberIl numero di fotogrammi al secondo (f/s) del file SWF contenente l’animazione originale copiata da Flash Professional. Questo valore non ha effetto sull’implementazione di ActionScript in un file SWF diverso. Vedete la proprietà fl.motion.Source.frameRate.
 xNumberLa coordinata x del punto di trasformazione dell’istanza di simbolo all’inizio dell’interpolazione di movimento originale copiata da Flash Professional.
 yNumberLa coordinata y del punto di trasformazione dell’istanza di simbolo all’inizio dell’interpolazione di movimento originale copiata da Flash Professional.
 scaleXNumberLa percentuale della scala orizzontale, sotto forma di valore decimale. Il valore è spesso compreso tra 0 e 1, ma può anche essere maggiore di 1 o minore di 0. Potete, ad esempio, impostare scaleX su -1 per riflettere l’oggetto oppure su 3 per triplicare le dimensioni originali.
 skewXNumberL’angolo (in gradi) di inclinazione lungo l’asse orizzontale. Se i valori skewX e skewY sono uguali, vengono sostituiti dall’attributo rotation.
 skewYNumberL’angolo (in gradi) di inclinazione lungo l’asse verticale. Se i valori skewX e skewY sono uguali, vengono sostituiti dall’attributo rotation.
 rotationNumberIl grado di rotazione del fotogramma iniziale.
 elementTypeStringIl tipo di oggetto visivo utilizzato nell’interpolazione di movimento. I valori possibili sono: "movie clip", "button", "graphic", "rectangle object", "oval object", "drawing object", "group", "bitmap", "compiled clip", "video" o "text".
 symbolNameStringNome del simbolo nella libreria del documento di Adobe Flash Professional, se esiste (l’oggetto visivo originale potrebbe non essere un’istanza di simbolo).
dimensions  Contiene i tag che utilizzano lo spazio dei nomi geom per descrivere il riquadro di delimitazione e il punto di trasformazione del simbolo interpolato.
geom:Rectangle  Un oggetto del pacchetto flash.geom.È possibile aggiungere attributi che corrispondono alle proprietà dell’oggetto flash.geom.Rectangle. Ad esempio: <geom:Rectangle left="7" top="9" width="151.95" height="151.95" />I valori top e left sono relativi al punto di registrazione dell’oggetto principale (top e left sono definiti nello spazio di coordinate dell’oggetto principale).
geom:Point Un oggetto del pacchetto flash.geom.Le coordinate del punto di trasformazione sono definite come percentuale delle dimensioni del riquadro di delimitazione (valori dell’elemento geom:Rectangle). Se il punto di trasformazione è nell’angolo in alto a sinistra del riquadro di delimitazione, le coordinate sono (0, 0). Se il punto di trasformazione è nell’angolo in basso a destra del riquadro di delimitazione, le coordinate sono (1, 1). Questi valori consentono di applicare il punto di trasformazione in modo coerente a oggetti con proporzioni e punti di registrazione diversi. Il punto di trasformazione può trovarsi al di fuori del riquadro di delimitazione, in tal caso le coordinate possono essere inferiori a 0 o superiori a 1.
Keyframe  Contiene informazioni relative a un fotogramma chiave della linea temporale.
 blankBooleanIndica che il fotogramma chiave è vuoto.
 indexNumberNumero intero univoco per il fotogramma chiave. Il valore di indice del primo fotogramma è sempre 0. I fotogrammi chiave nel codice XML devono essere specificati in ordine ascendente in base al valore di indice.
 labelStringUna stringa opzionale che descrive il fotogramma chiave e corrisponde a un’etichetta di fotogramma nella linea temporale.
 tweenSyncBooleanAttiva ("true") e disattiva ("false") l’impostazione di sincronizzazione. La sincronizzazione ricalcola il numero di fotogrammi di un’interpolazione, in modo che corrisponda al numero di fotogrammi assegnato all’interpolazione nella linea temporale. Questo attributo non ha effetto sull’animazione ActionScript, in quanto ActionScript non è in grado di controllare i simboli grafici. L’attributo XML viene utilizzato solo dai comandi Copia movimento e Incolla movimento di Adobe Flash Professional. Se il valore viene omesso dal codice XML, l’impostazione predefinita è true.
 tweenSnapBooleanAttiva ("true") e disattiva ("false") l’impostazione di aggancio. Questa impostazione aggancia un simbolo al tracciato del movimento per il punto di registrazione. Questo attributo non ha effetto sull’animazione ActionScript, in quanto ActionScript non è in grado di controllare i simboli grafici. L’attributo XML viene utilizzato solo dai comandi Copia movimento e Incolla movimento di Adobe Flash Professional. Se il valore viene omesso dal codice XML, l’impostazione predefinita è true.
 xNumberLa coordinata x del punto centrale dell’istanza del simbolo nel fotogramma chiave corrente.
 yNumberLa coordinata y del punto centrale dell’istanza del simbolo nel fotogramma chiave corrente.
 scaleXNumberLa percentuale della scala orizzontale, sotto forma di valore decimale compreso tra 0 e 1. Il valore è spesso compreso tra 0 e 1, ma può anche essere maggiore di 1 o minore di 0. Potete, ad esempio, impostare scaleX su -1 per riflettere l’oggetto oppure su 3 per triplicare le dimensioni originali
 scaleYNumberLa percentuale della scala verticale, sotto forma di valore decimale compreso tra 0 e 1. Il valore è spesso compreso tra 0 e 1, ma può anche essere maggiore di 1 o minore di 0. Potete, ad esempio, impostare scaleY su -1 per riflettere l’oggetto oppure su 3 per triplicare le dimensioni originali.
 skewXNumberL’angolo (in gradi) di inclinazione lungo l’asse orizzontale. Se i valori skewX e skewY sono uguali, vengono sostituiti dall’attributo rotation.
 skewYNumberL’angolo (in gradi) di inclinazione lungo l’asse verticale. Se i valori skewX e skewY sono uguali, vengono sostituiti dall’attributo rotation.
 rotationNumberIl grado di rotazione del fotogramma corrente.
 rotateDirectionStringSpecifica il modo in cui ruota l’elemento interpolato. I valori possibili sono "auto", "none", "cw", "ccw". Se il valore viene omesso dal codice XML, l’impostazione predefinita è "auto".
 rotateTimesNumberSpecifica il numero di rotazioni effettuate dall’elemento interpolato nell’intervallo tra il fotogramma chiave iniziale e quello successivo, oltre alla normale rotazione. Adobe Flash Professional richiede valori interi uguali a o maggiori di 0, tuttavia le classi motion consentono valori decimali.
 tweenScaleBooleanSe false, impedisce che la scala venga modificata durante un’interpolazione. Se il valore viene omesso dal codice XML, l’impostazione predefinita è true.
 cacheAsBitmapBooleanSe il valore viene omesso dal codice XML, l’impostazione predefinita è false.
 blendModeStringI valori possibili sono "normal", "layer", "multiply", "screen", "overlay", "hardlight", "lighten", "darken", "difference", "add", "subtract", "invert", "alpha" e "erase". Se il valore viene omesso dal codice XML, l’impostazione predefinita è "normal".
 orientToPathBooleanSe il valore viene omesso dal codice XML, l’impostazione predefinita è false.
Color  Contiene le impostazioni per le variazioni di colore. Le istanze di simbolo in Flash hanno cinque modalità di colore: none, alpha, tint, brightness e advanced (Nessuno, Alfa, Tinta, Luminosità e Avanzate). Per non applicare alcuna trasformazione (none), il tag Color deve rimanere vuoto, a indicare l’aspetto normale. Per le trasformazioni alfa, impostate gli attributi alphaMultiplier e alphaOffset. Per le trasformazioni di tinta, impostate gli attributi tintColor e tintMultiplier.Per le trasformazioni di luminosità, utilizzate l’attributo brightness.Per le trasformazioni avanzate, utilizzate gli attributi redMultiplier, greenMultiplier, blueMultiplier, alphaMultiplier, redOffset, greenOffset, blueOffset e alphaOffset.
 brightnessNumberLa percentuale di applicazione del canale di luminosità compresa tra -1 e 1, dove -1 indica un’immagine completamente nera e 1 un’immagine completamente bianca.
 tintColorHexidecimalValore di colore esadecimale che rappresenta il colore da applicare.
 alphaMultiplierNumberLa percentuale di applicazione del canale alfa, sotto forma di valore decimale compreso tra 0 e 1.
 redMultiplierNumberLa percentuale di applicazione del colore, sotto forma di valore decimale compreso tra 0 e 1.
 greenMultiplierNumberLa percentuale di applicazione del colore, sotto forma di valore decimale compreso tra 0 e 1.
 blueMultiplierNumberLa percentuale di applicazione del colore, sotto forma di valore decimale compreso tra 0 e 1.
 alphaMultiplierNumberUn valore decimale compreso tra 0 e 1, che rappresenta la percentuale di applicazione del canale di trasparenza alfa.
 tintMultiplierNumberUn valore decimale compreso tra 0 e 1, che rappresenta la percentuale da applicare con il valore tintColor.
 redOffsetNumberUn numero da -255 a 255 che viene aggiunto al valore del canale rosso dopo che questo è stato moltiplicato per il valore redMultiplier.
 greenOffsetNumberUn numero da -255 a 255 che viene aggiunto al valore del canale verde dopo che questo è stato moltiplicato per il valore greenMultiplier.
 blueOffsetNumberUn numero da -255 a 255 che viene aggiunto al valore del canale blu dopo che questo è stato moltiplicato per il valore blueMultiplier.
 alphaOffsetNumberUn numero da -255 a 255 che viene aggiunto al valore di canale alfa dopo che questo è stato moltiplicato per il valore alphaMultiplier.
tweens  Contiene le impostazioni per le variazioni di andamento.
SimpleEase  Definisce un’impostazione di andamento con un valore singolo nell’interpolazione di movimento per tutte le proprietà di andamento.
 easeNumberIl valore di andamento da applicare a tutte le proprietà dell’interpolazione di movimento. L’attributo ease è un valore in percentuale compreso tra -1 (andamento in entrata o accelerazione al 100%) e 1 (andamento in uscita o decelerazione al 100%). Il valore predefinito è 0, che indica che l’interpolazione viene riprodotta a una velocità costante, senza accelerazione o decelerazione.
 targetNumberSe si utilizzano i comandi Copia movimento e Incolla movimento di Adobe Flash Professional, lo strumento di creazione genera codice XML che non include un attributo target per l’elemento SimpleEase, perché Flash Professional applica lo stesso valore a tutte le proprietà di andamento. Tuttavia, le classi ActionScript 3.0 consentono di applicare diversi valori SimpleEase a proprietà singole contemporaneamente. I valori possibili per target sono uguali a quelli di CustomEase: "position", "scale", "rotation", "color", "filters", "x", "y", "scaleX", "scaleY", "skewX" e "skewY".
CustomEase  Definisce una curva di andamento personalizzata composta da curve di Bézier cubiche. È possibile applicare la stessa curva a tutte le proprietà contemporaneamente oppure definire curve diverse per proprietà diverse. Per ulteriori informazioni sulle curve che rappresentano proprietà di andamento personalizzate, potete fare riferimento alla classe CustomEase.
 targetNumberLa proprietà a cui viene assegnato un valore personalizzato. Se si utilizzano i comandi Copia movimento e Incolla movimento di Adobe Flash Professional, lo strumento di creazione genera i seguenti valori possibili per target: "position", "scale", "rotation", "color", "filters". Le classi motion di ActionScript 3.0 sono ancora più flessibili e consentono di definire curve singole per: "x", "y", "scaleX", "scaleY", "skewX" e "skewY". Se l’attributo "target" viene omesso dal codice XML, a tutte le proprietà di andamento viene assegnato lo stesso valore target. Nota: il codice XML omette il primo e l’ultimo punto della curva di andamento personalizzata. Il primo punto deve essere sempre (0, 0) (il valore iniziale della proprietà interpolata) e l’ultimo punto deve essere (1, 1) (il valore finale della proprietà interpolata). Per mantenere il codice efficiente ed evitare possibili errori, questi valori vengono omessi dal codice XML e considerati impliciti.
BezierControl  Un punto relativo a una curva utilizzato per definire la curva.
 xNumberLa coordinata x del punto di definizione di una curva.
 yNumberLa coordinata y del punto di definizione di una curva.
BezierNode  Un punto di una curva utilizzato per definire la curva.
 xNumberLa coordinata x del punto di una curva.
 yNumberLa coordinata y del punto di una curva.
filters  Definisce un oggetto del pacchetto flash.filters da utilizzare come elemento (ad esempio: filters:GlowFilter). È possibile aggiungere attributi che corrispondono alle proprietà dell’oggetto flash.filters specificato. Ad esempio: <filters:DropShadowFilter quality="1" inner="false" knockout="false" hideObject="false" distance="0" angle="45" color="0x000000" alpha="1" blurX="0" blurY="0" strength="0" />. Vedete il pacchetto flash.filters.

Nell’esempio seguente viene illustrato codice ActionScript con codice XML inline, che descrive l’interpolazione di movimento di un’istanza MovieClip moveShape per il simbolo myShape, il modo in cui ruota, si sposta, utilizza un’impostazione di andamento personalizzata e vengono modificati i valori alfa su dieci fotogrammi:

import fl.motion.Animator; 
var moveShape_xml:XML = <Motion duration="10" xmlns="fl.motion.*" xmlns:geom="flash.geom.*" xmlns:filters="flash.filters.*"> 
    <source> 
        <Source frameRate="12" x="41.35" y="91.35" scaleX="1" scaleY="1" rotation="0" elementType="movie clip" instanceName="moveShape" symbolName="myShape"> 
            <dimensions> 
                <geom:Rectangle left="-46.65" top="-61.95" width="133.05" height="133.95"/> 
            </dimensions> 
            <transformationPoint> 
                <geom:Point x="0.49981210071401727" y="0.4998133631952222"/> 
            </transformationPoint> 
        </Source> 
    </source> 
   <Keyframe index="0" rotateTimes="2"> 
        <tweens> 
            <CustomEase> 
                <BezierControl x="0.08650266979261687" y="0.14705453864744866"/> 
                <BezierControl x="0.23675978562091857" y="0.28829454738109694"/> 
                <BezierNode x="0.2689728109485753" y="0.49688733564952436"/> 
                <BezierControl x="0.32093023255813957" y="0.8333333333333333"/> 
                <BezierControl x="0.5988021982960045" y="1.034249160488573"/> 
                <BezierNode x="0.7309082984924317" y="0.8685852488735627"/> 
                <BezierControl x="0.8116279069767443" y="0.767361111111111"/> 
                <BezierControl x="0.910302766164144" y="0.9730908298492431"/> 
            </CustomEase> 
        </tweens> 
    </Keyframe> 
    <Keyframe index="9" x="371.95" y="188"> 
        <color> 
            <Color alphaMultiplier="0.4" alphaOffset="0"/> 
        </color> 
    </Keyframe> 
</Motion>; 
var moveShape_animator:Animator = new Animator(moveShape_xml, moveShape); 
moveShape_animator.play();

[ X ]Perché in inglese?
Il contenuto della Guida di riferimento di ActionScript 3.0 appare in inglese

Non tutte le parti della Guida di riferimento di ActionScript 3.0 sono tradotte in tutte le lingue. Quando un elemento del linguaggio non è tradotto, viene riportato in inglese. Ad esempio, la classe ga.controls.HelpBox non è tradotta in nessuna lingua. Pertanto, nella versione italiana della guida di riferimento, la descrizione della classe ga.controls.HelpBox è riportata in inglese.