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

Всё про конференцию, организация и участие. Не стесняйтесь, спрашивайте.
Ответить
alisovenko
Новоприбывший
Сообщения: 6
Зарегистрирован: 29 авг 2013, 17:11
Репутация: 7

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

Сообщение alisovenko » 30 окт 2015, 14:08

Всем привет!

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

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

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

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

esasha
Активный участник
Сообщения: 159
Зарегистрирован: 09 янв 2009, 20:40
Проекты: 4
Репутация: 23
Откуда: Новосибирск
Контактная информация:

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

Сообщение esasha » 30 окт 2015, 22:18

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

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

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

Сообщение Филиппов Владислав » 31 окт 2015, 08:36

есть задача - создать окно в котором будет список вершин (и их координат) выделенного объекта.
поддержка мультигеометрий.
при выделении вершины в списке подсвечивать её на карте

Александр Мурый
Гуру
Сообщения: 5058
Зарегистрирован: 26 сен 2009, 16:26
Статьи: 3
Проекты: 5/1
Репутация: 715
Ваше звание: званий не имею
Откуда: Москва

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

Сообщение Александр Мурый » 31 окт 2015, 11:08

Хотелось бы, чтобы больше внимания уделили не реализации конкретного плагина, а каким-то общим вещам (работа с разными типами данных, временные слои, чтение/запись, ускорение работы плагина, всякие оптимизации, подключение и использование разных питоновских пакетов). Плюс всякие особенности ("плюшки"), которым в оф. документации уделяется мало внимания.
Редактор материалов, модератор форума

Аватара пользователя
nextstopsun
Участник
Сообщения: 82
Зарегистрирован: 04 май 2010, 17:12
Репутация: 50
Откуда: Москва

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

Сообщение nextstopsun » 01 ноя 2015, 22:31

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

Аватара пользователя
Максим Дубинин
MindingMyOwnBusiness
Сообщения: 8913
Зарегистрирован: 06 окт 2003, 20:20
Статьи: 231
Проекты: 12/6
Репутация: 644
Ваше звание: NextGIS
Откуда: Москва
Контактная информация:

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

Сообщение Максим Дубинин » 02 ноя 2015, 01:10

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

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

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

Сообщение Филиппов Владислав » 19 ноя 2015, 19:28

Александр, так что, на каком примере будет мастер-класс?

alisovenko
Новоприбывший
Сообщения: 6
Зарегистрирован: 29 авг 2013, 17:11
Репутация: 7

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

Сообщение alisovenko » 19 ноя 2015, 23:23

- Для мастер-класса достаточно установленного 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 будет позже

dkiselev
Новоприбывший
Сообщения: 13
Зарегистрирован: 17 дек 2010, 09:25
Репутация: 0

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

Сообщение dkiselev » 20 ноя 2015, 12:23

Привет,
у меня есть скрипт, который по сути делает geospatial cross join.
(Ключевое слово тут cross)

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

dkiselev
Новоприбывший
Сообщения: 13
Зарегистрирован: 17 дек 2010, 09:25
Репутация: 0

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

Сообщение dkiselev » 20 ноя 2015, 12:26

И еще хотелось бы кратенький ликбез по Питону.

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

alisovenko
Новоприбывший
Сообщения: 6
Зарегистрирован: 29 авг 2013, 17:11
Репутация: 7

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

Сообщение alisovenko » 21 ноя 2015, 00:01

Материалы по мастерклассу тут:
http://nextgis.ru/programs/qgis/gisconf-plugin.zip

amnesiac
Активный участник
Сообщения: 223
Зарегистрирован: 03 мар 2015, 10:01
Репутация: 23
Откуда: Санкт-Петербург

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

Сообщение amnesiac » 21 ноя 2015, 00:57

А на месте будет возможность скачать? А то я, например, уже в поезде, думаю, некоторые участники тоже

Александр Мурый
Гуру
Сообщения: 5058
Зарегистрирован: 26 сен 2009, 16:26
Статьи: 3
Проекты: 5/1
Репутация: 715
Ваше звание: званий не имею
Откуда: Москва

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

Сообщение Александр Мурый » 21 ноя 2015, 08:37

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

Ответить

Вернуться в «Конференция "Открытые ГИС"»