Zoomen von der Python-Konsole von QGIS

11

Mit welchen Befehlen können Sie alle Zoomtypen (Vollbild, ausgewählte Ebene usw.) in der Python-Konsole anwenden? Ich suche sowohl im Pyqgis-Kochbuch als auch in der API-Dokumentation, finde aber nichts Interessantes.

user15847
quelle
Sie sind sich nicht sicher, ob Sie das Dokument qgis.org/pyqgis-cookbook/canvas.html#embedding-map-canvas & QGIS API ( qgis.org/api/index.html )
Sunil
+ nützlich für dich gis.stackexchange.com/questions/3651/…
Sunil

Antworten:

15

Nachdem Sie das Kochbuch durchgesehen haben , sollten Sie sich am besten mit der QGis API-Dokumentation vertraut machen . In diesem Fall suchen wir nach Zoomfunktionen, die sich auf den Kartenbereich beziehen. Überprüfen Sie also, ob die QgsMapCanvasKlasse etwas enthält.

Bildbeschreibung hier eingeben

In QGis verfügbare Zoomfunktionen werden in der QgsMapCanvas-Klasse bereitgestellt .

>>> canvas = qgis.utils.iface.mapCanvas()
>>> canvas.zoomIn()
>>> canvas.zoomOut()
>>> canvas.zoomToFullExtent()
Vinayan
quelle
4

Alle Zoomoptionen im Menü "Ansicht" können in der Python-Konsole mit folgendem Code ausgeführt werden.

eMenu = self.iface.viewMenu()
eMenu.actions() [index].trigger()

Ersetzen Sie den " Index " durch die Indexnummer der Zoom-Aktion, die Sie ausführen möchten. Verwenden Sie z. B., um 'Zoomen auf ausgewählte Funktionen' auszuführen

eMenu.actions() [12].trigger()
Sjs
quelle
2
Woher wissen Sie, dass die Zahl 12 für "Auf ausgewählte Features zoomen" steht?
Anthony Stokes