デバイスモーション値の取得処理の開始
JsdevmStart
(プラグイン / モジュール : mod_dish-js-devmotion)
# HSP3Dish.jsでのみ動作します。 デバイスモーション値の取得処理を開始します。 ただし、URL が https:// でないとデバイスモーション値の取得はできないため注意してください。 ============================== HSP3.7β10 から一部のデバイスモーション値は標準で取得できるようになりました。 jsdevm_accel_x, jsdevm_accel_y, jsdevm_accel_z jsdevm_orient_alpha, jsdevm_orient_beta, jsdevm_orient_gamma これらは『センサーを使用する』をチェックすることでHSP3のシステム変数から同じ値を取得することができます。 他のセンサー値も使用したい場合は mod_dish-js-devmotion.hsp を利用してください。 このモジュールを利用する場合は『センサーを使用する』にチェックをしないでください。処理が重複してしまいます。 ============================== iOSではユーザーに直接画面をタッチしてもらいデバイスモーション値取得の許可を得なければいけません。 すでに許可を得ている場合は jsdevm_allowed に「1」が代入されています。 取得を開始すると jsdevm_accel_gx などの各種変数値に常に最新のデバイスモーション値が代入され続けます。 停止したい場合は JsdevmStop を使用してください。 再開したい場合は再度 JsdevmStart を使用してください。 デバイスのセンサー有無やブラウザによってはデバイスモーション値を取得できず、使用したい変数値を見ても変化がない場合があります。
#include "hsp3dish.as"
#include "ezlocal-dish-js.hsp"
ezLocalJS
#include "mod_dish-js-devmotion.hsp"
JsdevmStart
*main
redraw 0 : color : pos 0,0
mes "加速度(X,Y,Z) : "
mes strf(" (% .02f, % .02f, % .02f) m/s^2",jsdevm_accel_x,jsdevm_accel_y,jsdevm_accel_z)
mes ""
mes "加速度(X,Y,Z) [重力込み] : "
mes strf(" (% .02f, % .02f, % .02f) m/s^2",jsdevm_accel_gx,jsdevm_accel_gy,jsdevm_accel_gz)
mes ""
mes "端末向きの変化速度(alpha,beta,gamma) : "
mes strf(" (% .02f, % .02f, % .02f) deg/s",jsdevm_rotate_alpha,jsdevm_rotate_beta,jsdevm_rotate_gamma)
mes ""
mes "端末の回転量(alpha,beta,gamma) : "
mes strf(" (% 04d, % 04d, % 04d) deg",jsdevm_orient_alpha,jsdevm_orient_beta,jsdevm_orient_gamma)
redraw 1
await (1000 / 30)
goto *main
| JsdevmStop | デバイスモーション値の取得処理を停止 | (mod_dish-js-devmotion) |
| jsdevm_allowed | デバイスモーション値取得が許可されてるか | (mod_dish-js-devmotion) |
| jsdevm_accel_gx | デバイスのX軸方向の重力度込みの加速度 | (mod_dish-js-devmotion) |
| jsdevm_accel_gy | デバイスのY軸方向の重力度込みの加速度 | (mod_dish-js-devmotion) |
| jsdevm_accel_gz | デバイスのZ軸方向の重力度込みの加速度 | (mod_dish-js-devmotion) |
| jsdevm_accel_x | デバイスのX軸方向の加速度 | (mod_dish-js-devmotion) |
| jsdevm_accel_y | デバイスのY軸方向の加速度 | (mod_dish-js-devmotion) |
| jsdevm_accel_z | デバイスのZ軸方向の加速度 | (mod_dish-js-devmotion) |
| jsdevm_rotate_alpha | デバイスのZ軸方向の回転速度 | (mod_dish-js-devmotion) |
| jsdevm_rotate_beta | デバイスのX軸方向の回転速度 | (mod_dish-js-devmotion) |
| jsdevm_rotate_gamma | デバイスのY軸方向の回転速度 | (mod_dish-js-devmotion) |
| jsdevm_orient_alpha | デバイスのZ軸を中心とした回転量 | (mod_dish-js-devmotion) |
| jsdevm_orient_beta | デバイスのX軸を中心とした回転量 | (mod_dish-js-devmotion) |
| jsdevm_orient_gamma | デバイスのY軸を中心とした回転量 | (mod_dish-js-devmotion) |
| sample10_devmotion.hsp | #include "hsp3dish.as" #include "ezlocal-dish-js.hsp" e.. |
| sample11_sunadokei.hsp | title "OBAQ 砂時計" qreset OBAQの初期化 frame = 0 num_suna = 0.. |
| プラグイン / モジュール | mod_dish-js-devmotion |
| バージョン | 1.0.1 |
| 作成日 | 2025/2/9 |
| 著作者 | MIZUSHIKI |
| URL | https://suwa.pupu.jp/HSP/index.html |
| 備考 | HSP3Dish.jsでデバイスモーション値を取得できるようになります。[Web API利用] |
| タイプ | 拡張命令 |
| グループ | 拡張入出力制御命令 |
| 対応環境 | ・Windows 版 HSP |