Nouveau format topologique : des cartes encore plus rapides sur tout type d’écran

Les nouvelles technologies sont présentes partout, au bureau, à la maison, en déplacement et en cette fin d’année peut-être même bientôt dans les mains du petit dernier. Géoclip s’adapte progressivement à ces nouveaux supports. Les développements sur le téléphone, la tablette ou l’ordinateur, les contraintes ne sont pas les mêmes, loin s’en faut. Nous pensons immédiatement à la taille des écrans, exit le classique 1024x768, aujourd’hui, il n’y a plus de standard.

Ensuite, ce qui vient à l’esprit, ce sont les performances.

Amstrad CPC464

64 ko de RAM, souvenir des 80's

Les appareils sont hétérogènes et leurs performances sont variables d’un modèle à l’autre. Mais il y a beaucoup d’autres contraintes, moins immédiates. Le réseau n’est pas toujours le même, les débits diffèrent franchement entre l’ADSL, la 3G, la 4G et même parfois sans réseau du tout... La durée de vie de la batterie des supports mobiles est aussi à prendre en compte de même que les différentes versions des systèmes d’exploitation, des navigateurs et leurs supports de tel ou tel standard du web présent ou avenir. Bref, chez Emc3, nous prenons le temps de bien assimiler tout ça.

Le travail d’épluchage et de mise à nu des technologies mobiles nous ouvre de belles perspectives excitantes. Le format de fichier des fonds de carte utilisé dans Géoclip doit lui aussi s’adapter au mobile. Depuis l’origine, c’est du swf, format très compact, binaire, compressé et nativement pris en charge par le lecteur Flash. Ce format est encore aujourd’hui l’une des forces de Géoclip. Sur le mobile, le format swf n’est plus ou ne sera bientôt plus supporté. Ce qui nous donne l’occasion de refondre le format. L’objectif est simple, le compacter encore et toujours plus en exploitant notamment une vieille idée, l’une des
branches des mathématiques, la topologie.
Habituellement, le maillage territorial se représente par des objets géométriques polygonaux afin de couvrir une surface, par exemple, la France par département. Chaque département est décrit par son polygone qui n’est qu’une suite de points géolocalisés décrivant son périmètre. Mais en y regardant de plus près, sur la limite de deux départements voisins, nous avons toute une série de points décrits donc deux fois, une par polygone. Damned, des points en double ! Faire la topologisation d’un fond de carte, c’est, aussi et surtout, faire l’économie de cette redondance.
Présentation des arcs des départements de la Corse

Depuis le printemps dernier, nous étudions le sujet, et notamment les remarquables travaux autour du format analogue TopoJson. Le convertisseur de fonds de carte de Géoclip a été enrichi de nouveaux algorithmes de topologisation répertoriant scrupuleusement les deux notions clés : les arcs et les points-nœuds. Pour faire simple, les arcs sont des suites de points communs entre deux polygones limitrophes, le trait de côte ou la frontière si le polygone est au bord.

Ci-contre, l’illustration montre un exemple sur les deux départements de la Corse disposant ainsi de quatre arcs. En noir, l’arc commun entre les deux départements, en violet et en vert, les traits de côte et en tout petit en jaune, l’île de Cavallo au large de Bonifacio.

Les points-nœuds sont simplement les extrémités des ces arcs. L’image ci-dessous les met en scène :

Présentation des points noeuds des départements de la France

La topologisation fait fondre la taille des fonds de carte convertis pour Géoclip. D’ailleurs plus les arcs sont longs, plus le gain est important. Concrètement, sur l’exemple de la France par département, tracés GéoFLA, on obtient de très bons résultats, un gain de près de 54% par rapport au format Géoclip swf :

 Mapinfo d’origine : 328 Ko
Format Géoclip swf : 82 Ko, -75 %
GeoJson gzippé : 451 Ko
TopoJson gzippé : 45 Ko
Nouveau format Géoclip topologique : 38 Ko, -54%
Sur la France entière par commune, tracés GéoFLA, les gains sont moindres car les
arcs sont moins longs mais tout de même près de 30% :
Mapinfo d’origine : 6 600 Ko
Format Géoclip swf : 1 139 Ko, -83 %
GeoJson gzippé : 5 400 Ko
TopoJson gzippé : 1 437 Ko
Nouveau format Géoclip topologique : 798 Ko, -30%
Avec ce nouveau format, de nouvelles fonctions novatrices viendront par la suite enrichir Géoclip. Nous développerons ceci dans un prochain article. Mais d’ores et déjà, les données géographiques seront téléchargées beaucoup plus rapidement tout en conservant une précision identique. En mobilité, c’est bon pour l’expérience utilisateur, pour votre batterie et surtout pour votre forfait data !