سؤال

مصفوفة flash tranformation عبر JSFL تعني لي :(

لا بد لي من كتابة نص JSFL ينشئ نصًا على مشهد الفلاش الخاص بي ، وتدويره بزاوية عشوائية. تخيل أنني أريد إنشاء وتدوير "Hello World!" في 45 درجة ، يبدو الكود الخاص بي هكذا:



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


المشكلة هي: الدوران المطبق على نصي هو 58.3 بدلاً من 45.

يجب أن أعترف أنني نوع من noob مع Matrix ... لذلك استخدمت "تحول المصفوفة للتناوب" هنا: http://www.senocular.com/flash/tutorials/transformmatrix/

أفكار؟

شكرا.

هل كانت مفيدة؟

المحلول

هل حاولت مع راديان بدلاً من الدرجات؟

نصائح أخرى

أنا متأكد من أنه يمكنك أيضًا استخدام ما يلي بدلاً من الذهاب من خلال المصفوفة من أجل البساطة.

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

هذا يتجنب الاضطرار إلى التحويل إلى الراديان أيضًا لأنه يأخذ درجات كقيمة إدخال.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top