QGIS API Documentation 3.39.0-Master (3783037d301)
|
Class for extracting information contained in LAZ file such as the public header block and variable length records. More...
#include <qgslazinfo.h>
Classes | |
struct | ExtraBytesAttributeDetails |
struct | LazVlr |
Public Member Functions | |
QgsLazInfo () | |
Constructor for an empty laz info parser. | |
QgsPointCloudAttributeCollection | attributes () const |
Returns the list of attributes contained in the LAZ file. | |
QPair< uint16_t, uint16_t > | creationYearDay () const |
Returns the pair ( creation_year, creation_day ) extracted from the LAZ file public header block. | |
QgsCoordinateReferenceSystem | crs () const |
Returns the coordinate system stored in the LAZ file. | |
QString | error () const |
Returns an error string detailing what went wrong with reading the LAZ info. | |
uint32_t | evlrCount () const |
Returns the absolute offset to the first variable length record in the LAZ file. | |
QVector< ExtraBytesAttributeDetails > | extrabytes () const |
Returns the list of extrabytes contained in the LAZ file. | |
int | extrabytesCount () const |
Returns the number of extrabytes contained in the LAZ dataset. | |
uint64_t | firstEvlrOffset () const |
Returns the absolute offset to the first extended point record in the LAZ file. | |
uint32_t | firstPointRecordOffset () const |
Returns the absolute offset to the first point record in the LAZ file. | |
uint32_t | firstVariableLengthRecord () const |
Returns the absolute offset to the first variable length record in the LAZ file. | |
lazperf::header14 | header () const |
Returns the LAZPERF header object. | |
bool | isValid () const |
Returns whether the LAZ header data passed to this class is from a valid LAZ file. | |
QgsVector3D | maxCoords () const |
Returns the maximum coordinate across X, Y and Z axis. | |
QgsVector3D | minCoords () const |
Returns the minimum coordinate across X, Y and Z axis. | |
QgsVector3D | offset () const |
Returns the offset of the points coordinates. | |
void | parseRawHeader (char *data, uint64_t length) |
Parses the raw header data loaded from a LAZ file. | |
void | parseRawVlrEntries (char *data, uint64_t length) |
Parses the variable length records found in the array data of length length. | |
uint64_t | pointCount () const |
Returns the number of points contained in the LAZ file. | |
int | pointFormat () const |
Returns the point format of the point records contained in the LAZ file. | |
int | pointRecordLength () const |
Returns the length of each point record in bytes. | |
QString | projectId () const |
Returns the project identifier contained in the LAZ file public header block (Optional field) | |
QgsVector3D | scale () const |
Returns the scale of the points coordinates. | |
QString | softwareId () const |
Returns the identifier of the software used to generate the LAZ file public header block. | |
QString | systemId () const |
Returns the system identifier contained in the LAZ file public header block. | |
QVariantMap | toMetadata () const |
Returns a map containing various metadata extracted from the LAZ file. | |
QPair< uint8_t, uint8_t > | version () const |
Returns the LAZ specification version of the LAZ file. | |
QByteArray | vlrData (QString userId, int recordId) |
Returns the binary data of the variable length record with the user identifier userId and record identifier recordId. | |
Static Public Member Functions | |
static QgsLazInfo | fromFile (std::ifstream &file) |
Static function to create a QgsLazInfo class from a file. | |
static QgsLazInfo | fromUrl (QUrl &url) |
Static function to create a QgsLazInfo class from a file over network. | |
static QVector< ExtraBytesAttributeDetails > | parseExtrabytes (char *rawData, int length, int pointRecordLength) |
Static function to parse the raw extrabytes VLR into a list of recognizable extrabyte attributes. | |
Class for extracting information contained in LAZ file such as the public header block and variable length records.
Definition at line 38 of file qgslazinfo.h.
QgsLazInfo::QgsLazInfo | ( | ) |
Constructor for an empty laz info parser.
Definition at line 29 of file qgslazinfo.cpp.
|
inline |
Returns the list of attributes contained in the LAZ file.
Definition at line 120 of file qgslazinfo.h.
|
inline |
Returns the pair ( creation_year, creation_day ) extracted from the LAZ file public header block.
Definition at line 81 of file qgslazinfo.h.
|
inline |
Returns the coordinate system stored in the LAZ file.
Definition at line 111 of file qgslazinfo.h.
|
inline |
Returns an error string detailing what went wrong with reading the LAZ info.
Definition at line 63 of file qgslazinfo.h.
|
inline |
Returns the absolute offset to the first variable length record in the LAZ file.
Definition at line 108 of file qgslazinfo.h.
|
inline |
Returns the list of extrabytes contained in the LAZ file.
Definition at line 123 of file qgslazinfo.h.
|
inline |
Returns the number of extrabytes contained in the LAZ dataset.
Definition at line 103 of file qgslazinfo.h.
|
inline |
Returns the absolute offset to the first extended point record in the LAZ file.
Definition at line 106 of file qgslazinfo.h.
|
inline |
Returns the absolute offset to the first point record in the LAZ file.
Definition at line 97 of file qgslazinfo.h.
uint32_t QgsLazInfo::firstVariableLengthRecord | ( | ) | const |
Returns the absolute offset to the first variable length record in the LAZ file.
Definition at line 31 of file qgslazinfo.cpp.
|
static |
Static function to create a QgsLazInfo class from a file.
Definition at line 279 of file qgslazinfo.cpp.
|
static |
Static function to create a QgsLazInfo class from a file over network.
Definition at line 297 of file qgslazinfo.cpp.
|
inline |
Returns the LAZPERF header object.
Definition at line 127 of file qgslazinfo.h.
|
inline |
Returns whether the LAZ header data passed to this class is from a valid LAZ file.
Definition at line 60 of file qgslazinfo.h.
|
inline |
Returns the maximum coordinate across X, Y and Z axis.
Definition at line 95 of file qgslazinfo.h.
|
inline |
Returns the minimum coordinate across X, Y and Z axis.
Definition at line 93 of file qgslazinfo.h.
|
inline |
Returns the offset of the points coordinates.
Definition at line 79 of file qgslazinfo.h.
|
static |
Static function to parse the raw extrabytes VLR into a list of recognizable extrabyte attributes.
Definition at line 211 of file qgslazinfo.cpp.
void QgsLazInfo::parseRawHeader | ( | char * | data, |
uint64_t | length | ||
) |
Parses the raw header data loaded from a LAZ file.
Definition at line 42 of file qgslazinfo.cpp.
void QgsLazInfo::parseRawVlrEntries | ( | char * | data, |
uint64_t | length | ||
) |
Parses the variable length records found in the array data of length length.
Definition at line 56 of file qgslazinfo.cpp.
|
inline |
Returns the number of points contained in the LAZ file.
Definition at line 72 of file qgslazinfo.h.
|
inline |
Returns the point format of the point records contained in the LAZ file.
Definition at line 85 of file qgslazinfo.h.
|
inline |
Returns the length of each point record in bytes.
Definition at line 101 of file qgslazinfo.h.
|
inline |
Returns the project identifier contained in the LAZ file public header block (Optional field)
Definition at line 87 of file qgslazinfo.h.
|
inline |
Returns the scale of the points coordinates.
Definition at line 77 of file qgslazinfo.h.
|
inline |
Returns the identifier of the software used to generate the LAZ file public header block.
Definition at line 91 of file qgslazinfo.h.
|
inline |
Returns the system identifier contained in the LAZ file public header block.
Definition at line 89 of file qgslazinfo.h.
QVariantMap QgsLazInfo::toMetadata | ( | ) | const |
Returns a map containing various metadata extracted from the LAZ file.
Definition at line 123 of file qgslazinfo.cpp.
|
inline |
Returns the LAZ specification version of the LAZ file.
Definition at line 83 of file qgslazinfo.h.
QByteArray QgsLazInfo::vlrData | ( | QString | userId, |
int | recordId | ||
) |
Returns the binary data of the variable length record with the user identifier userId and record identifier recordId.
Definition at line 143 of file qgslazinfo.cpp.