@@ -91,7 +91,9 @@ Public Header Block
91
91
+----------------------------------+-------------------------+-----------------+-----------+--------------+
92
92
| Min GPS Time | double | 383 | 8 bytes | |
93
93
+----------------------------------+-------------------------+-----------------+-----------+--------------+
94
- | *LAS 1.5 Header Size* | *391 bytes* |
94
+ | Time Offset | uint16_t | 391 | 2 bytes | yes |
95
+ +----------------------------------+-------------------------+-----------------+-----------+--------------+
96
+ | *LAS 1.5 Header Size* | *393 bytes* |
95
97
+------------------------------------------------------------+--------------------------------------------+
96
98
97
99
.. note::
@@ -136,11 +138,17 @@ a value of 1). This bit field is defined as:
136
138
+-------+-----------------------+------------------------------------------+
137
139
| Bits | Field Name | Description |
138
140
+=======+=======================+==========================================+
139
- | 0 | GPS Time Type | The meaning of GPS Time in the point |
140
- | | | records. If this bit is not set, the GPS |
141
- | | | time in the point record fields is GPS |
141
+ | 0 | GPS Time Type | Used in combination with Time Offset |
142
+ | | | Flag to indicate the meaning of |
143
+ | | | :ref:`GPS Time <gpstime_link>` in the |
144
+ | | | point records. |
145
+ | | | |
146
+ | | | If neither bit is set, the GPS |
147
+ | | | Time in the point record fields is GPS |
142
148
| | | Week Time (the same as versions 1.0 |
143
- | | | through 1.2 of LAS). Otherwise, if this |
149
+ | | | through 1.2 of LAS). |
150
+ | | | |
151
+ | | | Otherwise, if this |
144
152
| | | bit is set, the GPS Time is standard GPS |
145
153
| | | Time (satellite GPS Time) minus |
146
154
| | | 1 x :math:`10^9` (Adjusted Standard GPS |
@@ -180,7 +188,30 @@ a value of 1). This bit field is defined as:
180
188
| | | compatibility (which means the CRS must |
181
189
| | | be GeoTIFF). |
182
190
+-------+-----------------------+------------------------------------------+
183
- | 5:15 | Reserved | Must be set to zero (0). |
191
+ | 5 | Reserved | Must be set to zero (0). |
192
+ +-------+-----------------------+------------------------------------------+
193
+ | 6 | Time Offset Flag | Used in combination with GPS Time Type |
194
+ | | | to indicate the meaning of |
195
+ | | | :ref:`GPS Time <gpstime_link>` in the |
196
+ | | | point records. |
197
+ | | | |
198
+ | | | If both bits are set, the GPS Time |
199
+ | | | is defined as Offset GPS Time. The |
200
+ | | | Offset GPS Time is standard GPS Time |
201
+ | | | (satellite GPS Time) minus |
202
+ | | | 1 x :math:`10^6` x Time Offset. The Time |
203
+ | | | :ref:`Time Offset <timeoffset_link>` |
204
+ | | | is specified in the LAS header. |
205
+ | | | The offset moves time to near zero to |
206
+ | | | improve floating-point resolution for a |
207
+ | | | given time period. |
208
+ | | | The origin of standard GPS |
209
+ | | | Time is defined as midnight of the |
210
+ | | | morning of January 6, 1980. |
211
+ | | | The GPS Time Type flag must be set if |
212
+ | | | the Time Offset Flag is set. |
213
+ +-------+-----------------------+------------------------------------------+
214
+ | 7:15 | Reserved | Must be set to zero (0). |
184
215
+-------+-----------------------+------------------------------------------+
185
216
186
217
@@ -264,7 +295,7 @@ The year, expressed as a four digit number, in which the file was created.
264
295
**Header Size**
265
296
266
297
The size, in bytes, of the Public Header Block itself. For LAS 1.5 this size is
267
- 391 bytes. In the event that the header is extended by a new revision of the
298
+ 393 bytes. In the event that the header is extended by a new revision of the
268
299
LAS specification through the addition of data at the end of the header, the
269
300
Header Size field will be updated with the new header size. The Public Header
270
301
Block may not be extended by users.
@@ -406,3 +437,23 @@ These values must be set to zero if there are no point records in the file,
406
437
if the file utilizes a point record format not supporting GPS Time, or if
407
438
all point records within the file have GPS Time values set to zero,
408
439
such as for certain :ref:`Aggregate Model Systems <aggregate_link>`.
440
+
441
+ .. _timeoffset_link:
442
+
443
+ **Time Offset**
444
+
445
+ The Time Offset field can be used to optimize :ref:`GPS Time <gpstime_link>` precision for a desired time period.
446
+ Offset GPS Time for a point record is equal to standard GPS Time, minus :math:`10^6` * Time Offset.
447
+
448
+ For example, Adjusted Standard GPS Time uses a total offset of 1 billion (:math:`10^9`) seconds, which would be specified by a Time Offset of 1000.
449
+ This achieves 100 nanosecond precision for the years 2007-2015. The LAS wiki provides
450
+ `recommended values <https://github.com/ASPRSorg/LAS/wiki/Suggested-LAS-1.5-Time-Offset-Values>`_
451
+ and year ranges that users are encouraged to use to maximize compatibility between datasets.
452
+
453
+ This value must be set to zero if there are no point records in the file,
454
+ if the file is derived from a source not utilizing GPS Time
455
+ (such as for certain :ref:`Aggregate Model Systems <aggregate_link>`),
456
+ if the file utilizes a point record format not supporting GPS Time, or if
457
+ the Time Offset Flag is unset.
458
+
459
+ It is invalid for the GPS Time Type bit to be unset if the Offset Time Flag bit is set.
0 commit comments