66 Stimmen

Delphi: Liegt Punkt (TPoint) in Rechteck (TRect)?

Tipp von Delphianer | Letztes Update am 24.04.2022 | Erstellt am 20.04.2013

Fragestellung: Wir möchten wissen, ob ein gegebener Punkt mit X und Y Koordinate in einem Rechteckt (einem TRect) liegt oder nicht.

Antwort: Zum Glück stellen uns sowohl Delphi als auch Lazarus eine Funktion für dieses Vorhaben zur Verfügung, so dass wir hier nicht händisch selber die Koordinaten vergleichen müssen. Die Funktion heißt PtInRect().

Beispiel: Schauen wir uns ein Beispiel für PtInRect() an:

var
   R: TRect;
   P1, P2: TPoint;
begin
   R:=Rect(10, 10, 100, 100);
   P1:=Point(0, 0);
   P2:=Point(50, 50);

   if PtInRect(R, P1) then showmessage('P1 liegt in R!');
   if PTInRect(R, P2) then showmessage('P2 liegt in R!');
end;

Zunächst definieren wir uns ein Rechteck R und zwei Punkte P1 und P2, von denen P1 im Rechteck liegt und P2 nicht. Danach testen wir mit PtInRect, ob die Punkte innerhalb des Rechtecks liegen. P1 sollte nicht im Rechteck liegen, P2 schon.

AntwortenPositivNegativ

Über den Autor

AvatarDer Autor hat keine Kurzbeschreibung seines Profils angegeben.
Profil anzeigen

 

Ähnliche Themen

Wichtiger Hinweis

Bitte beachten Sie: Die Beiträge auf askingbox.de sind Beiträge von Nutzern und sollen keine professionelle Beratung ersetzen. Sie werden nicht von Unabhängigen geprüft und spiegeln nicht zwingend die Meinung von askingbox.de wieder. Mehr erfahren.

Jetzt mitmachen

Stellen Sie Ihre eigene Frage oder schreiben Sie Ihren eigenen Artikel auf askingbox.de. So gehts.