[英]Question about the rotation of X axis on Android
我想使用Android傳感器檢測繞X軸的正確旋轉。 谷歌搜索后,我找到以下代碼:
public void onSensorChanged(SensorEvent event) {
Sensor sensor = event.sensor;
switch(sensor.getType()) {
case Sensor.TYPE_ACCELEROMETER:
mAcc = event.values.clone();
break;
case Sensor.TYPE_MAGNETIC_FIELD:
mMag = event.values.clone();
break;
}
if (mAcc == null || mMag == null) return;
float R[] = new float[9];
if (SensorManager.getRotationMatrix(R, null, mAcc, mMag)) {
SensorManager.getOrientation(R, mOrientation);
}
}
mOrientation [1]表示圍繞X軸的弧度。 但是,該值非常奇怪。
1,2之間的狀態具有與2,3之間的狀態相同的旋轉值。 我怎么知道我的手機處於哪個狀態?
請驗證您的讀數。
您報告的標志和范圍與之完全不同步
在Android設備上預期會發生什么。
developer.android.com/reference/android/hardware/Sensor.html#TYPE_ORIENTATION
注意:由於傳統原因,此傳感器類型存在,請改用getRotationMatrix()和remapCoordinateSystem()和getOrientation()來計算這些值。
問候
CVS @ 2600赫茲
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.