AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Nächtes Objekt auf einer "Karte" finden
Thema durchsuchen
Ansicht
Themen-Optionen

Nächtes Objekt auf einer "Karte" finden

Ein Thema von CalganX · begonnen am 13. Apr 2007 · letzter Beitrag vom 13. Apr 2007
 
CalganX

Registriert seit: 21. Jul 2002
Ort: Bonn
5.403 Beiträge
 
Turbo Delphi für Win32
 
#1

Nächtes Objekt auf einer "Karte" finden

  Alt 13. Apr 2007, 17:33
Hi,
eine theoretische Frage: ich habe auf einer Art Karte mehrere Objekte, die sich bewegen. Nun möchte ich wissen, wie weit die zwei Objekte sind, die einem Objekt am nächsten sind. Diese Distanz soll nämlich bspw. nicht kleiner werden 10 bzw. 15 (nächstes, zweitnächstes Objekt).
Nun bin ich auf der Suche nach einem möglichst einfachen Algorithmus, der mir diese beiden Objekte liefert. Das geht natürlich ganz einfach, indem ich die ganze Sammlung durchgehe und nach denen suche, die die niedrigste Entfernung habe. Problem ist nur, dass das bei meinen Größenordnungen (bis zu 200 Objekte) wahrscheinlich relativ langsam werden wird (da das ganze wechselseitig ist, muss jedes der 200 Objekte die beiden Objekte finden, die am nächsten zu ihm sind).

Ich kenne einen Algorithmus, der das zumindest für ein Objekt macht: man zerlegt das Feld in viele einzelne Sektionen und sucht die benachbarten Sektionen. Ich hab darüber mal einen Vortrag gehört, allerdings kann ich mich kaum noch daran erinnern und ich weiß auch nicht, wie dieser Algorithmus bzw. dieses Prinzip heißt. Außerdem scheint mir das ein wenig problematisch, da mit jeder Iteration sich mein Feld verändert und somit es extrem langsam zu werden scheint.

Kann mir da jemand einen Tipp geben oder gar einen guten und performanten Algorithmus nennen?

Chris

Edit: Das, was ich meine sind Voronoi-Diagramme und die Delaunay-Triangulation. Wie es scheint ist das die optimale Lösung für mein Problem, oder?
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:20 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz