Einzelnen Beitrag anzeigen

Hawkeye219

Registriert seit: 18. Feb 2006
Ort: Stolberg
2.227 Beiträge
 
Delphi 2010 Professional
 
#3

Re: Fläche - liegt der Punkt P(x,y) darin?

  Alt 12. Mai 2006, 23:25
Hallo,

eine sehr einfache Lösung könnte die Nutzung des Windows-API sein (ungetestet!):

Delphi-Quellcode:
function PtInPoly (const aPoly: array of TPoint; x, y: Integer): Boolean;
  var lRgn: HRGN;
begin
  lRgn := CreatePolygonRgn(aPoly, Length(aPoly), WINDING);
  Result := PtInRegion(lRgn, x, y);
  DeleteObject(lRgn);
end;
Die Funktion CreatePolygonRgn soll allerdings bei einer großen Anzahl von Punkten ziemlich langsam sein. In diesem Fall wirst du auf andere Algorithmen zurückgreifen müssen.

Gruß Hawkeye
  Mit Zitat antworten Zitat