# Ballbewegung



## roofter (19. Nov 2013)

Hallo zusammen,

ich stehe gerade ein bisschen auf dem Schlauch. Vielleicht kann mir ja hier jemand helfen! 
Ich möchte eine Ballbewegung programmieren, die GUI wird jede Sekunde aktualisiert und der Ball soll vom aktuellen Punkt zu Ziel fliegen. Weg-Zeit-Gesetz ist klar aber wie mach ich das genau. Hat vielleicht iwer ein Tip für mich?

Gruß Roofter


----------



## HarleyDavidson (19. Nov 2013)

Lies dir mal den Artikel durch. Im Prinzip musst du dann diese Berechnung implementieren:

Wurfparabel ? Wikipedia


----------



## roofter (19. Nov 2013)

Viel zu kompliziert. Ich benötige das ganze viel rudimentärer. Ich brauche eine Methode die einfach Start und Ziel als Argument annimmt (oder so ähnlich) und mir immer den Punkt zur aktuellen Zeit zurück gibt (bis er am Ziel ist).


----------



## HarleyDavidson (19. Nov 2013)

Achso, also eine lineare Bewegung von A nach B.
Dann musst du zunächst die Gerade finden, die durch beide Punkte geht:
Gerade durch zwei Punkte finden
Und dann pro Sekunde die aktuellen Koordinaten berechnen, wo sich der Ball gerade befindet.

In Formel ausgedrückt:

```
Xneu = Xalt + "Entfernung Y" * "Geschwindigkeit" / ( Wurzel ("Entfernung X"^2 + "Entfernung Y"^2) )
Yneu = Yalt + "Entfernung X" * "Geschwindigkeit" / ( Wurzel ("Entfernung X"^2 + "Entfernung Y"^2) )
```


----------



## roofter (19. Nov 2013)

Super genau das hab ich gesucht :toll:

Ich baue das mal und gebe noch mal eine Rückmeldung!!!


----------



## HarleyDavidson (19. Nov 2013)

Ich bin gespannt! :toll:


----------



## roofter (19. Nov 2013)

```
private static Point ballPlayback(Point current, Point target) {

		double dx, dy;

		dx = target.x - current.x;
		dy = target.y - current.y;

		current.x = (int) (current.x + dy * 10 / (Math.sqrt(Math.pow(dx, 2) + Math.pow(dy, 2))));
		current.y = (int) (current.y + dy * 10 / (Math.sqrt(Math.pow(dx, 2) + Math.pow(dx, 2))));
	
		return current;
	}
```

Unterschreibst du mir das?


----------



## HarleyDavidson (19. Nov 2013)

Grundsätzlich unterschreibe ich nichts ohne vorher das Kleingedruckte gelesen zu haben 

Sieht aber doch schon ganz brauchbar aus auf den ersten Blick.

Dann setz das mal in ein Testframe.


----------



## roofter (19. Nov 2013)

So funzt alles :applaus:

Hast mir sehr geholfen!!!

Beste Grüße


----------



## ursteiner (22. Nov 2013)

Hier ist beschrieben wie man das machen kann:

Physik eines Zaubers | chmu blog


----------

