[pgrouting-users] Can pgRouting assign source and target id that follows the same direction?
Stephen Woodbridge
woodbri at swoodbridge.com
Tue May 27 10:55:50 PDT 2014
On 5/27/2014 1:27 PM, Heinz Chen wrote:
> Hello, guys, I am working with PostgreSQL 9.2 and pgRouting 2.0 to route
> my river network. My question is hard to give it a brief title, so I
> post some details in the forum,
>
> pgRouting assign number of source and target
> <http://stackoverflow.com/questions/23887283/pgrouting-assign-number-of-source-and-target>
>
> Can I achieve my goal? Or is there any other way to solve this problem?
> Please give me some hint to begin with and feel free to give me any
> suggestion, thanks!
Tolerance defines the minimum distance between two points that will get
merged into a single point. For example if you have two point and the
distance between them in datbase units is less than tolerance then they
will be considered the same point and will get assigned the same number.
given an edge segment in your geometry table before you run
pgr_createtopology() how do you know the direction of flow? based on the
direction of digitization? We do not look at this in assigning numbers.
Numbers are assigned on a first come first assigned basis as we process
the edges.
To solve your problem, you probably need to write a node renumbering
algorithm, that works something like this: 1. run pgr_createtopology()
2. from the network sink (ie: the drain of river network) do a depth
first search and assign numbers in reverse order (largest from the
drain, smaller as you move upstream).
I would create new node source and target columns for this. There might
be a better way to solve this problem but it is not obvious at the moment.
also responded on stackoverflow.
-Steve
More information about the Pgrouting-users
mailing list