Запитання з тегом «pyqgis»

Прив'язки Python для QGIS.


1
Чому порядок імпорту має значення в окремому сценарії обробки PyQGIS?
Під час запуску автономних сценаріїв обробки PyQGIS я стикався з дивною проблемою. Порядок імпорту в сценарії впливає на його нормальне виконання. Ви можете відтворити проблему, відкривши консоль Python і ввівши наступний сценарій (я використовую GNU / Linux, QGIS 2.6.1, обробку плагіна v.2.2.0-2 та Python 2.7.3): # Prepare the environment import …

7
QGIS плагін: Проблеми з імпортом файлу ресурсів (resource_rc) - плагін не завантажується - проблеми PATH?
Я будую плагін qgis, і я не можу знайти рішення для цієї помилки. File "/usr/lib/python2.7/dist-packages/qgis/utils.py", line 478, in _import mod = _builtin_import(name, globals, locals, fromlist, level) ImportError: No module named resources_napoved_rc Для всіх, хто запитає, я створив файл ресурсів python: pyrcc4 -o resources_napoved_rc.py resources_napoved.qrc Я досі не можу знайти спосіб …

3
Вибір функцій за допомогою виразу з PyQGIS
Як я можу вибрати функції з PyQGIS за допомогою виразу? Я спробував використовувати, QgsExpressionале метод select не приймає його: exp = QgsExpression("'ogc_fid' = 482") cLayer = canvas.currentLayer() cLayer.select(exp) Чи можливо це, і якщо так, то як це зробити?

2
Налаштування атрибута функції по імені через QGIS python api?
Я намагаюся встановити атрибути функції за назвою атрибуту цим кодом pr = layer.dataProvider() pr.addAttributes([QgsField("test", QVariant.Int)]) layer.updateFields() for feature in layer.getFeatures(): attrName = 'test' feature[attrName] = 1 але в результаті я маю NULL у всіх полях. Якщо я користуюся feature.setAttributes([1]) вона працює належним чином. Що я роблю неправильно? Чому функція [attrName] …
13 pyqgis 

1
Як бачити команди друку через Python Script під час програмування плагіна для QGIS?
Чи є спосіб запустити користувальницький плагін для QGIS, що Python Shell може з'являтися під час запуску плагіна, як екран налагодження? Я запитую це, щоб знати, чи є спосіб побачити команди друку через Python Script під час програмування плагіна для QGIS.

1
Змінити алгоритм мінімальної обмежувальної коробки
Я намагаюся створити алгоритм, подібний до мінімального обмежувального поля (хоча це може виявитись схожим не на нього). У цьому випадку кут буде переданий як параметр, і з урахуванням кута мені потрібен найменший прямокутник, що покриває всі мої точки / багатокутники. Поки мій напрямок думки полягає в тому, щоб знайти центр …

3
Зробити плагін QGIS python для обох версій 2.x та 3.x?
Я переношу плагін QGIS python з QGIS 2на QGIS 3та переглядаю різні ресурси. Незрозуміло, чи можливо плагін сумісний з обома версіями або якщо для плагіна потрібні дві ручки. Наразі проблема, якою я потрапила, полягає в тому, як керувати імпортом PyQt (PyQt4 / PyQt5)?

1
Отримайте всі рядки, які містять крапку
Я використовую QGIS і у мене є точка і дорожня мережа. Мені потрібно автоматично витягувати назви доріг, які додають конкретну точку. Аналіз найближчих сусідів та буферних зон не можуть виконати цю роботу, оскільки в багатьох випадках точка ближче, як міряється відстані, до сусідніх доріг, а не до сусідніх. Чи є …

1
Чистий спосіб скасувати сценарії обробки QGIS від gui
Я написав сценарій обробки QGIS, який здійснює аналіз найближчого обладнання. Беручи повний набір вхідних даних (адреса 20k як вихідні точки, ~ 100 цільових точок, дорожня мережа OSM з ~ 13k рядками), сценарій працює близько 3 годин, а тому використовує різні індикатори прогресу, щоб переконатись у користуванні, що це ще живий …

2
Встановлення значення за замовчуванням у полі QGIS
Я хотів би додати в поле шару значення за замовчуванням. Я маю на увазі, щоразу, коли створюється нова функція, це поле автоматично заповнюється значенням за замовчуванням. У моєму випадку типовим значенням буде змінна @project_filename (ім'я файлу проекту). Я не можу ніде знайти цю функціональність. З повагою,

1
PyQGIS збережіть растр як відтворене зображення, а потім використовуйте на ньому інструменти GDAL
Я спробував використовувати код із QGis Save Raster як відтворене зображення . iявляє собою растровий шар: pipelayer = i pipeextent = pipelayer.extent() pipewidth, pipeheight = (pipelayer.width(), pipelayer.height()) piperenderer = pipelayer.renderer() pipeprovider = pipelayer.dataProvider() crs = pipelayer.crs().toWkt() pipe = QgsRasterPipe() pipe.set(pipeprovider.clone()) pipe.set(piperenderer.clone()) pipedFile = os.path.join(tempfile.gettempdir(), safeLayerName + '_pipe.tif') print pipedFile file_writer …

3
Чи можливо використовувати шари пам'яті в алгоритмах обробки QGIS?
Я будую плагін QGIS, який підключається до бази даних MySQL в локальній мережі, а потім додає підмножину однієї з таблиць до рівня пам'яті; підмножина базується на валюті даних (бере лише останнє спостереження для кожного місця, де проводяться вимірювання). Цей шар пам'яті успішно створений. Однак я хочу запустити деякі алгоритми геообробки, …

3
Розділити функцію при перетині з ознакою іншого шару за допомогою PyQGIS / Python?
У мене буферний шар (зелений багатокутник), який я хочу розділити на два полігони, коли він перетинає бар'єр (синя лінія). Я намагався використовувати метод "splitGeometry", але я просто не можу змусити його працювати. Мій код поки що такий: while ldbuffprovider.nextFeature(feat): while barprovider.nextFeature(feat2): if feat.geometry().intersects(feat2.geometry()): intersection = feat.geometry().intersection(feat2.geometry()) result, newGeometries, topoTestPoints=feat.geometry().splitGeometry(intersection.asPolyline(),True) Який …

1
Як вирішити новий QgsMessageBar «виконаний завданням» на Python?
Я дуже вражений, які величезні кроки в розвитку QGIS зробили за останні місяці. Новий набір іконок, вдосконалений композитор друку та багато інших змін, які слід побачити в QGIS 2.0, справді приголомшливі! Серед багатьох інших цікавих вдосконалень є і цей вишуканий синій бар завдання, який мені здається дуже привабливим. Чи можна …
12 qgis  python  pyqgis 

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.