Markus Neteler wrote: > > And i.smap is gibberish; e.g. write_img() calls G_is_c_null_value() on > > "char"s, so that module probably hasn't worked since 4.x. > > i.smap works, I have tested it recently and also others use it regularly.
Oh, it may produce output, but not necessarily correct output. Specifically, write_img() does: if(G_is_c_null_value((CELL *)&img[row][col])) G_set_c_null_value(&files->cellbuf[col], 1); But "img" is a "unsigned char **", i.e. a 2D array of bytes. The test will only succeed if the array contains the sequence 00,00,00,80 (for little-endian systems) or 80,00,00,00 (big-endian systems). I suspect that the test was originally against zero, but it was incorrectly changed when null support was added. If that's the case, the net result will be that it writes garbage where it should be writing nulls, and occasionally writes nulls where it shouldn't. Beyond that, it seems fairly straightforward. I have committed an update which compiles without warning, but hasn't been tested. > Any opinions on > i.gensig > i.gensiset > ? Both are used for supervised classification where you have training > areas instead of just looking at the pixels as does i.cluster. Looking briefly at i.gensig, the algorithm seems to be quite heavily based upon categories (e.g. using the Cell_stats stuff), so it would need to be substantially re-written to support FP in any meaningful sense. -- Glynn Clements <[EMAIL PROTECTED]> _______________________________________________ grass-dev mailing list grass-dev@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/grass-dev