Ich versuche kinetische Scrolling eines Listenobjekts zu implementieren, aber ich habe ein Problem, die Menge der Reibung (Dauer) basierend auf der Geschwindigkeit zu bestimmen.Dauer für kinetische Scrolling (Momentum) basierend auf Geschwindigkeit?
meine applyFriction() Methode reduziert die Geschwindigkeit des Scroll-Objekts basierend auf einer duration -Eigenschaft gleichmäßig. Die Verwendung derselben Dauer (IE: 1 Sekunde) für jede Bewegung erscheint jedoch nicht natürlich.
Für Bewegungen mit einer kleinen Geschwindigkeit (IE: 5 - 10 Pixel) scheint eine 1 Sekunde Dauer gut zu sein, aber Reibung über eine Sekunde Dauer für Bewegungen mit hoher Geschwindigkeit (IE: 100+ Pixel) beim Scrollen Das Objekt wird langsamer und stoppt viel schneller.
Im Wesentlichen versuche ich, die angemessene Dauer für jede Bewegung zu bestimmen, so dass sowohl kleine als auch große Geschwindigkeitswerte eine übereinstimmende Reibung teilen, so dass das sich bewegende Objekt immer ein konstantes "Gewicht" zu haben scheint.
Gibt es einen allgemeinen Algorithmus zur Bestimmung der Dauer der kinetischen Bewegung basierend auf verschiedenen Geschwindigkeiten?
Anmerkung: ich bin Programmierung in Actionscript 3.0 und die Tween-Klasse unter Verwendung der Geschwindigkeit eines sich bewegenden Objekts über eine Dauer zu reduzieren.
oder proportional zur Geschwindigkeit im Quadrat ... –
der Tat; Modellierung Reibung kann eine Menge seltsames Verhalten, d. h. Haftreibung (Reibungskraft, die genau extern angelegte Kraft, bis sie eine Schwelle überschreitet), ziehen (v^2), etc., geben. – kwantam