Я хотел бы запустить несколько небольших и простых сценариев Python для QGIS (Mac) "снаружи" QGIS. Под внешним я имею в виду в этом контексте либо обычную командную строку os (Terminal.app), либо, что еще лучше, непосредственно из Sublime Text (текстовый редактор), но определенно не через встроенную консоль Python QGIS.
Я прочитал различные учебные пособия, например, http://www.qgis.org/pyqgis-cookbook/intro.html#python-applications, и я могу получить ссылку на приложение QGIS, но, к сожалению, нет qgis.utils.iface
или что-то еще более глубокое , Этот небольшой фрагмент кода должен, например, распечатать имя активного слоя ... вот что у меня есть:
import sys
sys.path.append("/Applications/QGIS.app/Contents/Resources/python")
from qgis.core import *
import qgis.utils
print "helo" # console output: helo
QgsApplication.setPrefixPath("/Applications/QGIS.app/", True)
QgsApplication.initQgis()
print QgsApplication # console output: <class 'qgis.core.QgsApplication'>
print qgis.utils.iface # = console output: none
aLayer = qgis.utils.iface.activeLayer()
print aLayer.name()
QgsApplication.exitQgis()
Пожалуйста, не отвечайте мне сейчас, как создать плагин или что-то еще "тяжелое". Я просто ищу быстрый и простой способ снимать сценарии из удобного текстового редактора в QGIS.
4
. В то же время мне приходится мириться с этим2
, что является настоящей болью, за которой все времяimport script
следуютreload(script)
и, конечно же, переходят из моего редактора в QGIS. Я также проверил плагин scriptrunner, который является многообещающим, но затем я не смог получитьprint "debug value"
его в консоли QGIS. Знаете ли вы, каким-либо образом, каким образом скрипт сценария запускает что-то для консоли QGIS? Большое спасибо! Будем ждать вашего ответа и затем закроем вопрос!