Eu tenho um mapa de cerca de 3000 polígonos no ArcGIS 10. Estou procurando encontrar a distância entre cada um deles. Eu sei como fazê-lo usando as coordenadas lat e long do centróide, mas estou procurando a menor distância em linha reta da borda mais próxima de um polígono à borda mais próxima do outro polígono. Alguma ideia?
9
A distância de A a B é igual a B a A e a distância de A a A é zero, portanto, uma meia matriz poupará algum trabalho.
IProximityOperator retorna a distância da borda. O código abaixo usa uma projeção azimutal centralizada no centróide de cada polígono (também deve funcionar com linhas). Se os polígonos não forem muito complexos (ou se você tiver muita memória), carregar todas as geometrias na memória e projetá-las seria mais rápida. (Isso não foi totalmente testado).
fonte
O cálculo não é algo que o ArcGIS fornece nativamente, mas dei uma solução para o problema no Shapely que pode ajudar, ou esse tópico nos antigos fóruns do ArcGIS.
fonte
Eu acho que a ferramenta Near Table funcionaria para o que você deseja:
Apenas deixe o raio de pesquisa em branco.
fonte