Korzystając event.accelerationIncludingGravity
na Androida, to zwraca wartośćKonwersja przyspieszenia z grawitacją do czystego przyspieszenia?
x: -0.2
y: +0.1
z: +9.1
gdy spoczywa na płaskiej powierzchni. Jednak chcę uzyskać przyspieszenie bez grawitacji, ale event.acceleration
nie jest obsługiwane. Czy istnieje sposób na konwersję przez Math? W HTML5Rocks jest przykład usuwania współczynnika grawitacji, ale wydaje się, że nie działa.
// Convert the value from acceleration to degrees acceleration.x|y is the
// acceleration according to gravity, we'll assume we're on Earth and divide
// by 9.81 (earth gravity) to get a percentage value, and then multiply that
// by 90 to convert to degrees.
var tiltLR = Math.round(((acceleration.x)/9.81) * -90);
var tiltFB = Math.round(((acceleration.y + 9.81)/9.81) * 90 * facingUp);
Example script graphing acceleration values (nie z HTML5Rocks)
Właśnie przetestowałem, że '9.86 - e.acceleration.z' działa poprawnie, gdy urządzenie jest skierowane do góry. Ale gdy tylko ją przechylę, czynnik grawitacji zaczyna wpływać również na inne osie. [Ten skrypt] (http://developer.android.com/reference/android/hardware/SensorEvent.html#values) Myślę, że jest to pomocne, ponieważ wymaga ono grawitacji, ale nie wiem, jak to zrobić . (i jest napisany w Javie) –
Tak, natywna funkcjonalność sprzętu wydaje się być na razie lepsza niż rozwój mobilny. –