Historische Gründe für linkshändige Koordinatensysteme

7

Ich finde es etwas nicht intuitiv, dass das (0,0) auf der linken oberen Ecke des Bildschirms abgebildet wird. Gibt es einen historischen Grund für die Verwendung eines linkshändigen Koordinatensystems in Java Swing?

Obwohl das Zuordnen zu einem rechtshändigen System nicht allzu schwierig ist, bin ich neugierig darauf, ob es einen versteckten Vorteil bei einem linkshändigen System gibt.

    
qrslt 14.07.2011, 19:24
quelle

5 Antworten

8

Laut diesem Artikel liegt das einfach daran, dass es so ist war immer mit Fernsehgeräten (die hat sich nicht geändert, BTW). Es scheint also, dass diese frühe Designentscheidung heute noch Auswirkungen hat.

Frühe Heimcomputer waren oft mit dem Fernseher verbunden, also nutzten sie natürlich dieses Koordinatensystem. Ich denke, viele Monitore arbeiteten auf die gleiche Weise, weil die Hersteller Elektronik / Logik teilweise recyceln konnten. Und da dies dann das "natürliche" Koordinatensystem war, das Programmierer verwendeten (denken Sie daran, dass wir damals auf das viel niedrigere Videosystem zugreifen mussten), blieb es einfach stecken, da die meisten Leute daran gewöhnt waren.

Die Ausnahme von diesem Modell ist PostScript und sein Nachfolger, PDF. Sie modellieren ein Papier und sind daher nicht daran gebunden, das Koordinatensystem des Bildschirms effizient zu nutzen. Sie benutzen (0,0) in der unteren linken, wie Mathematiker normalerweise tun. Der NeXT verwendet ein Videosystem mit der Bezeichnung Display PostScript, das eine Erweiterung von PostScript zum Zeichnen auf dem Bildschirm darstellt und somit das PostScripts-System mit (0,0) unten links verwendet. Das heutige Mac OS X stammt von NeXT und verwendet dieses System ebenfalls. Auf iOS entschieden sich die Apple-Ingenieure, das System auf das häufigere Modell mit (0,0) oben links umzulegen, um Entwicklern die Migration von anderen Systemen zu erleichtern.

    
DarkDust 14.07.2011, 19:38
quelle
6

Ich kenne keinen historischen Grund dafür, aber ich denke, dass es tatsächlich Sinn macht. Oder es macht Sinn, wenn man bedenkt, dass wir uns in einer Kultur befinden, die von links nach rechts und von oben nach unten liest.

Sehen Sie sich zum Beispiel eine Webseite an - sie erstreckt sich nach rechts und nach unten, so dass Sie nie wirklich genau wissen, wo die untere linke Ecke (zum Beispiel) sein wird. Auf der anderen Seite, wenn Sie die obere linke Ecke als Ursprung nehmen, wird es immer an der gleichen Stelle sein, wenn Sie die Seite öffnen und Sie werden nie mit negativen Zahlen umgehen müssen.

Daher ist meine Theorie, dass die Platzierung des Ursprungs in der oberen linken Ecke ein Produkt der Art ist, wie wir lesen.

    
Tikhon Jelvis 14.07.2011 19:35
quelle
4

In der Vergangenheit scannen Fernsehbilder und Faxgeräte von links nach rechts und von oben nach unten. Es ist wahrscheinlich, weil die meisten geschriebenen Sprachen auf diese Weise geschrieben sind. Wenn Sie also eine Scan-Richtung wählen, ist es nicht verwunderlich, dass die Leute den gleichen Weg wählen würden.

Die meisten geschriebenen Sprachen sind von links nach rechts, weil die meisten Menschen Rechtshänder sind und die Wahrscheinlichkeit geringer ist, die Tinte von dem, was Sie bereits geschrieben haben, zu verwischen.

    
MRAB 14.07.2011 19:38
quelle
3

Es ist willkürlich; GL setzt zum Beispiel (0, 0) unten links. In Java ist die relevante Transformation

%Vor%     
trashgod 14.07.2011 19:29
quelle
3

Nach einigen Nachforschungen konnte ich nichts finden außer Aussagen, die darauf hinwiesen, dass in früheren Computersystemen die 0,0 immer die linke obere Ecke war, weil es dort war, wo man anfangen würde zu schreiben.

Und da der Text weiter fließen würde, würde er nach unten gehen und die Zeilennummer erhöhen.

Einige Systeme haben eine Konvention, wie die kartesische Ebene zu sein: 0,0 ist links, unten. Im Allgemeinen tun Zeichenprogramme das, weil Sie im Allgemeinen von dieser Position ausgehen würden.

    
woliveirajr 14.07.2011 19:36
quelle

Tags und Links