[[TranslatedPages(revision=3)]] **La version en anglais indique : Cette page est en partie incomplète et dépassée. Voir EPSG:4326 et le greffon proj4 existant !** [[PageOutline(1-10,Table des Matières)]] = Comprendre les coordonnées de JOSM = == Les coordonnées d'OpenStreetMap == OpenStreetMap utilise les coordonnées Latitude/Longitude dans le [https://fr.wikipedia.org/wiki/Syst%C3%A8me_g%C3%A9od%C3%A9sique système géodésique] [https://fr.wikipedia.org/wiki/WGS_84 WGS84] (compatible avec le GPS) pour ses [http://wiki.openstreetmap.org/wiki/FR:%C3%89l%C3%A9ments#N.C5.93ud_.28node.29 nœuds] , stockées dans les fichier XML [http://wiki.openstreetmap.org/wiki/FR:OSM_XML .osm] selon une notation en degré décimal avec 7 décimales. Le même endroit sur ​​la terre aurait des valeurs légèrement différentes de Latitude/Longitude dans d'autres systèmes de coordonnées, selon leur [https://fr.wikipedia.org/wiki/Mod%C3%A8le_ellipso%C3%AFdal_de_la_Terre ellipsoïde de référence] respectifs. == Les Coordonnées de l'éditeur == === Java === Pour rendre les nœuds et les chemins à l'écran, rectangulaire et plat, la position des nœuds doit être traduite de manière réversible dans un [https://fr.wikipedia.org/wiki/Coordonn%C3%A9es_cart%C3%A9siennes système de coordonnées cartésien], c'est à dire ayant des axes perpendiculaires. JOSM utilise l'API graphique Java 2D pour prendre en charge le processus de rendu. L'API Java implémente le concept d'un [http://docs.oracle.com/javase/tutorial/2d/overview/coordinate.html espace utilisateur] qui pourrait être vu comme une grande grille avec une origine (0,0) dans le coin en haut à gauche, et d'étendue pratiquement infinie vers la droite (x) et en bas (y). Java 2D prend en charge les entiers et les variables flottantes en précision simple ou double pour la paire (x, y). Lors de l'affichage d'une zone de cette grille virtuelle sur l'écran à la surface limité, Java convertit en interne les coordonnées (x, y) d'écran, automatiquement pendant le rendu. Bien que les coordonnées négatives soient théoriquement possibles, il est recommandé de ne pas dessiner en dehors de l'espace disponible à l'écran, car toutes les versions de Java ne fonctionne pas correctement en dehors de la zone visible. === JOSM === JOSM définit ses coordonnées pour être utilisées à la fois dans la représentation Lat/Lon ainsi que la grille EastNorth de l'éditeur via la classe [source:/trunk/src/org/openstreetmap/josm/data/coor/Coordinate.java Coordinate] en '''{{{double float}}}'''. ==== LatLon ==== La classe [source:/trunk/src/org/openstreetmap/josm/data/coor/LatLon.java LatLon] hérite de [source:/trunk/src/org/openstreetmap/josm/data/coor/Coordinate.java Coordinate] et fournit des contrôles pour les bornes limites -90,90 pour la latitude et -180 180 pour la longitude. ==== EastNorth ==== La class [source:/trunk/src/org/openstreetmap/josm/data/coor/EastNorth.java EastNorth] hérite de [source:/trunk/src/org/openstreetmap/josm/data/coor/Coordinate.java Coordinate]. {{{east()}}} renvoie x and {{{north()}}} renvoie la coordonnée y. Ce qui veut dire que la valeur de {{{east()}}} s’accroît vers l'Est, tandis que la valeur de {{{north()}}} décroit vers le Nord. La classe fournit également des méthodes pour manipuler les coordonnées. === Projection === La transformation réversible des coordonnées LatLon vers une carte plane ou l'écran d'ordinateur est une [https://fr.wikipedia.org/wiki/Projection_cartographique projection]. JOSM supporte un certain nombre de projections car elles sont d'usages multiples, en particulier dans la représentation des formes ou l'utilisation de données de sources différentes déjà projetées, comme des cartes imprimées, les données du cadastre, de l'imagerie par satellite, de serveurs WMS sur lesquels on peut tracer les chemins OSM. Certains serveurs WMS peuvent supporter une grande variété de projections, d'autres sont limités à une seule. Les projections sont définies dans les classes [source:/trunk/src/org/openstreetmap/josm/data/projection org.openstreetmap.josm.data.projection]. Dans la pratique, la projection peut être activée dans le menu Préférences de JOSM. Les versions actuelles de JOSM permettent un changement sans redémarrage. Lors d'un changement de projection, la même coordonnée LatLon correspond à des valeurs différentes de EastNorth. La conversion bidirectionnelle entre LatLon et EastNorth est le calcul de base de chaque implémentation de la classe [source:/trunk/src/org/openstreetmap/josm/data/projection/Projection.java Projection]. L'implémentation doit veiller à ce que la plage de valeurs valides de LatLon soit mappée à une plage de valeurs valides EastNorth. Comme certaines projections ne sont valides que pour des zones limitées du globe, l'implémentation définit également ces limites dans lesquelles JOSM peut travailler Quelques exemples de projections supportées sont décrits ce-dessous. ==== Mercator ==== La projection cylindrique [https://fr.wikipedia.org/wiki/Projection_de_Mercator Mercator], du nom de son inventeur, décrit des méridiens et parallèles rectilignes et perpendiculaires Dans JOSM, par exemple, les petits objets ronds tels que les carrefours giratoires apparaissent comme un cercle, et les bâtiments rectangulaires sont vus rectangulaires. L'inconvénient est l'étirement infini des pôles. Mercator est actuellement la projection par défaut de JOSM. La plupart des serveur WMS ne supportent pas cette projection, mais JOSM peut afficher du EPSG:4326 pour de la projection Mercator (ce qui n'est pas strictement correct, mais les erreurs sont faibles). ==== EPSG:4326 ==== [https://en.wikipedia.org/wiki/EPSG:4326 EPSG:4326] est le système Lat/Lon de référence qui correspond au [https://fr.wikipedia.org/wiki/WGS_84 WGS84]. ***(discuss need for WMS servers / Landsat and Yahoo Sat usage)*** ==== UTM ==== Les [https://wikipedia.org/wiki/Transverse_Mercator_projection projections Transverses de Mercator (en)] sont des adaptations de la projection Mercator en pivotant le cylindre de projection de 90° ( l’axe du cylindre croise perpendiculairement l’axe des pôles ). La projection [https://fr.wikipedia.org/wiki/Transverse_Universelle_de_Mercator Transverse Universelle de Mercator] et ses 60 zones en sont les variantes très utilisées comme systèmes de référence nationaux. Dans les zones UTM ou des systèmes de référence nationaux, les coordonnées cartésiennes bidimensionnelles [https://fr.wikipedia.org/wiki/Transverse_universelle_de_Mercator (​Eastings et Northings)] peuvent être définies en mètres à partir du point d'origine de zone. Ces coordonnées ne doivent pas être confondues avec les coordonnées EastNorth propres à JOSM. ==== Les projections locales ==== De nombreux pays définissent leur propre système de référence, basé ou non sur UTM. JOSM peut supporter tous ces systèmes dés l'instant que la conversion LatLon vers EastNorth est implémentée. Le greffon PROJ4 apporte le support de très nombreuses conversions.