FLASH Tips No.2
簡易三角関数計算 by T.Yamazoe
Ver4以前のFLASHには三角関数のスクリプトはありませんが,疑似3D的な描画を
アクションで行いたい場合どうしても必要になってくる場合があります。
別方法としてアクション内の変数に一気に数値を登録する「テーブル参照方式」
もありますが,アクションの記述性から言えば結構苦労します。
ここで紹介する方法は,算出精度は小数以下2~4桁程度ですが
図形描画程度なら十分使える算出方法です。
(Ver5以降のMathオブジェクトで算出される関数とのスピード比較はしていません。
処理スピードの速さを要求される場合は検証してから使用されることをお勧めします)
【 アクションスクリプトの記述 】
(1)任意の場所に長さ1000の横線を1本作りムービークリップとして登録します。
そのムービークリップのインスタンスを設定します(ここで仮に"line"とする)
(2)計算すべき部分のスクリプトを以下のようにします。
注:変数の文字は自由です。仮にここで使用する変数は下記の通り。
計算する角度(度)"inp"
sin→"sin" cos→"cos" tan→"tan"
Set Property ("/line", Rotation) =
inp
Set Variable:"cos
" =GetProperty ("/line
",_width)/1000
Set Variable:"sin
" =GetProperty ("/line
",_height)/1000
If (cos=0)
Set Variable:"tan" ="***"
Else
Set Variable:"tan" =
sin/cos
End If
朱書き部分が変数です。
if文は0での割り算でのエラー回避です。必要なければ削除してもかまいません。
Copyright©1998-2022 Hiyoko3 & JR6BIJ All rights reserved