Skip to main content

LAS Format

Stream LAS LiDAR point clouds as one record per point.

Overview​

PropertyValue
Format idlas
ClassLASIterable
Extensions.las
ReadYes
WriteNo
Extralidar (laspy)
Maturityexperimental

Record shape​

{
"x": 1.0,
"y": 2.0,
"z": 3.0,
"intensity": 100,
"classification": 2,
"return_number": 1,
}

intensity, classification, and return_number may be None when absent from the point format.

Parameters​

ParameterDefaultDescription
chunk_size50000laspy chunk iterator size

Requires a filename. totals() returns the point count. Streaming via chunked reads.

Usage​

from iterable import open_iterable

with open_iterable("cloud.las", format="las") as source:
print(f"points: {source.totals()}")
for pt in source:
print(pt["x"], pt["y"], pt["z"], pt["classification"])

Install with pip install iterabledata[lidar].

Error Handling​

  • Missing dependency: optional libraries raise ImportError with an install hint (pip install 'iterabledata[<extra>]' when an extra exists).
  • Read-only: opening with mode="w" raises WriteNotSupportedError or ValueError.
  • Bad or unsupported input: may raise ValueError, OSError, or library-specific errors.
  • See Troubleshooting for decoding, detection, and engine issues.

See also​