Funktionsentwurf für Animation < Funktionen < eindimensional < reell < Analysis < Hochschule < Mathe < Vorhilfe
|
Status: |
(Frage) reagiert/warte auf Reaktion | Datum: | 23:29 Sa 02.05.2009 | Autor: | joni1 |
Ich habe diese Frage in keinem Forum auf anderen Internetseiten gestellt.
Hallo,
ich programmiere gerade eine Animation. In einer Schleife muss ich n Mal für jeden Zwischenschritt i einen Faktor aus dem Bereich von 0 bis 1 errechnen, mit dem ich die zu überwindenden Pixel malnehmen kann. Die Animation soll so ablaufen, dass zu Anfang beschleunigt und am Ende ausgebremst wird. In der Mitte soll sie mit gleichbleibender Geschwindigkeit verlaufen.
Ein Beispiel für eine solche Animation ist unter Windows folgendermaßen zu finden: Den Explorer öffnen, links keine Ordner-Baumstruktur anzeigen, und dann links bei einem der Kästchen auf die zwei Pfeile klicken.
Ich habe es zuerst dreigeteilt versucht: Erst den Verlauf einer Normalparabel mit x von 0 bis 1, malgenommen mit einem Faktor, der angibt, welchen Teil die Beschleunigung einnehmen soll (z.B. 0,25, um für 25% der Animation zu beschleunigen); dann ein linearer Verlauf; dann eine im Bereich x und y jeweils von 0 bis 1 diagonal gespiegelte Normalparabel, die das Ausbremsen angibt (ebenfalls mit einem Faktor wie z.B. 0,25), diese dann wiederum so umgerechnet, dass ihr Maximum 1 ist, um auch den Schluss darzustellen.
Doch das hat leider zu einer wellenförmigen Kurve geführt. Falls es jemanden interessiert, hier Beispielwerte, die z.B. mit Excel als Diagramm dargestellt werden können:
0,0
0,027777777777777776
0,1111111111111111
0,25
0,3076923076923077
0,38461538461538464
0,46153846153846156
0,5384615384615384
0,6153846153846154
0,6923076923076923
0,75
0,8888888888888888
0,9722222222222222
1,0
Ich suche nun eine Funktion, mit der ich die einzelnen Faktoren errechnen kann. Sie müsste folgende Parameter berücksichtigen: Den aktuellen Zwischenschritt i (Bereich: 0 bis n - 1; umgerechnet auf Wert mit 1 als Maximum: [mm]$i \div (n - 1)$[/mm]), die Anzahl der Schritte n, Teil der Beschleunigung in Prozent, Teil des Ausbremsens in Prozent, und, wie gesagt, Werte von 0 bis 1 liefern.
Tut mir leid, falls ich am falschen Platz gepostet habe. Das ist alles ziemlich verschachtelt hier und ich weiß auch mit so einigen mathematischen Fachbegriffen nichts anzufangen.
Vielen Dank im Voraus
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 17:37 Do 07.05.2009 | Autor: | joni1 |
Es hat sich mittlerweile erledigt.
|
|
|
|