1 votos

Entendiendo la lista anidada de asPolygon en PyQGIS

En Obtener la lista de QgsPoint de la capa de polígonos en PyQGIS , un usuario explica cómo obtener las coordenadas de un polígono y da el siguiente código:

layer = iface.activeLayer()
feature = layer.getFeatures().next()
polygon = feature.geometry().asPolygon()
n = len(polygon[0])
for i in range(n):
     print polygon[0][i]

¿Qué es el polígono[0] en este caso y qué sería el polígono [5] por ejemplo?

En el for i in range(n) parte parece que i representa el número de vértice del polígono y sus coordenadas. Pero no consigo el primer polígono[0].

2voto

Chris Kloberdanz Puntos 1871

El método asPolygon toma un objeto. Es un QgisPolygonXY http://qgis.org/api/qgsgeometry_8h.html#a271a798c4388adbfcfda3f8b3ec289df Como se puede ver en la descripción: Polígono: el primer elemento de la lista es el anillo exterior, los anillos interiores (si los hay) comienzan a partir del segundo elemento.

Así que el primer elemento que se extrae utilizando polygon[0] es un anillo exterior. Luego iteras sobre este anillo.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X