как написать плагин для QGIS.

Вопросы по свободной ГИС QGIS. Сообщения об ошибках, предложения по улучшению, локализация.
Ответить
Аватара пользователя
Филиппов Владислав
Гуру
Сообщения: 1035
Зарегистрирован: 17 фев 2006, 06:28
Репутация: 144
Ваше звание: Геннадич
Откуда: Новосибирск
Контактная информация:

как написать плагин для QGIS.

Сообщение Филиппов Владислав » 04 окт 2010, 14:39

Доброго времени суток!
Не сказать что я Программист, так, конторолы по формочкам таскаю.
Писал в VBA в ArcGIS Desktop с 2002 по 2005. Далее мною было написано несколько дополнительных библиотек на С# под ArcGIS Desktop, сайт на сильверлайте с использованием ArcGIS Server - до сих пор народ всем этим пользуется. От ESRI была куча примеров и мощный SDK.
Так вот, какие могут быть пути в написании плагинов(экстеншенов...) под QGIS для такого писателя как я?
Я вижу 2:
1. С++, Qt.
2. Python.
Какие существенные различия с точки зрения разработчика между ними? Что необходимо иметь на машине для комфортной работы писателя (блокнот не пойдет)?
Где посмотреть примеры (где API уже нашел)?

Voltron
Гуру
Сообщения: 2627
Зарегистрирован: 29 мар 2007, 14:12
Репутация: 34
Откуда: Ukraine

Re: как написать плагин для QGIS.

Сообщение Voltron » 04 окт 2010, 15:38

nukevlad писал(а):Так вот, какие могут быть пути в написании плагинов(экстеншенов...) под QGIS для такого писателя как я? Я вижу 2:
1. С++, Qt.
2. Python.
Все правильно. Всего два варианта, оба вами же и озвучены.
nukevlad писал(а):Какие существенные различия с точки зрения разработчика между ними?
Смотря что понимать под "существенными различиями". С++ расширения надо после каждого изменения пересобирать, есть трудности с распространением. Но с другой стороны, в Python могут быть недоступны некоторые возможности API.
А так больших различий нет. В любом случае создается интерфейс, пишется код, выполняется отладка...
nukevlad писал(а):Что необходимо иметь на машине для комфортной работы писателя (блокнот не пойдет)?
Понадобится какой-то редактор (или IDE) для редактирования кода. Если вы не мазохист, и не пишете интерфейс ручками - нужен редактор форм (QtDesigner или комплектный в QtCreator).

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

Для С++ можно использовать студию от MS или QtCreator, для Python подойдет любой текстовый редактор, лучше с подсветкой синтаксиса.
nukevlad писал(а):Где посмотреть примеры (где API уже нашел)?
Информация о создании расширений есть в QGIS Coding and Compilation Guide (скачать PDF). Полезные фрагменты кода и немного теории приводится в PyQGIS Developer Cookbook, что-то есть в Wiki. Основная документация - QGIS API.

Еще на сайте есть статья.

yellow-sky
Гуру
Сообщения: 588
Зарегистрирован: 30 мар 2009, 21:53
Репутация: 55
Откуда: Королев

Re: как написать плагин для QGIS.

Сообщение yellow-sky » 04 окт 2010, 18:35

Дополнения:
- хорошая среда для разработки на c++ под линуксом - Kdevelop. В Винде она не так удобна как QtCreator
- неплохая среда для разработки на python - Aptana (v2 + pydev). Хорошо работает и на винде и на линуксе.

Аватара пользователя
Филиппов Владислав
Гуру
Сообщения: 1035
Зарегистрирован: 17 фев 2006, 06:28
Репутация: 144
Ваше звание: Геннадич
Откуда: Новосибирск
Контактная информация:

Re: как написать плагин для QGIS.

Сообщение Филиппов Владислав » 05 окт 2010, 05:15

