<div dir="ltr">Hi Soeren,<div><br></div><div>Ah! You're right.<div><br></div><div>Cell files have pointers to rows in the header, so maybe, we could implement functions that can copy multiple rows at a time without uncompressing/compressing them row by row even if MASK may not be applied properly. This is not a true update, but at least copy can be more efficient than now.</div>
</div><div><br></div><div>Regards,</div><div>Huidae</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Thu, Jun 26, 2014 at 9:30 AM, Sören Gebbert <span dir="ltr"><<a href="mailto:soerengebbert@googlemail.com" target="_blank">soerengebbert@googlemail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi Huidae,<br>
FWIK, the reason why updating raster maps is currently not supported<br>
in GRASS at the module level is the storage format. Usually raster<br>
maps are stored using zip compressed rows. Rows are written in serial,<br>
hence if you modify a single row, the size of this row may be<br>
different after compression and does not fit exactly in the position<br>
of the old row in the existing file. From my knowledge there is<br>
currently no way to append rows or mark rows as invalid in existing<br>
raster maps.<br>
However, there is the possibility to store raster maps using<br>
uncompressed rows, but i don't recall any raster library function to<br>
update such maps.<br>
<br>
Best regards<br>
Soeren<br>
<br>
2014-06-26 15:05 GMT+02:00 Huidae Cho <<a href="mailto:grass4u@gmail.com">grass4u@gmail.com</a>>:<br>
<div><div class="h5">> Whenever I change a couple of cells in an existing raster map, I have to<br>
> create a new raster map and patch the old and new maps, which can take long<br>
> because r.patch has to read and write the entire map.<br>
><br>
> There are Rast_open_old/new, but no Rast_open_update and AFAIK there are no<br>
> raster modules that directly update existing raster maps. I don't know why.<br>
> I thought it would be great if there was Rast_open_update so we can update<br>
> existing raster maps without creating a temp map and patching it.<br>
><br>
><br>
</div></div>> _______________________________________________<br>
> grass-dev mailing list<br>
> <a href="mailto:grass-dev@lists.osgeo.org">grass-dev@lists.osgeo.org</a><br>
> <a href="http://lists.osgeo.org/mailman/listinfo/grass-dev" target="_blank">http://lists.osgeo.org/mailman/listinfo/grass-dev</a><br>
</blockquote></div><br></div>