PaperVision3Dでルービックキューブを作ってみた…かった
個々のキューブに親のマトリックスを乗算してから
親のマトリックスをリセットすれば
元通りになるハズ・・なんだけどならない
3Dでは単純にいかないのだろうか・・・
仕方ないから親マトリックスで
座標を変換して移動させてる
だけど問題は回転の方
XYZのそれぞれの軸が
あっち向いたりこっち向いたりするから
親がY軸で回転したからって
ローカルでY軸で回転したことに
なってるとは限らない
どの軸がどっちをむいてるのか
調べてから回転させないといけない
面倒い、宿題にしときます
JSFLにUIをつけるときの基本の話
ダイアログのSWFのコードから
JSFLを実行する時のOKボタンのコードです
(コピペしてもなにも動かないですよ)
JSFLのファイルを呼び出して関数実行させてるのはここ
正確には、このSWFを配置するXULを呼び出したJSLFに
指定のJSFLのファイルを呼び出して関数を実行させるコードを
Stringで渡して実行させている、といった所です
そして、このMMExecuteでfl.runScriptのコードを渡すときに
ややこしいところはMMExecuteの引数がまずStringであり
かつfl.funScriptの引数も、それぞれ全てStringだという事です
(Numberもだめです、あくまでString)
つまり
MMExecute('fl.runScript("ファイル","関数","引数1","引数2")')
という感じでダブルクオートとシングルクオートが入れ子に
なってるようなカンジにしないといけないわけです
ワケがわからなくなります
3回位消し忘れとか入れ忘れとかしました
JSFLを実行する時のOKボタンのコードです
(コピペしてもなにも動かないですよ)
with(addChild(new Button())as Button){
x=170
y=550
width=100
label="OK"
addEventListener(MouseEvent.CLICK,OK)
function OK(e:MouseEvent):void{
var path='fl.scriptURI.replace(".jsfl","/'+com+'.jsfl")'
MMExecute("fl.runScript("+path+',"'+func+'","'+param+'")')
MMExecute("fl.xmlui.accept()")
}
function get param(){
var rtn:Array=new Array()
for each(var ui in prmUI){
if(ui is Slider)rtn.push(ui.value)
if(ui is NumericStepper)rtn.push(ui.value)
if(ui is RadioButtonGroup)rtn.push(ui.selectedData)
}
return rtn.join('","')
}
}
JSFLのファイルを呼び出して関数実行させてるのはここ
MMExecute("fl.runScript("+path+',"'+func+'","'+param+'")')
MMExecute("fl.xmlui.accept()")
正確には、このSWFを配置するXULを呼び出したJSLFに
指定のJSFLのファイルを呼び出して関数を実行させるコードを
Stringで渡して実行させている、といった所です
そして、このMMExecuteでfl.runScriptのコードを渡すときに
ややこしいところはMMExecuteの引数がまずStringであり
かつfl.funScriptの引数も、それぞれ全てStringだという事です
(Numberもだめです、あくまでString)
つまり
MMExecute('fl.runScript("ファイル","関数","引数1","引数2")')
という感じでダブルクオートとシングルクオートが入れ子に
なってるようなカンジにしないといけないわけです
ワケがわからなくなります
3回位消し忘れとか入れ忘れとかしました
