Más

Agregar una propiedad (atributo) a una geometría en Shapely / Fiona

Agregar una propiedad (atributo) a una geometría en Shapely / Fiona


Una vez que tenga geometrías de línea y polígono, la intersección con Shapely es muy sencilla. Lo que hice después de eso fue integrar todas las geometrías 'intersecadas' en bucle en un MultiLineString.

Ahora mi consulta es, mientras mapea MultiLineString usando Fiona, la salida es una sola geometría, con un solo atributo. Si pudiera agregar atributos individuales a cada resultado de geometría de intersección, mi MultiLineString consistiría en múltiples geometrías.

¿Cómo agrego una propiedad o atributo a un LineString una vez que la geometría está lista?

Este problema se refiere a problemas anteriores.

Paso uno: líneas verticales en un shapefile de polígono

Paso dos: recortar shapefiles de línea dentro de la extensión del polígono

La razón por la que estoy haciendo esto es porque una vez que tengo las geometrías de todas las líneas recortadas, necesito extraer las coordenadas de nodo de cada una de ellas.


Las geometrías bien formadas son clases de Python, por lo que simplemente puede establecer una nueva propiedad en el objeto.

Para mis casos de uso, esto ha funcionado, aunque puede valer la pena comprobar los efectos secundarios no deseados según su escenario.

de geometría bien formada importar p = geometría Punto (0, 0) p.uid = 'punto único' print (p.uid) # impresiones: 'punto único'

Ver el vídeo: Geospatial Data with Open Source Tools in Python. SciPy 2015 Tutorial. Kelsey Jordahl