Necesitamos encontrar la distancia de una serie de puntos a lo largo de una polilínea dada.
Tenemos un conjunto de datos de polilínea que representa los ríos en una cuenca, divididos en alcances fluviales (FID 1 a 35, por ejemplo).
También tenemos un conjunto de datos puntuales de licencias de extracción dentro de esta cuenca, algunas de las cuales están situadas a lo largo de los ríos; podemos deducir de la tabla de atributos cuáles son, ya que se definen como licencias de aguas subterráneas o superficiales.
Los dos no están relacionados, es decir, uno no se ha derivado del otro. Por lo tanto, no todas las licencias de aguas superficiales se encuentran exactamente sobre las polilíneas de los ríos, a pesar de que en realidad están en estos ríos.
Necesitamos poder ver qué puntos están "aguas arriba / aguas abajo" unos de otros, y por eso queríamos tener una lista de qué río alcanzar el punto, seguido de la distancia aguas abajo desde el comienzo de este alcance. Luego podemos comparar las distancias aguas abajo de dos puntos para ver cuál está aguas arriba y cuáles aguas abajo: ¡el resultado deseado!
Para resolver el problema de encontrar puntos en / muy cerca de los ríos, se nos dijo que usáramos un búfer (pequeño) alrededor del alcance de cada río y luego que consultáramos el búfer para encontrar los puntos dentro de él.
Esto está bien, pero luego nos quedamos con un área (buffer), no una línea, por lo que no podemos medir una distancia a lo largo / dentro de esto.
¿Podemos usar un búfer como se describe para descubrir los puntos en / cerca del alcance del río en cuestión y luego, de alguna manera (?!) Consultar estos puntos para la distancia a lo largo del alcance del río (segmento de polilínea)?
Respuestas:
Esta es una tarea perfecta para las capacidades de referencia lineal en ArcGIS. Consulte la ayuda para ubicar las características a lo largo de las rutas y sondear desde allí. Las herramientas incluyen la capacidad de convertir una capa de puntos cerca de una ruta (el río llega) en descriptores de "evento de punto", que nombran la ruta (el alcance) y la distancia desde el comienzo de la ruta. Eso es exactamente lo que quieres. Además, estas herramientas permiten una "tolerancia" configurable por el usuario: los puntos no tienen que estar exactamente en las rutas.
El flujo de trabajo es:
Haz que el río llegue a "mensurable". Esto configura la capacidad de encontrar distancias a lo largo de cada alcance.
Representar los puntos como una capa de puntos.
Use la herramienta para crear una "tabla de eventos" para los puntos relativos a las rutas.
Verifique su trabajo, porque es posible que deba invertir las direcciones de algunos de los tramos del río, dependiendo de cuán consistentemente se digitalizaron.
fuente
Nunca he intentado esto, pero podría considerar tratar esto como un problema de geocodificación inversa . Lo haría creando un localizador de direcciones para sus ríos, tratando la medida como la dirección Desde y Hasta.
fuente
Usar cerca (análisis)
http://help.arcgis.com/en/arcgisdesktop/10.0/help/index.html#//00080000001q000000.htm
fuente
http://help.arcgis.com/en/sdk/10.0/arcobjects_net/componenthelp/index.html#/QueryPointAndDistance_Method/002m00000116000000/
El atributo DistanceAlongCurve te dará lo que buscas. Pero solo para uno del río.
fuente
http://resources.arcgis.com/en/help/main/10.1/index.html#//004800000006000000
Esta herramienta abarca la red (debe tener Network Analyst) y los puntos. Después de aplicar la herramienta, terminas teniendo el valor t (valor entre 0 y 1) como PosAlong. Los valores se almacenan en la tabla de puntos de entrada. Como 0 es el punto inicial de la polilínea y 1 es el punto final, debe multiplicarlo por la longitud de la polilínea. También tiene SourceOID, que es id de polilínea en la misma tabla.
fuente