Skip to Content

Nous adressons toutes nos pensées à la famille de notre ami Jérôme !

http://www.forumsig.org/showthread.php/43488-Disparition-de-Phoenix

Qgis : optimiser ses documents

Niveau Débutant
Logiciels utilisés Qgis
Plateforme

Combien de fois ai-je entendu des utilisateurs pester contre leur logiciel SIG parce qu'il "ramait" !

Eh bien, avant d'incriminer son logiciel préféré, mieux vaut savoir quelles erreurs ne pas commettre et quoi faire pour que son document Qgis soit le plus fluide possible.

Je vais ici parler de Qgis mais c'est totalement applicable dans n'importe quel logiciel SIG (même pour des serveurs carto). 

1) Les seuils d'affichage (visibilité dépendante de l'échelle)

Définissez des seuils d'affichage pour vos couches, surtout pour les couches les plus lourdes.

Par exemple, il n'y a guère d'interêt à afficher une couche des parcelles au 50 000 ème. Si vous le faites, le logiciel devra dessiner ces objets (ces milliers voire dizaines de milliers d'objets)  sur l'écran, entrainant des performances fortement ralenties. Bien sûr, c'est un exemple extrême mais le principe n'en reste pas moins à utiliser.

De même pour un .vrt d'un scan 25 affiché au 100 000 ème. De très nombreuses dalles seront affichées à l'écran, entraînant un affichage ralenti alors que cela n'a pas d'utilité.

Rendez vous dans les propriétés de la couche, onglet général pour régler ces seuils :

 

2) L'index spatial

Veillez à ce que vos couches vectorielles aient un index spatial. Celui-ci va fortement accélérer l'affichage des entités de la couche en permettant au logiciel de connaître très rapidement quelles entités sont à afficher (NB : l'index spatial est en fait le rectangle englobant de chaque entité).

En bonus, l'index spatial va accélérer vos géotraitements, en permettant un premier tri rapide (pour une intersection, premier tri avec les intersections des rectangles englobants des 2 couches avant de calculer la véritable intersection).

Pour calculer l'index spatial d'une couche dans Qgis, rendez vous dans les propriétés de la couche, onglet Général (cf. l'imprime-écran du point 1).

3) Le piège de la reprojection à la volée.

La reprojection à la volée est une option très pratique dans Qgis, puisqu'elle vous permet de superposer correctement des couches vectorielles ou rasters ayant des systèmes de coordonnées différents.

Qu'est ce que la reprojection à la volée ? Il s'agit pour une couche vectorielle de convertir toutes les coordonnées des sommets dans le système de coordonnées du document Qgis, permettant ainsi de les afficher dynamiquement au bon endroit. Autant dire que cela utilise une puissance de calcul loin d'être négligeable.

Pour les rasters, ca se corse encore plus, puisqu'il s'agit de recalculer la position des pixels du raster. La puissance de calcul demandée est ainsi encore plus importante.

Si vous voulez un document Qgis rapide, désactivez la projection à la volée et reprojetez toutes vos couches dans la même projection avant de les inclure. Non seulement cela améliorera vos performances d'affichage mais cela rendra vos géotraitements plus rapides (voire les empechera de planter).

En bref, réservez la projection à la volée à la découverte des données et non pas à leur exploitation ! Veillez donc à avoir en exploitation des données dans un système de coordonnées unique.

Et si jamais vous devez pour une raison ou pour une autre conserver des systèmes de coordonnées différents, préférez toujours le système de coordonnées des données les plus "lourdes" (raster, couches vectorielles complexes) comme système de coordonnées du document.

4) Les pyramides pour les raster.

Les pyramides sont des aperçus du raster à différentes échelles. Ils permettent donc à QGIS, une fois générés, d'afficher très rapidement un raster qu'elle que soit l'échelle (ci dessous la BD Alti 75m de l'IGN sur toute la France).

Vous pouvez choisir les niveaux de pyramides à générer et ainsi faire un compromis optimal poids / performance (et ceci d'autant plus en combinant les pyramides avec des seuils de zoom adaptés).

Pour générer les pyramides, rendez vous dans les propriétés d'un raster, onglet pyramides. Sélectionnez les niveaux de pyramides souhaités puis générez les.

A titre personnel, je préfère les générer en fichier externe (d'ailleurs, Qgis vous y incitera fortement). Un fichier ovr les contenant (qui peut très vite devenir imposant pour une ortho départementale :-) ) sera généré à côté du raster. Bien sûr, cela fonctionne avec les rasters virtuels (.vrt).

 

Et en bonus, une petite info pour conserver un Qgis performant, toutes les extensions python activées sont chargées à l'ouverture de QGis, pouvant fortement le ralentir. N'hésitez pas à désactiver les extensions les moins utiles et à ne les activer qu'en cas de besoin.

Site officiel : Qgis

Commentaires

Poster un nouveau commentaire

Le contenu de ce champ sera maintenu privé et ne sera pas affiché publiquement.