Страница 1 из 1

[Мастер-класс] Создание python плагинов QGIS для начинающих

Добавлено: 30 окт 2015, 14:08
alisovenko
Всем привет!

Хочу рассказать об основах создания плагинов для QGIS.
Создание плагинов с нуля: создание форм, добавление перевода, отладка и т.д. и т.п.
Полезные плагины: Plugin Builder, Plugin Reloader, Remote Debug

Хочется все вопросы рассмотреть на конкретном примере. Хочется выбрать полезный пример.

Покидайте, пожалуйста, примеры задач которые до сих пор не решает кугис, но очень хочется, чтобы решал. А я выберу, какую рассмотреть на мастер-классе.

Учтите, что это должно быть что-то небольшое.

Re: [Мастер-класс] Создание python плагинов QGIS для начинаю

Добавлено: 30 окт 2015, 22:18
esasha
а если бы это было-бы как-нибудь запечатленно {для потомков} то вообще супер!!)) вопрос к организаторам, конечно))

Re: [Мастер-класс] Создание python плагинов QGIS для начинаю

Добавлено: 31 окт 2015, 08:36
Филиппов Владислав
есть задача - создать окно в котором будет список вершин (и их координат) выделенного объекта.
поддержка мультигеометрий.
при выделении вершины в списке подсвечивать её на карте

Re: [Мастер-класс] Создание python плагинов QGIS для начинаю

Добавлено: 31 окт 2015, 11:08
Александр Мурый
Хотелось бы, чтобы больше внимания уделили не реализации конкретного плагина, а каким-то общим вещам (работа с разными типами данных, временные слои, чтение/запись, ускорение работы плагина, всякие оптимизации, подключение и использование разных питоновских пакетов). Плюс всякие особенности ("плюшки"), которым в оф. документации уделяется мало внимания.

Re: [Мастер-класс] Создание python плагинов QGIS для начинаю

Добавлено: 01 ноя 2015, 22:31
nextstopsun
Можно ли написать плагин, позволяющий открывать окно редактирования символа сразу из дерева слоев?
В QGIS всегда отсутствовала эта полезная функция, позволяющая сэкономить уйму времени при сложной стилизации слоев.
Например, когда слой стилизован несколькими символами (rule-based и др.), то нажатие на сам символ в дереве слоев ведет в окно свойств стиля слоя. В нем снова нужно отыскать этот символ и уже тогда перейти непосредственно к его редактированию. Это крайне неудобно, когда стили сложные с большим числом правил. Если сильная вложенность правил - становится еще труднее. В ArcGIS подобной проблемы нет - нажатие на символ в таблице содержания сразу ведет к окну редактирования.
Думаю - это простой и полезный пример. Что скажете?

Re: [Мастер-класс] Создание python плагинов QGIS для начинаю

Добавлено: 02 ноя 2015, 01:10
Максим Дубинин
это было бы полезным улучшением, но:
- это не плагин, это должно идти в ядро
- для обучающего мастер-класса не очень подходит, сложно

Re: [Мастер-класс] Создание python плагинов QGIS для начинаю

Добавлено: 19 ноя 2015, 19:28
Филиппов Владислав
Александр, так что, на каком примере будет мастер-класс?

Re: [Мастер-класс] Создание python плагинов QGIS для начинаю

Добавлено: 19 ноя 2015, 23:23
alisovenko
- Для мастер-класса достаточно установленного QGIS (с http://qgis.com/)

- Проверьте, что все доступно для выполнения в консоли:
1. pyrcc4.exe
2. pyuic4.bat
3. pylupdate4.exe
4. lrelease.exe
5. designer.exe
6. linguist.exe
(Windows: если установлен qgis достаточно выполнить скрипт <qgis install dir>/bin/o4w_env.bat)

- Заранее установите в QGIS плагин «Plugin Reloader»

- План будет следующий:
1. Создадим минимально возможный плагин;
2. Добавим вывод отладочных сообщений и покажем сообщения пользователю, используя qgis api;
3. Добавим элементы управления: пункт в меню "Плагины" и иконку на панель инструментов;
4. Создадим форму-диалог в qt designer, добавим ее к плагину;
5. Добавим рускоязычный перевод интерфейса;
6. Создадим новый инструмент для карты (MapTool):
  • инструмент будет доступен для текущего векторного слоя;
  • он будет идентифицировать объекты векторного слоя подобно стандартному инструменту идентификации "Определить объекты";
  • все идентифицированные объекты и их атрибуты будем выводить в новом окне в виде дерева;
  • если источник векторного слоя sqlite база данных, то к атрибутам будет добавлена информация из других таблиц, связанных по определенному полю;
7. Процесс идентификации будет вынесен в отдельный поток, чтобы не блокировать интерфейс пользователя.

- пример БД sqlite будет позже

Re: [Мастер-класс] Создание python плагинов QGIS для начинаю

Добавлено: 20 ноя 2015, 12:23
dkiselev
Привет,
у меня есть скрипт, который по сути делает geospatial cross join.
(Ключевое слово тут cross)

Сейчас это просто геоскрипт который все никак не хотят смержить в соновной репозиторий скриптов QGIS - в качестве простого задания, можно было бы его завернуть в плагин.

Re: [Мастер-класс] Создание python плагинов QGIS для начинаю

Добавлено: 20 ноя 2015, 12:26
dkiselev
И еще хотелось бы кратенький ликбез по Питону.

- Как разруливать загрузку пакетов/внешних библиотек.
- Как избавится от ошибок с utf-8 раз и на всегда (если это возможно)

Re: [Мастер-класс] Создание python плагинов QGIS для начинаю

Добавлено: 21 ноя 2015, 00:01
alisovenko
Материалы по мастерклассу тут:
http://nextgis.ru/programs/qgis/gisconf-plugin.zip

Re: [Мастер-класс] Создание python плагинов QGIS для начинаю

Добавлено: 21 ноя 2015, 00:57
amnesiac
А на месте будет возможность скачать? А то я, например, уже в поезде, думаю, некоторые участники тоже

Re: [Мастер-класс] Создание python плагинов QGIS для начинаю

Добавлено: 21 ноя 2015, 08:37
Александр Мурый
amnesiac писал(а):А на месте будет возможность скачать? А то я, например, уже в поезде, думаю, некоторые участники тоже
Ну да, такая конфа и без интернета — это по меньшей мере странно.