Очищення нещодавно використаних систем координат, що використовуються QGIS?


9

Використовуючи деякі незвичні SRC для демонстраційних цілей, я хочу очистити мій список "Нещодавно використані системи координат" для простоти.

Це можливо?

Я використовую QGIS 2.10.1.

Відповіді:


9

QGIS 2.x

Так, ви можете ввести наступний код на консолі Python, щоб видалити всі нещодавно використовувані системи координат з користувальницького інтерфейсу:

from PyQt4.QtCore import QSettings

QSettings().remove('UI/recentProjections')
QSettings().remove('UI/recentProjectionsAuthId')

Зараз я не впевнений, чому саме, але, як мінімум, використання одного removeметоду було недостатньо. Мені довелося використовувати обидва (порядок не має значення ні до тих пір, скільки використовуються обидва).

Але це працює для мене в будь-якому випадку і, сподіваюся, і для вас!


QGIS 3.x

Ви можете використовувати наступне:

from PyQt5.QtCore import QSettings 
QSettings().remove('UI/recentProjections')

Або імпортувати QSettingsзагально (тобто з різних основних версій QGIS), ви можете використовувати наступне (завдяки @TeddyTedTed ):

from qgis.PyQt.QtCore import QSettings

3
Дякую Джозефу, чудово працює. Я зробив запит на функцію, щоб він був включений до графічного інтерфейсу, щоб полегшити завдання звичайним користувачам.
RASC

@RASC - Чудовий приятель, радий, що це працює! Існує можливість скинути, у QSettingsякому зберігаються налаштування інтерфейсу користувача, до яких вони могли б додати вищевказану функцію.
Йосип

1
Дякую @Joseph. Для QGIS 3.x використовуйте - "від qgis.PyQt.QtCore імпорту QSettings"
TeddyTedTed

1
@ TeddyTedTed - Дякую за ваш коментар, що, безумовно, є більш загальним методом замість того, щоб уточнювати PyQt4і PyQt5т. Д.
Джозеф

1
У QGIS 3.6.3 другий рядокQSettings().remove('UI/recentProjections')
aldeano
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.