Una función primaria de un SIG es determinar las relaciones espaciales entre entidades: ¿Se superponen? ¿Hay una entidad dentro de otra? ¿Se cruzan?
Las geometrías pueden estar relacionadas espacialmente de diferentes maneras. Los siguientes son ejemplos de cómo una geometría puede estar relacionada espacialmente con otra:
- La geometría A pasa a través de la geometría B.
- La geometría A está completamente dentro de la geometría B.
- La geometría A contiene totalmente a la geometría B.
- Las geometrías no se intersecan o tocan.
- Las geometrías son completamente coincidentes.
- Las geometrías se superponen.
- Las geometrías se tocan en un punto.
Ejecute funciones de relaciones espaciales para determinar si estas relaciones existen o no. Estas funciones comparan las siguientes propiedades de las geometrías que especifica en su consulta:
- Los exteriores (E) de las geometrías, que es todo el espacio que no ocupa la geometría
- El interior (I) de las geometrías, que es el espacio que ocupa la geometría
- El límite (B) de las geometrías, que es la interfaz entre el interior y el exterior de una geometría
Cuando realice una consulta de relación espacial, especifique el tipo de relación espacial que está buscando y las geometrías que desea comparar. Las consultas retornan como verdaderas o falsas; o bien las geometrías participan entre sí en la relación espacial especificada o no. En la mayoría de los casos, se usaría una consulta de relación espacial para filtrar un conjunto de resultados poniéndolo en la cláusula WHERE.
Por ejemplo, si tiene una tabla que almacena las ubicaciones de los sitios de desarrollo propuestos, y otra tabla que almacena la ubicación de sitios con valor arqueológico, es posible que quiera asegurarse de que las entidades en las tablas de los sitios de desarrollo no intersequen los sitios arqueológicos. Podría hacer una consulta para asegurarse de que ninguno de los sitios de desarrollo intersequen sitios arqueológicos y de que, si alguno lo hace, devuelva el Id. de los desarrollos propuestos. En este ejemplo, se utiliza la función ST_Disjoint.
SELECT d.projname,a.siteid FROM dev d, archsites a WHERE sde.st_disjoint(d.shape,a.shape)= 'f' projname siteid bow wow chow A1009
Esta consulta devuelve el nombre del desarrollo y el Id. del sitio arqueológico que no están inconexos: en otras palabras, los sitios que se intersecan entre sí. Devuelve un proyecto de desarrollo, Bow Wow Chow, que se interseca con el sitio arqueológico A1009.
Para obtener más información sobre las funciones ST_Geometry que prueban las relaciones espaciales en Oracle o PostgreSQL, consulte Funciones de relación espacial de ST_Geometry. Para obtener información sobre las relaciones espaciales utilizadas con los tipos espaciales IBM DB2, IBM Informix, Oracle Spatial, PostGIS o Microsoft SQL Server, consulte la documentación para esos sistemas de administración de bases de datos.