Я пытаюсь получить значения вращения оси z с помощью гироскопа в Android, я хочу просто отобразить градусы, по которым телефон поворачивается вокруг оси z на экране. Поэтому, если я держу телефон вертикально с экраном, обращенным ко мне, и поверните его на 90 градусов вправо, пока экран все еще смотрит на меня, я хочу, чтобы он показывал 90 градусов на экране.Как получить значения вращения для одной оси с помощью гироскопа Android?
код у меня до сих пор является довольно простым, но я не могу показаться, чтобы найти примеры вращающихся только на одной оси:
У меня есть вид текста, который просто печатает данные из onSensorChanged()
mySensorManager = (SensorManager)getSystemService(Context.SENSOR_SERVICE);
List<Sensor> mySensors = mySensorManager.getSensorList(Sensor.TYPE_GYROSCOPE);
if(mySensors.size() > 0){
mySensorManager.registerListener(mySensorEventListener, mySensors.get(0), SensorManager.SENSOR_DELAY_UI);
}
private SensorEventListener mySensorEventListener = new SensorEventListener() {
@Override
public void onSensorChanged(SensorEvent event) {
textviewX.setText("X-Rotation: " + String.valueOf(event.values[0]));
textviewY.setText("Y-Rotation " + String.valueOf(event.values[1]));
textviewZ.setText("Z-Rotation " + String.valueOf(event.values[2]));
}
@Override
public void onAccuracyChanged(Sensor sensor, int accuracy) {
}
};
данные оси г он печатает, когда я повернуть телефон на оси просто переключается между 0, -0, 1 и 2, в случайном порядке, как телефон вращается. Может кто-нибудь помочь мне здесь? Благодарю.
также смотрите здесь ... http://stackoverflow.com/questions/13679568/using-android-gyroscope-instead-of-accelerometer-i-find-lots-of-bits-and-pieces – Nostradamus