Android: Převod akcelerometr výstup z telefonu souřadnic do světa souřadnicový systém

hlasů
0

Pracoval jsem na projektu Android, který využívá hodnot akcelerometru.

Nicméně výstup akcelerometr je definován z hlediska souřadného systému telefonu. ale potřebuji, aby byly ve světovém souřadnicovém systému ,,

Má každý subjekt znát způsob, jak převést výstupních hodnot acceleometer být z hlediska světových souřadnic?

Pozdravy,

Moustafa

Položena 08/01/2011 v 01:09
zdroj uživatelem
V jiných jazycích...                            


2 odpovědí

hlasů
0

Pokud máte na mysli x, y, z souřadnic, nemohl prostě je vynásobí -1? To je to, co jsem udělal, když jsem poprvé začal pohráváte s akcelerometrem:

package com.semajhan.android.accelerometer;

import android.app.Activity; import android.hardware.Sensor; import android.hardware.SensorEvent; import android.hardware.SensorEventListener; import android.hardware.SensorManager; import android.os.Bundle; import android.widget.TextView;

public class Akcelerometr rozšiřuje aktivity {

SensorManager sensorManager;
Sensor accelerometer;
TextView textView;
private SensorEventListener sensorEventListener = new SensorEventListener() {

    public void onAccuracyChanged(Sensor sensor, int accuracy) {

    }

    public void onSensorChanged(SensorEvent event) {

        float x = event.values[0];
        float y = event.values[1];
        float z = event.values[2];
        update(x, y, z);
    }
};
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    textView = new TextView(this);
    setContentView(textView);
    sensorManager = (SensorManager)getSystemService(SENSOR_SERVICE);
    accelerometer = sensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);
}

public void update(float x, float y, float z) {

    textView.setText("x: " + x + " y: " + y + " z: " + z);
}

protected void onResume() {
    super.onResume();
    sensorManager.registerListener(sensorEventListener, accelerometer, SensorManager.SENSOR_DELAY_NORMAL);
}

protected void onPause() {
    super.onPause();
    sensorManager.unregisterListener(sensorEventListener);
}

}

Odpovězeno 08/01/2011 v 01:16
zdroj uživatelem

hlasů
0

http://developer.android.com/reference/android/hardware/SensorEvent.html#values jak to říká tady cení - řadu zrychlení, nikoliv souřadnic ..

Mohl byste mi cantact, právě teď, snažím se dostat coordsinates mobilního telefonu (není součástí globální ale místní z nich) a není si jistý moje věci to funguje správně.

Myšlenka je, že dostanete světové COORDS telefonu na konfiguraci (trochu kalibraci) a pak aplikovat souřadnic telefonu do nového systému

Odpovězeno 04/02/2011 v 18:38
zdroj uživatelem

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more