Module pasture_io::las[][src]

Modules

named_fields

Contains constants for possible named fields in a LASMetadata structure

Structs

LASMetadata

Metadata implementation for LAS/LAZ files

LASReader

PointReader implementation for LAS/LAZ files

LASWriter

PointWriter implementation for LAS/LAZ files

LasPointFormat0

Point type for LAS point format 0

LasPointFormat1

Point type for LAS point format 1

LasPointFormat2

Point type for LAS point format 2

LasPointFormat3

Point type for LAS point format 3

LasPointFormat4

Point type for LAS point format 4

LasPointFormat5

Point type for LAS point format 5

LasPointFormat6

Point type for LAS point format 6

LasPointFormat7

Point type for LAS point format 7

LasPointFormat8

Point type for LAS point format 8

LasPointFormat9

Point type for LAS point format 9

LasPointFormat10

Point type for LAS point format 10

Functions

las_bounds_to_pasture_bounds

Converts a las-rs Bounds type into a pasture-core bounding box (AABB<f64>)

las_point_format_from_point_layout

Returns the best matching LAS point format for the given PointLayout. This method tries to match as many attributes as possible in the given PointLayout to attributes that are supported by the LAS format (v1.4) natively. Attributes that do not have a corresponding LAS attribute are ignored. If no matching attributes are found, LAS point format 0 is returned, as it is the most basic format.

pasture_bounds_to_las_bounds

Converts a pasture-core bounding box (AABB<f64>) into a las-rs Bounds type

path_is_compressed_las_file

Tries to determine whether the given path represents a compressed LAZ file or an uncompressed LAS file

point_layout_from_las_point_format

Returns the default PointLayout for the given LAS point format. This layout mirrors the binary layout of the point records in the LAS format, as defined by the LAS specification. The notable exception are the X, Y, and Z fields, which are combined into a single POSITION_3D attribute with f64 datatype, instead of three separate fields with i32 datatype. The reason for this is usability: Positions more often than not are treated as a single semantic unit instead of individual components. The shift from i32 to f64 is the result of how LAS stores positions internally (normalized to integer values within the bounding box of the file). The true positions are reconstructed from the internal representation automatically as f64 values.