Mateusz,

I'd like to propose an API addition to LASHeader to provide a constructor that overrides the file's header. I have a single, practical use case for this, but users might have others. As part of the reader/writer reprojection machinery, an important issue crops up -- what to do about the data's scale. For example, if we set input coordinate system to UTM and have a X/Y scale of 0.001 and then try to reproject this to DD, leaving our scale at 0.001 is going to trim off way too much. We really need to set the scale to something like 0.00000001, but we can't do that in any meaningful way because the scale comes from our as-read-from-the-file header.

I propose that we provide a

LASReader(std::istream& ifs, LASHeader& header)

constructor, and if this constructor is used, this header is used to describe the data except for the following condition... we respect the dataoffset as it exists in the file (why it isn't const). This will allow a user to override things like the coordinate system, scales, dates, etc but still allow the file to be read.

Make sense?

Howard

PS I'll also develop C API and Python API to use this.
_______________________________________________
Liblas-devel mailing list
[email protected]
http://lists.osgeo.org/mailman/listinfo/liblas-devel

Reply via email to