Tôi muốn chạy một vài tập lệnh python nhỏ và đơn giản cho QGIS (Mac) từ "bên ngoài" của QGIS. Với bên ngoài tôi có nghĩa là trong bối cảnh này, dòng lệnh os bình thường (terminal.app) hoặc thậm chí tốt hơn, trực tiếp ra khỏi Sublime Text (trình soạn thảo văn bản), nhưng chắc chắn không thông qua bảng điều khiển python của QGIS.
Tôi đã đọc qua các hướng dẫn khác nhau, ví dụ: http://www.qgis.org/pyqgis-cookbook/intro.html#python-appluggest và tôi có thể có được một tài liệu tham khảo cho ứng dụng QGIS, nhưng tiếc là không qgis.utils.iface
hoặc sâu hơn . Đoạn mã nhỏ này chẳng hạn sẽ in ra tên của lớp đang hoạt động ... đây là những gì tôi có:
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()
Vui lòng không trả lời tôi ngay bây giờ về cách tạo plugin hoặc thứ gì đó "nặng". Tôi chỉ tìm kiếm một cách nhanh chóng một cách dễ dàng để bắn các tập lệnh ra khỏi trình soạn thảo văn bản thoải mái cho QGIS.
4
. Trong khi đó tôi phải sống cùng2
, đó thực sự là một nỗi đau suốt thời gianimport script
tiếp theoreload(script)
và dĩ nhiên thay đổi từ biên tập viên của tôi sang QGIS. Tôi cũng đã kiểm tra plugin scriptrunner, điều này đầy hứa hẹn nhưng sau đó tôi không thể truy cập đượcprint "debug value"
vào bảng điều khiển QGIS. Bạn có biết, bằng mọi cách, làm thế nào để có một tập lệnh scriptslner in một cái gì đó lên bảng điều khiển QGIS không? Cảm ơn nhiều! Sẽ chờ câu trả lời của bạn và sau đó đóng câu hỏi!