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

Re: Создание приложения на базе набора библиотек QGIS на Pyt

Добавлено: 05 ноя 2016, 22:07
axinax
axinax писал(а):Я все таки смигрировал на Ubuntu и Mint (на разных компах). Вообще никаких проблем с путями!
А теперь вопрос: эта команда layer = QgsVectorLayer( layerPath, layerName, layerProvider )
не работает ни в терминале, ни в этом приложении. layer.isValid() выдает False. Причем, что характерно, добавил эти строки в testplugin от NextGis (из статьи Разработка простого расширения для QGIS на Python) просто для проверки - слой открылся в QGIS. Почему не работает в консоли, не могу понять. Сейчас пишу большое плагин для QGIS, интерфейс пока не делал, только "рабочие" классы. Тестирую в терминале, классы, основанные на QgsFeature, QgsGeometry нормально работают, а этот нет.
Ось - Убунту 16, QGIS 2.12
Тут вдруг сам разобрался. Инициализация провайдеров не работает, т.е. Строка QgsApplication.initQgis() не работает, а именно это и инициирует провайдеров.
А вот это работает:
aps=QgsApplication(sys.argv,False)
aps.initQgis()

Re: Создание приложения на базе набора библиотек QGIS на Pyt

Добавлено: 06 ноя 2016, 09:17
Александр Мурый
Просьба поправить статью. Вот волшебная кнопка.

Re: Создание приложения на базе набора библиотек QGIS на Pyt

Добавлено: 29 ноя 2016, 07:58
Trocskiy
Уважаемые, кто нибудь может мне пожалуйста подсказать как бороться вот с такой ошибкой?

Re: Создание приложения на базе набора библиотек QGIS на Pyt

Добавлено: 29 ноя 2016, 11:12
Trocskiy
Trocskiy писал(а):Уважаемые, кто нибудь может мне пожалуйста подсказать как бороться вот с такой ошибкой?
проблема решилась благодаря повсту выше
andemik писал(а):Вообще у меня были практически все проблемы, которые тут описывались.
Для запуска можно создать .bat-ник с таким кодом:

Код: Выделить всё

@ECHO OFF
set OSGEOROOT=C:\OSGeo4W
set PATH=%OSGEOROOT%\bin;%OSGEOROOT%\apps\qgis-dev\bin;%PATH%
SET PYTHONHOME=%OSGEOROOT%\apps\Python27
set PYTHONPATH=%OSGEOROOT%\apps\qgis-dev\python;%OSGEOROOT%\apps\qgis-dev\bin
set QGIS_PREFIX_PATH=%OSGEOROOT%\apps\qgis-dev\
set QGISHOME=%OSGEOROOT%\apps\qgis-dev

start python C:\qgis_s\mainwindow.py
Также пришлось поменять порядок импорта в mainwindow.py:

Код: Выделить всё

from qgis.core import *
from qgis.gui import *
from PyQt4.QtCore import QVariant  
from PyQt4 import QtCore, QtGui
P.S. Win10, стоят питоны 2.7.12 + QGIS и 3.5.2