androidで取得したセンサ値から一定時間ごとにx,y,zの平均値を出したいのです!
調べてもわからなかったのでここで質問させていただきます。
ざっくりですが、下のコードを使えばセンサ値(ここでは加速度センサ)をandroidで取得できるのは分かりました。
java
1@Override 2 public void onSensorChanged(SensorEvent event) { 3 4 if (event.sensor.getType() == Sensor.TYPE_ACCELEROMETER) { 5 6 x = event.values[0]; 7 y = event.values[1]; 8 z = event.values[2]; 9 .... 10 }
ここで例えば、
System.out.println(String.valueOf(x)); Log.d("app", String.valueOf((x+y)/2));
と書けば、x軸加速度の値が表示されたり、x軸とy軸加速度の平均が表示されるようになりますが、
下のようにログで表示されたx軸加速度センサ値の最初から3つ目(左番号100102,103104)ごとに平均値を出すにはどうしたらよいのでしょうか?
100 / D/MainActivity: x = 0.64628285 101 / D/MainActivity: x = 0.7228793 102 / D/MainActivity: x = 0.71330476 103 / D/MainActivity: x = 0.69415563 103 / D/MainActivity: x = 0.7324539 104 / D/MainActivity: x = 0.70373017
配列ごとにまとめるのか、3フレームごとに区切るのか...と考えたのですが、コードの書き方が分からなかったのでどなたか教えていただけたら幸いです。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。