CHAPITRE I. INTRODUCTION
de base de traitement de l’information g´eographique, mais elle ne comprend que de tr`es rare fonctionnalit´es
avanc´ees. Pour d´evelopper des traitements avanc´es, il faut soit d´evelopper ces nouvelles fonctionnalit´es, soit
faire appel `a des librairies plus sp´ecialis´ees (utilisant elles-mˆemes les librairies de l’OGR comme support).
La seconde solution est une solution payante, elle limite donc l’usage des outils qui sont mis en place uniquement
aux utilisateurs de ArcGIS. Cette librairie de fonctionnalit´e a ´et´e faite pour augmenter les capacit´es du logiciel
ArcGIS par des proc´edures d´evelopp´ees par l’utilisateur. L’int´erˆet principal de cette librairie est de donner
acc`es aux traitements de haut-niveau disponibles dans ArcGIS. Mais c’est aussi une contrainte de cette librairie
qui reste tr`es cloisonn´ee `a ces fonctionnalit´es. On tire le maximum de l’int´erˆet de ArcPy avec le modeler. Une
proc´edure cr´e´ee graphiquement avec le Modeler peut engendrer un code Python qu’un g´eomaticien aguerris `a
la programmation pourra adapt´e `a son besoin sp´ecifique.
La troisi`eme solution est interm´ediaire. Initialement pr´evu pour le d´eveloppement de plugins dans QGis la
librairie Python de QGis offre des fonctionnalit´es tr`es similaires `a celle de l’OGR (en faite, tout le logiciel QGis
s’appuie sur cette librairie) et ajoute la possibilit´e d’acc´eder aux fonctionnalit´es de visualisation, d’interaction
et de traitement disponibles dans QGis. Il est n´eanmoins `a noter que QGis est un logiciel pr´evu pour faire de la
visualisation et certaines fonctionnalit´es de modification des donn´ees de la librairie de GDAL (en version 1.9,
je n’ai pas regard´e depuis) semblent accessibles depuis QGis mais ne sont en faite pas impl´ement´ees. C’est le
cas, en particulier, pour l’acc`es aux donn´ees raster. Il est parfois n´ecessaire de revenir `a des objets de la librairie
GDAL pour d´evelopper son plugin complet (et ce n’est pas tr`es propre !).
Dans le cadre de ce tutoriel, nous avons choisis de pr´esenter la librairie OGR/GDAL, d’une part, pour pr´esenter
les fondements partag´es par ces librairies de g´eotraitement, ensuite, pour l’aspect g´en´erique des traitements
qui peuvent ˆetre d´evelopp´es par cette librairie. Une bonne pratique de la programmation informatique (voir,
par exemple, les mod`eles MVC) est de d´ecorr´eler les fonctionnalit´es de traitement (la d´efinition des fonctions
de traitement) et les fonctionnalit´es d’interaction (comment l’utilisateur utilise les fonctions). Nous nous in-
t´eresserons ici `a d´evelopper des fonctionnalit´es de traitement. Finalement, l’usage premier de ces outils par le
g´eomaticien consiste souvent `a effectuer des transformations simples des donn´ees et `a d´el´eguer le r´ealisation des
fonctionnalit´es de traitement avanc´e `a des informaticiens. Dans ce sens, on peut supposer que les traitements
avanc´es seront des fonctions utilisables en Python (voir le chapitre V, sur l’automatisation des traitements).
3 Installation de l’environnement de travail
L’ensemble des outils qui ont ´et´e s´electionn´es sont les logiciels open sources et libres d’usage et multi-
plateformes. Vous pouvez donc les installer et les utiliser gratuitement dans tous vos d´eveloppements.
Ce dont nous aurons besoin pour ce tutoriel :
— les librairies de l’OGR :
— OGR : pour la gestion des formats de donn´ees vectoriels (dont SHP et bases de donn´ees g´eogra-
phiques),
— GEOS : pour la manipulation des g´eom´etries,
— PROJ4 : pour la gestion des syst`emes de projection,
— GDAL : pour la gestion des formats de donn´ees raster.
— les librairies permettant l’utilisation de R sous python,
— le syst`eme d’information g´eographique QGis.
3.1 Installation sous Linux
3.1.1 Installation de Python et GDAL
L’installation sous Linux est plutˆot simple relativement `a l’installation sous Windows. En effet, tous ces outils
sont d´evelopp´es et utilis´es sous Linux en premier lieu.
Les distributions de Linux les plus usuels (Ubuntu/Fedora) dispose de ces librairies dans leur offre logiciel, il
suffit donc de les installer directement avec l’outil d’installation. Personnellement, j’utilise les outils d’installation
en ligne de commande (apt-get pour ubuntu et yum pour fedora), mais vous pouvez les retrouver `a l’aide des
outils d’installation graphiques.
Pour Ubuntu, la liste des packages `a installer sont les suivants (certains packages suppl´ementaires, comme les
librairies GDAL seront automatiquement ajout´ees `a votre installation) :
— python3
— python3-numpy
— python3-scipy
— python3-gdal
5