pylas.vlrs.known module¶
The definition of the VLR Header, VLR, the KnownVLRs are in this module.
A KnownVLR is a VLR for which we know how to parse its record_data
-
class
pylas.vlrs.known.IKnownVLR[source]¶ Bases:
abc.ABCInterface that any KnownVLR must implement. A KnownVLR is a VLR for which we know how to parse its record_data
Implementing this interfaces allows to automatically call the right parser for the right VLR when reading them.
-
static
official_user_id() → str[source]¶ Shall return the official user_id as described in the documentation
-
static
official_record_ids() → Tuple[int, ...][source]¶ Shall return the official record_id for the VLR
Note
Even if the VLR has one record_id, the return type must be a tuple
Returns: The record_ids this VLR type can have Return type: tuple of int
-
static
-
class
pylas.vlrs.known.BaseKnownVLR(record_id=None, description='')[source]¶ Bases:
pylas.vlrs.vlr.BaseVLR,pylas.vlrs.known.IKnownVLR,abc.ABCBase Class to factorize common code between the different type of Known VLRs
-
class
pylas.vlrs.known.ClassificationLookupVlr[source]¶ Bases:
pylas.vlrs.known.BaseKnownVLRThis vlr maps class numbers to short descriptions / names
>>> lookup = ClassificationLookupVlr() >>> lookup[0] = "never_classified" >>> lookup[2] = "ground" >>> lookup[0] 'never_classified'
-
parse_record_data(record_data: bytes) → None[source]¶ Shall parse the given record_data into a user-friendlier structure
Parameters: record_data (bytes) – The record_data bytes read from the file
-
record_data_bytes() → bytes[source]¶ Shall return the bytes corresponding to the record_data part of the VLR as they should be written in the file.
Returns: The bytes of the vlr’s record_data Return type: bytes
-
-
class
pylas.vlrs.known.LasZipVlr(data: bytes)[source]¶ Bases:
pylas.vlrs.known.BaseKnownVLRContains the information needed by laszip (or any other laz backend) to compress the point records.
-
parse_record_data(record_data: bytes) → None[source]¶ Shall parse the given record_data into a user-friendlier structure
Parameters: record_data (bytes) – The record_data bytes read from the file
-
record_data_bytes() → bytes[source]¶ Shall return the bytes corresponding to the record_data part of the VLR as they should be written in the file.
Returns: The bytes of the vlr’s record_data Return type: bytes
-
static
official_user_id() → str[source]¶ Shall return the official user_id as described in the documentation
-
-
class
pylas.vlrs.known.ExtraBytesStruct[source]¶ Bases:
_ctypes.Structure-
NO_DATA_BIT_MASK= 1¶
-
MIN_BIT_MASK= 2¶
-
MAX_BIT_MASK= 4¶
-
SCALE_BIT_MASK= 8¶
-
OFFSET_BIT_MASK= 16¶
-
no_data¶
-
min¶
-
max¶
-
offset¶
-
scale¶
-
data_type¶ Structure/Union member
-
description¶ Structure/Union member
-
name¶ Structure/Union member
-
options¶ Structure/Union member
-
reserved¶ Structure/Union member
-
unused¶ Structure/Union member
-
-
class
pylas.vlrs.known.ExtraBytesVlr[source]¶ Bases:
pylas.vlrs.known.BaseKnownVLR-
parse_record_data(data)[source]¶ Shall parse the given record_data into a user-friendlier structure
Parameters: record_data (bytes) – The record_data bytes read from the file
-
record_data_bytes()[source]¶ Shall return the bytes corresponding to the record_data part of the VLR as they should be written in the file.
Returns: The bytes of the vlr’s record_data Return type: bytes
-
-
class
pylas.vlrs.known.WaveformPacketStruct[source]¶ Bases:
_ctypes.Structure-
bits_per_sample¶ Structure/Union member
-
digitizer_gain¶ Structure/Union member
-
digitizer_offset¶ Structure/Union member
-
number_of_samples¶ Structure/Union member
-
temporal_sample_spacing¶ Structure/Union member
-
waveform_compression_type¶ Structure/Union member
-
-
class
pylas.vlrs.known.WaveformPacketVlr(record_id, description='')[source]¶ Bases:
pylas.vlrs.known.BaseKnownVLR-
parse_record_data(record_data)[source]¶ Shall parse the given record_data into a user-friendlier structure
Parameters: record_data (bytes) – The record_data bytes read from the file
-
record_data_bytes()[source]¶ Shall return the bytes corresponding to the record_data part of the VLR as they should be written in the file.
Returns: The bytes of the vlr’s record_data Return type: bytes
-
static
official_record_ids()[source]¶ Shall return the official record_id for the VLR
Note
Even if the VLR has one record_id, the return type must be a tuple
Returns: The record_ids this VLR type can have Return type: tuple of int
-
-
class
pylas.vlrs.known.GeoKeyEntryStruct[source]¶ Bases:
_ctypes.Structure-
count¶ Structure/Union member
-
id¶ Structure/Union member
-
tiff_tag_location¶ Structure/Union member
-
value_offset¶ Structure/Union member
-
-
class
pylas.vlrs.known.GeoKeysHeaderStructs[source]¶ Bases:
_ctypes.Structure-
key_direction_version¶ Structure/Union member
-
key_revision¶ Structure/Union member
-
minor_revision¶ Structure/Union member
-
number_of_keys¶ Structure/Union member
-
-
class
pylas.vlrs.known.GeoKeyDirectoryVlr[source]¶ Bases:
pylas.vlrs.known.BaseKnownVLR-
parse_record_data(record_data)[source]¶ Shall parse the given record_data into a user-friendlier structure
Parameters: record_data (bytes) – The record_data bytes read from the file
-
record_data_bytes()[source]¶ Shall return the bytes corresponding to the record_data part of the VLR as they should be written in the file.
Returns: The bytes of the vlr’s record_data Return type: bytes
-
-
class
pylas.vlrs.known.GeoDoubleParamsVlr[source]¶ Bases:
pylas.vlrs.known.BaseKnownVLR-
parse_record_data(record_data)[source]¶ Shall parse the given record_data into a user-friendlier structure
Parameters: record_data (bytes) – The record_data bytes read from the file
-
record_data_bytes()[source]¶ Shall return the bytes corresponding to the record_data part of the VLR as they should be written in the file.
Returns: The bytes of the vlr’s record_data Return type: bytes
-
-
class
pylas.vlrs.known.GeoAsciiParamsVlr[source]¶ Bases:
pylas.vlrs.known.BaseKnownVLR-
parse_record_data(record_data)[source]¶ Shall parse the given record_data into a user-friendlier structure
Parameters: record_data (bytes) – The record_data bytes read from the file
-
record_data_bytes()[source]¶ Shall return the bytes corresponding to the record_data part of the VLR as they should be written in the file.
Returns: The bytes of the vlr’s record_data Return type: bytes
-
-
class
pylas.vlrs.known.WktMathTransformVlr[source]¶ Bases:
pylas.vlrs.known.BaseKnownVLR- From the Spec:
- Note that the math transform WKT record is added for completeness, and a coordinate system WKT may or may not require a math transform WKT record
-
parse_record_data(record_data)[source]¶ Shall parse the given record_data into a user-friendlier structure
Parameters: record_data (bytes) – The record_data bytes read from the file
-
record_data_bytes()[source]¶ Shall return the bytes corresponding to the record_data part of the VLR as they should be written in the file.
Returns: The bytes of the vlr’s record_data Return type: bytes
-
class
pylas.vlrs.known.WktCoordinateSystemVlr(wkt_string='')[source]¶ Bases:
pylas.vlrs.known.BaseKnownVLRReplaces Coordinates Reference System for new las files (point fmt >= 5) “LAS is not using the “ESRI WKT”
-
parse_record_data(record_data)[source]¶ Shall parse the given record_data into a user-friendlier structure
Parameters: record_data (bytes) – The record_data bytes read from the file
-
record_data_bytes()[source]¶ Shall return the bytes corresponding to the record_data part of the VLR as they should be written in the file.
Returns: The bytes of the vlr’s record_data Return type: bytes
-