2009-03-30 12 views
2

Ist es möglich, die Geschwindigkeit zu bestimmen, mit der jemand sein iPhone schüttelt? Dies wäre der Zeitpunkt, an dem sie sich zum Endpunkt bewegen, wo sie jetzt zum Ursprung zurückgehen. Im Grunde ist es ein Schlag, den ich die Geschwindigkeit von messen möchte. Diese Diskussion kommentiert die Anfangsgeschwindigkeit: http://discussions.apple.com/message.jspa?messageID=8297689#8297689. Es scheint, dass die wichtige Komponente der Entfernung im iPhone fehlt, um ein gutes Maß an Geschwindigkeit zu bekommen.Bestimmen der Geschwindigkeit der Erschütterung

+2

Es ist wahrscheinlich nur ich, aber das erste, was ich dachte, als Lesen diese Frage ist die Anwendbarkeit auf die p0rn Industrie :-) Apologies im Voraus, wenn das jemand beleidigt. – paxdiablo

Antwort

3

Sicher, es klingt wie alles, was Sie tun müssten, wäre die Beschleunigung zweimal zu integrieren, um die zurückgelegte Strecke zu erhalten. Betrachten Sie zum Beispiel Calculate the position of an accelerating body after a certain time

Beachten Sie, dass Sie die Schwerkraft von der gemessenen Beschleunigung subtrahieren müssen, um die kinetische Beschleunigung zu erhalten, die Sie integrieren sollten. Um das zu tun, re: GoatRiders Kommentar: Ich könnte versuchen, die letzte gemessene Beschleunigung zu speichern, deren Größe der Schwerkraft gleich war (ich denke, das ist 1 in iPhone-Einheiten?). Dann subtrahieren Sie für jede Beschleunigungsmessung, deren Größe größer als 1 ist, die letzte bekannte Erdbeschleunigung - dies muss eine Vektorsubtraktion sein - und verwenden Sie diese als kinetische Beschleunigung. Dies setzt natürlich voraus, dass der Benutzer das Telefon während des gesamten Wischens in der gleichen Ausrichtung hält, was meiner Meinung nach ungefähr richtig wäre.

Leider gibt es keine Technik, mit der man zwischen Gravitationsbeschleunigung und kinetischer Beschleunigung im Allgemeinen unterscheiden kann - das heißt, ein entschlossener Benutzer könnte immer einen Weg finden, jeden Algorithmus zu täuschen, der Ihnen vielleicht einfällt. (Trivia: das heißt das Äquivalenzprinzip, und es ist die Grundlage von Einsteins Allgemeine Relativitätstheorie)

+0

Wie würden Sie den Shake von der Neigung/Schwerkraft unterscheiden? – GoatRider

+0

Ist das nicht das, was er am letzten Satz des zweiten Absatzes erklärt hat? – 4thSpace

+0

Wie können Sie sicherstellen, dass Ihre Geschwindigkeitsberechnungen sogar innerhalb des richtigen Ballparks liegen? – 4thSpace

2

Sie müssen die Berechnungen selbst durchführen. Jedes Beschleunigungsereignis, das Sie erhalten, wird Ihnen die relativen Beschleunigungskräfte mitteilen, die auf dem Beschleunigungsmesser registriert sind, und den Zeitpunkt, zu dem das Ereignis aufgezeichnet wurde. Sie müssen über mehrere Ereignisse probieren und interpolieren. Hier weitere Informationen über die Beschleunigung Ereignis selbst:

UIAcceleration Class Reference

+0

Sieht so aus, als würde ich eine Radarpistole brauchen. – 4thSpace

Verwandte Themen