Благодарствую!
Вот с этим уже можно что то попробовать!
Начну с пайтона, имхо проще. Тем более, что остались связи с ArcGIS'овскими задачами, а ESRI уходит от VBA к питону, поэтому практичнее.
Уже смотрю PyScripter и PyDev под Eclipse.
Жаль, что на нашей информатике не учат Python'у, придется на ГИСе учить студентов :)

giserrr
Новоприбывший
Сообщения: 1
Зарегистрирован: 15 окт 2010, 15:06
Репутация: 0

Re: как написать плагин для QGIS.

Сообщение giserrr » 15 окт 2010, 15:18

Можно ли написать плагин для QGis на делфи?

gamm
Гуру
Сообщения: 4168
Зарегистрирован: 15 окт 2010, 08:33
Репутация: 1107
Ваше звание: программист
Откуда: Казань

Re: как написать плагин для QGIS.

Сообщение gamm » 15 окт 2010, 15:44

giserrr писал(а):Можно ли написать плагин для QGis на делфи?
нужно сделать DLL и "переходник" на питоне, который будет отрабатывать мышку (нужно создать свой инструмент, и встроиться в меню).

Voltron
Гуру
Сообщения: 2627
Зарегистрирован: 29 мар 2007, 14:12
Репутация: 34
Откуда: Ukraine

Re: как написать плагин для QGIS.

Сообщение Voltron » 15 окт 2010, 16:37

giserrr писал(а):Можно ли написать плагин для QGis на делфи?
QGIS предоставляет только С++ и Python API. Так что это нечто из области фантастики.

Аватара пользователя
Филиппов Владислав
Гуру
Сообщения: 1035
Зарегистрирован: 17 фев 2006, 06:28
Репутация: 144
Ваше звание: Геннадич
Откуда: Новосибирск
Контактная информация:

Re: как написать плагин для QGIS.

Сообщение Филиппов Владислав » 29 ноя 2010, 09:51

Делпхи - тупиково.

Voltron
Гуру
Сообщения: 2627
Зарегистрирован: 29 мар 2007, 14:12
Репутация: 34
Откуда: Ukraine

Re: как написать плагин для QGIS.

Сообщение Voltron » 29 ноя 2010, 10:21

Если именно Delphi, то да, тупиково. Но если говорить об ObjectPascal — ниразу не тупиково.

freeman
Новоприбывший
Сообщения: 14
Зарегистрирован: 23 ноя 2010, 17:31
Репутация: 0
Откуда: Москва

Re: как написать плагин для QGIS.

Сообщение freeman » 21 июл 2012, 23:45

Тоже пытаюсь написать плагин на Питоне. Я так понял QT Creator не поддерживает Python?

yellow-sky
Гуру
Сообщения: 588
Зарегистрирован: 30 мар 2009, 21:53
Репутация: 55
Откуда: Королев

Re: как написать плагин для QGIS.

Сообщение yellow-sky » 22 июл 2012, 12:39

freeman писал(а):Тоже пытаюсь написать плагин на Питоне. Я так понял QT Creator не поддерживает Python?
Нет. И навряд ли когда то будет.
Используйте другие ИДЕ, поддерживающие питон - eric4, PyDev+Eclipse, Komodo IDE, PyScripter. А для разработки форм - QtDesigner.

Dison
Новоприбывший
Сообщения: 3
Зарегистрирован: 07 фев 2013, 11:29
Репутация: 0

Re: как написать плагин для QGIS.

Сообщение Dison » 07 июн 2013, 14:32

Добрый день! Написал плагин для QGis на C++, необходимо добавить перевод интерфейса плагина на русский язык. Как я понял весь перевод QGis и плагинов лежит в папке i18n, в одном файле qgis_ru.qm. Можно ли в плагине использовать свой файл перевов .qm?

Ответить

Вернуться в «QGIS»

Кто сейчас на конференции

Сейчас этот форум просматривают: Bing [Bot] и 2 гостя