У меня есть проект QGIS (2.14.3-Essen), который я использую как на работе, так и дома. Я держу все, кроме двух слоев с проектом.
Два оставшихся слоя очень большие - матрица высот и отмывка общим объемом более 20 ГБ - и они хранятся по-разному на работе и дома.
Я хотел бы игнорировать Handle Bad Layers
диалог и сохранить нарушенные пути для этих слоев. Мне часто все равно, они плохие; Я хочу внести изменения в другие части проекта.
Есть ли способ сделать это, чтобы игнорировать или пропустить диалог Обработка плохих слоев, чтобы я не потерял ссылку на слои, если не обновлю их?
Ответы:
Просто сделайте отдельные копии из вашего файла проекта для домашнего и рабочего использования.
Сохраненные данные будут записаны в исходные файлы слоя, а не в файл проекта.
После того, как вы закончили домашнюю работу, вы можете взять ее на работу и заново добавить плохие слои. Если у вас есть сложные стили для слоев, вы можете сохранить его отдельно и добавить его тоже.
Другой вариант - обернуть файл VRT вокруг внешнего источника.
Пример примера растрового файла Geotif, созданного с помощью
gdal_translate
:и образец для шейп-файла:
Когда исходные файлы отсутствуют, растр отображается в виде черного квадрата (вы можете превратить слой в невидимый), а векторный слой становится негеометрической таблицей без каких-либо сообщений об ошибках. Дополнительные не vrt слои с исходными файлами, которые не были удалены, останутся и могут быть отредактированы. Если вы переустановите исходные файлы, все вернется на круги своя, даже изменения в других слоях.
источник
Возможное решение - изменить файл проекта qgs, используя скрипт. Я обнаружил, что если вы замените источник данных на,
<datasource>.</datsource>
то он будет игнорировать всплывающее окно «Обработка плохих слоев».Скрипт Python для запуска, если вы не хотите загружать определенные слои.
Сценарий Python, который нужно запустить, чтобы вставить соответствующий путь к источнику данных.
Делая это, вы можете настроить
DoNotLoad.py
с верхним сценарием иhome.py
с путями к вашим домашним источникам иwork.py
с путями к вашим рабочим источникам, используя второй скрипт в качестве шаблона.После этого у вас будет один проект для работы, но вы можете легко изменить пути в зависимости от среды, в которой вы находитесь, или изменить пути так, чтобы слои не загружались, но оставались в вашем проекте (все ваши стили сохранены и я думаю, что вы можете даже изменить стиль, если хотите. Просто ничего не будет отображаться на карте).
источник
Плагин ChangeDataSource сохраняет слои в файле, временно перемещая их в группу обработки плохих слоев. https://geogear.wordpress.com/2016/01/29/changedatasourceplugin-plugin-release-2-0/ Он должен делать то, что вы хотите. В прошлом году у меня была похожая проблема, и я заметил, что был плагин ChangeDataSource, который работал со слоями, но не обрабатывал плохие слои. Я упомянул, что обработка плохих слоев будет отличной особенностью в комментариях в блоге разработчика (Энрико Феррегути). В течение недели он добавил это!
источник