Entwickler-Ecke

Multimedia / Grafik - Punkt in Polygon


hame50 - So 27.04.08 14:16
Titel: Punkt in Polygon
Hallo zusammen,

wahrscheinlich gibt's das schon mehrfach, aber ich hab einfach nicht das passende gefunden, als ich gesucht habe.
Gibt es in Delphi eine Funktion, die ich mit einem Punkt und einem Polygon fütter und die mir dann sagt, ob der Punkt im Polygon ist, oder nicht ?

Vielen Dank schonmal !


Jakob_Ullmann - So 27.04.08 14:31

Ich glaub nicht. Aber du könntest erst das Polygon auf einen Canvas zeichnen (mit z. B. Pinselfarbe schwarz) und dann testen, ob dein Punkt schwarz ist (==> TCanvas.Pixels, TCanvas.Polygon, TRect, Dynamische Arrays).


Martok - So 27.04.08 14:44

Huch. Ich verweise grade zum 2. Mal an diesem Tag auf die Graphics32-Lib :shock:

Google findet deren Dokumentation: http://graphics32.org/documentation/Docs/Units/GR32_Polygons/Routines/PtInPolygon.htm

Die HP [http://graphics32.org] sieht hat sich ja ganz schön verändert, seit ich das letzte Mal da war.


Die Idee mit dem Hit-Test ist übrigens gar nicht mal so schlecht, so ähnlich hab ich das auch im Weihnachtsrätsel gemacht. Hätte mir fast die 3. Nuss gebracht, wenn ich Backtracking implementiert hätte...