名称 | ・・・・・・・ |
アフィン変換用マトリックス(Z軸中心の回転移動) |
|||
ルーチン名 | ・・・・・・・ |
RoteMatZ |
|||
スクリプトNo | ・・・・・・・ | sub_set02- 005 | |||
file名 | ・・・・・・・ | ScriptSet02.lzh sub_set02のページからセットごとダウンロードしてください。 |
|||
概略 | ・・・・・・・ |
Z軸の正方向から見て反時計回りに指定角度分だけ回転移動する変換マトリックスを戻す。 |
|||
|
|||||
使用前提 | ・・・・・・・ |
戻り値を受け取る通常のバリアント変数(配列では無く)を宣言して用意しておく。 |
|||
依存関係 | ・・・・・・・ |
iniMat |
:マトリックス内の要素をすべて0に初期化する(sub_set02-001) |
||
引数説明 | ・・・・・・・ |
Delta |
(in)Z軸周りの回転角度(ラヂアン) |
||
戻り値説明 | ・・・・・・・ |
4行4列の回転移動変換マトリックス [mat(3,3)形式] |
|||
変数説明 | ・・・・・・・ |
mat(3,3) |
マトリックスを保持する変数 |
||
注意点 | ・・・・・・・ |
引数の角度はラヂアン指定なので注意 |
|||
スクリプト | |||||
'---アフィン変換用マトリックス(Z軸周り回転移動) Function RoteMatZ(Delta) 'Z軸を中心に回転する時の変換マトリックスを取得する '戻値--4行4列の回転移動変換マトリックス[mat(3,3)]形式 '引数-- ' Delta :(in)Z軸周の回転角度(ラヂアン) Dim mat(3,3) ':マトリックスを保持する変数 call iniMat(mat) mat(0,0)=cos(Delta) mat(0,1)=sin(Delta) mat(1,0)=-sin(Delta) mat(1,1)=cos(Delta) mat(2,2)=1 mat(3,3)=1 RoteMatZ=mat end Function |
|||||
使用例 | |||||
call mainSub() sub mainSub() if StartMsg() then ExitSub XShade.message("OKが押されました。") end sub |