Hi List,
We are using v.net.distance to calculate the shortest path between two points on a river network, but have been experiencing some issues in both grass 7.4 and 7.9. In some instances, we need to add a new vector line (stream) to the river network, which we have done using v.patch as follows:
v.patch input=river_network,stream output=river_network_with_stream
We then clean the output as follows:
v.clean input=river_network_with_stream output=river_network_with_stream_clean tool=rmdupl,break,snap
We then run the following steps to calculate the shortest path (based on the documentation [1]), where the vector dataset (start_point) is located on the above-mentioned stream and the end_point is located on the river network:
v.net input=river_network_with_stream_clean points=start_point output=river_net operation=connect thresh=100 arc_layer=1 node_layer=2 --overwrite
v.net input=river_net points=end_point output=river_net2 operation=connect thresh=100 arc_layer=1 node_layer=3 --overwrite
The resulting output of v.category is:
v.category input=river_net2 option=report
Layer: 1
type count min max
point 0 0 0
line 102092 1 102072
boundary 0 0 0
centroid 0 0 0
area 0 0 0
face 0 0 0
kernel 0 0 0
all 102092 1 102072
Layer: 2
type count min max
point 1 1 1
line 0 0 0
boundary 0 0 0
centroid 0 0 0
area 0 0 0
face 0 0 0
kernel 0 0 0
all 1 1 1
Layer: 3
type count min max
point 1 1 1
line 0 0 0
boundary 0 0 0
centroid 0 0 0
area 0 0 0
face 0 0 0
kernel 0 0 0
all 1 1 1
At this point, I visually confirm that both points are connected to the network and then run:
v.net.distance in=river_net2 out=river_path from_layer=2 to_layer=3 --overwrite
However, I (keep) get a warning ( WARNING: 1 'from' feature was not reachable) and the output is empty. I have read a few posts online reporting the same issue, but none of the proposed solutions have helped. Is there a step that I am overlooking as I would have assumed that once the network topology is built and the points are connected to the network that it would have run correctly. I confirm that I can calculate the shortest path when I use a start point that is the river network (excluding the stream), so I am assuming that the issue is related to the output of the v.patch?
Thanks in advance for any help or suggestions.
best regards,
Daniel.
[1]: https://grass.osgeo.org/grass76/manuals/v.net.distance.html