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

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

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

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

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

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

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

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

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