Chapter4. 拡張関数


4.4 入力インタフェース関連

関数名
I@JOYAPOS
機能
I@JOYGET で取得した情報から位置をアナログ情報を取得する。
書式
I@JOYAPOS(JoyNum,PosNum)
《パラメーター》
JoyNumint。取得するジョイスティック番号(0〜15)。
PosNumint。取得する軸の番号(0〜5)。
0ジョイスティックの X 軸の情報(通常は、スティックの左右の動き)。
1ジョイスティックの Y 軸の情報(通常は、スティックの前後の動き)。
2ジョイスティックの Z 軸の情報(通常は、スロットル制御)。Z 軸がなければ、値は 0 となる。
3ジョイスティックの X 軸回転の情報。ジョイスティックにこの軸がなければ、値は 0 となる。
4ジョイスティックの Y 軸回転の情報。ジョイスティックにこの軸がなければ、値は 0 となる。
5ジョイスティックの Z 軸回転の情報(方向舵のコントロールでよく呼び出される)。ジョイスティックにこの軸がなければ、値は 0 となる。
6追加軸uの値(以前には U 軸と呼ばれていた)の情報。この値の意味はジョイスティックで異なる。
7追加軸vの値(以前には V 軸と呼ばれていた)の情報。この値の意味はジョイスティックで異なる。
8〜11最高 4つまでの方向コントローラ(視点インジケータなど)の情報。この位置は、北から(ユーザーの正面側)時計回りの実角度の 100 倍で表される。中心位置は通常 -1(中心位置を 65,535 と報告するドライバもある)と報告する。5 つの位置しか持たないインジケータの場合、コントローラの値は -1、0、9,000、18,000、27,000 のどれか 1 つの値を取る。
 軸番号 3〜5の回転とは、Microsoft の SideWinder についているグリップの回転機能などです。
戻り値int。位置(軸)の情報。
 軸番号 1〜7 は 0〜0xffff(0x8000 が中心となるが誤差がある事に気をつける事)、軸番号 8〜11 はPosNumの説明を参照。
解説
ジョイスティックの実装するボタンの数は製品ごとで異なるばかりか、ボタンの配置は製品ごと異なることに注意すること。
用例
0 番のジョイスティックから、X軸と Y軸の情報を取得する。
I@JOYGET( 0 )
X = I@JOYAPOS( 0 , 0 )
Y = I@JOYAPOS( 0 , 1 )