Consulta de información vectorial. (II). Consultas espaciales

Consulta de información vectorial. (II). Consultas espaciales

Las consultas espaciales son aquellas consultas que se refieren a las propiedades geométricas de los objetos representados en los mapas vectoriales, es decir, quien contiene a quien, quien se superpone a quien, a cuanta distancia están estos elementos de estos otros… Este tipo de consultas se pueden dividir en dos tipos, por un lado tenemos las consultas topológicas y por otro tenemos las consultas de distancias o buffer.

Consultas topológicas.

Este tipo de consultas son las que versan sobre la relación geométrica entre dos o más objetos de diferentes capas. Como ejemplo podemos poner un caso en donde existan una capa de puntos con localizaciones de yacimientos y por otro lado tenemos una capa de polígonos con la pendiente del terreno. Podemos decirle a nuestro software SIG que nos busque aquellos yacimientos que se encuentren en determinados rangos de pendientes como entre 0% y el 5%, por ejemplo. O bien simplemente saber qué pendiente hay el la localización de cada yacimientos. Hay diferentes tipos de consultas topológicas, punto en polígono, linea en polígono y superposición de polígonos.

Para saber si un punto está dentro de un polígono, se suele utilizar un algoritmo que calcule el número de veces que una línea infinita, con centro en el punto en cuestión, cruza los límites de un polígono, si lo hace un número impar, significa que está dentro del mismo, y si lo hace un número par significa que se encuentra fuera del mismo.

Aquí podemos ver cómo funciona el algoritmo de punto en polígono.

 

En el caso de las líneas el proceso es un tanto más complejo, ya que consta de dos procesos, el primero mediante el cual se calculan los límites mínimos rectangulares del polígono, una vez descartadas las líneas que se hallan fuera de ese rectángulo. Este proceso no tiene en cuenta que habrán líneas las cuales estén parcialmente contenidas y otras totalmente contenidas dentro del polígono ¿Qué se hace al respecto? Una de las soluciones posibles es la de contar con los nodos de las líneas que intersecan con los límites del polígono, pudiendo así calcular exactamente la porción de línea que se haya dentro del polígono y cual está fuera.

Aquí podemos ver la problemática de línea en polígono.

 

La superposición de polígonos es un asunto más complejo, ya que si bien en algunos casos puede resolverse de manera parecida la vista anteriormente con las líneas (teniendo en cuenta los nodos que intersecan de un polígono en otro y calculando posteriormente la porción de polígono que se halla dentro). Esto no asegura todos los casos posibles, ya que podemos encontrarnos casos de polígonos con islas interiores o que tienen muchas áreas superpuestas. Por ello las bases de datos topológicas tienen más relaciones del tipo contiene o limita a la derecha, por ejemplo.

 

Consultas áreas de influencia (buffer).

Un área de influencia o buffer, en un SIG,  consiste en crear un polígono alrededor de un elemento, (punto, línea o polígono) de radio X. Éste polígono servirá para determinar si los elementos de otra capa se hallan afectados por este buffer, por ejemplo cuantos yacimientos se encuentran a menos de 1km este curso de agua. Como se puede ver en la imagen a continuación el área de influencia de un punto, línea o  polígono tiene la misma forma solo que ampliada.

Áreas de influencia/buffers en los diferentes tipos de geometrías.

 

En el próximo post veremos un ejemplo práctico de cómo consultar información semántica como espacial sobre un caso con SIG’s libres. Espero que os hay sido de utilidad este post.


Comentarios

  • Elizabeth | Dic 28,2012

    “Para saber si un punto está dentro de un polígono, se suele utilizar un algoritmo que calcule el número de veces que una línea infinita, con centro en el punto en cuestión, cruza los límites de un polígono, si lo hace un número impar, significa que está dentro del mismo, y si lo hace un número par significa que se encuentra fuera del mismo.”

    Existe alguna exepcion para que este metodo del algotitmo funcione? Cuando no se puede usar este metodo?

    • Luis Miguel Royo Pérez | Ene 10,2013

      Contestando a esta segunda cuestión me temo que no hay una excepción, conforme iba escribiendo el post lo estuve meditando y la verdad es que me pareció un algoritmo bastante sólido, ya que por intrincado que sea este polígono, si está dentro siempre cortará de forma impar los límites del mismo, ya que habrá siempre un lado que nunca cortará, el lado contrario hacia donde se trace dicha línea infinita.

  • Elizabeth | Dic 28,2012

    Si una linea se superpone a un poligono, cual es al entidad resultante?

    • Luis Miguel Royo Pérez | Ene 10,2013

      En primer lugar mis disculpas por tardar tanto en responder, estoy un tanto liado con diferentes proyectos.

      En segundo lugar, contestando a tu pregunta, la entidad resultante de superponer una línea a un polígono sería la misma línea recortada por los límites del polígono. Es decir, si tenemos una línea de pongamos por ejemplo, 20m de longitud y luego lo superponemos a un polígono cuya longitud fuera de 17m, el resultado sería esa línea pero la parte que ocupa la superficie del polígono, si es que estuviéramos usando el geoprocesamiento de “intersección”. Luego, si el geoprocesamiento es otro, el resultado final bien podría ser partir dicho polígono en dos.

      Como ves, el resultado de superponer una línea a un polígono pueden ser varios en función de lo que pretendamos conseguir.

  • Deja un comentario