
iPhoneのポケコンアプリ、DPC-100用のプログラムで、先ほど書いた金庫破りゲーム

でも別の方法、加速度センサーを使ったものを検証してみた。自分用メモ書きとして書いてみる。
DPC-100には、本体の傾きを検知する命令「ACCEL()」があるが、これによってX(横)、Y(縦)、Z(表裏)共に-1〜1の浮動小数で取得される。
これを利用すると、
このプログラムで、iPhoneの画面を垂直に立てて、DPC-100の画面を0度として、右回りに回した数値は、110 WHILE 1
120 X=ACCEL(0)*180
140 Y=ACCEL(1)*180
160 PRINTF("%d %d ",X,Y)
170 WEND


本体 | 0゜ | 90゜ | 180゜ | 270゜ |
---|---|---|---|---|
X | -180 | 0 | 180 | 0 |
Y | 0 | -180 | 0 | 180 |
Xは0度から増加、180度から減少。Yは90度から増加、270度から減少する。
これを、本体の回転に対して、0〜360の数値として取得したい場合、0〜179度ではXの数値を、180〜359までは(360-X)の数値を取得。180度以上か以下かは、Yの数値で判別すればいい。
続きを読む...