{MX} Flugbahn für Objekte

Status
Nicht offen für weitere Antworten.

killkrog

Erfahrenes Mitglied
Hi Folks,

ich bräuchte wieder mal Hilfe. Also, ich habe ein Objekt, mit 2 Variablen, die einmal die Richtung (in Grad) und die Anfangsgeschwindigkeit des Objekts angeben. Wie sieht das AS aus, mit dem ich die Flugbahn dieses Objekts berechnen kann.

MfG
Killkrog
 
hallöle.. ich werd mal versuchen das zu erklären was ich letztes jahrin physik darüber gelernt hab:

also erstmal vorweg: alpha ist der winkel mit dem es abgeschossen wird ( horizontal = 0° ), V0 = startgeschwindigkeit, g ist die beschleunigung durch die massenanziehung der erde( = 9,81 m/s) und t ist die zeit.

die bewegung in x-richtung ist: cosinus.alpha * V0 * t

die in y-richtung ist: sinus.alpha * V0 * t - 0.5 * g * t²

das zusammen ergibt dann die wurfparabel.. soweit zur physik, aber in flash muss man dann ja aufpassen, dass man für die zeit nicht einfach die anzahl der frames nehmen kann sonst ging das alles ziehmlich schnell. also musst du noch im script nen zähler mitlaufen lassen der pro frame um "1/framesprosekunde" erhöht wird und das ist dann die zeit..

bei fragen immer hier her :)

*sancho*
 
@ Skyla: bidde was? :confused:

@ killkrog: warte noch bevor du das oben in ein script umsetzt. das kann so nicht klappen, weil das für ein normales koordinatensystem gilt, und da ist die y-achse nach oben gerichtet. bei flash geht sie aber nach unten, und deswegen muss man noch einige änderungen vornehmen.. aber ich arbeite dran.

*sancho*
 
ok, ich denke jetzt hab ich's..
also: weil die y-achsee in flash halt anders ist muss man bei dem winkel einfach ein minus davor setzen. und damit das ganze realistisch aussieht, muss man auch an der zeit was rumfummeln, sonst isses irgendwie zeitlupe :) ausserdem musste ich eben mal wider feststellen, dass flash mit Math.cos oder .sin die winkelbeziehungen von RADIANTEN berechnet. also muss man auch das in den formeln berücksichtigen, und raus kommt dann das hier:
PHP:
t = 0 //zeit null setzen
v = 50 // startgeschwindigkeit
alpha = -45 //abschusswinkel (hier ist der winkel 45° aber für die flugkurve in flash muss man -45° nehemen)

kugel.onEnterFrame = function() {
	t += .4 //hier einfach mal ausprobieren was zur framezahl des projektes passt
	this._x = (Math.cos(Math.PI/180 *alpha) * v * t) //Math.PI/180 * alpha berechnet den radianten des abschusswinkels
	this._y = (Math.sin(Math.PI/180 *alpha) * v * t) - ( 0.5 * -9.81 * t * t )
}

so das müsste dann so eigentlich funzen..
als hilfe hab ich auch nochmal die .fla geuppt

*sancho*
 

Anhänge

  • schiefer_wurf_flugbahn.zip
    2,7 KB · Aufrufe: 1.104
Booooahhh !!!
Hey Sancho ! Dein Physiklehrer kann was. Sauber gelöst !

Meinte zuerst, dass die Frage ein bisschen zu tricky sei für dieses board-also mehr was für den oop bereich im flash-forum. Dort ist aber im moment der server down.:)

Wenn Du noch mehr so zeugs drauf hast: unaufgefordert her damit aber bitte !

Wir könnten ja so nen mathe-workshop eröffnen, mit sancho als projektleiter.

cool.
 
Wenn Du noch mehr so zeugs drauf hast: unaufgefordert her damit aber bitte !
hmm, was ich drauf hab seh ich leider erst wenn ich das problem vor mir liegen habe, deswegen lässt meine kreativität auch zu wünschen übrig :(
Wir könnten ja so nen mathe-workshop eröffnen,
gerne, warum nicht:rolleyes:
..mit sancho als projektleiter.
das weniger :) ich denke da sind dann andere aus dem forum besser für geeignet

*sancho*

//edit
aso, was ich noch fragen wollte:
ich weis das oop für objekt orientiertes programmieren oder so steht, aber was heisst das jetzt direkt? ist oop einfach dann wenn man ein script auf einen mc schreibt, oder muss da was bestimmtes erfüllt sein damit man es oop nennen darf?
 
Zuletzt bearbeitet:
Ich hätt's nie geschafft. Aber wenn ich Dein Script sehe, kann ich's nachvollziehen. Bräuchte aber auf jeden Fall ne Formel.

Was ich schon immer wollte, wäre eine Funktion, wo du als parameter die x und y Koordinate übergeben kannst und dein mc bewegt sich dann bei aufruf der funktion zu diesem punkt. zuerst einmal sicher in einer geraden, dann vielleicht in kurven-bewegungen.

so eine mc-methode wäre echt was nützliches zudem hab ich's noch nie gesehen. Das wäre dann mehr als nur oop für auf dem rücken liegende schildkröten....

;)
 
ich hab zwar glaub ich nicht so 100% verstanden wie das genau aussehen soll, aber das ist bei rausgekommen :)
*sancho*
 

Anhänge

  • mathebahn1.zip
    3,1 KB · Aufrufe: 516
Status
Nicht offen für weitere Antworten.
Zurück