Benjamin Ducke wrote: > I have been pondering this for a while and would > like to know if people on this list think the > following would be a feasible/useful addition to > GRASS (7): > > How about, in addition to the MASK raster, we'd > also allow the user to specify a COST raster? > This would allow all raster modules that currently > use an euclidean distance measure (KDE, IDW, ...) > to use a cost-based measure instead, without adding > more options to the individual modules. > > In addition to the COST raster, we could modify the > basic distance function in the GRASS GIS lib to > automatically return a cost-based result if the > COST raster is present. This way, there would have > to be no or only minimal modifications to existing > modules.
This proposal makes no sense. The mask raster is relatively cheap to implement, while a least-cost path is one of the most expensive calculations available in GRASS. Also, the mask raster affects every raster module which reads at least one input map, while very few modules calculate distances. Being able to calculate least-cost distances between arbitrary points would require holding the entire cost raster in memory. If you want least-cost distances from a fixed set of points to arbitrary points, it's significantly more efficient to generate distance rasters in advance (which requires knowing the starting points). If you want multiple least-cost distances between arbitrary points, you would probably want to cache some intermediate results in order to allow an upper bound on the distance to be calculated cheaply. But you probably can't afford the memory to cache every intermediate result, and knowing which ones are worth caching is application-specific. -- Glynn Clements <[email protected]> _______________________________________________ grass-dev mailing list [email protected] http://lists.osgeo.org/mailman/listinfo/grass-dev
