[GRASS-dev] r.random: now with optional cover map parameter
Glynn Clements
glynn at gclements.plus.com
Wed Oct 17 15:50:41 EDT 2007
Hamish wrote:
> Markus Neteler wrote:
> > since v.what.rast is (for me) extremely slow, I have added
> > cover map support to r.random.
> ..
> > PS: v.what.rast still running on just 300k points while I
> > implemented above :-) Anyone who could make v.what.rast faster?
>
> Maybe it's the qsort(), maybe it's the i,j loop within a loop.
The loop is certainly inefficient. Rather than shifting the entire
array down every time it finds a duplicate, it should keep separate
source and destination indices, e.g. (untested):
for (i = j = 0; j < point_cnt; j++)
if (cache[i].cat != cache[j].cat)
cache[++i] = cache[j];
else
cache[i].count++;
point_cnt = i + 1;
--
Glynn Clements <glynn at gclements.plus.com>
More information about the grass-dev
mailing list