Calcola la distanza tra un poligono e un punto lungo un tracciato


10

Sono molto nuovo in ArcGis e sto cercando di capire come farlo.

Fondamentalmente, questo è quello che sto cercando di fare:

Ho una mappa del Canada e in essa ho poligoni che rappresentano le aree (ciascuna delle dimensioni di un comune). Ho anche punti che descrivono la posizione di ogni aeroporto in Canada e la rete di strade in tutto il Canada. Quello che devo fare è trovare la distanza da ciascuna area all'aeroporto più vicino usando una strada.

Ciò che ho già provato a fare è stato trovare il centroide di ciascun poligono perché pensavo di poterlo utilizzare per calcolare la distanza tra due punti lungo una strada. Ma poi ho capito che il centroide non è necessariamente collegato a una strada (specialmente nelle parti settentrionali del Canada), quindi non posso usarlo.

Gradirei davvero una sorta di guida su come raggiungere questo obiettivo poiché sono molto nuovo in ArcGIS e non ho trovato molto per aiutarmi (senza confondermi) online.


1
Hai preso in considerazione la costruzione di connettori centroidi ? Le strategie di integrazione GIS Emme / 2 spesso le usano. Come azienda canadese, forse Inro Aleady ha un set di dati per questo. Potrebbe essere più facile importare il loro che crearne uno tuo.
Kirk Kuykendall,

@KirkKuykendall Onestamente, sembra che sarebbe complicato e non "degno del mio tempo" (non voglio sembrare scortese) solo per farlo una volta. Sto cercando un modo per attraversare solo ArcMap. Apprezzo comunque il tuo commento e le tue idee.
BadgerBeaz,

Sì, sarebbe uno sforzo sostanziale. Se qualcuno (come Inro) lo ha già fatto, potrebbe non essere difficile. Penso che vorresti una linea che collega ciascun centroide al punto medio di ciascun lato principale del poligono, non solo un singolo connettore. I poligoni a cui manca la connettività centroide sono abbastanza rettangolari?
Kirk Kuykendall il

Risposte:


5

Per instradare lungo una rete stradale richiede più di un semplice riferimento lineare, quindi temo che questo non sia un compito banale senza una sorta di componente aggiuntivo di routing come Network Analyst . Se hai Network Analyst dipenderà dalla tua licenza.

Se non hai Analista di rete hai tre opzioni come la vedo io.

  1. Il primo consiste nell'implementare un algoritmo A * in ArcPy e in modo efficace un semplice strumento di analisi della rete personalizzato. Questo è abbastanza fattibile se conosci Python ma il tuo commento sopra suggerisce che questo non sarebbe un approccio che ti interessa.
  2. Usa PostGis e PgRouting . Ancora una volta, questo non è ArcGIS e non è affatto banale (quindi potresti non essere interessato) ma il nostro Underdark ha un tutorial eccellente qui: http://underdark.wordpress.com/2011/02/07/a-beginners-guide -to-pgrouting / .
  3. Usa riferimenti lineari insieme a una serie intelligente di modifiche e selezioni per semplificare la rete stradale in modo da avere solo una linea da ciascuna area all'aeroporto più vicino. Ad essere onesti, questo sarà probabilmente un lavoro più duro che darà risultati meno affidabili con poche opzioni di ripetibilità rispetto a una delle altre opzioni. Senza vedere i dati è difficile descrivere come farei a riguardo, ma in sostanza avresti bisogno di molte informazioni secondarie per eliminare enormi parti della rete stradale (pacchi terrestri più alcune ipotesi ragionevoli sul tipo di strada che il viaggiatore avrebbe preso e una sottoselezione di strade basate su un vettore massicciamente tamponato dall'area centroide all'aeroporto potrebbe essere un inizio ... ma sta già diventando molto brutta ...)

0

Potresti provare ET Geowizards. Ha una pletora di strumenti punto, polilinea, poligono, uno dei quali probabilmente aiuterebbe a svolgere questo compito. È un componente aggiuntivo di ArcGIS con molte funzioni gratuite. Sito Web di ET Geowizards

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.