Foros - Stratos

Stratos => XNA => Mensaje iniciado por: XÑA en 17 de Noviembre de 2011, 07:52:55 PM

Título: Roll con Phone 7
Publicado por: XÑA en 17 de Noviembre de 2011, 07:52:55 PM
Estoy haciendo una aplicación y necesito el valor del Roll del móvil. La clase Motion me devuelve el valor, pero se divide en un rango de -90º  a + 90º. Claro, el problema lo tengo cuando gira más de 90º

            0º   |  0º
                   |
-90º_____|_______90º
-90º           |                90º
                   |
                 0º    (Cuadrante C)

Yo quiero saber cuando estoy en el cuadrante C.... ¿alguien sabe cómo resolvero? Lo he hecho mirando el aceletrometro, pero claro, sólo me funciona en el caso en el que lo he calculado, que es el móvil en portrait enfrente tuya...
Título: Re: Roll con Phone 7
Publicado por: blau en 17 de Noviembre de 2011, 09:40:48 PM

Sin haber tocado nada. lo normal es que este tipo de funciones devuelva un angulo entre -180 y 180, estas seguro que te lo da asi como pones?
Título: Re: Roll con Phone 7
Publicado por: XÑA en 18 de Noviembre de 2011, 09:47:02 AM
He cogido el ejemplo que hay en el sdk... Simplemente se coge el valor de la propiedad y listo... :(
Título: Re: Roll con Phone 7
Publicado por: Mars Attacks en 21 de Noviembre de 2011, 11:46:47 PM
pitch = arctan(Ax/sqrt(Ay^2+Az^2))
roll = arctan(Ay/sqrt(Ax^2+Az^2))
theta = arctan(sqrt(Ax^2+Az^2)/Az)

Ésas son las fórmulas mágicas dados los acelerómetros en x, y y z.

Razón aquí: http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1246336902
Título: Re: Roll con Phone 7
Publicado por: XÑA en 22 de Noviembre de 2011, 09:49:35 AM
Pero estos valores son sólo basados en el acelerómetro. Yo tengo mucha más precisión, porqué la clase Motion usa el Gyroscope y el Compass.  :-\

Gracias!!  :D
Título: Re: Roll con Phone 7
Publicado por: Mars Attacks en 23 de Noviembre de 2011, 09:54:28 PM
http://www.jeffblankenburg.com/2011/11/05/31-days-of-mango-day-5-gyroscope/

Suerte :)
Título: Re: Roll con Phone 7
Publicado por: XÑA en 24 de Noviembre de 2011, 10:40:52 AM
He preguntado, a ver qué me dicen... :(