Tengo un mapa de aproximadamente 3000 polígonos en ArcGIS 10. Estoy buscando encontrar la distancia entre cada uno de ellos. Sé cómo hacerlo usando las coordenadas lat y long del centroide, pero estoy buscando la distancia más corta en línea recta desde el borde más cercano de un polígono hasta el borde más cercano del otro polígono. ¿Algunas ideas?
9
La distancia de A a B es igual a B a A, y la distancia de A a A es cero, por lo tanto, una media matriz le ahorrará algo de trabajo.
IProximityOperator devuelve la distancia desde el borde. El siguiente código utiliza una proyección azimutal centrada en el centroide de cada polígono (también debería funcionar con líneas). Si los polígonos no son demasiado complejos (o si tiene mucha memoria) cargando todas las geometrías en la memoria, proyectarlas sería más rápido. (Esto no se ha probado a fondo).
fuente
El cálculo no es algo que ArcGIS proporciona de forma nativa, pero di una solución al problema en Shapely que puede ayudar, o este hilo en los viejos foros de ArcGIS.
fuente
Creo que la herramienta de tabla cercana funcionaría para lo que quieres:
Simplemente deje el radio de búsqueda en blanco.
fuente