GIS and Media fusion

"The explosive growth of the GeoWeb and geographic information has made GIS powerful media for the general public to communicate, but perhaps more importantly, GIS have also become media for constructive dialogs and interactions about social issues." - Sui & Goodchild

User Tools

Site Tools


geoinf15:qgsmaprenderer

This is an old revision of the document!


Table of Contents

QgsMapRenderer.py

Etape 1

  • Lancer QGIS
  • Charger une quelconque couche de polygones (cantons de Suisse, etc)
  • Dans la console Python de QGIS, ouvrir l'éditeur
  • Y insérer le code ci-dessous
  • Modifier la dernière ligne selon votre système de fichiers
  • Sauvegarder le script
  • Exécuter
from PyQt4.QtCore import *
from PyQt4.QtGui import *

img = QImage(QSize(800,600), QImage.Format_ARGB32_Premultiplied)
img.fill(QColor(255,255,255).rgb())
p = QPainter()
p.begin(img)
p.setRenderHint(QPainter.Antialiasing)
render = QgsMapRenderer()
aLayer = qgis.utils.iface.activeLayer()
render.setLayerSet([ aLayer.id() ])
#aLayer.loadSldStyle('/tmp/test.sld')
rect = QgsRectangle(render.fullExtent())
render.setExtent(rect)
render.setOutputSize(img.size(), 96)
render.render(p)
p.end()
img.save("/tmp/render.png","png")

Etape 2

  • Télécharger/décompresser la description de style ci-après test.sld
  • Décommenter la ligne aLayer.loadSldStyle et adapter le chemin selon votre système de fichier
  • Sauvegarder le script
  • Exécuter
geoinf15/qgsmaprenderer.1476093132.txt.gz · Last modified: 2018/05/16 10:05 (external edit)