Expand description
§wblidar
A high-performance, pure-Rust library for reading and writing LiDAR point-cloud data in the most common industry formats:
| Format | Read | Write | Notes |
|---|---|---|---|
| LAS | ✓ | ✓ | versions 1.1 – 1.5; writes 1.4 R15 by default (v1.5 PDRF 11–15 also supported) |
| LAZ | ✓ | ✓ | standards-compliant LASzip v2/v3; in-house implementation, no LASzip C dependency |
| COPC | ✓ | ✓ | Cloud-Optimised Point Cloud (LAS 1.4 + EPT hierarchy) |
| PLY | ✓ | ✓ | ASCII & binary little/big-endian |
| E57 | ✓ | ✓ | ASTM E2807; CRC-32 validation, optional zlib blobs |
§Design goals
- Minimal allocations – point records are streamed through a fixed-size
PointRecordtype; large arrays are written in a single pass. - Minimal external dependencies –
flate2(zlib-ng backend) for DEFLATE streams in LAZ/E57 andwbprojectionfor CRS transforms. - Reprojection helpers – use
reproject::points_to_epsg(source CRS metadata) orreproject::points_from_to_epsg(explicit EPSG codes).
Re-exports§
pub use error::Error;pub use error::Result;pub use frontend::read;pub use frontend::read_columns;pub use frontend::read_columns_chunked;pub use frontend::read_point_count;pub use frontend::read_with_diagnostics;pub use frontend::rewrite_columns_chunked;pub use frontend::write;pub use frontend::write_auto;pub use frontend::write_auto_with_options;pub use frontend::write_with_options;pub use frontend::CopcWriteOptions;pub use frontend::LazWriteOptions;pub use frontend::LidarFormat;pub use frontend::LidarWriteOptions;pub use frontend::PointField;pub use frontend::PointColumnChunkReader;pub use frontend::PointColumnChunkRewriter;pub use frontend::PointCloud;pub use frontend::ReadDiagnostics;pub use crs::Crs;pub use point::Color;pub use point::ExtraBytes;pub use point::GpsTime;pub use point::PointRecord;pub use point::Rgb16;pub use point::WaveformPacket;pub use io::PointReader;pub use io::PointWriter;pub use io::SeekableReader;
Modules§
- copc
- Cloud-Optimised Point Cloud (COPC) reader and writer.
- crs
- CRS metadata helpers for LiDAR datasets.
- e57
- ASTM E2807 (E57) reader and writer.
- error
- Unified error type for all wblidar operations.
- frontend
- Unified frontend API for LiDAR point clouds.
- io
- Core I/O traits implemented by every format reader and writer.
- las
- LAS 1.1 – 1.4 reader and writer.
- laz
- LAZ (LASzip) reader and writer.
- ply
- PLY (Polygon File Format / Stanford Triangle Format) reader and writer.
- point
- Core point-record type shared across all format modules.
- reproject
- Point-cloud reprojection helpers powered by
wbprojection.