Punkte zwischen zwei Koordinatenpunkten berechnen |
03.03.2013, 19:11 | Pierre Dole | Auf diesen Beitrag antworten » | ||
Punkte zwischen zwei Koordinatenpunkten berechnen Moin, als erstes ein Hallo an alle hier im Forum. Echt klasse, dass es einen so einfach gemacht wird, seine Frage loszuwerden. Zur meiner Frage: Ich versuche mich gerade an der KI-Programmierung und möchte, dass mein NPC das Laufen lernt. Die Welt ist in ein Raster unterteilt und gegeben sind die Koordinaten des Standortes und des Zielortes. Nun ist die Frage, wie errechne ich die Koordinaten zwischen den beiden Punkten? Als Beispiel könnte man nehmen: Der Standpunkt liegt bei x=1234, y=543 und der NPC soll zur Koordinate x=1357, y=357 laufen. Da er keine Hacken schlagen soll, möchte ich eine direkte Linie zwischen den beiden Punkten berechnen. Meine Ideen: Ideen habe ich leider keine. Meine Schulzeit ist schon so lange her, dass ich nicht mal im Ansatz weiß, wie ich das lösen könnte. Den Umfang eines Quadrates kriege ich vielleicht noch berechnet, aber das wars dann auch schon. |
||||
03.03.2013, 19:20 | Johnsen | Auf diesen Beitrag antworten » | ||
Antwort: Satz des Pythagoras, wenn deine Koordinatenachsen senkrecht aufeinanderstehen, wovon ich einfach mal ausgehe, oder? Gruß Johnsen |
||||
03.03.2013, 19:37 | Pierre Dole | Auf diesen Beitrag antworten » | ||
Danke für deine schnelle Antwort.
Wenn du damit meinst, ob es keine Z-Achse gibt, dann ja. Es gibt keine. Zu der Formel hätte ich noch eine Frage. Welchen der vielen Punkte berechne ich damit? Den ersten nach dem Standpunkt? |
||||
03.03.2013, 20:05 | riwe | Auf diesen Beitrag antworten » | ||
ich denke, pythagoras ist da nix wirklich tolles jeder punkt auf der geraden durch die beiden punkte hat die gleichung: |
||||
03.03.2013, 20:21 | Pierre Dole | Auf diesen Beitrag antworten » | ||
Danke. Wofür steht das t? |
||||
03.03.2013, 23:11 | riwe | Auf diesen Beitrag antworten » | ||
für jeden denkbaren wert |
||||
Anzeige | ||||
|
||||
04.03.2013, 16:48 | Pierre Dole | Auf diesen Beitrag antworten » | ||
Leider weiß ich immer noch nicht, was ich in meinem Fall, für das t einsetzen soll. |
||||
04.03.2013, 16:55 | Steffen Bühler | Auf diesen Beitrag antworten » | ||
Ich würde für t Vielfache von wählen, dann läuft's für x in Einerschritten. Oder eben gleich x immer um Eins erhöhen, y fällt für dieses Beispiel dann in Schritten von . Viele Grüße Steffen |
||||
04.03.2013, 18:31 | Bakatan | Auf diesen Beitrag antworten » | ||
Wenn ich (gerasterte Welt wie beschrieben) davon ausgehe, dass immer nur ganze Schritte gemacht werden können dann solltest du dir mal soetwas ansehen (was aber eher zur Linienzeichnung in Graphikkarten verwendet wird, aber in diesem Fall sehr analog): Bresenham's line algorithm Für allgemeine Wegfindung ist eine der Standardmethoden immer A* search algorithm Das hat aber beides mit reiner Mathematik nicht mehr viel zu tun. |
||||
05.03.2013, 03:59 | Pierre Dole | Auf diesen Beitrag antworten » | ||
Wow, danke! Auch, wenn du es sagst, es hat wenig mit Mathematik zu tun, für mich ist es eine Erlösung. Den Code kann ich viel leichter lesen als die Formeln. Und der A*-Algorithmus ist genial. Nicht nur, dass er jetzt laufen wird, er wird auch Hindernisse umgehen können. Viel Dank für diesen Tipp. Jetzt kann ich wieder zurück in mein stilles Kämmerlein und die Nächte durcharbeiten. |
|
Verwandte Themen
Die Beliebtesten » |
|
Die Größten » |
|
Die Neuesten » |