I have a table of nodes (points) and i wish to route between the points. Its my understanding that i first need to build a pgrouting compatible topology (graph ?) that connects all the nodes using "source" and "target" fields.

I was just wondering what tools i can use to generate this topology ? assign_vertex_id doesn't seem to work.

I'm using postgis on a postgresql database.

edit: The nodes are basically points in free space (water), so there aren't any lanes as such. The only constraints are land mass boundaries.

2 Answers 2


To be able to use pgRouting you need a graph network. The nodes alone won't help. If you can define links between your points that will give you source and target as well as the cost for this link, then pgRouting algorithms should work.

Eventually this article is useful: http://www.georeference.org/doc/shortest_path_over_land.htm

  • This is exactly what im talking about, what kind of tools can i use to built that graph ?
    – franklynd
    Commented Sep 12, 2013 at 21:54

I think what was called for was a vector based feature topology such as ascii street routing segments where graph is linear delineation of street routing, so point as beginning or end node of street segments.

  • I guess my question is, given my table of points how do i generate a connected graph that pgrouting can route through ?
    – franklynd
    Commented Sep 11, 2013 at 18:49
  • I think you are missing the point of the answer. Routing between points is not an exercise in pure abstraction, topology does not refer to a graph that is programmatically generated by an algorithm. The routing needs a street layer and the points would have to be functionally a part of the street layer as segment end points so that they are intrinsically and topologically a part of the route and an object that could be read by pgrouting.
    – lewis
    Commented Sep 11, 2013 at 18:57
  • I'm sorry, i'm pretty new to this. What exactly do you mean by street layer ?.
    – franklynd
    Commented Sep 11, 2013 at 19:18
  • 1
    Ascii art: o-----o-------o , it has two roads which have total of 3 nodes (start or end points) and one them is shared so that means that you can go from 1 to 2 and from 2 to 3 on this network, nut not from 3 to 1 (wiyhout going to 2 ) .. those lines arent used for routing, else than creating it and counting cost for edge(road). Now if you have for example harbors and you want to calculate cost between them , you need to create all possible vector lines (roads) between them to get cost and topology Commented Oct 13, 2013 at 17:39

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.