Получить площадь определенной части сетки. QGIS 3.0

Не знаете, где задать вопрос? Задавайте здесь.
Ответить
Demplar
Новоприбывший
Сообщения: 2
Зарегистрирован: 08 апр 2018, 22:02
Репутация: 0
Откуда: Ханты

Получить площадь определенной части сетки. QGIS 3.0

Сообщение Demplar » 20 май 2018, 16:42

Существует слой сетки, который лежит на спутниковом изображении.
Изображение
Изображение
Как получить площадь в определенной ячейке в сетке?
Изображение
Может ли QgsVectorLayer иметь функцию, которая дает площадь?
Хочу знать как это сделать на Python.

Аватара пользователя
antonv
Активный участник
Сообщения: 229
Зарегистрирован: 29 ноя 2016, 10:44
Репутация: 114
Откуда: Санкт-Петербург

Re: Получить площадь определенной части сетки. QGIS 3.0

Сообщение antonv » 20 май 2018, 17:03

Demplar писал(а):
20 май 2018, 16:42
Может ли QgsVectorLayer иметь функцию, которая дает площадь?
Хочу знать как это сделать на Python.
У QgsVectorLayer есть метод getFeatures(), возвращает итератор. Итерируетесь по объектам слоя, берёте их геометрию. А у класса QgsGeometry есть метод area().
Использовать надо как-то так:

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

for elem in layer.getFeatures()
     geom = elem.geometry()
     area = geom.area()
Коллеги, поправьте, если не прав:)

Аватара пользователя
antonv
Активный участник
Сообщения: 229
Зарегистрирован: 29 ноя 2016, 10:44
Репутация: 114
Откуда: Санкт-Петербург

Re: Получить площадь определенной части сетки. QGIS 3.0

Сообщение antonv » 20 май 2018, 18:51

Demplar писал(а):
20 май 2018, 16:42
Как получить площадь в определенной ячейке в сетке?
А вообще ваша сетка выглядит регулярной. Размер ячейки не известен заведомо?

Ответить

Вернуться в «Я новичок!»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 6 гостей