Trovare la distanza del punto lungo la polilinea usando ArcGIS Desktop?


23

Dobbiamo trovare la distanza di una serie di punti lungo una determinata polilinea.

Abbiamo un set di dati polilinea che ritrasmette i fiumi in un bacino idrografico, suddiviso in tratti fluviali (ad esempio da FID 1 a 35).

Abbiamo anche un set di dati puntuali di licenze di astrazione all'interno di questo bacino, alcuni dei quali sono situati lungo i fiumi - dalla tabella degli attributi possiamo dire che sono come definiti come licenze di acque sotterranee o di superficie.

I due non sono correlati - cioè uno non è stato derivato dall'altro. Pertanto, non tutte le licenze per le acque superficiali si trovano esattamente sulle polilinee fluviali, nonostante la "realtà" si trovi su questi fiumi.

Dobbiamo essere in grado di vedere quali punti sono "a monte / a valle" l'uno dell'altro, e quindi volevamo avere un elenco di quale portata del fiume si trova sul punto, seguita dalla distanza a valle dall'inizio di questa portata. Possiamo quindi confrontare le distanze a valle di due punti per vedere quale è a monte e quale a valle: il risultato desiderato!

Per risolvere il problema di trovare punti su / molto vicino ai fiumi ci è stato detto di usare un (piccolo) buffer intorno a ogni portata del fiume e quindi di interrogare il buffer per trovare i punti al suo interno.

Questo va bene ma ci viene quindi lasciata un'area (buffer), non una linea, quindi non possiamo misurare una distanza lungo / all'interno di questo.

Possiamo usare un buffer come descritto per scoprire i punti sulla / vicino alla portata del fiume in questione e quindi, in qualche modo (?!) Interrogare questi punti per la distanza lungo la portata del fiume (segmento di polilinea)?


hai un campo sulla tua featureclass polilinea contenente il FID di portata a valle?
Kirk Kuykendall,

devi farlo in arcmap o puoi usare arcobjects?
Steve,

RivEX può generare questo tipo di output, esaminare gli strumenti per lo snap e il collegamento.
Hornbydd,

Risposte:


22

Questo è un compito perfetto per le capacità di riferimento lineare in ArcGIS. Consultare la guida per l' individuazione delle funzioni lungo i percorsi e sondare da lì. Gli strumenti includono la possibilità di trasformare uno strato di punti vicino a un percorso (il fiume raggiunge) in descrittori di "eventi punto", che nominano il percorso (il raggio d'azione) e la distanza dall'inizio del percorso. Questo è esattamente quello che vuoi. Inoltre, questi strumenti consentono una "tolleranza" impostabile dall'utente: i punti non devono trovarsi esattamente sui percorsi.

Il flusso di lavoro è:

  1. Rendi il fiume "misurabile". Questo imposta la capacità di trovare le distanze lungo ogni portata.

  2. Rappresenta i punti come layer punti.

  3. Utilizzare lo strumento per creare una "tabella degli eventi" per i punti relativi alle rotte.

  4. Controlla il tuo lavoro, perché potrebbe essere necessario invertire le direzioni di alcuni tratti del fiume, a seconda della coerenza con cui sono stati digitalizzati.


+1. Dovrebbero anche cercare di trasformare i fiumi in una rete geometrica per utilizzare strumenti che consentano di ottenere caratteristiche, percorsi ecc. A monte / a valle
geographika,

Idem. ArcGIS può fare tutto il duro lavoro di questo problema di interpolazione en.wikipedia.org/wiki/Interpolazione
Ragi Yaser Burhum,

1
Va notato che è necessario disporre del set di dati del punto e del set di dati del percorso nello stesso sistema di coordinate. Lo strumento Individua funzioni lungo le rotte non avrebbe funzionato correttamente per me fino a quando non avessi eseguito un riprogetto della mia funzione di linea sullo stesso sistema di coordinate del mio file di punti, quindi ho creato un evento di rotta da detta funzione di linea riproiettata.
Giski,

@Matiss Grazie per questo promemoria. Nonostante le capacità di riproiezione "al volo" nei GIS odierni, è ancora vero che l'unico modo affidabile per condurre le analisi è assicurarsi che tutti i set di dati di input siano archiviati fisicamente in un sistema di coordinate comune (e appropriato).
whuber

@whuber mi aiuti sempre.
SIslam,

3

Non l'ho mai provato, ma potresti considerare di trattarlo come un problema di geocodifica inversa . Lo faresti creando un localizzatore di indirizzi per i tuoi fiumi, trattando la misura come l'indirizzo Da e A.




1

http://resources.arcgis.com/en/help/main/10.1/index.html#//004800000006000000

Questo strumento accetta rete (devi avere Network Analyst) e punti. Dopo aver applicato lo strumento, si ottiene il valore t (valore compreso tra 0 e 1) come PosAlong. I valori sono memorizzati nella tabella dei punti di input. Poiché 0 è il punto iniziale della polilinea e 1 è il punto finale, è necessario moltiplicarlo per la lunghezza della polilinea. Hai anche SourceOID che è l'id polilinea nella stessa tabella.

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.