Начало работы с разработкой плагина QGIS?

28

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

Я пробовал искать в вики QGIS, но нашел только эту ссылку:

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

который кажется устаревшим. Также было несколько постов в блоге с 2006 года.

Я также видел кое-что о плагинах Python, но я не уверен, нужно ли мне работать с плагином C ++ или плагином Python.

Где я могу найти документацию или руководства, которые помогут мне начать?

Devdatta Tengshe
источник

Ответы:

30

Этот вопрос был преобразован в вики сообщества, а вики заблокированы, потому что это пример вопроса, который ищет список ответов и кажется достаточно популярным, чтобы защитить его от закрытия. Его следует рассматривать как особый случай, и его не следует рассматривать как тип вопроса, который предлагается на этом или любом сайте Stack Exchange, но если вы хотите внести в него больше контента, сделайте это, отредактировав этот ответ. ,


Плагины C ++ встречаются все реже и реже. Скорее всего потому, что их сложнее развивать. Большая часть документации была вложена в плагины Python. В C ++ все еще есть место для критически важных для производительности вещей и функциональности, которая должна быть объединена с ядром QGIS (например, для новых средств визуализации).

Существует плагин строитель плагин , который помогает создать базовую структуру плагина для вас.

PyQGIS Cookbook предлагает множество фрагментов кода плагинов Python

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

Если вы застряли, вам поможет список рассылки разработчиков QGIS .

темноте
источник
8

В основном вам нужно знать 3 вещи:

  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, например, используя QGIS API и Python, чтобы вернуть широту и долготу точки?

Pablo
источник
5

Существует также QGIS Plugin Builder , который готовит базовый набор плагинов для начала работы. Он создает все необходимые файлы для вас.

димитрис
источник
1
Ссылка 404.
Аарон
Теперь ссылка работает.
Димитрис