Масштабирование с консоли Python QGIS

11

Каковы команды для применения всех типов масштабирования (полное, на выбранном слое и т. Д.) В консоли Python? Я ищу как в кулинарной книге Pyqgis, так и в документации API, но ничего интересного не нахожу.

user15847
источник
Не уверен, пожалуйста, ознакомьтесь с документом qgis.org/pyqgis-cookbook/canvas.html#embedding-map-canvas & QGIS API ( qgis.org/api/index.html )
Sunil
+ полезно для вас gis.stackexchange.com/questions/3651/…
Сунил

Ответы:

16

После ознакомления с кулинарной книгой лучше всего изучить документацию по API QGis . В этом случае мы ищем функции масштабирования, которые связаны с холстом карты. Так что проверьте, QgsMapCanvasсодержит ли класс что-то.

введите описание изображения здесь

Функции масштабирования, доступные в QGis, представлены в классе QgsMapCanvas .

>>> canvas = qgis.utils.iface.mapCanvas()
>>> canvas.zoomIn()
>>> canvas.zoomOut()
>>> canvas.zoomToFullExtent()
Винаян
источник
4

Все параметры масштабирования в меню «Вид» могут быть выполнены в консоли python с помощью следующего кода.

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

Замените « index » индексным номером действия масштабирования, которое вы хотите выполнить. Например, чтобы выполнить «увеличение выбранных функций», используйте

eMenu.actions() [12].trigger()
SJS
источник
2
Откуда вы знаете, что число 12 обозначает «увеличение выбранных функций»?
Энтони Стоукс