[Liblas-devel] Can Liblas only update a small portion of the
points in Lidar file?
Howard Butler
hobu.inc at gmail.com
Fri Jan 6 16:10:03 EST 2012
If you do work to add this, you'll probably just need to add a seek() method to the liblas::Writer class (and underlying implementation classes) that positions the stream. After that liblas::Writer::WritePoint() should overwrite the data, though you may want to do some header checks to make sure that the size in bytes of the point is the same as the size in bytes that the file is expecting -- otherwise you'd start clobbering data.
On Jan 6, 2012, at 2:36 PM, Hongwei Shen wrote:
> Thank you for the answer, Howard.
>
> I'll check if I can add this support.
>
> Thanks,
> Hongwei
>
>
> On Fri, Jan 6, 2012 at 1:47 PM, Howard Butler <hobu.inc at gmail.com> wrote:
>>
>> On Jan 6, 2012, at 12:16 PM, Hongwei Shen wrote:
>>
>>> Hello,
>>>
>>> The scenario is: the user opens a large Lidar file, changes the
>>> classification labels of a small number of points and save the changes
>>> to the file. When the Lidar file is huge, it is time-consuming to
>>> output all the points. So it would be better if only the modified
>>> points are updated in the Lidar file. According to my understanding
>>> now, Liblas needs to save all the (changed and unchanged) points to a
>>> new Lidar file. That's because Liblas can open a Lidar file either in
>>> read-only mode or write-only mode, but not in read-write mode.
>>>
>>> Do I understand correctly? Is there a way to only update some points?
>>
>>
>> Yes, your understanding is correct. libLAS does not support in-place updating of points.
>>
>> Howard
>>
More information about the Liblas-devel
mailing list