I got my hands on pgRouting in the last post and I’m about to do the same with GRASSGIS in this one.

GRASSGIS stores the topology for the native vector format by default, which makes it easy to use for the network analysis. All the commands associated with the network analysis can be found in the v.net family. The ones I’m going to discuss in this post are v.net itself, v.net.path, .v.net.alloc and v.net.iso, respectively.

Data

I’m going to use the roads data from the previous post together with some random points used as catchment areas centers.

Creating catchment areas

Two different ways lead to the actual catchment area creation. First, you extract nodes from the roads with their values, turn them into the raster grid and either extract contours or polygonize the raster. I find the last step suboptimal and would love to find another way of polygonizing the results.

Note when extracting contours the interval has to be set to the reasonable number depending on the nodes values.

Remarks

Once you grasp the basics, GRASSGIS is real fun. Grasping the basics is pretty tough though.

Pedestrians usually don’t follow the road network.

Bridges and tunnels might be an issue.

Personally, I find GRASSGIS easier to use for the network analysis compared to pgRouting.

If you find this blog useful, you are welcome to make a donation to support it.