Akcelerometr Hodnoty z Android / iPhone zařízení

hlasů
2

Snažím zmapovat své pohyby s zařízení se systémem Android do OpenGL scény.

Jsem zaznamenal hodnot akcelerometru pro pohyb Simples: Přesun telefonu (naplocho na stůl), 10 cm dopředu (+ x), a potom 10 cm dozadu (-x).

Problém je v tom, že tyto hodnoty jsou určeny pro výpočet rychlosti a poloze, činí pouze opengl krychle jít kupředu. Zdá se, že záporné zrychlení zaznamenané nestačí ke snížení rychlosti a invertovat jeho pohyb.

Co může být problém?

To je moje funkce, která aktualizuje rychlosti a poloze pokaždé, když nová data je dodáván v:

void updatePosition(double T2) {
    double T = 0.005;
    Vec3 old_pos = position.clone(), old_vel = velocity.clone();

    velocity = old_vel.plus(acceleration.times(T));
    position = old_pos.plus(old_vel.times(T).plus(acceleration.times(0.5 * Math.pow(T, 2))));

}

To je X, Y, Z hodnoty akcelerometr přes celou zachyceného času:

alt textu http://img25.imageshack.us/img25/7528/forces.jpg

Položena 23/04/2010 v 04:25
zdroj uživatelem
V jiných jazycích...                            


1 odpovědí

hlasů
1

Vaše funkce vezme parametr T2, které jsem za předpokladu, že je vstupní urychlovač? ale používáte T, které jste označen jako dvojité T = 0,005; takže funkce bude vždy jít dopředu při statickém rychlostí.

Odpovězeno 23/04/2010 v 09:33
zdroj uživatelem

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