LAS Format Elements¶
- Author
Mateusz Loskot
- Contact
mateusz at loskot dot net
On this page, elements and attributes of LAS Format 1.0 and 1.1 are compared.
See also
The LAS 1.0-1.3 Permuation matrix contains a detailed description of LAS header and point discrepancies between versions in addition to this (older) document.
Data Types¶
Both versions of LAS Format Standard define and use the same set of data types and their sizes:
1 byte
char (int8_t)
unsigned char (uint8_t)
2 bytes
short (int16_t)
unsigned short (uint16_t)
4 bytes
long (int32_t)
unsigned long (uint32_t)
8 bytes
double - double precision floating-point number (64-bit) as defined in IEEE 754 Standard
Public Header Block¶
# |
Element |
LAS 1.0 |
LAS 1.1 |
---|---|---|---|
1 |
File Signature (“LASF”) |
int8_t[4], required |
|
2 |
File Source ID |
uint16_t, required |
|
3 |
Reserved |
uint32_t |
uint16_t |
4 |
GUID data 1 (Project ID) |
uint32_t |
|
5 |
GUID data 2 (Project ID) |
uint16_t |
|
6 |
GUID data 3 (Project ID) |
uint16_t |
|
7 |
GUID data 4 (Project ID) |
uint8_t[8] |
|
8 |
Version Major |
uint8_t, required |
|
9 |
Version Minor |
uint8_t, required |
|
10 |
System identifier |
int8_t[32], required |
|
11 |
Generating software |
int8_t[32], required |
|
12 |
Flight date Julian / Day of Year |
uint16_t |
|
13 |
Year |
uint16_t |
|
14 |
Header size |
uint16_t, required |
|
15 |
Offset to data |
uint32_t, required |
|
16 |
Number of variable length records |
uint32_t, required |
|
17 |
Point data format ID (0-99) |
uint8_t, required |
|
18 |
Point data record length |
uint16_t, required |
|
19 |
Number of point records |
uint32_t, required |
|
20 |
Number of points by return |
uint32_t[5], required |
|
21 |
X scale factor |
double, required |
|
22 |
Y scale factor |
double, required |
|
23 |
Z scale factor |
double, required |
|
24 |
X offset |
double, required |
|
25 |
Y offset |
double, required |
|
26 |
Z offset |
double, required |
|
27 |
Max X |
double, required |
|
28 |
Min X |
double, required |
|
29 |
Max Y |
double, required |
|
30 |
Min Y |
double, required |
|
31 |
Max Z |
double, required |
|
32 |
Min Z |
double, required |
|
Total number of bytes: |
227 |
227 |
Type specifier of the form of type[N] where N is a number, represents array of N elements of type.
Point Data¶
The table below is based on definition of Point Data Record Format 0 and it does not include what’s specified Point Data Record 1.
# |
Element |
LAS 1.0 |
LAS 1.1 |
---|---|---|---|
1 |
X |
int32_t, required |
|
2 |
Y |
int32_t, required |
|
3 |
Z |
int32_t, required |
|
4 |
Intensity |
uint16_t |
|
5 |
Return number |
3 bits (0,1,2), required |
|
6 |
Number of returns (given pulse) |
3 bits (3,4,5), required |
|
7 |
Scan direction flag |
1 bit (6), required |
|
8 |
Edge of flight line |
1 bit (7), required |
|
9 |
Classification |
uint8_t |
uint8_t, required |
10 |
Scan angle rank (-90 to +90) |
int8_t, required |
|
11 |
File Marker / User Data (1) |
uint8_t |
|
12 |
User Bit Field / Point Source ID (2) |
uint16_t |
uint16_t, required |
FileMarker from 1.0 has been renamed to User Data in 1.1 and is available for any use.
User Bit Field from 1.0 has been renamed to Point Source ID in 1.1 and marked as required.