Zoom no console python do QGIS

11

Quais são os comandos para aplicar todos os tipos de zoom (completo, na camada selecionada etc.) no console python? Estou pesquisando no livro de receitas pyqgis e na documentação da API, mas não estou encontrando nada de interessante.

user15847
fonte
Não tenho certeza, verifique qgis.org/pyqgis-cookbook/canvas.html#embedding-map-canvas e documento da API do QGIS ( qgis.org/api/index.html )
Sunil ''
+ Útil para você gis.stackexchange.com/questions/3651/...
Sunil

Respostas:

15

Depois de conhecer o livro de receitas, o melhor lugar para aprender é consultar a documentação da API do QGis . Nesse caso, estamos procurando funções de zoom, relacionadas à tela do mapa. Portanto, verifique se a QgsMapCanvasclasse contém alguma coisa.

insira a descrição da imagem aqui

As funções de zoom disponíveis no QGis são fornecidas na classe QgsMapCanvas .

>>> canvas = qgis.utils.iface.mapCanvas()
>>> canvas.zoomIn()
>>> canvas.zoomOut()
>>> canvas.zoomToFullExtent()
vinayan
fonte
4

Todas as opções de zoom no menu 'Visualizar' podem ser executadas no console python pelo seguinte código.

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

Substitua o " índice " pelo número do índice da ação de zoom que você deseja executar. Por exemplo, para executar 'zoom nos recursos selecionados', use

eMenu.actions() [12].trigger()
Sjs
fonte
2
Como você sabe que o número 12 indica 'zoom para recursos selecionados'?
Anthony Stokes