0 Daumen
992 Aufrufe

Ich bin nicht sonderlich gut in Mathe, aber brauche für eine Webseite eine mathematische Formel oder Rechnungsweg. Wie man das programmiert, sollte ich hinkriegen, ich hänge nur bei der Rechnung zu einem Problem, deswegen stelle ich die Frage auch hier :)

Also ich habe einfach gesagt 5 Kontante (genauer gesagt nur 4 Kontakte und eine dynamische Variable, die allerdings auch gegeben ist in dem Fall), die vorgegeben sind und suche 1 Variable x. Es handelt sich hierbei mehr oder weniger um eine Animation. Die Animation hat einen vorgegeben Anfangswert und einen vorgegeben Endwert. Zu jeder dieser beiden Werte gibt es zwei dazugehörige Werte, die grob gesagt für die Zeit stehen. Um das zu verdeutlichen eine kleine Tabelle mit Werten:

Anfangswert Dazugehörige Zeit
x Variable, aber gegeben
Endwert Dazugehörige Zeit

Um ein Beispiel zu machen

10 200
x 250
150 500

In diesem Beispiel geht die Animation von Wert 10 bis 150.
Zu den Zeiten < 200 hat es den Wert 200 (Könnte auch ich mit Javascript überprüfen, falls nicht möglich)
Zu den Zeiten 200 - 500 hat es einen Wert x, in diesem Fall suchen wir den Wert zu der Zeit 250
Zu den Zeiten > 500 hat es den Wert 500 (Könnte auch ich mit Javascript überprüfen, falls nicht möglich)

Ist mein Problem verständlich oder soll ich es nochmal besser erklären? Fall es verständlich sein sollte, wie berechne ich x? Ich habe nur mathematisches Schulwissen und kam dann auf den zusammengesetzten Dreisatz, allerdings kommen bei mir da komplett falsche Ergebnisse raus, auch deshalb weil ich in der Schule nur den einfachen Dreisatz hatte trotz Abitur und nicht genau weiß, wie der geht :) Hat jemand von euch eine Idee und kann den Rechenweg aufzeigen und am besten erklären? Oder ist das gar nicht möglich?

Vielen Dank schonmal

Avatar von

1 Antwort

0 Daumen
 
Beste Antwort
Naja. Willst du das linear machen nimmst du

x = (150 - 10) / (500 - 200) * (y - 200) + 10

Für y setzten wir jetzt 250 ein und erhalten

x = (150 - 10) / (500 - 200) * (250 - 200) + 10 = 100/3 ~ 33
Avatar von 487 k 🚀
Es gibt aber noch andere Formen der Modellierung die hier vielleicht besser wären, wenn z.B. die Bewegung langsam beginnen und langsam abbremsen soll.
Vielen Dank, ich werde es gleich mal in Javascript einbauen und testen, aber scheint zu funktionieren mit dem Taschenrechner. Könntest du mir erklären, wie du darauf gekommen bist, damit ich es verstehe, ein bisschen vielleicht für einen Mathe-Anfänger :)?
Oh sorry, icy habe vergessen zu fragen, wie ich eine Beschleunigung einbauen kann in die Bewegung? Das geht mit Wachstumskurven, wenn ich mich richtig erinnere an Mathe?
Ja. eine Wachstumsfunktion geht. Es geht aber auch in Form einer Parabel. Quadratische gleichung sind einfacher. Oder als qubische Gleichung.
Danke, könntest du noch erklären, wie du auf die obige Gleichung gekommen bist? Nach erweitertem Dreisatz sieht das nicht aus oder?
Das ist die Lineare Funktion in der 2-Punkt-Form. Die kann man benutzen wenn man zwei feste Punke P1(x1, y1) und P2(x2, y2) gegeben hat:

y = (y1 - y2) / (x1 - x2) * (x - x1) + y1
Danke, jetzt weiß ich in Zukunft, wie man sowas berechnet. Vielen Dank nochmal für die Hilfe

Sorry, ich bin es nochmal, ich habe die Gleichung nun eingebaut, die funktioniert auch problemlos, allerdings nur wenn der Anfangswert kleiner ist als der Endwert. Wenn man also von folgender Situation ausgeht:

300 10
x y (Variable, aber gegeben)
0 300

Dann geht die Funktion nicht. Ich habe versucht bei deiner Gleichung jeweils den Anfangswert und den Endwert miteinander auszutauschen, aber auch ohne Erfolg. Wie muss ich die Gleichung umstellen, falls der Anfangswert größer ist als der Endwert?

Ein anderes Problem?

Stell deine Frage

Willkommen bei der Mathelounge! Stell deine Frage einfach und kostenlos

x
Made by a lovely community