retour page d'accueil    
    La cartographie intuitive et intelligente

 Prestations
    Produits
Galerie
Réalisations
Projet type
Services

 À vous de jouer
    Collez vos données
Conservez vos projets
 
 Caractéristiques
    Géoclip, c'est quoi ?
Fluidité de l'interface
Richesse du contenu
Variété des thèmes
 Le dessous
 des cartes
    Du SIG vers le web
Zooms, sélections...
Accès bases de données
Modes de représentation
Flash, SVG et les autres

 Ressources
    Sites et forums
Référents

 Qui sommes-nous ?
    Équipe
Partenaires
Clients
 



Le dessous des cartes > Du SIG vers le web > Conversion des coordonnées
 

Changer de système de coordonnées, c'est changer d'échelle et redéfinir les coordonnées d'un point repère, centre géométrique de la carte ou bord supérieur gauche du cadre fictif qui l'entoure. Par exemple, la région Midi-Pyrénées fait en gros 305 km de largeur pour 270 km de hauteur. Si l'on veut la caser dans un carré de 1 000 pixels de large, on se calera sur l'encombrement maximum en km, soit 305, et on multipliera par 1 000/305. A l'arrivée, un pixel vaut 305/1 000 km, soit 305 m.

Supposons par ailleurs, par commodité, que Toulouse soit au centre de la carte. Dans la projection Lambert II, les coordonnées du Capitole sont en gros, en mètres (x0c=528 400, y0c=1 844 600). A l'arrivée, elles seront, en pixels (x1c=500, y1c=500).

Les distances d'un point quelconque au centre sont dans le même rapport que les largeurs dans les deux systèmes de coordonnées : (x1-x1c)/(x0-x0c)=1 000/305. La formule de changement de coordonnées s'en déduit, pour un point de coordonnées (x0,y0) en Lambert II et (x1,y1) à l'arrivée dans le système écran.
Soit si l'on définit e=1 000/305 :
     x1 = x1c + e*(x0-x0c)

Mais dans le système écran, l'axe des ordonnées est orienté vers le bas, car l'origine se situe conventionnellement au coin supérieur gauche. Par conséquent, la formule pour les ordonnées devient :
     y1=y1c - e*(y0-y0c)

Pour convertir les coordonnées, on suit donc les étapes suivantes :
1) appliquer une projection cartésienne (coordonnées par exemple en mètres, mais pas en degrés) ;
2) déterminer le rectangle d'encombrement de la carte et le maximum entre la largeur et la hauteur ;
3) en déduire le facteur d'échelle ;
4) appliquer les formules ci-dessus.

astuces pour optimiser le dessin dans Flash :
Considérant qu'à l'écran une précision d'un dixième de pixel est suffisante, on s'emploiera à ne garder qu'un chiffre après la virgule, ce qui allègera d'autant le fichier des coordonnées à transmettre : la chasse au kilooctet est une obsession constante pour qui se soucie de proposer des contenus confortables à un public large.

Dans le même ordre d'idée, une astuce courante consiste à décrire chaque polygone en alternant coordonnées absolues et coordonnées relatives.
Soit par exemple, en coordonnées écran, un carré défini par le vecteur de ses abscisses [600,610,610,600] et de ses ordonnées [400,410,410,400]. On les remplacera avantageusement par [600,10,0,-10] et [400,10,0,-10], le nombre de caractères diminuant de 3+3=6. Le premier point est décrit en coordonnées absolues (600,400), les suivants en déplacement par rapport au point précédent. Plus compact, même, en oubliant le dernier point qui se confond ici avec le premier : [600,10,0] et [400,10,0].

 
Pour en savoir plus sur les calculs à effectuer :
contact version française english version russian intro