Skip to content
Vicky Vergara edited this page Aug 10, 2017 · 15 revisions

PgRouting Layer is a plugin for QGIS that serves as a GUI for pgRouting - a popular routing solution for PostGIS databases.

Currently, it supports pgRouting's following functions.

pgRoutingLayer for 2.1 Supported functions

For the following table.

  • All pgRouting functions from version 2.0 only support integer on identifiers and float8 on costs.
  • Starting from 2.1 some functions are able to use ANY-INTEGER for identifiers and ANY-NUMERICAL for costs, indicated with ANY.
  • Some new functionality have one/many to one/many options like pgr_dijkstra. Indicated with many
  • Some functionality has being deprecated, indicated with dep
  • For this plug-in pgr_alphashape is based on the results of pgr_drivingDistance with one starting point
  • The plug-in adjusts automatically to the signature of the pgRouting version installed in the connected database.
  • the table includes the status if used with 2.2
function manual 2.0 2.1 2.2
pgr_alphaShape pgr_alphaShape int ANY ANY
pgr_astar pgr_astar int int int
pgr_bdAstar pgr_bdastar int int int
pgr_bdDijkstra pgr_bddijkstra int int int
pgr_dijkstra pgr_dijkstra int/one ANY/many ANY/many
pgr_drivingDistance pgr_drivingdistance int/one ANY/many ANY/many
pgr_kDijkstra(Cost) pgr_kDijkstra(Cost) int int dep int
pgr_kDijkstra(Path) pgr_kDijkstra(Path) int int dep int -> pgr_dijkstra
pgr_ksp pgr_ksp int ANY ANY
pgr_trsp(Node) pgr_trsp(Node) int int int
pgr_trsp(Edge) pgr_trsp(Edge) int int int
pgr_trsp(via edges) pgr_trsp(via edges) -- int int
pgr_trsp(via vertex) pgr_trsp(via vertex) -- int int
pgr_tspe(Euclidean-distances) pgr_tsp(Euclidean distances) int int int

pgRoutingLayer for 2.0 Supported functions

pgRouting-2.0

module function runnable exportable
(lib)routing.* pgr_dijkstra yes yes
pgr_astar yes yes
pgr_trsp(Node) yes yes
pgr_trsp(Edge) yes yes
pgr_apspJohnson no -
pgr_apspWarshall no -
pgr_kDijkstra(Cost) yes no
pgr_kDijkstra(Path) yes yes
(lib)routing_dd.* pgr_drivingDistance yes no
pgr_alphashape yes no
(lib)routing_tsp.* pgr_tsp(Euclidean distances) yes no
pgr_tsp(Distance matrix) no -
(lib)routing_bd.* pgr_bdDijkstra yes yes
pgr_bdAstar yes yes
(lib)routing_ksp.* pgr_ksp yes yes

TODO

For pull request

  • Add understandable comments.
  • Refactor code.
  • Create HTML manual.

For future

  • Add "Settings" Dialog which can edit following properties.
  • Search radius for picking node/edge.
  • Graphic items style(color, width .etc).
  • :
  • Result table view. ("|vertex_id|edge_id|cost|", .etc)
  • Time logging for comparing algorithms. (QGis >= 1.8.0)
  • Add understandable comments.
  • Refactor code.
  • Create HTML manual.