我目前正在编写一个android ar应用程序,我有一个问题,我的方位角计算取决于初始设备倾斜。
我用旋转矢量传感器得到方位角,高度和倾斜。
当我启动我的应用程序,手机是垂直于地面,我有良好的方位从北方。当我启动应用程序,手机与地面平行时,我的价值观不好。我也有奇怪的价值观,当我改变设备倾斜。
这是我的密码:
public void onSensorChanged(SensorEvent event)
{
if (event.sensor.getType() == sensor.TYPE_ROTATION_VECTOR)
{
SensorManager.getRotationMatrixFromVector(rotationVectorMatrix, event.values);
SensorManager.remapCoordinateSystem(rotationVectorMatrix, SensorManager.AXIS_X, SensorManager.AXIS_Z, rotationMatrix);
SensorManager.getOrientation(rotationMatrix, orientation);
...
}
}
1条答案
按热度按时间laik7k3q1#
要获得方位角,可以使用加速度计和磁场传感器。您可以使用以下代码来记录方位角值。
来源