I am developing a few scripts in Python for QGIS 1.8 to automate some geo-tasks and one of them would be to calculate the shortest distance from a hospital to each building in a town.
I would like to take advantage of the already existing Qgis plugin but, as it is a C++ plugin, I am not sure whether it is possible to access it from Python? Is there a binding or a trick for that?
If not, any further advice would be appreciated! As the base data is OpenStreetMap data stored in a PostGIS DB, I may also try with pgRouting. But the QGIS plugin would be my favourite choice if possible.
PS: this question is close to this one: Is there a way to access QGIS plugins in Python? but I believe it's still different enough to be worth a new thred.
3 Answers 3
gis-lab.info has a tutorial on using the network analysis library in QGIS using Python. It's not in English but Google Translate should be able to make it comprehensible. Good luck!
-
1The Google translation doesn't really help, cause it's a very poor translation. But using your examples of code, I somehow manage to get it through. спасибоStéphane Henriod– Stéphane Henriod2013年05月02日 06:19:02 +00:00Commented May 2, 2013 at 6:19
-
Btw, that wasn't my blog post. I just linked it. Glad to know it helped though. Did it answer your question?R.K.– R.K.2013年05月02日 06:58:07 +00:00Commented May 2, 2013 at 6:58
-
I'm still working on it but I think it did solve it yes, thxStéphane Henriod– Stéphane Henriod2013年05月02日 11:39:23 +00:00Commented May 2, 2013 at 11:39
There's a tutorial for the Network analysis library in the QGIS documentation that covers building a routing graph as well as shortest path and service area calculations.
You can find multiple versions of routing scripts which use the QGIS network analysis library in my Github repository, e.g. https://github.com/anitagraser/QGIS-Processing-tools/blob/master/2.2/scripts/point_layer_to_route.py which converts an ordered set of points into a route.
Explore related questions
See similar questions with these tags.