Czy istnieje prosty sposób na sortowanie warstw alfabetycznie w QGIS?


13

Pracuję nad dużym projektem GIS i brak możliwości sortowania elementów w panelu Warstwy sprawia mi trudność. W panelu Warstwy mogę mieć do 250 warstw.

Mam specjalny schemat nazewnictwa dla wszystkich importowanych plików rastrowych TIFF i georeferencji w QGIS. Ale kiedy je importuję, nie mogę importować ich pojedynczo w kolejności alfabetycznej, ponieważ moi współpracownicy pracują nad niektórymi plikami, a nad innymi. Tak więc elementy w panelu Warstwy są wszędzie. Program nie jest wystarczająco inteligentny, aby posortować je w kolejności alfabetycznej. Zamiast tego sortuje je w kolejności, w jakiej je importuję.

Tutaj spójrz na ten zrzut ekranu.

za

Czy w QGIS nie ma wbudowanej opcji umożliwiającej sortowanie tych elementów? Jeśli nie, to czy mogę zainstalować wtyczkę, która pozwoli mi to zrobić?

Edycja: Znalazłem to i kilka pierwszych wierszy kodu wydaje się załatwić sprawę.

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)

Ale nie jestem biegłym programistą C ++ ani programistą Python. Poważnie? ... Czy muszę wybrać książkę kucharską do programowania, aby posortować warstwy w QGIS? Czy to może być trudniejsze? ...

b

Czy nie ma wtyczki, która mogłaby wykonywać tę samą pracę? Boję się używać kodu, którego nie rozumiem w ważnym projekcie.


1
Sądząc po tym, co przeczytałem na stronie internetowej QGIS, ta funkcja jest wymagana od kilku lat. Wszystkie „rozwiązania”, które do tej pory znalazłem, wymagają użycia bloków kodu w celu wykonania zadań. Zainstalowałem QGIS 2.2.0, który został wydany w zeszłym miesiącu i nie ma takiej opcji sortowania warstw. Ponieważ nie jest to priorytetem, byłoby miło, gdyby ktoś napisał wtyczkę, aby dodać tę funkcję do QGIS.
Samir

1
Jeśli projekt jest ważny, zrób kopię zapasową i wypróbuj kod. Wolisz zaufać wtyczce, której też nie rozumiesz? Nie sądzę, żeby to miało sens.
podmroku

@underdark Dla osoby bez umiejętności programistycznych może to stanowić przeszkodę. „Znajdź i zapłać komuś, kto pisze do tego wtyczkę” byłoby lepszą odpowiedzią. Myślę, że powinniśmy stworzyć rodzaj platformy rynku deweloperów QGIS dla takich problemów. A może już?
AndreJ

@AndreJoost obecnie na qgis.org znajduje się tylko lista komercyjnych dostawców wsparcia / deweloperów. Najlepszym miejscem do kontaktu jest lista dyskusyjna deweloperów.
podmroku

Może ta odpowiedź będzie pomocna: gis.stackexchange.com/questions/41977/…
user7172

Odpowiedzi:


4

Możesz użyć wtyczki, którą napisałem, patrz https://plugins.qgis.org/plugins/SortLayers/

Ta wtyczka porządkuje alfabetycznie wszystkie warstwy w panelu warstw (od A do Z lub od Z do A).

Korzystasz z niego, naciskając przycisk.


Proszę edytować swoje odpowiedzi podać kilka informacji o tym, co ma wtyczki, jak go używać, i co robi, aby odpowiedzieć na to pytanie.
Midavalo

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.