Einzelnen Beitrag anzeigen

Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#3

AW: überprüfen ob eine schnittmenge vorhanden ist

  Alt 1. Dez 2013, 16:15
Code:
P1 = Max( A.TopLeft, B.TopLeft )
P2 = Min( A.BottomRight, B.BottomRight )
dabei ist
Code:
Max( P1, P2 ) : Point
R.x = Max( P1.x, P2.x )
R.y = Max( P1.y, P2.y )
Das Minimum analog dazu

Jetzt muss nur noch die Bedingung erfüllt sein, dass
Code:
P1.x <= P2.x und P1.y <= P2.y
Eine Sonderbedingung ist, wenn P1=P2, dann ist die Schnittmenge ein Punkt

PS

Wichtig ist noch, die Bereiche vor der Analyse zu normalisieren (d.h. TopLeft liegt wirklich auch oben links)
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)

Geändert von Sir Rufo ( 1. Dez 2013 um 16:33 Uhr)
  Mit Zitat antworten Zitat