Tengo una capa con características poligonales. Cada característica tiene atributos y valores. También tengo una lista de coordenadas y me gustaría saber en qué característica (o polígono) se encuentran las coordenadas.
¿Podría alguien guiarme sobre cómo hacer esto? ¿Hay alguna función en la API que pueda ayudarme a lograr mi objetivo o debería usar algún algoritmo de geometría computacional para hacerlo yo mismo? Sé cómo hacer esto último, pero me ahorraría algo de tiempo si ya hubiera una función integrada.
Gracias.
En primer lugar, debe importar la lista de coordenadas en su proyecto. Este tutorial explica bien cómo hacerlo: http://qgis.spatialthoughts.com/2012/01/importing-spreadsheets-or-csv-files-to.html
Cuando tenga ambas capas (polígonos y puntos) en su proyecto, vaya a vector> herramientas de gestión de datos> unir atributos por ubicación
Obtiene una ventana donde puede definir qué capas desea combinar:
Haga clic en Aceptar'. Se crea el nuevo archivo de forma y se le preguntará "¿Desea agregar la nueva capa al TOC?" Haga clic nuevamente en Aceptar.
Abra el atributo del nuevo archivo de forma agregado y verá que todas las características del polígono correspondiente se agregan al punto que se encuentra en ese polígono.
fuente
Una forma más simple de hacer esto usando PyQGIS. Supuse que puedes construir un
QgsRectangle
objeto con un solo punto y usarloQgsFeatureRequest
para filtrar entidades desde la capa que lo intersecta.fuente
En QuantumGIS puede agregar la lista de coordenadas con la función 'agregar capa de texto delimitado' (si es un archivo csv). Agregue también los polígonos. Luego puede hacer una 'intersección' o 'puntos en el polígono'.
fuente