Es ist nicht so, dass dies keinen Sinn ergibt, aber es funktioniert in 99% der Fälle nur umständlich.
In 2D-Grafiken werden Rechtecke häufig als Punktpaar initialisiert, gespeichert und bearbeitet. In keiner bestimmten Sprache,
class Rect:
p1, p2: point
Es ist sinnvoller, ein Rechteck wie folgt als zwei x-Werte und zwei y-Werte zu definieren:
class Rect
xleft, xright: int
ytop, ybottom: int
Mit zwei Punkten müsste man, wenn man irgendwo im Quellcode den y-Wert von oben verwenden möchte, rect.p1.y sagen (hmmm, halt und denk, ist es p1 oder p2), aber Mit den vier Werten als einfache Datenelemente ist es klar und direkt: rect.ytop (kein Denken erforderlich!) Die Verwendung von zwei Punkten bedeutet, dass Sie beim Umgang mit der Vertikalen die Horizontale verwickeln müssen. Es gibt eine irrelevante Beziehung zwischen unabhängigen Elementen.
Wie ist diese Zwei-Punkte-Idee entstanden und warum bleibt sie bestehen? Hat es Vorteile gegenüber bloßen x- und y-Koordinaten?
HINZUGEFÜGTER HINWEIS: Diese Frage bezieht sich auf XY-ausgerichtete Rechtecke, z. B. in Windows-Managern und GUI-Toolkits, und nicht auf beliebige Formen in der Zeichen- und Mal-App.