Jak převést data snímače pohybu z iPhone na Android?

hlasů
3

Mám nějaké vzorky snímače pohybu, které byly zaznamenány s iPhone. Teď jsem do výpočtu vzdálenost mezi uživatelem gesta a gesta, který byl zaznamenán na iPhone.

Můj problém je, že data ze senzorů na iPhone je zastoupen jiným způsobem údaje o jejich android senzoru. Pokud nemám přesunout iPhone získám data mezi -1 a 1, když se nepohybují zařízení Android získám hodnoty kolem 9, protože čidlo měří gravitační síla.

Nemohl jsem přijít na to, jak převést snímač iPhone čtení jejich porovnání s mými android snímaných hodnot. Datový snímač pohybu android je vysvětlen zde . A dokumentace iPhone obsahuje tento pdf .

Položena 11/08/2010 v 11:29
zdroj uživatelem
V jiných jazycích...                            


1 odpovědí

hlasů
2

Zjistil jsem stejný problém při portování aplikaci pro iPhone v Android. Našla jsem jedno řešení. Je to práce pro mé žádosti. Doufám, že to pomůže.

  1. Zjistil jsem, že hodnota zrychlení iPhone je mezi -2,5 a +2,5. https://discussions.apple.com/thread/1743220?start=0&tstart=0
  2. Zjistil jsem, že Class Sensor Androidu má způsob, jak najít maximální hodnotu. http://developer.android.com/reference/android/hardware/Sensor.html#getMaximumRange ()

Teď jsem si jednoduchý výpočet jako následující

public void onSensorChanged(SensorEvent event) {
        float t = 2.5f / accMaxValue;
        Log.i(TAG,"onSensorChanged X "+ (event.values[0]*t) +"\t\t Y "+ (event.values[1]*t)+"\t\t Z "+ (event.values[2]*t) );
    }

Získat Maximální hodnota od čidla

    mSensorManager = (SensorManager)getSystemService(SENSOR_SERVICE);
    mAccelerometer = mSensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);
    accMaxValue = mAccelerometer.getMaximumRange();

Doufám, že to pomůže...

Odpovězeno 27/07/2011 v 12:59
zdroj uživatelem

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