專案效果
專案結構
activity_main.xm 核
l心**:
mainactivity
public class mainactivity extends activity
private sensoreventlistener listener=new sensoreventlistener() else if(event.sensor.gettype()==sensor.type_magnetic_field)
float r = new float[9];
float values = new float[3];
//將兩個值傳入到getrotationmatrix的方法中就可以得到乙個包含旋轉矩陣的r陣列。
//其中r是乙個長度為9的float陣列,getrotationmatrix方法計算出的旋轉資料就會賦值到這個陣列當中
//第二個引數是乙個用於將地磁向量轉換成重力座標的旋轉矩陣,通常定位null值即可。
//第三,第四個引數分別就是加速度感測器和地磁感測器輸出的values值
sensormanager.getrotationmatrix(r, null, accelerometervalues, magneticvalues);
/*得到r陣列之後,接著就可以呼叫getorientation的方法來計算手機的旋轉資料了。
* values[0]記錄著手機圍繞z軸的旋轉弧度
* values[1]記錄著手機圍繞x軸的旋轉弧度
* values[2]記錄著手機圍繞x軸的旋轉弧度
* 計算出的資料都是以弧度為單位的,因此轉化成角度呼叫math.todegrees(values[0])
* values[0];的取值範圍是-180度到+180度,其中+-180度表示正南方向,0度表示正北方向,
* -90度表示正西方向,90度表示正東方向
* */
sensormanager.getorientation(r, values);
log.e("1", "value[0] is"+math.todegrees(values[0]));
//將計算出來的旋轉角取反,用於旋轉指南針背景圖
float rotatedegree=-(float) math.todegrees(values[0]);
if (math.abs(rotatedegree-lastrotatedegree)>1)
}@override
public void onaccuracychanged(sensor sensor, int accuracy)
};@override
protected void ondestroy()
}}//class
方向感測器
方向感測器是加速度感測器 gsensor 的廉價替代品,能完成gsensor的一些功能。下面根據網上資料介紹其原理。rohm四方向感測器rpi 1031簡介 工作原理 1.通過光學原理實現 內部有發光二極體乙個,光敏接收三極體兩個 另外有一顆圓柱型的遮光物 如圖所示 對應的電路圖如下 2.通過圓柱型...
方向感測器
方向感測器的使用 sensor sensor sensormanager.getdefaultsensor sensor.type orientation 可以通過以上的方法獲取方向感測器,可以安卓早就廢棄了這個感測器型別,雖然 還是有效的,但已經不再推薦這麼寫了。事實上,android獲取手機旋轉...
Android開發之方向感測器的
android開發之方向感測器的使用 東風破 android中的方向感測器在生活中是乙個很好的應用,典型的例子是指南針的使用,我們先來簡單介紹一下感測器中三個引數x,y,z的含義,以一幅圖來說明。圖 1 補充說明 圖中的座標軸x,y,z和感測器中的x,y,z沒有任何聯絡 如上圖所示,綠色部分表示乙個...