physikproblem, federschwingungen und massentraegheit (war: Brauche ebenfalls Hilfe)
-
Nimm z.Bsp. den Borland Builder und mal dir einen Kreis auf ein Image... 3 Minuten fertig... Nun zu deinem Problem: Du brauchst eine Bewegungsgleichung! Die erhälts du über die Kräfte die auf deine Masse wirken + (evtl. eine Kraft die dein System fremderegt). Ich werde sie dir aber hier nicht hinschreiben, weil sie das Kernelement deines Problems ist. Mach dir Gedanken und schreibe deine Ideen auf, beim Fehlerkorrigieren wird dir dann jeder gerne weiterhelfen.
-
Was würde mir denn die Mathematik nutzen, wenn ich nichtmal weiß, ob sie richtig ist? Im Prinzip ist es doch egal, wo man da anfängt und ich würde gern erstmal was sehen, bevor ich mit einer Formel experimentier.
Ihr könntet doch auch mal eine Ausnahme machen und mir so helfen, oder?
-
Dann wirf etwas ins Feld!!! Bin schließlich kein Hausaufgabenlöser von dem du die fertige Aufgabe geliefert bekommst. Ein paar Tips hast du schließlich schon.
-
So, da bin ich wieder.
Ich hab jetzt mal soweit alles gemacht und jetzt stecke ich in der Animation fest.
Ich wollte mal die Kugel hin und her schwingen lassen, leider klappt das nicht.Könnt ihr mir da bitte helfen?
Was brauch ich, damit die Kugel hin und her schwingt?
-
Du brauchst einen SetTimer-Aufruf (mit ca. 50 ms) und dann noch jemand der in der OnTimer (bzw. WM_TIMER) ein Invalidate aufruft.
Und in der OnPaint (bzw. WM_PAINT) musst Du jetzt einfach die aktuelle Zeit erfragen und dann abhängig von der Uhrzeit (oder GetTickCount, wenn Dein Programm nicht länger als 49 Tage läuft) dann die Kugel Zeichnen...Natürlich musst Du nicht die Echtzeit nehmen sondern kannst Dir auch eine virtuelle Zeit bei jedem WM_TIMER hochzählen und daraus dann die Position der Kugel zeichnen lassen.
-
@günni55: Du trampelst auf der Stelle!
-
Jochen Kalmbach schrieb:
Du brauchst einen SetTimer-Aufruf (mit ca. 50 ms) und dann noch jemand der in der OnTimer (bzw. WM_TIMER) ein Invalidate aufruft.
Und in der OnPaint (bzw. WM_PAINT) musst Du jetzt einfach die aktuelle Zeit erfragen und dann abhängig von der Uhrzeit (oder GetTickCount, wenn Dein Programm nicht länger als 49 Tage läuft) dann die Kugel Zeichnen...Natürlich musst Du nicht die Echtzeit nehmen sondern kannst Dir auch eine virtuelle Zeit bei jedem WM_TIMER hochzählen und daraus dann die Position der Kugel zeichnen lassen.
Einen Timer habe ich, nur fliegt die Kugel nicht in der Bahn, wie ich sie gern hätte. Sie fliegt in eine Richtung, dann springt sie wieder zurück.
helmuth schrieb:
@günni55: Du trampelst auf der Stelle!
Ich frage mich, was die Kommentare sollen.
Wenn du mir nicht helfen willst, dann spar dir die Zeit und mach was sinnvolles.
-
günni55 schrieb:
Einen Timer habe ich, nur fliegt die Kugel nicht in der Bahn, wie ich sie gern hätte. Sie fliegt in eine Richtung, dann springt sie wieder zurück.
Dann scheinst du irgendwo formelmäßig einen Fehler gemacht zu haben - ohne Code aber schwer, genaueres zu sagen...
-
Also wenn du das richtig schön grafisch und physikalisch darstellen willst, dann musst du da mit OpenGL rangehen. Es gibt ne menge sehr guter NeonHelium-Tutorials (auf deutsch: www.codeworx.org/opengl_tuts.php oder auf englisch: http://nehe.gamedev.net/) die sich alle.
Skeptisch? Schau dir einfach mal "Lesson 40"(englisch) an und du wirst verstehen.

Es gibt noch eine möglichkeit schnell grafisch physikalisch richtige Animationen zu kreieren und das am einfachsten und schnellsten mit QBasic(ich schäme mich jetzt schon ein bisschen das hier überhaupt erwähnt zu haben) Wenn du trotzdem interressiert bist: prometheuz@web.de
-
Normalerweise wird sowas (Feder-Masse-Dämpfer-System) mit Hilfe von Differentialgleichungen beschrieben und ausgerechnet.
In Differentialgleichnungen steht z.B. nicht die Beschleunigung sondern die Ableitung der Geschwindigkeit oder die zweite Ableitung des Weges. Wenn man das kann, ist es nicht weiter schwer. Man sollte allerdings damit umgehen können, sonst bringt einem die Formel nichts.
Ich hoffe du kommst weiter
Christian