Support for reading and writing LAS format. More...
#include <mi32/lidarlasfile.h>
Support for reading and writing LAS format.
This class manages shared access to the same physical file within a single process so that all instances that reference that file will have correct data after any updates to the file.
| LIDAR::LAS::FILE::FILE | ( | ) |
Default constructor.
| LIDAR::LAS::FILE::~FILE | ( | ) |
Destructor.
| ERRVALUE LIDAR::LAS::FILE::AddPointRecord | ( | const POINTRECORD & | pointrec | ) |
Add point record.
| pointrec | Point record to add |
| ERRVALUE LIDAR::LAS::FILE::AddVariableRecord | ( | const VARIABLEREC & | record | ) |
Add variable record.
| record | Variable record to write |
| void LIDAR::LAS::FILE::Close | ( | ) |
Close file.
| static bool LIDAR::LAS::FILE::FileTypeIsFormat | ( | FILE_RAW & | file | ) | [static] |
Determine if file is supported format.
Used as delegate for FILETYPE.
| static void LIDAR::LAS::FILE::FileTypeRegister | ( | ) | [static] |
Register file type in common set.
| const FILEHDR& LIDAR::LAS::FILE::GetHeader | ( | ) | const |
Get file header.
| UINT8 LIDAR::LAS::FILE::GetPointFormat | ( | ) | const [inline] |
Get format of point records.
| const WPOINT3D& LIDAR::LAS::FILE::GetPointPrecision | ( | ) | const [inline] |
Get precision (number of decimal places) for point coordinates.
| UINT32 LIDAR::LAS::FILE::GetPointRecordCount | ( | ) | const [inline] |
Get number of point records.
| UINT16 LIDAR::LAS::FILE::GetPointRecordNumFields | ( | ) | const [inline] |
Get number of fields in point record.
| UINT16 LIDAR::LAS::FILE::GetPointRecordSize | ( | ) | const [inline] |
Get size of point record in bytes.
| bool LIDAR::LAS::FILE::HasPointRecordColor | ( | ) | const [inline] |
Determine if has "color" field in point record.
| bool LIDAR::LAS::FILE::HasPointRecordTime | ( | ) | const [inline] |
Determine if has "time" field in point record.
| bool LIDAR::LAS::FILE::HasPointRecordWaveform | ( | ) | const [inline] |
Determine if has "waveform" fields in point record.
| bool LIDAR::LAS::FILE::IsOpen | ( | ) | const [inline] |
Determine if file is open.
| bool LIDAR::LAS::FILE::IsWritable | ( | ) | const [inline] |
Determine if file is writable.
Make new LAS file.
| header | Header template, extents and point count fields will be ignored |
| ERRVALUE LIDAR::LAS::FILE::Open | ( | const FILEPATH & | filepath, | |
| FILE_ACCESS | access = FILE_ACCESS_Read | |||
| ) |
Open LAS file.
| access | Desired access, FILE_ACCESS_Read or FILE_ACCESS_ReadWrite |
| ERRVALUE LIDAR::LAS::FILE::ReadCoordRefSys | ( | SPATREF::COORDREFSYS & | CoordRefSys | ) |
Read Coordinate Reference System information if available.
| CoordRefSys | CRS returned, will be "undefined" if no info in file |
| ERRVALUE LIDAR::LAS::FILE::ReadPointRecords | ( | POINTARRAY & | pointrecs, | |
| UINT32 | NumPoints, | |||
| UINT32 | FirstPointIdx = UINT32_MAX | |||
| ) |
Read point records.
POINTRECORD instances that reference the specified POINTARRAY will be overwritten by new data or become invalid.
| pointrecs | Point records returned, will be attached/resized if necessary | |
| NumPoints | Number of points to read | |
| FirstPointIdx | Index of first point to read, UINT32_MAX to continue from previous read |
| ERRVALUE LIDAR::LAS::FILE::ReadVariableRecord | ( | VARIABLEREC & | variablerec, | |
| UINT32 | RecordNum = UINT32_MAX | |||
| ) |
Read variable-length record.
| variablerec | Container for result | |
| RecordNum | Record number to read, UINT32_MAX to continue from previous or first record if no previous |
| ERRVALUE LIDAR::LAS::FILE::ReadVarLenRecHdr | ( | SVLRHDR & | header, | |
| UINT32 | RecordNum = UINT32_MAX | |||
| ) |
Read variable-length record header.
| header | Header returned | |
| RecordNum | Record number to read, UINT32_MAX to continue from previous or first record if no previous |
| ERRVALUE LIDAR::LAS::FILE::SetupPointArray | ( | POINTARRAY & | PointArray, | |
| UINT32 | NumPoints | |||
| ) |
Setup point array associated with file.
Done automatically when reading.
Update extents to file from specified header.
Update "number of points by return" to file from specified header.
| static USERID LIDAR::LAS::FILE::UserIdStrToEnum | ( | const char * | UserIdStr | ) | [static] |
Convert user ID string to enum.
| ERRVALUE LIDAR::LAS::FILE::WriteCoordRefSys | ( | const SPATREF::COORDREFSYS & | crs | ) |
Write CRS variable records.
| ERRVALUE LIDAR::LAS::FILE::WritePointRecord | ( | const POINTRECORD & | pointrec, | |
| UINT32 | PointIdx | |||
| ) |
Write point record.
| pointrec | Point record to write | |
| PointIdx | Index of point to write |
1.6.1