Я работаю над большим ГИС-проектом и не могу отсортировать элементы на панели «Слои», поэтому мне трудно. У меня может быть до 250 слоев на панели Layers.
У меня есть специальная схема именования для всех импортируемых растровых файлов TIFF и гео-ссылок в QGIS. Но когда я импортирую их, я не могу импортировать их один за другим в алфавитном порядке, потому что мои сотрудники работают над некоторыми файлами, а я работаю над другими. Таким образом, элементы панели «Слои» повсюду. Программа не достаточно умна, чтобы сортировать их в алфавитном порядке. Вместо этого он сортирует их в порядке их импорта.
Вот, посмотрите на этот скриншот.
Нет ли в QGIS встроенной опции, которая позволила бы мне сортировать эти элементы? Если нет, есть ли плагин, который я могу установить, который позволил бы мне это сделать?
Изменить: я нашел это, и первые несколько строк кода, кажется, делают свое дело.
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)
Но я не беглый C ++ или программист на Python. Серьезно? ... Нужно ли мне брать кулинарную книгу по программированию для сортировки слоев в QGIS? Может ли это быть более сложным? ...
Есть ли плагин, который может сделать ту же работу? Я боюсь использовать код, который я не понимаю, в важном проекте.
Ответы:
Для этой функции существует открытый запрос функции: http://hub.qgis.org/issues/6828
источник
Вы можете использовать плагин, который я написал, см. Https://plugins.qgis.org/plugins/SortLayers/
Этот плагин размещает в алфавитном порядке все слои на панели слоев (от A до Z или от Z до A).
Вы используете его, нажав кнопку.
источник