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

QGIS падает при выполнении команд в консоли Python

Добавлено: 09 дек 2013, 06:52
Denis Rykov
Открываем какой-нибудь слой и выделяем объект, запускаем консоль Python и даем следующие команды:

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

layer = qgis.utils.iface.activeLayer()
geometry = layer.selectedFeatures()[0].geometry()
geometry.boundingBox().toString()
QGIS валится. У всех так?

Re: QGIS падает при выполнении команд в консоли Python

Добавлено: 09 дек 2013, 07:11
Максим Дубинин
подтверждаю

Re: QGIS падает при выполнении команд в консоли Python

Добавлено: 09 дек 2013, 08:11
Александр Мурый
Да, падает.

Re: QGIS падает при выполнении команд в консоли Python

Добавлено: 09 дек 2013, 15:00
yellow-sky
в 1.8 - нормально. в 2+ - падает
если сделать:

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

layer = qgis.utils.iface.activeLayer()
geometry = layer.selectedFeatures()[0].geometry()
bbox = geometry.boundingBox()
bbox.toString()
то вроде как работает. Но всегда возвращает Empty :)

Re: QGIS падает при выполнении команд в консоли Python

Добавлено: 09 дек 2013, 15:02
yellow-sky
за то

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

geometry.exportToWkt()
падает :)

Re: QGIS падает при выполнении команд в консоли Python

Добавлено: 09 дек 2013, 15:13
yellow-sky
Рабочий вариант:

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

layer = qgis.utils.iface.activeLayer()
geom = layer.selectedFeatures()[0].geometry()
geom.boundingBox().toString()
Не знаю почему, но перекрывать geometry нельзя (. Хотя до выполнения она не объявлена

Re: QGIS падает при выполнении команд в консоли Python

Добавлено: 09 дек 2013, 15:25
Донецков
Версия 2.0.1х64 падает...

Re: QGIS падает при выполнении команд в консоли Python

Добавлено: 10 дек 2013, 06:11
Denis Rykov
yellow-sky писал(а):Рабочий вариант:
Не рабочий. На первом разе выдает 'Empty', а если запустить еще раз - падает. Я уже забыл - как-то натыкался на такую проблему, этому багу уже 6 лет #777.

Re: QGIS падает при выполнении команд в консоли Python

Добавлено: 10 дек 2013, 09:05
yellow-sky
Хехе.. И правда..
Какой долгожитель.. ИМХО все из-за номера его... Удачный баг на удачный номер попал..