Ich arbeite an einem großen GIS-Projekt und es macht mir schwer, die Elemente im Ebenenbedienfeld nicht sortieren zu können. Ich kann bis zu 250 Ebenen im Ebenenbedienfeld haben.
Ich habe ein spezielles Benennungsschema für alle TIFF-Rasterdateien, die ich importiere und in QGIS georeferenziere. Aber wenn ich sie importiere, kann ich sie nicht einzeln in alphabetischer Reihenfolge importieren, da meine Kollegen an einigen Dateien arbeiten und ich an anderen. Die Elemente im Ebenenbedienfeld befinden sich also überall. Das Programm ist nicht intelligent genug, um sie in alphabetischer Reihenfolge zu sortieren. Stattdessen werden sie in der Reihenfolge sortiert, in der ich sie importiere.
Schauen Sie sich hier diesen Screenshot an.
Gibt es in QGIS keine integrierte Option, mit der ich diese Elemente sortieren kann? Wenn nicht, gibt es ein Plugin, das ich installieren kann, um dies zu tun?
Edit: Ich habe dies gefunden und die ersten paar Codezeilen scheinen den Trick zu tun.
from PyQt4.QtCore import *
from PyQt4.QtGui import *
from qgis.utils import iface
mw = iface.mainWindow()
lgd = mw.findChild(QTreeWidget, "theMapLegend") # get ref to object by type/objectName
lgd.sortItems(0, Qt.AscendingOrder) # sort first column (Qt.DescendingOrder to reverse)
Aber ich bin kein fließender C ++ - oder Python-Programmierer. Ernsthaft? ... Muss ich ein Programmierkochbuch zur Hand nehmen, um die Ebenen in QGIS zu sortieren? Könnte es schwieriger sein? ...
Gibt es kein Plugin, das den gleichen Job machen kann? Ich habe Angst, Code zu verwenden, den ich für ein wichtiges Projekt nicht verstehe.
Antworten:
Für diese Funktion besteht eine offene Funktionsanforderung: http://hub.qgis.org/issues/6828
quelle
Du kannst ein Plugin verwenden, das ich geschrieben habe, siehe https://plugins.qgis.org/plugins/SortLayers/
Dieses Plugin ordnet alle Ebenen im Ebenenbedienfeld alphabetisch an (von A bis Z oder von Z bis A).
Sie nutzen es per Knopfdruck.
quelle