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

Баг или фича: select by location

Добавлено: 17 ноя 2009, 21:17
manisha
В диалоговом окне (Tools->Research tools-> Select by location) нельзя выбрать слой, отображение которого выключено во view, что на мой взгляд совсем неправильно. Ведь выборка часто делается именно для уменьшения объема используемых данных, дабы быстрее отрисовывалось. Кто-нибудь в курсе, это специально или баг?

И кстати, вылезает такая ошибка при запуске выборки. Слои правда большие: каталог снимков SLC-off и границы России из VMap0.

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

An error has occured while executing Python code:

Traceback (most recent call last):
  File "C:\Program Files\Quantum GIS Mimas\python\plugins\fTools\tools\doSelectByLocation.py", line 52, in accept
    self.compute(inPoly, inPts, self.cmbModify.currentText())
  File "C:\Program Files\Quantum GIS Mimas\python\plugins\fTools\tools\doSelectByLocation.py", line 66, in compute
    geomLayer = geomLayer.combine(QgsGeometry(feat.geometry()))
AttributeError: 'NoneType' object has no attribute 'combine'

Python version:
2.5.2 (r252:60911, Feb 21 2008, 13:11:45) [MSC v.1310 32 bit (Intel)]

Python path:['C:/Program Files/Quantum GIS Mimas/./python', 'C:/Documents and Settings/manisha/.qgis//python/plugins', 'C:/Program Files/Quantum GIS Mimas/./python/plugins', 'C:\\Program Files\\ArcGIS\\bin', 'C:\\Program Files\\Quantum GIS Mimas\\bin\\python25.zip', 'C:\\Python25\\Lib', 'C:\\Python25\\DLLs', 'C:\\Python25\\Lib\\lib-tk', 'C:\\Program Files\\Quantum GIS Mimas', 'C:\\Program Files\\Quantum GIS Mimas\\bin', 'C:\\Python25', 'C:\\Python25\\lib\\site-packages', 'C:\\Program Files\\Quantum GIS Mimas\\python\\plugins\\fTools\\tools', 'C:\\Documents and Settings\\manisha\\.qgis\\python\\plugins\\GdalTools\\tools']

Слои, с которыми пробовал: Россия из vmap в аттаче, а слой slc-off доступен здесь http://gis-lab.info/data/landsat/gis-la ... -glovis.7z

Re: Баг или фича: select by location

Добавлено: 18 ноя 2009, 04:56
Максим Дубинин
я считаю, это баг, подтверждаю, что в r12096 та же беда

инструмент у меня нормально работать отказался даже на небольших слоях, просто завис

Re: Баг или фича: select by location

Добавлено: 24 ноя 2009, 17:28
manisha
Попробовал на простейшем наборе данных, слой с разграфкой 1 млн листов топокарт на Россию и сглаженная граница Карелии - сработало!
На наборе посложнее - границы России и 1 млн разграфка на весь мир - задумался на минут.. 30 наверно, и я прибил QGIS, нужно было машинку перегрузить.

fTools, в который эта функция входит, разрабатывается в рамках QGIS или это независимый плагин?

Прикрепил слои, с которыми проходит: буфер по карелии, а слой с разграфкой карт есть здесь http://gis-lab.info/data/topogrid/topo10km-rus.7z

Re: Баг или фича: select by location

Добавлено: 24 ноя 2009, 20:00
Voltron
manisha писал(а):В диалоговом окне (Tools->Research tools-> Select by location) нельзя выбрать слой, отображение которого выключено во view, что на мой взгляд совсем неправильно. Ведь выборка часто делается именно для уменьшения объема используемых данных, дабы быстрее отрисовывалось. Кто-нибудь в курсе, это специально или баг?
Скорее всего это случайно, без всякого злого умысла. И что-то мне подсказывает, что такая же ситуация и с другими инструментами. В принципе пофиксить не сложно, патч для Select by location в аттаче. Проверьте, плиз. Если работает правильно - проверю все инструменты и везде поправлю
doSelectByLocation.py.zip
Патч, добавляющий все слои в список
(609 байт) 419 скачиваний

Re: Баг или фича: select by location

Добавлено: 24 ноя 2009, 20:10
manisha
Сработало!

Re: Баг или фича: select by location

Добавлено: 24 ноя 2009, 20:23
Voltron
manisha писал(а):Сработало!
Отлично, значит бум для всех так делать

Re: Баг или фича: select by location

Добавлено: 24 ноя 2009, 21:31
Voltron
Есть предположение, что Select by location падает, если в одном из слоев есть битые объекты с неправильной геометрией. У меня ошибка вылетала, пока не проверил слои и не поудалял объекты с ошибками. После чего заработало, правда, очень медленно. Слои не сильно большие - в одном 512 объектов, в другом - 2844

Re: Баг или фича: select by location

Добавлено: 25 ноя 2009, 20:16
Voltron
Выкладываю модифицированные файлы инструментов fTools: в комбобоксах выводятся все доступные слои, а не только те, что видимы. Архив распаковать и переписать файлы в каталоге tools, обычно это c:\OSGeo4W\apps\qgis-dev\python\plugins\fTools\tools\. На всякий случай перед перезаписью сделайте копию оригинальных файлов, вдруг что-то сломал или пропустил.
Позже, когда баг будут отправлять в трекер сделаю "правильный" патч
tools.7z
измененные файлы
(26.14 КБ) 436 скачиваний

Re: Баг или фича: select by location

Добавлено: 15 апр 2010, 14:41
Voltron
Исправлено в r13037