laspy.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 laspy.vlrs.known.IKnownVLR[source]¶
Bases:
ABC
Interface 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.
- abstract static official_user_id() str [source]¶
Shall return the official user_id as described in the documentation
- abstract 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
- class laspy.vlrs.known.BaseKnownVLR(record_id=None, description='')[source]¶
Bases:
BaseVLR
,IKnownVLR
,ABC
Base Class to factorize common code between the different type of Known VLRs
- class laspy.vlrs.known.ClassificationLookupVlr[source]¶
Bases:
BaseKnownVLR
This 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:
- class laspy.vlrs.known.LasZipVlr(data: bytes)[source]¶
Bases:
BaseKnownVLR
Contains 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:
- static official_user_id() str [source]¶
Shall return the official user_id as described in the documentation
- class laspy.vlrs.known.ExtraBytesStruct[source]¶
Bases:
Structure
- NO_DATA_BIT_MASK = 1¶
- MIN_BIT_MASK = 2¶
- MAX_BIT_MASK = 4¶
- SCALE_BIT_MASK = 8¶
- OFFSET_BIT_MASK = 16¶
- property no_data¶
- property min¶
- property max¶
- property 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 laspy.vlrs.known.ExtraBytesVlr[source]¶
Bases:
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:
- type_of_extra_dims() List[ExtraBytesParams] [source]¶
- class laspy.vlrs.known.WaveformPacketStruct[source]¶
Bases:
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 laspy.vlrs.known.WaveformPacketVlr(record_id, description='')[source]¶
Bases:
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:
- 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
- class laspy.vlrs.known.GeoKeyEntryStruct[source]¶
Bases:
Structure
- count¶
Structure/Union member
- id¶
Structure/Union member
- tiff_tag_location¶
Structure/Union member
- value_offset¶
Structure/Union member
- class laspy.vlrs.known.GeoKeysHeaderStructs[source]¶
Bases:
Structure
- key_directory_version¶
Structure/Union member
- key_revision¶
Structure/Union member
- minor_revision¶
Structure/Union member
- number_of_keys¶
Structure/Union member
- class laspy.vlrs.known.GeoKeyDirectoryVlr[source]¶
Bases:
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:
- class laspy.vlrs.known.GeoDoubleParamsVlr[source]¶
Bases:
BaseKnownVLR
Stores all of the double valued GeoKeys.
- 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:
- class laspy.vlrs.known.GeoAsciiParamsVlr[source]¶
Bases:
BaseKnownVLR
Stores all of the ASCII valued GeoKeys.
From GeoTIFF’s spec: To avoid problems with naive tiff dump programs the separator between geokeys is not the null-terminator ` but `|.
- 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:
- class laspy.vlrs.known.WktMathTransformVlr[source]¶
Bases:
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:
- class laspy.vlrs.known.WktCoordinateSystemVlr(wkt_string='')[source]¶
Bases:
BaseKnownVLR
Replaces 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: