Guten Morgen zusammen,
ich möchte für ein Privates Projekt, ein Objekt von Punkt(A) nach Punkt(B) mit einer variablen Geschwindigkeit bewegen lassen.
Nun habe ich hier im Forum schon einiges gefunden und weiß das man dazu Vektoren benutzt.
Die reine Bewegung von (A) nach (B) entlang einer graden Linie kann ich wie folgt realisieren.
Nun zu meiner Frage:
Wie kann ich eine Kurven zu einer neuen Position realisieren?
Also wenn ich in der Bewegung zu Punkt(B) eine Richtungsänderung habe, soll diese nicht abrupt sein sondern in einer Kurve zu der neuen Position.
Ich hoffe ich konnte mich verständlich ausdrücken
Vorab schon mal Danke
ich möchte für ein Privates Projekt, ein Objekt von Punkt(A) nach Punkt(B) mit einer variablen Geschwindigkeit bewegen lassen.
Nun habe ich hier im Forum schon einiges gefunden und weiß das man dazu Vektoren benutzt.
Die reine Bewegung von (A) nach (B) entlang einer graden Linie kann ich wie folgt realisieren.
Quellcode
-
- Private Sub MoveObj(ByVal istPosition As Point, ByVal sollPosition As Point, ByVal Speed As Single)
- Dim Obj_X As Single = sollPosition.X - istPosition.X
- Dim Obj_Y As Single = sollPosition.Y - istPosition.Y
- Dim l = Math.Sqrt(Obj_X ^ 2 +Obj_Y ^ 2) 'Vektorenlänge
- Obj_X = Obj_X * Speed / l
- Obj_Y = Obj_Y * Speed / l
- PictureBox2.Left += Obj_X
- PictureBox2.Top += Obj_Y
- End Sub
Nun zu meiner Frage:
Wie kann ich eine Kurven zu einer neuen Position realisieren?
Also wenn ich in der Bewegung zu Punkt(B) eine Richtungsänderung habe, soll diese nicht abrupt sein sondern in einer Kurve zu der neuen Position.
Ich hoffe ich konnte mich verständlich ausdrücken
Vorab schon mal Danke