D'après ce que j'ai vu, presque tout utilise les coordonnées où (0, 0) est en haut à gauche et l'axe Y positif va dans la direction descendante de votre écran.
Pourquoi est-ce comme ça? Pourquoi pas l'axe Y positif conventionnel qui monte comme le montrent les graphiques des classes de mathématiques simples?
coordinates
graph
utilisateur3387566
la source
la source
Réponses:
Ceci est causé dans l'histoire. Les premiers ordinateurs avaient des tubes cathodiques (TRC) qui "dessinaient" l’image avec un rayon cathodique du coin supérieur gauche au coin inférieur droit.
Pour faciliter l'interface entre la mémoire de la carte graphique et l'écran cathodique, la mémoire a été lue depuis le début et l'image a été dessinée en haut à gauche (avec l'adresse de mémoire la plus basse) vers le bas à droite (avec l'adresse de mémoire la plus élevée).
Extension (basée sur les commentaires)
Les écrans cathodiques sont basés sur les téléviseurs analogiques disponibles à ce moment.
Les téléviseurs créent l'image ligne par ligne, de gauche à droite, puis de haut en bas . On peut supposer que la raison en est uniquement basée sur le style d’écriture des pays occidentaux.
la source
C'est une excellente question à laquelle j'ai souvent pensé. La réponse simple à "pourquoi" est que les formats de télévision ont également tracé leurs lignes de gauche à droite puis de haut en bas. Les moniteurs d’ordinateur originaux étaient des écrans à tube cathodique (petits téléviseurs), de sorte que le format est resté naturellement le même. Lorsque les moniteurs sont devenus des écrans plats (et les téléviseurs sont également devenus des écrans plats), il était tout aussi naturel de conserver le même format pour faciliter la compatibilité.
Bien sûr, vous pouvez alors demander: pourquoi les téléviseurs dessinent-ils de cette façon? Ils ont été inventés au début du 20ème siècle, vous pouvez donc imaginer à quel point la conception a été pensée ou non. Remarque: ce n’est pas irrespectueux car c’est incroyablement plus difficile d’obtenir des équations de déviation magnétique des rayons vers les lignes appropriées d’un écran, par opposition à une simple matrice de minuscules "ampoules". (Cela pose un peu la question de savoir comment sur Terre ont-ils inventé les tubes cathodiques avant la simple matrice de points, il y a bien longtemps, au début du 20ème siècle?)
Néanmoins, je suppose que cela n’a probablement jamais été remis en question (ce qui est une mauvaise chose), car les langues occidentales écrivent des mots de gauche à droite et de haut en bas. Probablement personne n'a envisagé la possibilité de le faire différemment.
Personnellement, je n'aime pas ce format. J'ai acquis cette attitude en programmant des jeux et d'autres simulations impliquant des orbites elliptiques. Chaque fois que vous recherchez des équations dessinées impliquant péché, cos ou bronzage, vous devez soigneusement inverser les signes qui traitent des paramètres de l'axe des ordonnées ... sinon, vous obtiendrez une erreur. Un exemple serait les équations paramétriques pour une ellipse dessinée sous n'importe quel angle 2D. Ce peut être un vrai cauchemar disséquer le péché, péché, péché , et des choses similaires.
En termes mathématiques, l’écran est dans le quadrant 4 au lieu du quadrant 1. C’est inutilement compliqué.
BTW quand vous arrivez à 3 dimensions, on considère que l’axe z va "vers le haut" dans le sens positif. Un peu ironique. [EDIT]: Peut-être pas, voir mon commentaire ci-dessous.
2 autres choses que j'ai réalisées / rencontrées:
Les cadrans solaires dans l'hémisphère nord (qui ont des pointeurs orientés vers le nord et des disques parallèles au sol) tournent toujours dans le sens des aiguilles d'une montre . Donc, si nous plaçons l'heure zéro en haut du "cadran", le pointeur de l'ombre commence à se déplacer vers la droite. Cela pourrait être à l'origine de la direction de gauche à droite dans les langues occidentales, se propageant jusqu'aux coordonnées cartésiennes et aux écrans de télévision / ordinateur.
Les vieux ordinateurs ne dessinaient pas beaucoup d'objets graphiques. Ils ont dessiné le texte dans une invite de commande. Il est donc naturel de mettre la ligne 0 à y = 0. Si nous avions une origine en bas à gauche, le calcul des lignes de texte serait un peu plus compliqué, et cela aurait pu être un gros problème pour ces vieux ordinateurs lents (qui ont même créé un raccourci pour incrémenter de 1, pour l'amour du bien, appelé "++"). De plus, vous devez connaître la résolution de l'écran, alors que si vous ne faites que la ligne 0 à y = 0, vous n'avez pas besoin de connaître la résolution.
la source
Addendum: Les premiers graphiques ont été réalisés sur des moniteurs vectoriels , à un cran supérieur aux oscilloscopes vus dans le laboratoire où (0,0) se trouverait exactement au milieu de l'écran, à condition que certains boutons tournent pour définir l'échelle X / Y, X Décalage / Y et éventuellement inversion X / Y.
Le matériel dédié d'Atari "Asteroids" (1979) utilisait par exemple un écran vectoriel; il serait intéressant de savoir ce qu’il pensait de son système de coordonnées de programme.
Le système "Sketchpad" d' Ivan Sutherland (1963) était basé sur un affichage vectoriel TX-2 et dans "Sketchpad: un système de communication graphique homme-machine" (thèse de doctorat, janvier 1963), il écrit à la page 70ff:
Le diagramme 5.2 à la page 75 montre que le "système de coordonnées de page" utilise la convention mathématique du système de coordonnées cartésiennes X / Y. (On pourrait se demander pourquoi cette convention est comme ça ...)
la source
Tout n'est pas en haut à gauche.
OpenGL, par exemple, spécifie que l'origine est en bas à gauche, ce qui est omniprésent dans l'API: coordonnées de texture, fenêtres, rectangles de texel, la projection ortho standard: tout en bas, à gauche.
Il y a une différence de pensée ici.
Sur les écrans d’ordinateur, comme pour les livres, quand les gens lisent (et je suppose une langue comme l’anglais ici), ils lisent de gauche à droite et de haut en bas. Vous l'avez fait vous-même lorsque vous avez écrit cette question et vous le faites lorsque vous lisez les réponses.
En mathématiques et en conception, lorsque vous tracez un graphique, vous avez un axe X et un axe Y, le X positif étant à gauche et le Y positif à la hausse.
Si vous construisez quelque chose comme une interface graphique 2D dans un jeu, il peut être plus facile et plus intuitif pour de nombreuses personnes de l'exposer de manière "en haut à gauche, c'est l'origine".
Si vous construisez quelque chose qui imite un dessin ou une mise en page sur du papier millimétré, il peut être plus facile et plus intuitif pour de nombreuses personnes de l'exposer de manière "en bas à gauche, c'est l'origine".
En fait, il s’agit de conventions assez informelles. Si vous configurez une projection ortho, vous pouvez choisir d’avoir votre origine à n’importe quel point de l'écran (ou hors) de manière arbitraire, avec un X positif allant de gauche à droite. Y monter ou descendre. Il suffit d’ajuster votre matrice de projection en conséquence.
La seule chose importante est donc de choisir quelle convention vous allez utiliser et de l’utiliser de manière cohérente.
la source
Parce que les écrans commencent à rendre l'image à partir du coin supérieur gauche. Il serait plus facile de corréler le rendu ou le tracé de l'axe des coordonnées lorsque (0,0,0) se trouve dans le coin supérieur gauche avec l'axe des Y + allant à l'écran.
la source
Un argument pour: (par exemple)
Le code correspond aux résultats à l'écran :
La flèche rouge serait à l' envers si vous n'utilisiez PAS l'origine en haut à gauche.
Je ne peux pas dire si c'est "pourquoi". Juste cela, c'est une bonne raison pour l'origine en haut à gauche.
la source