Початок роботи з розробкою плагінів QGIS?


28

Я хочу розробити простий плагін для QGIS, який відкриє деякі дані та виконує певну обробку.

Я спробував шукати на вікі QGIS, але знайшов лише це посилання:

http://www.qgis.org/wiki/Writing_C++_Plugins

що здається застарілим. Також було декілька публікацій блогу з 2006 року.

Я також бачив щось про плагіни Python, але я не впевнений, чи потрібно мені працювати з плагіном C ++ або плагіном Python.

Де я можу знайти документацію чи підручники, які допоможуть мені почати роботу?

Відповіді:


30

Це запитання було перетворено на Wiki Wiki спільноти та вікі заблоковано, оскільки це приклад запитання, що шукає список відповідей і, здається, є досить популярним, щоб захистити його від закриття. Це слід розглядати як окремий випадок і не слід розглядати як тип запитання, який рекомендується на цьому або будь-якому веб-сайті Stack Exchange, але якщо ви хочете внести до нього більше вмісту, тоді не соромтеся, редагуючи цю відповідь. .


У ці дні плагіни C ++ все рідше зустрічаються. Швидше за все, тому що їх складніше розвивати. Більшість документаційних зусиль було вкладено в плагіни Python. У C ++ все ще є місце для важливих речей та функціональних можливостей, які, як передбачається, об'єднані в ядро ​​QGIS (наприклад, нові рендери).

Існує плагін Builder Plugin, який допомагає створити базову структуру плагіна для вас.

PyQGIS Cookbook пропонує безліч фрагментів коду плагінів Python

Книга Керівництво PyQGIS програміста це ще один хороший ресурс.

Якщо ви застрягли, список розсилки розробників QGIS є для того, щоб вам допомогти.


8

В основному вам потрібно знати три речі:

  1. Python: http://www.python.org/
  2. PyQT (щоб зробити інтерфейс користувача, якщо він потрібен): http://www.riverbankcomputing.co.uk/software/pyqt/intro
  3. API Qgis: http://doc.qgis.org/head/

Всі вони дуже добре задокументовані, для початку я рекомендую вам переглядати модулі API QGIS і грати з консоллю python, роблячи основні речі, такі як доступ до функцій векторного шару.

Пізніше, після того, як ви відчуєте відчуття api, ви можете задати більш конкретні запитання тут, на GIS SE, наприклад, використовуючи API QGIS та Python, щоб повернути широту та довготу точки?


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