Domanda

Flash Tranformation Matrix via JSFL sono cattivo con me: (

Devo scrivere uno script JSFL che crea un testo sulla mia scena Flash, e ruotarlo con un angolo casuale. Immaginate Voglio creare e ruotare un "Ciao Mondo!" a 45 gradi, il mio aspetto di codice del genere:



rotateAngle = 45;

//creates my new text at x:0, y:0 coordinates
fl.getDocumentDOM().addNewText({left:0, top:0, right:10, bottom:10});
fl.getDocumentDOM().setTextString('Hello World!');

var mat = fl.getDocumentDOM().selection[0].matrix; //get the current matrix

// set rotation
mat.a = Math.cos( rotateAngle );
mat.b = Math.sin( rotateAngle);
mat.c = - Math.sin(rotateAngle);
mat.d = Math.cos( rotateAngle );

fl.getDocumentDOM().selection[0].matrix = mat; //apply new matrix


Il problema è: la rotazione applicata al mio testo è 58,3 invece di 45.

Devo ammettere che io sono un po 'niubbo a matrice ... così ho usato la "trasformazione di matrice per la rotazione" qui: http://www.senocular.com/flash/tutorials/transformmatrix/

idee?

grazie.

È stato utile?

Soluzione

Hai provato con radianti, invece di gradi?

Altri suggerimenti

Sono abbastanza sicuro che si potrebbe anche semplicemente usare il seguente piuttosto che passare attraverso la matrice per ragioni di semplicità.

var element = fl.getDocumentDOM().selection[0];
element.rotation = 45;

Questo evita di dover convertire in radianti così visto che richiede gradi come valore di input.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top