Articles marqués ‘ogr’
Mise à jour de la documentation de GDAL en français
L’annonce a déjà transpiré sur Twitter mais il faut l’officialiser : la doc de GDAL en français a été mise à jour. Celle-ci contient non seulement la traduction de la doc de GDAL mais également de nouveaux chapitres originaux : Python, FAQ, et d’autres traductions de commandes utiles et complémentaire à celles de GDAL-OGR.
La doc a été passée en restructured text permettant une export en HTMl et PDF à partir de la version Softlibre (et non celle du wiki de GeoRezo.net) afin de faire évoluer la licence vers une licence proche de celle de GDAL : Licence Creative Common BY.
La version HTML est disponible à cette adresse : http://gdal.gloobe.org/index.html
[QGIS] Sauver un fichier dans un autre format
Ce cours article fait suite à une question posée sur le forum Geolibre de GeoRezo.net. L’utilisateur souhaitait sauvegarder ses données au format MapInfo à partir de données au format d’ESRI en utilisant le pluging OGR. Ce plugin très utile n’était plus maintenu ce qui posait certain problème (notamment celui présenté dans ce thread). D’autre part depuis la version 1.7 de QGIS ce plugin a été supprimé.
L’alternative est d’utiliser la fonctionnalité « sauver sous … » de QGIS. Jusqu’ici rien de bien compliqué et cette fonctionnalité peut paraitre bien trop simple pour l’ensemble des cas d’utilisation possible. Cependant, comme souvent au sein du projet QGIS, la fonctionnalité intégrée dans QGIS apporte plus de fonctionnalité que l’ancien plugin. L’exemple est venu de ce même thread où un autre utilisateur désirait transformer sa couche au format GPX. Malheureusement le format GPX présente quelques contraintes et l’export par défaut échoué car la table attributaire ne correspondait pas à la structure du fichier GPX. OGR propose une option qui permet de récupérer ces champs attributaires et de les placer dans une balise « <extension> ». Cette option doit être placée dans la commande sous forme de flag « option de création ».
Voici la méthode pour réaliser cet export. Cette méthode est généralisable à toutes les options de tous les formats :
- aller sur le site d’OGR pour connaitre les options et les limites du pilote du formatou sur le wiki de GeoRezo.net pour la version française
- trouver l’option « qui va va bien », dans notre cas c’est l’option GPX_USE_EXTENSIONS=YES
- cliquer-droit sur la couche dans QGIS, sous-menu « sauvegarder sous … »
- dans la fenêtre qui s’ouvre, renseigner les infos : couche d’export, projections et l’option de création. voir la capture d’écran ci-dessous :
Présentation des nouveautés de MapServer 6.0
UMN MapServer est un serveur cartographique prenant en charge un grand nombre de formats de fichier. Il est possible de l’utiliser en mode CGI ou à travers des langages de script tels que PHP, Ruby, Java, C#, etc à l’aide de MapScript. MapServer constitue donc un environnement de développement d’outils plus qu’un outil en lui même prêt à être installé et à être utilisé directement.
Au niveau des nouveautés de cette version majeure, nous trouvons au niveau du coeur de MapServer : une API d’interface de rendu, le refactoring de l’interpréteur des Expressions dans MapServer (MS RFC 64) et les requêtes en une seule passe (MS RFC 65), au niveau des améliorations : la sortie KML, amélioration de la gestion des étiquettes, amélioration de la gestion des styles des features, de nouveaux formats pour la requête GetFeature du service WFS, un visualiseur OpenLayers interne, une meilleure gestion des fichiers temporaires, la possibilité d’activer ou pas les services OGC, la fusion et le cluster des features.
Note : un document détaillant ces nouveautés est disponible sur le site du PortailSIG. Je reprend ici que l’introduction de chaque nouveautés.
Nouveautés
API de rendu d’interface (MS RFC 54)
L’objet de ce développement est de créer une API pour brancher des moteurs de rendues différents en fonction du format de sortie voulu, pour l’anecdote cette API fonctionne d’une manière similaire à la lecture des données.
Révision du parseur d’expression de MapServer (MS RFC 64)
L’objet de cette RFC est de revoir le parseur d’expression (i.e. le code qui interprète les expressions utilisées dans le mapfile, par exemple [name] = “Yves”) et en particulier les endriots où celui-ci est utilisé. Les modifications pouvant avoir un impact sur les expressions des requêtes et particulièrement aux bases de données. Un objectif de ces modifications est l’implémentation des expressions de filtres de l’OGC en seule passe et indépendamment du pilote.
Modification de la requête en seule passe (MS RFC 65)
Ces modifications consistent à une simplification du travail qui a été effectué lors de la release précédente (la 5.6). À ce moment un premier travail a été effectué mais il s’avère insuffisant même s’il a amélioré les choses. Avant la 5.6, une première requête permettait de récupérer les géométries potentielles, puis n requêtes plus petites pour récupérer les résultats, cela été lent particulièrement pour les serveurs de bases de données. À partir de la 5.6, seulement deux requêtes sont effectuées.
Gestion du rendu OpenGL (MS RFC 50)
Cette nouvelle fonctionnalité apporte l’utilisation du module Opengl pour le rendu à MapServer pour un rendu plus rapide des images.
Kml Output (MS RFC 58)
Le travail initial a été réalisé par David Kana lors du Google Summer of Code de 2009. Le code pour le rendu KML est basé sur la nouvelle API du moteur de rendu décrit dans la RFC 54. La première intention était d’utiliser la bibliothèque KML originale fournie par Google mais celle-ci était trop complexe et la bibliothèque libxml2, déjà incluses dans MapServer, a été utilisée.
Amélioration des étiquetages : possibilité d’annuler les étiquettes ANGLE FOLLOW si trop de caractères se superposent (MS RFC 60)
Lorsque des étiquettes étaient placées sur une ligne à forte courbure et que ces étiquettes devaient suivre la ligne (ANGLE FOLLOW) il arrivait que des caractères se chevauchent rendant illisible le texte. L’amélioration ici consiste à détecter ce genre de problème et à sauter l’emplacement qui pose problème. Le prochain emplacement qui ne présente pas ce problème affichera l’étiquette. La stratégie est la suivante et permettra de comprendre le nouveau mot-clé : l’angle des deux caractères consécutifs sont comparé et s’il est supérieur à 22.5° l’étiquette ne sera pas affichée.
Amélioration de la gestion des styles dans MapServer (MS RFC 61)
L’idée ici est de pouvoir utiliser des styles stockés avec la géométrie. Seul le pilote OGR gère le rendu avec le style lié à la géométrie de plus théoriquement seuls quelques formats gèrent le stockage des styles avec la géométrie (comme MapInfo, AutoCAD DXF, Microstation DGN), cependant ces styles peuvent facilement être transférés sous forme d’attributs en utilisant l’option SQL d’ogr2ogr.
Gestion de formats de sortie supplémentaire pour le GetFeature du WFS (MS RFC 62)
L’amélioration ici consiste à définir différent format de sortie pour la requête GetFeature du service WFS.
Visualiseur OpenLayers interne (MS RFC 63)
Les utilisateurs ont souvent demandée un moyen simple de tester les mapfiles. Cette amélioration permet un moyen simple de visualiser, tester et naviguer dans un mapfile en utilisant un visualiser interne basé sur OpenLayers. Il ne doit servir que pour tester et développer et non pas en production !
Meilleur prise en charge des fichiers temporaires (MS RFC 66)
Jusqu’à maintenant, MapServer écrit les fichiers temporaires dans un répertoire IMAGEPATH accessible par le web, ce qui n’est pas optimale mais pouvait être suffisant mais au fur et à mesure que les fichiers temporaires étaient de plus en plus utilisés, il fallait mettre en place une meilleure prise en charge.
Activer/Désactiver des couches dans les services web OGC (MS RFC 67)
Jusqu’à maintenant il n’était pas possible de cacher/désactiver une couche de service web OGC, cela est maintenant possible. Vous pouvez trouver une discussion sur ce sujet dans le wiki : http://trac.osgeo.org/mapserver/wiki/HidingLayersInOGCWebServices
Gestion de la combinaison de features à partir de différentes couches (MS RFC 68)
Aujourd’hui, vous pouvez combiner plusieurs fichiers en utilisant la fonction TILEINDEX, mais seulement si ces données ont les mêmes attributs et description. Il peut être intéressant d’être en mesure d’avoir des couches sources multiples qui ont des attributs semblables et d’être en mesure de les combiner en une seule couche (appelé couche “union”) en utilisant un sous-ensemble compatible des colonnes attributaires sources de sorte que la couche combinée peut être considérée comme une seule couche. On pourrait alors utiliser cette seule couche de la même manière que toute autre couche lors de la création des styles, classes et étiquettes.
Gestion des clusters de géométries dans les couches ponctuelles (MS RFC 69)
Afin de rendre les cartes pertinente pour une vue donnée, nous pouvons avoir besoin de limiter le nombre d’éléments affichés qui normalement se chevauchent les uns sur les autres. Nous pouvons maintenant réaliser un rendu des symboles sous forme de cluster à une échelle particulière. Selon l’exemple à http://trac.osgeo.org/mapserver/attachment/ticket/3700/cluster.png le nombre de traits formant les groupes sont affichés dans les étiquettes pour chaque feature dans le cluster.
Even Rouault : développeur de GDAL-OGR
1. Peux tu faire une présentation de ton parcours professionnel et ce qui t’a amené à travailler dans la géomatique open source ?
Je ne travaille pas, à proprement parler, dans la géomatique Open Source. Je suis actuellement employé par une grande entreprise française dans le secteur de la défense où nous développons des systèmes d’information opérationnels.
GDAL-OGR : documentation en français pour la version 1.6.0
La documentation en français pour la version 1.6.0 de GDAL-OGR a été mise à jour. Vous trouverez la documentation pour tous les nouveaux formats et commandes de cette nouvelle version sortie en décembre 2008.
Retrouvez la documentation sur le site Softlibre.
Des interfaces et des hommes
Cet article a pour objectif de présenter deux applications qui permettent de modifier des données dans différents formats ou de les reprojeter (voir un peu plus). Ces deux applications sont ogr2gui et AlterSIG. Comparer ces deux applications n’a aucun intérêt car celles-ci ont des objectifs différents ce qui ne serait pas pertinent.
Souscrire via RSS