簡體   English   中英

使用傳感器管理器獲取手機的方向(滾動,俯仰,偏航)角度?

[英]getting the orientation(Roll, Pitch, Yaw) angles of the mobilePhone using Sensor Manager?

我正在嘗試使用傳感器管理器獲取移動電話的方向(滾動,俯仰,偏航)角度,並根據android開發人員網站上的內容編寫該方法

getInclination(float [] I)從由getRotationMatrix(float [],float [],float [],float [])返回的傾斜矩陣I>計算弧度的地磁傾斜角。 float [] I,float []重力,float []地磁)

計算將向量從設備坐標系轉換為世界坐標系的傾角矩陣I和旋轉矩陣R,該坐標系被定義為>直接正交基。 `,它返回布爾值。

我的問題是,如何使用上述方法獲得方向?

@Override
public void onSensorChanged(SensorEvent event) {
    // TODO Auto-generated method stub

    float []I = new float[9];
    float []R = new float[9];

    if (event.sensor.getType() == Sensor.TYPE_ACCELEROMETER) {
        float x = event.values[0];
        float y = event.values[1];
        float z = event.values[2];

        tvX.setText(Float.toString(x));
        tvY.setText(Float.toString(y));
        //tvZ.setText(Float.toString(sm.getInclination(I)));    
    }
}
Display disp = (Display)getSystemService(Context.WINDOW_SERVICE);
int orientation = disp.getOrientation();

使用以上兩行來獲取手機的方向

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM