Registriert seit: 31. Aug 2007
Ort: 99974 MHL
695 Beiträge
Delphi 10.1 Berlin Starter
|
AW: Überprüfen ob ein rectangle ein anderes überlappt
12. Jan 2011, 20:20
Man kann es aber auch so machen:
Delphi-Quellcode:
function RectInRect(const Rect1, Rect2: TRect): Boolean;
begin
Result := (Rect1.Left >= Rect2.Left) and
(Rect1.Right <= Rect2.Right) and
(Rect1.Top >= Rect2.Top) and
(Rect1.Bottom <= Rect2.Bottom);
end;
//oder
function OverlapRect(const Rect1, Rect2: TRect): Boolean;
begin
Result := (Rect1.Left < Rect2.Right) and
(Rect1.Right > Rect2.Left) and
(Rect1.Top < Rect2.Bottom) and
(Rect1.Bottom > Rect2.Top);
end;
ich denke, die zweite Function ist besser geeignet
Karl-Heinz Populanten von Domizilen mit fragiler, transparenter Aussenstruktur sollten sich von der Translation von gegen Deformierung resistenter Materie distanzieren!
(Wer im Glashaus sitzt sollte nicht mit Steinen werfen)
Geändert von Progman (12. Jan 2011 um 20:22 Uhr)
|