@loaders.gl/pointclouds 0.0.0-stage → 5.0.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (405) hide show
  1. package/LAS-README.md +12 -0
  2. package/LICENSE +24 -0
  3. package/PCD-README.md +12 -0
  4. package/PLY-README.md +38 -0
  5. package/README.md +7 -2
  6. package/THIRD-PARTY-NOTICES.md +27 -0
  7. package/dist/dist.dev.js +30141 -0
  8. package/dist/dist.min.js +54 -0
  9. package/dist/index.cjs +61 -0
  10. package/dist/index.cjs.map +7 -0
  11. package/dist/index.d.ts +16 -0
  12. package/dist/index.d.ts.map +1 -0
  13. package/dist/index.js +13 -0
  14. package/dist/index.js.map +1 -0
  15. package/dist/las/bundled.cjs +72 -0
  16. package/dist/las/bundled.cjs.map +7 -0
  17. package/dist/las/bundled.d.ts +12 -0
  18. package/dist/las/bundled.d.ts.map +1 -0
  19. package/dist/las/bundled.js +12 -0
  20. package/dist/las/bundled.js.map +1 -0
  21. package/dist/las/index.cjs +78 -0
  22. package/dist/las/index.cjs.map +7 -0
  23. package/dist/las/index.d.ts +17 -0
  24. package/dist/las/index.d.ts.map +1 -0
  25. package/dist/las/index.js +15 -0
  26. package/dist/las/index.js.map +1 -0
  27. package/dist/las/las-copc-loader-types.cjs +49 -0
  28. package/dist/las/las-copc-loader-types.cjs.map +7 -0
  29. package/dist/las/las-copc-loader-types.d.ts +63 -0
  30. package/dist/las/las-copc-loader-types.d.ts.map +1 -0
  31. package/dist/las/las-copc-loader-types.js +14 -0
  32. package/dist/las/las-copc-loader-types.js.map +1 -0
  33. package/dist/las/las-copc-loader.cjs +57 -0
  34. package/dist/las/las-copc-loader.cjs.map +7 -0
  35. package/dist/las/las-copc-loader.d.ts +37 -0
  36. package/dist/las/las-copc-loader.d.ts.map +1 -0
  37. package/dist/las/las-copc-loader.js +40 -0
  38. package/dist/las/las-copc-loader.js.map +1 -0
  39. package/dist/las/las-format.cjs +44 -0
  40. package/dist/las/las-format.cjs.map +7 -0
  41. package/dist/las/las-format.d.ts +16 -0
  42. package/dist/las/las-format.d.ts.map +1 -0
  43. package/dist/las/las-format.js +19 -0
  44. package/dist/las/las-format.js.map +1 -0
  45. package/dist/las/las-loader-shared.cjs +82 -0
  46. package/dist/las/las-loader-shared.cjs.map +7 -0
  47. package/dist/las/las-loader-shared.d.ts +66 -0
  48. package/dist/las/las-loader-shared.d.ts.map +1 -0
  49. package/dist/las/las-loader-shared.js +58 -0
  50. package/dist/las/las-loader-shared.js.map +1 -0
  51. package/dist/las/las-loader-types.cjs +54 -0
  52. package/dist/las/las-loader-types.cjs.map +7 -0
  53. package/dist/las/las-loader-types.d.ts +104 -0
  54. package/dist/las/las-loader-types.d.ts.map +1 -0
  55. package/dist/las/las-loader-types.js +19 -0
  56. package/dist/las/las-loader-types.js.map +1 -0
  57. package/dist/las/las-loader.cjs +80 -0
  58. package/dist/las/las-loader.cjs.map +7 -0
  59. package/dist/las/las-loader.d.ts +45 -0
  60. package/dist/las/las-loader.d.ts.map +1 -0
  61. package/dist/las/las-loader.js +58 -0
  62. package/dist/las/las-loader.js.map +1 -0
  63. package/dist/las/las-writer.cjs +1054 -0
  64. package/dist/las/las-writer.cjs.map +7 -0
  65. package/dist/las/las-writer.d.ts +69 -0
  66. package/dist/las/las-writer.d.ts.map +1 -0
  67. package/dist/las/las-writer.js +994 -0
  68. package/dist/las/las-writer.js.map +1 -0
  69. package/dist/las/laz-rs-loader-types.cjs +49 -0
  70. package/dist/las/laz-rs-loader-types.cjs.map +7 -0
  71. package/dist/las/laz-rs-loader-types.d.ts +65 -0
  72. package/dist/las/laz-rs-loader-types.d.ts.map +1 -0
  73. package/dist/las/laz-rs-loader-types.js +16 -0
  74. package/dist/las/laz-rs-loader-types.js.map +1 -0
  75. package/dist/las/laz-rs-loader.cjs +272 -0
  76. package/dist/las/laz-rs-loader.cjs.map +7 -0
  77. package/dist/las/laz-rs-loader.d.ts +37 -0
  78. package/dist/las/laz-rs-loader.d.ts.map +1 -0
  79. package/dist/las/laz-rs-loader.js +38 -0
  80. package/dist/las/laz-rs-loader.js.map +1 -0
  81. package/dist/las/lazperf-loader-types.cjs +49 -0
  82. package/dist/las/lazperf-loader-types.cjs.map +7 -0
  83. package/dist/las/lazperf-loader-types.d.ts +67 -0
  84. package/dist/las/lazperf-loader-types.d.ts.map +1 -0
  85. package/dist/las/lazperf-loader-types.js +17 -0
  86. package/dist/las/lazperf-loader-types.js.map +1 -0
  87. package/dist/las/lazperf-loader.cjs +60 -0
  88. package/dist/las/lazperf-loader.cjs.map +7 -0
  89. package/dist/las/lazperf-loader.d.ts +39 -0
  90. package/dist/las/lazperf-loader.d.ts.map +1 -0
  91. package/dist/las/lazperf-loader.js +44 -0
  92. package/dist/las/lazperf-loader.js.map +1 -0
  93. package/dist/las/lib/copc/parse-las.cjs +177 -0
  94. package/dist/las/lib/copc/parse-las.cjs.map +7 -0
  95. package/dist/las/lib/copc/parse-las.d.ts +17 -0
  96. package/dist/las/lib/copc/parse-las.d.ts.map +1 -0
  97. package/dist/las/lib/copc/parse-las.js +215 -0
  98. package/dist/las/lib/copc/parse-las.js.map +1 -0
  99. package/dist/las/lib/get-las-schema.cjs +62 -0
  100. package/dist/las/lib/get-las-schema.cjs.map +7 -0
  101. package/dist/las/lib/get-las-schema.d.ts +16 -0
  102. package/dist/las/lib/get-las-schema.d.ts.map +1 -0
  103. package/dist/las/lib/get-las-schema.js +46 -0
  104. package/dist/las/lib/get-las-schema.js.map +1 -0
  105. package/dist/las/lib/las-compatibility.cjs +110 -0
  106. package/dist/las/lib/las-compatibility.cjs.map +7 -0
  107. package/dist/las/lib/las-compatibility.d.ts +40 -0
  108. package/dist/las/lib/las-compatibility.d.ts.map +1 -0
  109. package/dist/las/lib/las-compatibility.js +115 -0
  110. package/dist/las/lib/las-compatibility.js.map +1 -0
  111. package/dist/las/lib/las-extra-bytes.cjs +223 -0
  112. package/dist/las/lib/las-extra-bytes.cjs.map +7 -0
  113. package/dist/las/lib/las-extra-bytes.d.ts +35 -0
  114. package/dist/las/lib/las-extra-bytes.d.ts.map +1 -0
  115. package/dist/las/lib/las-extra-bytes.js +195 -0
  116. package/dist/las/lib/las-extra-bytes.js.map +1 -0
  117. package/dist/las/lib/las-types.cjs +19 -0
  118. package/dist/las/lib/las-types.cjs.map +7 -0
  119. package/dist/las/lib/las-types.d.ts +194 -0
  120. package/dist/las/lib/las-types.d.ts.map +1 -0
  121. package/dist/las/lib/las-types.js +5 -0
  122. package/dist/las/lib/las-types.js.map +1 -0
  123. package/dist/las/lib/las-waveform.cjs +196 -0
  124. package/dist/las/lib/las-waveform.cjs.map +7 -0
  125. package/dist/las/lib/las-waveform.d.ts +89 -0
  126. package/dist/las/lib/las-waveform.d.ts.map +1 -0
  127. package/dist/las/lib/las-waveform.js +193 -0
  128. package/dist/las/lib/las-waveform.js.map +1 -0
  129. package/dist/las/lib/laz-perf/laslaz-decoder.cjs +382 -0
  130. package/dist/las/lib/laz-perf/laslaz-decoder.cjs.map +7 -0
  131. package/dist/las/lib/laz-perf/laslaz-decoder.d.ts +129 -0
  132. package/dist/las/lib/laz-perf/laslaz-decoder.d.ts.map +1 -0
  133. package/dist/las/lib/laz-perf/laslaz-decoder.js +377 -0
  134. package/dist/las/lib/laz-perf/laslaz-decoder.js.map +1 -0
  135. package/dist/las/lib/laz-perf/parse-las.cjs +270 -0
  136. package/dist/las/lib/laz-perf/parse-las.cjs.map +7 -0
  137. package/dist/las/lib/laz-perf/parse-las.d.ts +24 -0
  138. package/dist/las/lib/laz-perf/parse-las.d.ts.map +1 -0
  139. package/dist/las/lib/laz-perf/parse-las.js +307 -0
  140. package/dist/las/lib/laz-perf/parse-las.js.map +1 -0
  141. package/dist/las/lib/laz-rs-wasm/laslaz-decoder.cjs +631 -0
  142. package/dist/las/lib/laz-rs-wasm/laslaz-decoder.cjs.map +7 -0
  143. package/dist/las/lib/laz-rs-wasm/laslaz-decoder.d.ts +129 -0
  144. package/dist/las/lib/laz-rs-wasm/laslaz-decoder.d.ts.map +1 -0
  145. package/dist/las/lib/laz-rs-wasm/laslaz-decoder.js +414 -0
  146. package/dist/las/lib/laz-rs-wasm/laslaz-decoder.js.map +1 -0
  147. package/dist/las/lib/laz-rs-wasm/parse-las.cjs +270 -0
  148. package/dist/las/lib/laz-rs-wasm/parse-las.cjs.map +7 -0
  149. package/dist/las/lib/laz-rs-wasm/parse-las.d.ts +24 -0
  150. package/dist/las/lib/laz-rs-wasm/parse-las.d.ts.map +1 -0
  151. package/dist/las/lib/laz-rs-wasm/parse-las.js +307 -0
  152. package/dist/las/lib/laz-rs-wasm/parse-las.js.map +1 -0
  153. package/dist/las/lib/typescript/parse-las.cjs +2767 -0
  154. package/dist/las/lib/typescript/parse-las.cjs.map +7 -0
  155. package/dist/las/lib/typescript/parse-las.d.ts +39 -0
  156. package/dist/las/lib/typescript/parse-las.d.ts.map +1 -0
  157. package/dist/las/lib/typescript/parse-las.js +2607 -0
  158. package/dist/las/lib/typescript/parse-las.js.map +1 -0
  159. package/dist/las/libs/laz-perf/laz-perf.cjs +18093 -0
  160. package/dist/las/libs/laz-perf/laz-perf.cjs.map +7 -0
  161. package/dist/las/libs/laz-perf/laz-perf.d.ts +2 -0
  162. package/dist/las/libs/laz-perf/laz-perf.d.ts.map +1 -0
  163. package/dist/las/libs/laz-perf/laz-perf.js +19003 -0
  164. package/dist/las/libs/laz-perf/laz-perf.js.map +1 -0
  165. package/dist/las/libs/laz-rs-wasm/laz_rs_wasm.d.ts +95 -0
  166. package/dist/las/libs/laz-rs-wasm/laz_rs_wasm.d.ts.map +1 -0
  167. package/dist/las/libs/laz-rs-wasm/laz_rs_wasm.js +442 -0
  168. package/dist/las/libs/laz-rs-wasm/laz_rs_wasm.js.map +1 -0
  169. package/dist/las/libs/laz-rs-wasm/laz_rs_wasm_bg.wasm +0 -0
  170. package/dist/las/libs/laz-rs-wasm/laz_rs_wasm_bg.wasm.d.ts +38 -0
  171. package/dist/las/unbundled.cjs +71 -0
  172. package/dist/las/unbundled.cjs.map +7 -0
  173. package/dist/las/unbundled.d.ts +11 -0
  174. package/dist/las/unbundled.d.ts.map +1 -0
  175. package/dist/las/unbundled.js +11 -0
  176. package/dist/las/unbundled.js.map +1 -0
  177. package/dist/las/workers/las-worker.cjs +23 -0
  178. package/dist/las/workers/las-worker.cjs.map +7 -0
  179. package/dist/las/workers/las-worker.d.ts +2 -0
  180. package/dist/las/workers/las-worker.d.ts.map +1 -0
  181. package/dist/las/workers/las-worker.js +23 -0
  182. package/dist/las/workers/las-worker.js.map +1 -0
  183. package/dist/las-worker.js +23058 -0
  184. package/dist/pcd/bundled.cjs +33 -0
  185. package/dist/pcd/bundled.cjs.map +7 -0
  186. package/dist/pcd/bundled.d.ts +3 -0
  187. package/dist/pcd/bundled.d.ts.map +1 -0
  188. package/dist/pcd/bundled.js +5 -0
  189. package/dist/pcd/bundled.js.map +1 -0
  190. package/dist/pcd/index.cjs +40 -0
  191. package/dist/pcd/index.cjs.map +7 -0
  192. package/dist/pcd/index.d.ts +8 -0
  193. package/dist/pcd/index.d.ts.map +1 -0
  194. package/dist/pcd/index.js +10 -0
  195. package/dist/pcd/index.js.map +1 -0
  196. package/dist/pcd/lib/decompress-lzf.cjs +80 -0
  197. package/dist/pcd/lib/decompress-lzf.cjs.map +7 -0
  198. package/dist/pcd/lib/decompress-lzf.d.ts +7 -0
  199. package/dist/pcd/lib/decompress-lzf.d.ts.map +1 -0
  200. package/dist/pcd/lib/decompress-lzf.js +62 -0
  201. package/dist/pcd/lib/decompress-lzf.js.map +1 -0
  202. package/dist/pcd/lib/get-pcd-schema.cjs +70 -0
  203. package/dist/pcd/lib/get-pcd-schema.cjs.map +7 -0
  204. package/dist/pcd/lib/get-pcd-schema.d.ts +10 -0
  205. package/dist/pcd/lib/get-pcd-schema.d.ts.map +1 -0
  206. package/dist/pcd/lib/get-pcd-schema.js +53 -0
  207. package/dist/pcd/lib/get-pcd-schema.js.map +1 -0
  208. package/dist/pcd/lib/parse-pcd.cjs +354 -0
  209. package/dist/pcd/lib/parse-pcd.cjs.map +7 -0
  210. package/dist/pcd/lib/parse-pcd.d.ts +20 -0
  211. package/dist/pcd/lib/parse-pcd.d.ts.map +1 -0
  212. package/dist/pcd/lib/parse-pcd.js +341 -0
  213. package/dist/pcd/lib/parse-pcd.js.map +1 -0
  214. package/dist/pcd/lib/pcd-types.cjs +19 -0
  215. package/dist/pcd/lib/pcd-types.cjs.map +7 -0
  216. package/dist/pcd/lib/pcd-types.d.ts +31 -0
  217. package/dist/pcd/lib/pcd-types.d.ts.map +1 -0
  218. package/dist/pcd/lib/pcd-types.js +5 -0
  219. package/dist/pcd/lib/pcd-types.js.map +1 -0
  220. package/dist/pcd/pcd-format.cjs +42 -0
  221. package/dist/pcd/pcd-format.cjs.map +7 -0
  222. package/dist/pcd/pcd-format.d.ts +16 -0
  223. package/dist/pcd/pcd-format.d.ts.map +1 -0
  224. package/dist/pcd/pcd-format.js +19 -0
  225. package/dist/pcd/pcd-format.js.map +1 -0
  226. package/dist/pcd/pcd-loader-types.cjs +64 -0
  227. package/dist/pcd/pcd-loader-types.cjs.map +7 -0
  228. package/dist/pcd/pcd-loader-types.d.ts +105 -0
  229. package/dist/pcd/pcd-loader-types.d.ts.map +1 -0
  230. package/dist/pcd/pcd-loader-types.js +35 -0
  231. package/dist/pcd/pcd-loader-types.js.map +1 -0
  232. package/dist/pcd/pcd-loader.cjs +144 -0
  233. package/dist/pcd/pcd-loader.cjs.map +7 -0
  234. package/dist/pcd/pcd-loader.d.ts +44 -0
  235. package/dist/pcd/pcd-loader.d.ts.map +1 -0
  236. package/dist/pcd/pcd-loader.js +128 -0
  237. package/dist/pcd/pcd-loader.js.map +1 -0
  238. package/dist/pcd/pcd-writer.cjs +134 -0
  239. package/dist/pcd/pcd-writer.cjs.map +7 -0
  240. package/dist/pcd/pcd-writer.d.ts +37 -0
  241. package/dist/pcd/pcd-writer.d.ts.map +1 -0
  242. package/dist/pcd/pcd-writer.js +115 -0
  243. package/dist/pcd/pcd-writer.js.map +1 -0
  244. package/dist/pcd/unbundled.cjs +33 -0
  245. package/dist/pcd/unbundled.cjs.map +7 -0
  246. package/dist/pcd/unbundled.d.ts +3 -0
  247. package/dist/pcd/unbundled.d.ts.map +1 -0
  248. package/dist/pcd/unbundled.js +5 -0
  249. package/dist/pcd/unbundled.js.map +1 -0
  250. package/dist/pcd/workers/pcd-worker.cjs +23 -0
  251. package/dist/pcd/workers/pcd-worker.cjs.map +7 -0
  252. package/dist/pcd/workers/pcd-worker.d.ts +2 -0
  253. package/dist/pcd/workers/pcd-worker.d.ts.map +1 -0
  254. package/dist/pcd/workers/pcd-worker.js +23 -0
  255. package/dist/pcd/workers/pcd-worker.js.map +1 -0
  256. package/dist/pcd-worker.js +17522 -0
  257. package/dist/ply/bundled.cjs +33 -0
  258. package/dist/ply/bundled.cjs.map +7 -0
  259. package/dist/ply/bundled.d.ts +3 -0
  260. package/dist/ply/bundled.d.ts.map +1 -0
  261. package/dist/ply/bundled.js +5 -0
  262. package/dist/ply/bundled.js.map +1 -0
  263. package/dist/ply/index.cjs +40 -0
  264. package/dist/ply/index.cjs.map +7 -0
  265. package/dist/ply/index.d.ts +8 -0
  266. package/dist/ply/index.d.ts.map +1 -0
  267. package/dist/ply/index.js +11 -0
  268. package/dist/ply/index.js.map +1 -0
  269. package/dist/ply/lib/get-ply-schema.cjs +126 -0
  270. package/dist/ply/lib/get-ply-schema.cjs.map +7 -0
  271. package/dist/ply/lib/get-ply-schema.d.ts +10 -0
  272. package/dist/ply/lib/get-ply-schema.d.ts.map +1 -0
  273. package/dist/ply/lib/get-ply-schema.js +117 -0
  274. package/dist/ply/lib/get-ply-schema.js.map +1 -0
  275. package/dist/ply/lib/normalize-ply.cjs +96 -0
  276. package/dist/ply/lib/normalize-ply.cjs.map +7 -0
  277. package/dist/ply/lib/normalize-ply.d.ts +8 -0
  278. package/dist/ply/lib/normalize-ply.d.ts.map +1 -0
  279. package/dist/ply/lib/normalize-ply.js +89 -0
  280. package/dist/ply/lib/normalize-ply.js.map +1 -0
  281. package/dist/ply/lib/parse-ply-arrow.cjs +552 -0
  282. package/dist/ply/lib/parse-ply-arrow.cjs.map +7 -0
  283. package/dist/ply/lib/parse-ply-arrow.d.ts +25 -0
  284. package/dist/ply/lib/parse-ply-arrow.d.ts.map +1 -0
  285. package/dist/ply/lib/parse-ply-arrow.js +493 -0
  286. package/dist/ply/lib/parse-ply-arrow.js.map +1 -0
  287. package/dist/ply/lib/parse-ply-in-batches.cjs +607 -0
  288. package/dist/ply/lib/parse-ply-in-batches.cjs.map +7 -0
  289. package/dist/ply/lib/parse-ply-in-batches.d.ts +9 -0
  290. package/dist/ply/lib/parse-ply-in-batches.d.ts.map +1 -0
  291. package/dist/ply/lib/parse-ply-in-batches.js +625 -0
  292. package/dist/ply/lib/parse-ply-in-batches.js.map +1 -0
  293. package/dist/ply/lib/parse-ply.cjs +755 -0
  294. package/dist/ply/lib/parse-ply.cjs.map +7 -0
  295. package/dist/ply/lib/parse-ply.d.ts +69 -0
  296. package/dist/ply/lib/parse-ply.d.ts.map +1 -0
  297. package/dist/ply/lib/parse-ply.js +851 -0
  298. package/dist/ply/lib/parse-ply.js.map +1 -0
  299. package/dist/ply/lib/ply-types.cjs +19 -0
  300. package/dist/ply/lib/ply-types.cjs.map +7 -0
  301. package/dist/ply/lib/ply-types.d.ts +37 -0
  302. package/dist/ply/lib/ply-types.d.ts.map +1 -0
  303. package/dist/ply/lib/ply-types.js +2 -0
  304. package/dist/ply/lib/ply-types.js.map +1 -0
  305. package/dist/ply/ply-format.cjs +43 -0
  306. package/dist/ply/ply-format.cjs.map +7 -0
  307. package/dist/ply/ply-format.d.ts +18 -0
  308. package/dist/ply/ply-format.d.ts.map +1 -0
  309. package/dist/ply/ply-format.js +22 -0
  310. package/dist/ply/ply-format.js.map +1 -0
  311. package/dist/ply/ply-loader-types.cjs +65 -0
  312. package/dist/ply/ply-loader-types.cjs.map +7 -0
  313. package/dist/ply/ply-loader-types.d.ts +111 -0
  314. package/dist/ply/ply-loader-types.d.ts.map +1 -0
  315. package/dist/ply/ply-loader-types.js +38 -0
  316. package/dist/ply/ply-loader-types.js.map +1 -0
  317. package/dist/ply/ply-loader.cjs +134 -0
  318. package/dist/ply/ply-loader.cjs.map +7 -0
  319. package/dist/ply/ply-loader.d.ts +44 -0
  320. package/dist/ply/ply-loader.d.ts.map +1 -0
  321. package/dist/ply/ply-loader.js +121 -0
  322. package/dist/ply/ply-loader.js.map +1 -0
  323. package/dist/ply/ply-writer.cjs +175 -0
  324. package/dist/ply/ply-writer.cjs.map +7 -0
  325. package/dist/ply/ply-writer.d.ts +37 -0
  326. package/dist/ply/ply-writer.d.ts.map +1 -0
  327. package/dist/ply/ply-writer.js +140 -0
  328. package/dist/ply/ply-writer.js.map +1 -0
  329. package/dist/ply/unbundled.cjs +33 -0
  330. package/dist/ply/unbundled.cjs.map +7 -0
  331. package/dist/ply/unbundled.d.ts +3 -0
  332. package/dist/ply/unbundled.d.ts.map +1 -0
  333. package/dist/ply/unbundled.js +5 -0
  334. package/dist/ply/unbundled.js.map +1 -0
  335. package/dist/ply/workers/ply-worker.cjs +34 -0
  336. package/dist/ply/workers/ply-worker.cjs.map +7 -0
  337. package/dist/ply/workers/ply-worker.d.ts +2 -0
  338. package/dist/ply/workers/ply-worker.d.ts.map +1 -0
  339. package/dist/ply/workers/ply-worker.js +37 -0
  340. package/dist/ply/workers/ply-worker.js.map +1 -0
  341. package/dist/ply-worker.js +19175 -0
  342. package/package.json +234 -4
  343. package/src/index.ts +19 -0
  344. package/src/las/bundled.ts +39 -0
  345. package/src/las/index.ts +70 -0
  346. package/src/las/las-copc-loader-types.ts +18 -0
  347. package/src/las/las-copc-loader.ts +61 -0
  348. package/src/las/las-format.ts +21 -0
  349. package/src/las/las-loader-shared.ts +124 -0
  350. package/src/las/las-loader-types.ts +27 -0
  351. package/src/las/las-loader.ts +109 -0
  352. package/src/las/las-writer.ts +1473 -0
  353. package/src/las/laz-rs-loader-types.ts +21 -0
  354. package/src/las/laz-rs-loader.ts +53 -0
  355. package/src/las/lazperf-loader-types.ts +22 -0
  356. package/src/las/lazperf-loader.ts +65 -0
  357. package/src/las/lib/LASZIP-LICENSE +202 -0
  358. package/src/las/lib/LASZIP-NOTICE +4 -0
  359. package/src/las/lib/copc/parse-las.ts +265 -0
  360. package/src/las/lib/get-las-schema.ts +50 -0
  361. package/src/las/lib/las-compatibility.ts +178 -0
  362. package/src/las/lib/las-extra-bytes.ts +274 -0
  363. package/src/las/lib/las-types.ts +206 -0
  364. package/src/las/lib/las-waveform.ts +292 -0
  365. package/src/las/lib/laz-perf/laslaz-decoder.ts +443 -0
  366. package/src/las/lib/laz-perf/parse-las.ts +412 -0
  367. package/src/las/lib/laz-rs-wasm/laslaz-decoder.ts +488 -0
  368. package/src/las/lib/laz-rs-wasm/parse-las.ts +412 -0
  369. package/src/las/lib/typescript/parse-las.ts +3730 -0
  370. package/src/las/libs/laz-perf/laz-perf.ts +20615 -0
  371. package/src/las/libs/laz-rs-wasm/laz_rs_wasm.d.ts +89 -0
  372. package/src/las/libs/laz-rs-wasm/laz_rs_wasm.js +497 -0
  373. package/src/las/libs/laz-rs-wasm/laz_rs_wasm_bg.wasm +0 -0
  374. package/src/las/libs/laz-rs-wasm/laz_rs_wasm_bg.wasm.d.ts +38 -0
  375. package/src/las/libs/laz-rs-wasm/package.json +19 -0
  376. package/src/las/unbundled.ts +38 -0
  377. package/src/las/workers/las-worker.ts +24 -0
  378. package/src/pcd/bundled.ts +9 -0
  379. package/src/pcd/index.ts +13 -0
  380. package/src/pcd/lib/decompress-lzf.ts +68 -0
  381. package/src/pcd/lib/get-pcd-schema.ts +66 -0
  382. package/src/pcd/lib/parse-pcd.ts +474 -0
  383. package/src/pcd/lib/pcd-types.ts +34 -0
  384. package/src/pcd/pcd-format.ts +21 -0
  385. package/src/pcd/pcd-loader-types.ts +53 -0
  386. package/src/pcd/pcd-loader.ts +179 -0
  387. package/src/pcd/pcd-writer.ts +152 -0
  388. package/src/pcd/unbundled.ts +6 -0
  389. package/src/pcd/workers/pcd-worker.ts +24 -0
  390. package/src/ply/bundled.ts +9 -0
  391. package/src/ply/index.ts +15 -0
  392. package/src/ply/lib/get-ply-schema.ts +133 -0
  393. package/src/ply/lib/normalize-ply.ts +110 -0
  394. package/src/ply/lib/parse-ply-arrow.ts +676 -0
  395. package/src/ply/lib/parse-ply-in-batches.ts +827 -0
  396. package/src/ply/lib/parse-ply.ts +1081 -0
  397. package/src/ply/lib/ply-types.ts +47 -0
  398. package/src/ply/ply-format.ts +24 -0
  399. package/src/ply/ply-loader-types.ts +61 -0
  400. package/src/ply/ply-loader.ts +185 -0
  401. package/src/ply/ply-writer.ts +215 -0
  402. package/src/ply/unbundled.ts +6 -0
  403. package/src/ply/workers/ply-worker.ts +40 -0
  404. package/third-party-licenses/plasio-LICENSE +21 -0
  405. package/third-party-licenses/three-LICENSE +21 -0
@@ -0,0 +1,40 @@
1
+ // loaders.gl
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
4
+ import { convertMeshToTable, convertTableToMesh } from '@loaders.gl/core/schema-utils';
5
+ import { formatLASMeshColors, getLASShape, LAS_LOADER_METADATA } from "./las-loader-shared.js";
6
+ import { parseCOPCLAS, parseCOPCLASInBatches } from "./lib/copc/parse-las.js";
7
+ /**
8
+ * LAS/LAZ loader variant using the laz-perf decoder from the COPC package.
9
+ */
10
+ export const LASCOPCLoaderWithParser = {
11
+ ...LAS_LOADER_METADATA,
12
+ name: 'LAS (COPC)',
13
+ parse: async (arrayBuffer, options) => convertLASMesh(await parseCOPCLAS(arrayBuffer, options), options),
14
+ parseInBatches: (arrayBufferIterator, options) => convertLASMeshBatches(parseCOPCLASInBatches(arrayBufferIterator, options), options)
15
+ };
16
+ function convertLASMesh(mesh, options) {
17
+ const formattedMesh = formatLASMeshColors(mesh, options?.las?.colorFormat || 'uint8norm');
18
+ const table = convertMeshToTable(formattedMesh, 'arrow-table');
19
+ if (getLASShape(options) === 'arrow-table') {
20
+ return table;
21
+ }
22
+ return {
23
+ ...convertTableToMesh(table),
24
+ loader: mesh.loader,
25
+ loaderData: mesh.loaderData,
26
+ progress: mesh.progress
27
+ };
28
+ }
29
+ /**
30
+ * Convert LAS mesh batches to the requested output shape.
31
+ * @param meshBatches Decoded LAS mesh batches
32
+ * @param options LAS loader options
33
+ * @returns Converted LAS batches
34
+ */
35
+ async function* convertLASMeshBatches(meshBatches, options) {
36
+ for await (const mesh of meshBatches) {
37
+ yield convertLASMesh(mesh, options);
38
+ }
39
+ }
40
+ //# sourceMappingURL=las-copc-loader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"las-copc-loader.js","sourceRoot":"","sources":["../../src/las/las-copc-loader.ts"],"names":[],"mappings":"AAAA,aAAa;AACb,+BAA+B;AAC/B,oCAAoC;AAKpC,OAAO,EAAC,kBAAkB,EAAE,kBAAkB,EAAC,MAAM,+BAA+B,CAAC;AACrF,OAAO,EACL,mBAAmB,EACnB,WAAW,EACX,mBAAmB,EAEpB,+BAA4B;AAE7B,OAAO,EAAC,YAAY,EAAE,qBAAqB,EAAC,gCAA6B;AAEzE;;GAEG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,GAAG,mBAAmB;IACtB,IAAI,EAAE,YAAY;IAClB,KAAK,EAAE,KAAK,EAAE,WAAwB,EAAE,OAA0B,EAAE,EAAE,CACpE,cAAc,CAAC,MAAM,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC;IACnE,cAAc,EAAE,CAAC,mBAAmB,EAAE,OAA0B,EAAE,EAAE,CAClE,qBAAqB,CAAC,qBAAqB,CAAC,mBAAmB,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC;CAKtF,CAAC;AAEF,SAAS,cAAc,CAAC,IAAa,EAAE,OAA0B;IAC/D,MAAM,aAAa,GAAG,mBAAmB,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,WAAW,IAAI,WAAW,CAAC,CAAC;IAC1F,MAAM,KAAK,GAAG,kBAAkB,CAAC,aAAa,EAAE,aAAa,CAAmB,CAAC;IACjF,IAAI,WAAW,CAAC,OAAO,CAAC,KAAK,aAAa,EAAE,CAAC;QAC3C,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO;QACL,GAAI,kBAAkB,CAAC,KAAK,CAAa;QACzC,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,QAAQ,EAAG,IAAsC,CAAC,QAAQ;KAC1B,CAAC;AACrC,CAAC;AAED;;;;;GAKG;AACH,KAAK,SAAS,CAAC,CAAC,qBAAqB,CACnC,WAAmC,EACnC,OAA0B;IAE1B,IAAI,KAAK,EAAE,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;QACrC,MAAM,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACtC,CAAC;AACH,CAAC"}
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/las/las-format.ts
21
+ var las_format_exports = {};
22
+ __export(las_format_exports, {
23
+ LASFormat: () => LASFormat
24
+ });
25
+ module.exports = __toCommonJS(las_format_exports);
26
+ var LASFormat = {
27
+ name: "LAS",
28
+ id: "las",
29
+ module: "pointclouds",
30
+ encoding: "binary",
31
+ format: "las",
32
+ extensions: ["las", "laz"],
33
+ // LAZ is the "compressed" flavor of LAS,
34
+ mimeTypes: ["application/octet-stream"],
35
+ // TODO - text version?
36
+ text: false,
37
+ binary: true,
38
+ tests: ["LASF"]
39
+ };
40
+ // Annotate the CommonJS export names for ESM import in node:
41
+ 0 && (module.exports = {
42
+ LASFormat
43
+ });
44
+ //# sourceMappingURL=las-format.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/las/las-format.ts"],
4
+ "sourcesContent": ["// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n\nimport type {Format} from '@loaders.gl/core/loader-utils';\n\n/**\n * LAS (LASer) point cloud format\n */\nexport const LASFormat = {\n name: 'LAS',\n id: 'las',\n module: 'pointclouds',\n encoding: 'binary',\n format: 'las',\n extensions: ['las', 'laz'], // LAZ is the \"compressed\" flavor of LAS,\n mimeTypes: ['application/octet-stream'], // TODO - text version?\n text: false,\n binary: true,\n tests: ['LASF']\n} as const satisfies Format;\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AASO,IAAM,YAAY;AAAA,EACvB,MAAM;AAAA,EACN,IAAI;AAAA,EACJ,QAAQ;AAAA,EACR,UAAU;AAAA,EACV,QAAQ;AAAA,EACR,YAAY,CAAC,OAAO,KAAK;AAAA;AAAA,EACzB,WAAW,CAAC,0BAA0B;AAAA;AAAA,EACtC,MAAM;AAAA,EACN,QAAQ;AAAA,EACR,OAAO,CAAC,MAAM;AAChB;",
6
+ "names": []
7
+ }
@@ -0,0 +1,16 @@
1
+ /**
2
+ * LAS (LASer) point cloud format
3
+ */
4
+ export declare const LASFormat: {
5
+ readonly name: "LAS";
6
+ readonly id: "las";
7
+ readonly module: "pointclouds";
8
+ readonly encoding: "binary";
9
+ readonly format: "las";
10
+ readonly extensions: ["las", "laz"];
11
+ readonly mimeTypes: ["application/octet-stream"];
12
+ readonly text: false;
13
+ readonly binary: true;
14
+ readonly tests: ["LASF"];
15
+ };
16
+ //# sourceMappingURL=las-format.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"las-format.d.ts","sourceRoot":"","sources":["../../src/las/las-format.ts"],"names":[],"mappings":"AAMA;;GAEG;AACH,eAAO,MAAM,SAAS;;;;;;;;;;;CAWK,CAAC"}
@@ -0,0 +1,19 @@
1
+ // loaders.gl
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
4
+ /**
5
+ * LAS (LASer) point cloud format
6
+ */
7
+ export const LASFormat = {
8
+ name: 'LAS',
9
+ id: 'las',
10
+ module: 'pointclouds',
11
+ encoding: 'binary',
12
+ format: 'las',
13
+ extensions: ['las', 'laz'], // LAZ is the "compressed" flavor of LAS,
14
+ mimeTypes: ['application/octet-stream'], // TODO - text version?
15
+ text: false,
16
+ binary: true,
17
+ tests: ['LASF']
18
+ };
19
+ //# sourceMappingURL=las-format.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"las-format.js","sourceRoot":"","sources":["../../src/las/las-format.ts"],"names":[],"mappings":"AAAA,aAAa;AACb,+BAA+B;AAC/B,oCAAoC;AAIpC;;GAEG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,IAAI,EAAE,KAAK;IACX,EAAE,EAAE,KAAK;IACT,MAAM,EAAE,aAAa;IACrB,QAAQ,EAAE,QAAQ;IAClB,MAAM,EAAE,KAAK;IACb,UAAU,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,yCAAyC;IACrE,SAAS,EAAE,CAAC,0BAA0B,CAAC,EAAE,uBAAuB;IAChE,IAAI,EAAE,KAAK;IACX,MAAM,EAAE,IAAI;IACZ,KAAK,EAAE,CAAC,MAAM,CAAC;CACU,CAAC"}
@@ -0,0 +1,82 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/las/las-loader-shared.ts
21
+ var las_loader_shared_exports = {};
22
+ __export(las_loader_shared_exports, {
23
+ DEFAULT_LAS_SHAPE: () => DEFAULT_LAS_SHAPE,
24
+ LAS_LOADER_METADATA: () => LAS_LOADER_METADATA,
25
+ formatLASMeshColors: () => formatLASMeshColors,
26
+ getLASShape: () => getLASShape
27
+ });
28
+ module.exports = __toCommonJS(las_loader_shared_exports);
29
+ var import_schema = require("@loaders.gl/core/schema");
30
+ var import_las_format = require("./las-format.cjs");
31
+ var VERSION = true ? "5.0.0-beta.1" : "latest";
32
+ var DEFAULT_LAS_SHAPE = "arrow-table";
33
+ function getLASShape(options) {
34
+ return options?.las?.shape || DEFAULT_LAS_SHAPE;
35
+ }
36
+ var LAS_LOADER_METADATA = {
37
+ ...import_las_format.LASFormat,
38
+ dataType: null,
39
+ batchType: null,
40
+ version: VERSION,
41
+ worker: false,
42
+ options: {
43
+ las: {
44
+ shape: DEFAULT_LAS_SHAPE,
45
+ fp64: false,
46
+ colorDepth: 8,
47
+ colorFormat: "uint8norm",
48
+ columns: void 0,
49
+ extraBytes: "raw",
50
+ recoverMissingChunkTable: false,
51
+ compatibilityMode: "auto"
52
+ }
53
+ }
54
+ };
55
+ function formatLASMeshColors(mesh, colorFormat) {
56
+ if (colorFormat === "uint8norm" || !mesh.attributes.COLOR_0) {
57
+ return mesh;
58
+ }
59
+ const colorAttribute = mesh.attributes.COLOR_0;
60
+ const sourceScale = colorAttribute.value instanceof Uint16Array ? 65535 : 255;
61
+ const value = colorFormat === "float16" ? (0, import_schema.convertColorArrayToFloat16)(colorAttribute.value, sourceScale) : (0, import_schema.convertColorArrayToFloat32)(colorAttribute.value, sourceScale);
62
+ const attributes = { ...mesh.attributes };
63
+ for (const [attributeName, attribute] of Object.entries(attributes)) {
64
+ if (attribute.value === colorAttribute.value) {
65
+ attributes[attributeName] = {
66
+ ...attribute,
67
+ value,
68
+ normalized: false,
69
+ ...colorFormat === "float16" ? { componentType: "float16" } : {}
70
+ };
71
+ }
72
+ }
73
+ return { ...mesh, attributes };
74
+ }
75
+ // Annotate the CommonJS export names for ESM import in node:
76
+ 0 && (module.exports = {
77
+ DEFAULT_LAS_SHAPE,
78
+ LAS_LOADER_METADATA,
79
+ formatLASMeshColors,
80
+ getLASShape
81
+ });
82
+ //# sourceMappingURL=las-loader-shared.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/las/las-loader-shared.ts"],
4
+ "sourcesContent": ["// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n\nimport type {Loader, LoaderOptions} from '@loaders.gl/core/loader-utils';\nimport {convertColorArrayToFloat16, convertColorArrayToFloat32} from '@loaders.gl/core/schema';\nimport type {MeshArrowTable} from '@loaders.gl/core/schema';\nimport {LASFormat} from './las-format';\nimport type {LASMesh} from './lib/las-types';\n\n// __VERSION__ is injected by babel-plugin-version-inline\n// @ts-ignore TS2304: Cannot find name '__VERSION__'.\nconst VERSION = typeof __VERSION__ !== 'undefined' ? __VERSION__ : 'latest';\n\n/** Arrow column names that can be selected from LAS point records. */\nexport type LASColumnName =\n | 'POSITION'\n | 'intensity'\n | 'classification'\n | 'synthetic'\n | 'keyPoint'\n | 'withheld'\n | 'overlap'\n | 'COLOR_0'\n | 'GPS_TIME'\n | 'NIR'\n | 'scanAngle'\n | 'userData'\n | 'pointSourceId'\n | 'returnNumber'\n | 'numberOfReturns'\n | 'scannerChannel'\n | 'scanDirectionFlag'\n | 'edgeOfFlightLine'\n | 'WAVEFORM'\n | 'EXTRA_BYTES';\n\n/** Options accepted by LAS loader implementations. */\nexport type LASLoaderOptions = LoaderOptions & {\n las?: {\n /** Output representation. */\n shape?: 'mesh' | 'columnar-table' | 'arrow-table';\n /** Store positions in 64-bit floating point arrays. */\n fp64?: boolean;\n /** Output color depth or automatic source-depth detection. */\n colorDepth?: number | string;\n /** Color storage format. Defaults to uint8norm for backwards compatibility. */\n colorFormat?: 'uint8norm' | 'float16' | 'float32';\n /** Arrow columns to decode. POSITION is always included. */\n columns?: readonly LASColumnName[];\n /** Decode Extra Bytes descriptors into typed attributes instead of raw bytes. */\n extraBytes?: 'raw' | 'typed';\n /** Recover fixed-size LAZ chunks when the LASzip pointer marks an interrupted writer. */\n recoverMissingChunkTable?: boolean;\n /** Restore modern fields in LASzip compatibility-mode files, or retain their legacy columns. */\n compatibilityMode?: 'auto' | 'raw';\n /** Override the URL to the worker bundle. */\n workerUrl?: string;\n };\n /** Called as point data is decoded on the main thread. */\n onProgress?: Function;\n};\n\n/** Default output shape for LAS and LAZ loaders. */\nexport const DEFAULT_LAS_SHAPE = 'arrow-table' as const;\n\n/** Resolve the LAS output shape, including the Arrow-primary default. */\nexport function getLASShape(options?: LASLoaderOptions): 'mesh' | 'columnar-table' | 'arrow-table' {\n return options?.las?.shape || DEFAULT_LAS_SHAPE;\n}\n\n/** Parser-independent LAS loader metadata shared by each loader variant. */\nexport const LAS_LOADER_METADATA = {\n ...LASFormat,\n\n dataType: null as unknown as LASMesh | MeshArrowTable,\n batchType: null as unknown as LASMesh | MeshArrowTable,\n\n version: VERSION,\n worker: false,\n options: {\n las: {\n shape: DEFAULT_LAS_SHAPE,\n fp64: false,\n colorDepth: 8,\n colorFormat: 'uint8norm',\n columns: undefined,\n extraBytes: 'raw',\n recoverMissingChunkTable: false,\n compatibilityMode: 'auto'\n }\n }\n} as const satisfies Loader<LASMesh | MeshArrowTable, LASMesh | MeshArrowTable, LASLoaderOptions>;\n\n/** Apply the requested normalized color representation to a decoded LAS mesh. */\nexport function formatLASMeshColors(\n mesh: LASMesh,\n colorFormat: 'uint8norm' | 'float16' | 'float32'\n): LASMesh {\n if (colorFormat === 'uint8norm' || !mesh.attributes.COLOR_0) {\n return mesh;\n }\n\n const colorAttribute = mesh.attributes.COLOR_0;\n const sourceScale = colorAttribute.value instanceof Uint16Array ? 65535 : 255;\n const value =\n colorFormat === 'float16'\n ? convertColorArrayToFloat16(colorAttribute.value, sourceScale)\n : convertColorArrayToFloat32(colorAttribute.value, sourceScale);\n const attributes = {...mesh.attributes};\n\n for (const [attributeName, attribute] of Object.entries(attributes)) {\n if (attribute.value === colorAttribute.value) {\n attributes[attributeName] = {\n ...attribute,\n value,\n normalized: false,\n ...(colorFormat === 'float16' ? {componentType: 'float16' as const} : {})\n };\n }\n }\n\n return {...mesh, attributes};\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAKA,oBAAqE;AAErE,wBAAwB;AAKxB,IAAM,UAAU,OAAqC,iBAAc;AAoD5D,IAAM,oBAAoB;AAG1B,SAAS,YAAY,SAAuE;AACjG,SAAO,SAAS,KAAK,SAAS;AAChC;AAGO,IAAM,sBAAsB;AAAA,EACjC,GAAG;AAAA,EAEH,UAAU;AAAA,EACV,WAAW;AAAA,EAEX,SAAS;AAAA,EACT,QAAQ;AAAA,EACR,SAAS;AAAA,IACP,KAAK;AAAA,MACH,OAAO;AAAA,MACP,MAAM;AAAA,MACN,YAAY;AAAA,MACZ,aAAa;AAAA,MACb,SAAS;AAAA,MACT,YAAY;AAAA,MACZ,0BAA0B;AAAA,MAC1B,mBAAmB;AAAA,IACrB;AAAA,EACF;AACF;AAGO,SAAS,oBACd,MACA,aACS;AACT,MAAI,gBAAgB,eAAe,CAAC,KAAK,WAAW,SAAS;AAC3D,WAAO;AAAA,EACT;AAEA,QAAM,iBAAiB,KAAK,WAAW;AACvC,QAAM,cAAc,eAAe,iBAAiB,cAAc,QAAQ;AAC1E,QAAM,QACJ,gBAAgB,gBACZ,0CAA2B,eAAe,OAAO,WAAW,QAC5D,0CAA2B,eAAe,OAAO,WAAW;AAClE,QAAM,aAAa,EAAC,GAAG,KAAK,WAAU;AAEtC,aAAW,CAAC,eAAe,SAAS,KAAK,OAAO,QAAQ,UAAU,GAAG;AACnE,QAAI,UAAU,UAAU,eAAe,OAAO;AAC5C,iBAAW,aAAa,IAAI;AAAA,QAC1B,GAAG;AAAA,QACH;AAAA,QACA,YAAY;AAAA,QACZ,GAAI,gBAAgB,YAAY,EAAC,eAAe,UAAkB,IAAI,CAAC;AAAA,MACzE;AAAA,IACF;AAAA,EACF;AAEA,SAAO,EAAC,GAAG,MAAM,WAAU;AAC7B;",
6
+ "names": []
7
+ }
@@ -0,0 +1,66 @@
1
+ import type { LoaderOptions } from '@loaders.gl/core/loader-utils';
2
+ import type { MeshArrowTable } from '@loaders.gl/core/schema';
3
+ import type { LASMesh } from "./lib/las-types.js";
4
+ /** Arrow column names that can be selected from LAS point records. */
5
+ export type LASColumnName = 'POSITION' | 'intensity' | 'classification' | 'synthetic' | 'keyPoint' | 'withheld' | 'overlap' | 'COLOR_0' | 'GPS_TIME' | 'NIR' | 'scanAngle' | 'userData' | 'pointSourceId' | 'returnNumber' | 'numberOfReturns' | 'scannerChannel' | 'scanDirectionFlag' | 'edgeOfFlightLine' | 'WAVEFORM' | 'EXTRA_BYTES';
6
+ /** Options accepted by LAS loader implementations. */
7
+ export type LASLoaderOptions = LoaderOptions & {
8
+ las?: {
9
+ /** Output representation. */
10
+ shape?: 'mesh' | 'columnar-table' | 'arrow-table';
11
+ /** Store positions in 64-bit floating point arrays. */
12
+ fp64?: boolean;
13
+ /** Output color depth or automatic source-depth detection. */
14
+ colorDepth?: number | string;
15
+ /** Color storage format. Defaults to uint8norm for backwards compatibility. */
16
+ colorFormat?: 'uint8norm' | 'float16' | 'float32';
17
+ /** Arrow columns to decode. POSITION is always included. */
18
+ columns?: readonly LASColumnName[];
19
+ /** Decode Extra Bytes descriptors into typed attributes instead of raw bytes. */
20
+ extraBytes?: 'raw' | 'typed';
21
+ /** Recover fixed-size LAZ chunks when the LASzip pointer marks an interrupted writer. */
22
+ recoverMissingChunkTable?: boolean;
23
+ /** Restore modern fields in LASzip compatibility-mode files, or retain their legacy columns. */
24
+ compatibilityMode?: 'auto' | 'raw';
25
+ /** Override the URL to the worker bundle. */
26
+ workerUrl?: string;
27
+ };
28
+ /** Called as point data is decoded on the main thread. */
29
+ onProgress?: Function;
30
+ };
31
+ /** Default output shape for LAS and LAZ loaders. */
32
+ export declare const DEFAULT_LAS_SHAPE: "arrow-table";
33
+ /** Resolve the LAS output shape, including the Arrow-primary default. */
34
+ export declare function getLASShape(options?: LASLoaderOptions): 'mesh' | 'columnar-table' | 'arrow-table';
35
+ /** Parser-independent LAS loader metadata shared by each loader variant. */
36
+ export declare const LAS_LOADER_METADATA: {
37
+ readonly dataType: LASMesh | MeshArrowTable;
38
+ readonly batchType: LASMesh | MeshArrowTable;
39
+ readonly version: any;
40
+ readonly worker: false;
41
+ readonly options: {
42
+ readonly las: {
43
+ readonly shape: "arrow-table";
44
+ readonly fp64: false;
45
+ readonly colorDepth: 8;
46
+ readonly colorFormat: "uint8norm";
47
+ readonly columns: undefined;
48
+ readonly extraBytes: "raw";
49
+ readonly recoverMissingChunkTable: false;
50
+ readonly compatibilityMode: "auto";
51
+ };
52
+ };
53
+ readonly name: "LAS";
54
+ readonly id: "las";
55
+ readonly module: "pointclouds";
56
+ readonly encoding: "binary";
57
+ readonly format: "las";
58
+ readonly extensions: ["las", "laz"];
59
+ readonly mimeTypes: ["application/octet-stream"];
60
+ readonly text: false;
61
+ readonly binary: true;
62
+ readonly tests: ["LASF"];
63
+ };
64
+ /** Apply the requested normalized color representation to a decoded LAS mesh. */
65
+ export declare function formatLASMeshColors(mesh: LASMesh, colorFormat: 'uint8norm' | 'float16' | 'float32'): LASMesh;
66
+ //# sourceMappingURL=las-loader-shared.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"las-loader-shared.d.ts","sourceRoot":"","sources":["../../src/las/las-loader-shared.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAS,aAAa,EAAC,MAAM,+BAA+B,CAAC;AAEzE,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,yBAAyB,CAAC;AAE5D,OAAO,KAAK,EAAC,OAAO,EAAC,2BAAwB;AAM7C,sEAAsE;AACtE,MAAM,MAAM,aAAa,GACrB,UAAU,GACV,WAAW,GACX,gBAAgB,GAChB,WAAW,GACX,UAAU,GACV,UAAU,GACV,SAAS,GACT,SAAS,GACT,UAAU,GACV,KAAK,GACL,WAAW,GACX,UAAU,GACV,eAAe,GACf,cAAc,GACd,iBAAiB,GACjB,gBAAgB,GAChB,mBAAmB,GACnB,kBAAkB,GAClB,UAAU,GACV,aAAa,CAAC;AAElB,sDAAsD;AACtD,MAAM,MAAM,gBAAgB,GAAG,aAAa,GAAG;IAC7C,GAAG,CAAC,EAAE;QACJ,6BAA6B;QAC7B,KAAK,CAAC,EAAE,MAAM,GAAG,gBAAgB,GAAG,aAAa,CAAC;QAClD,uDAAuD;QACvD,IAAI,CAAC,EAAE,OAAO,CAAC;QACf,8DAA8D;QAC9D,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;QAC7B,+EAA+E;QAC/E,WAAW,CAAC,EAAE,WAAW,GAAG,SAAS,GAAG,SAAS,CAAC;QAClD,4DAA4D;QAC5D,OAAO,CAAC,EAAE,SAAS,aAAa,EAAE,CAAC;QACnC,iFAAiF;QACjF,UAAU,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC;QAC7B,yFAAyF;QACzF,wBAAwB,CAAC,EAAE,OAAO,CAAC;QACnC,gGAAgG;QAChG,iBAAiB,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;QACnC,6CAA6C;QAC7C,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,0DAA0D;IAC1D,UAAU,CAAC,EAAE,QAAQ,CAAC;CACvB,CAAC;AAEF,oDAAoD;AACpD,eAAO,MAAM,iBAAiB,EAAG,aAAsB,CAAC;AAExD,yEAAyE;AACzE,wBAAgB,WAAW,CAAC,OAAO,CAAC,EAAE,gBAAgB,GAAG,MAAM,GAAG,gBAAgB,GAAG,aAAa,CAEjG;AAED,4EAA4E;AAC5E,eAAO,MAAM,mBAAmB;uBAGD,OAAO,GAAG,cAAc;wBACvB,OAAO,GAAG,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;CAgByC,CAAC;AAElG,iFAAiF;AACjF,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,OAAO,EACb,WAAW,EAAE,WAAW,GAAG,SAAS,GAAG,SAAS,GAC/C,OAAO,CAyBT"}
@@ -0,0 +1,58 @@
1
+ // loaders.gl
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
4
+ import { convertColorArrayToFloat16, convertColorArrayToFloat32 } from '@loaders.gl/core/schema';
5
+ import { LASFormat } from "./las-format.js";
6
+ // __VERSION__ is injected by babel-plugin-version-inline
7
+ // @ts-ignore TS2304: Cannot find name '__VERSION__'.
8
+ const VERSION = typeof "5.0.0-beta.1" !== 'undefined' ? "5.0.0-beta.1" : 'latest';
9
+ /** Default output shape for LAS and LAZ loaders. */
10
+ export const DEFAULT_LAS_SHAPE = 'arrow-table';
11
+ /** Resolve the LAS output shape, including the Arrow-primary default. */
12
+ export function getLASShape(options) {
13
+ return options?.las?.shape || DEFAULT_LAS_SHAPE;
14
+ }
15
+ /** Parser-independent LAS loader metadata shared by each loader variant. */
16
+ export const LAS_LOADER_METADATA = {
17
+ ...LASFormat,
18
+ dataType: null,
19
+ batchType: null,
20
+ version: VERSION,
21
+ worker: false,
22
+ options: {
23
+ las: {
24
+ shape: DEFAULT_LAS_SHAPE,
25
+ fp64: false,
26
+ colorDepth: 8,
27
+ colorFormat: 'uint8norm',
28
+ columns: undefined,
29
+ extraBytes: 'raw',
30
+ recoverMissingChunkTable: false,
31
+ compatibilityMode: 'auto'
32
+ }
33
+ }
34
+ };
35
+ /** Apply the requested normalized color representation to a decoded LAS mesh. */
36
+ export function formatLASMeshColors(mesh, colorFormat) {
37
+ if (colorFormat === 'uint8norm' || !mesh.attributes.COLOR_0) {
38
+ return mesh;
39
+ }
40
+ const colorAttribute = mesh.attributes.COLOR_0;
41
+ const sourceScale = colorAttribute.value instanceof Uint16Array ? 65535 : 255;
42
+ const value = colorFormat === 'float16'
43
+ ? convertColorArrayToFloat16(colorAttribute.value, sourceScale)
44
+ : convertColorArrayToFloat32(colorAttribute.value, sourceScale);
45
+ const attributes = { ...mesh.attributes };
46
+ for (const [attributeName, attribute] of Object.entries(attributes)) {
47
+ if (attribute.value === colorAttribute.value) {
48
+ attributes[attributeName] = {
49
+ ...attribute,
50
+ value,
51
+ normalized: false,
52
+ ...(colorFormat === 'float16' ? { componentType: 'float16' } : {})
53
+ };
54
+ }
55
+ }
56
+ return { ...mesh, attributes };
57
+ }
58
+ //# sourceMappingURL=las-loader-shared.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"las-loader-shared.js","sourceRoot":"","sources":["../../src/las/las-loader-shared.ts"],"names":[],"mappings":"AAAA,aAAa;AACb,+BAA+B;AAC/B,oCAAoC;AAGpC,OAAO,EAAC,0BAA0B,EAAE,0BAA0B,EAAC,MAAM,yBAAyB,CAAC;AAE/F,OAAO,EAAC,SAAS,EAAC,wBAAqB;AAGvC,yDAAyD;AACzD,qDAAqD;AACrD,MAAM,OAAO,GAAG,qBAAkB,KAAK,WAAW,CAAC,CAAC,gBAAa,CAAC,CAAC,QAAQ,CAAC;AAmD5E,oDAAoD;AACpD,MAAM,CAAC,MAAM,iBAAiB,GAAG,aAAsB,CAAC;AAExD,yEAAyE;AACzE,MAAM,UAAU,WAAW,CAAC,OAA0B;IACpD,OAAO,OAAO,EAAE,GAAG,EAAE,KAAK,IAAI,iBAAiB,CAAC;AAClD,CAAC;AAED,4EAA4E;AAC5E,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,GAAG,SAAS;IAEZ,QAAQ,EAAE,IAA2C;IACrD,SAAS,EAAE,IAA2C;IAEtD,OAAO,EAAE,OAAO;IAChB,MAAM,EAAE,KAAK;IACb,OAAO,EAAE;QACP,GAAG,EAAE;YACH,KAAK,EAAE,iBAAiB;YACxB,IAAI,EAAE,KAAK;YACX,UAAU,EAAE,CAAC;YACb,WAAW,EAAE,WAAW;YACxB,OAAO,EAAE,SAAS;YAClB,UAAU,EAAE,KAAK;YACjB,wBAAwB,EAAE,KAAK;YAC/B,iBAAiB,EAAE,MAAM;SAC1B;KACF;CAC8F,CAAC;AAElG,iFAAiF;AACjF,MAAM,UAAU,mBAAmB,CACjC,IAAa,EACb,WAAgD;IAEhD,IAAI,WAAW,KAAK,WAAW,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;QAC5D,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,cAAc,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;IAC/C,MAAM,WAAW,GAAG,cAAc,CAAC,KAAK,YAAY,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC;IAC9E,MAAM,KAAK,GACT,WAAW,KAAK,SAAS;QACvB,CAAC,CAAC,0BAA0B,CAAC,cAAc,CAAC,KAAK,EAAE,WAAW,CAAC;QAC/D,CAAC,CAAC,0BAA0B,CAAC,cAAc,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;IACpE,MAAM,UAAU,GAAG,EAAC,GAAG,IAAI,CAAC,UAAU,EAAC,CAAC;IAExC,KAAK,MAAM,CAAC,aAAa,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;QACpE,IAAI,SAAS,CAAC,KAAK,KAAK,cAAc,CAAC,KAAK,EAAE,CAAC;YAC7C,UAAU,CAAC,aAAa,CAAC,GAAG;gBAC1B,GAAG,SAAS;gBACZ,KAAK;gBACL,UAAU,EAAE,KAAK;gBACjB,GAAG,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAC,aAAa,EAAE,SAAkB,EAAC,CAAC,CAAC,CAAC,EAAE,CAAC;aAC1E,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,EAAC,GAAG,IAAI,EAAE,UAAU,EAAC,CAAC;AAC/B,CAAC"}
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+
30
+ // src/las/las-loader-types.ts
31
+ var las_loader_types_exports = {};
32
+ __export(las_loader_types_exports, {
33
+ LASLoader: () => LASLoader,
34
+ LASWorkerLoader: () => LASWorkerLoader
35
+ });
36
+ module.exports = __toCommonJS(las_loader_types_exports);
37
+ var import_las_loader_shared = require("./las-loader-shared.cjs");
38
+ async function preload() {
39
+ const { LASLoaderWithParser } = await import("@loaders.gl/pointclouds/las/las-loader");
40
+ return LASLoaderWithParser;
41
+ }
42
+ var LASLoader = {
43
+ ...import_las_loader_shared.LAS_LOADER_METADATA,
44
+ worker: true,
45
+ workerInBatches: true,
46
+ preload
47
+ };
48
+ var LASWorkerLoader = LASLoader;
49
+ // Annotate the CommonJS export names for ESM import in node:
50
+ 0 && (module.exports = {
51
+ LASLoader,
52
+ LASWorkerLoader
53
+ });
54
+ //# sourceMappingURL=las-loader-types.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/las/las-loader-types.ts"],
4
+ "sourcesContent": ["// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n\nimport type {Loader} from '@loaders.gl/core/loader-utils';\nimport type {MeshArrowTable} from '@loaders.gl/core/schema';\nimport type {LASMesh} from './lib/las-types';\nimport {LAS_LOADER_METADATA, type LASLoaderOptions} from './las-loader-shared';\n\nexport type {LASColumnName, LASLoaderOptions} from './las-loader-shared';\n\n/** Preloads the parser-bearing primary TypeScript LAS loader implementation. */\nasync function preload() {\n const {LASLoaderWithParser} = await import('@loaders.gl/pointclouds/las/las-loader');\n return LASLoaderWithParser;\n}\n\n/** Metadata-only loader for the LAS (LASer) point cloud format. */\nexport const LASLoader = {\n ...LAS_LOADER_METADATA,\n worker: true,\n workerInBatches: true,\n preload\n} as const satisfies Loader<LASMesh | MeshArrowTable, LASMesh | MeshArrowTable, LASLoaderOptions>;\n\n/** @deprecated Use LASLoader. */\nexport const LASWorkerLoader = LASLoader;\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA,+BAAyD;AAKzD,eAAe,UAAU;AACvB,QAAM,EAAC,oBAAmB,IAAI,MAAM,OAAO,wCAAwC;AACnF,SAAO;AACT;AAGO,IAAM,YAAY;AAAA,EACvB,GAAG;AAAA,EACH,QAAQ;AAAA,EACR,iBAAiB;AAAA,EACjB;AACF;AAGO,IAAM,kBAAkB;",
6
+ "names": []
7
+ }
@@ -0,0 +1,104 @@
1
+ import type { MeshArrowTable } from '@loaders.gl/core/schema';
2
+ import type { LASMesh } from "./lib/las-types.js";
3
+ import { type LASLoaderOptions } from "./las-loader-shared.js";
4
+ export type { LASColumnName, LASLoaderOptions } from "./las-loader-shared.js";
5
+ /** Preloads the parser-bearing primary TypeScript LAS loader implementation. */
6
+ declare function preload(): Promise<{
7
+ readonly worker: true;
8
+ readonly workerInBatches: true;
9
+ readonly serializeWorkerResult: typeof import("@loaders.gl/core/schema-utils/arrow-transport").serializeArrowWorkerTable;
10
+ readonly serializeWorkerBatch: typeof import("@loaders.gl/core/schema-utils/arrow-transport").serializeArrowWorkerTable;
11
+ readonly deserializeWorkerResult: (result: unknown, options?: LASLoaderOptions) => LASMesh | MeshArrowTable;
12
+ readonly deserializeWorkerBatch: (result: unknown, options?: LASLoaderOptions) => LASMesh | MeshArrowTable;
13
+ readonly parse: (arrayBuffer: ArrayBuffer, options?: LASLoaderOptions) => Promise<LASMesh | MeshArrowTable>;
14
+ readonly parseSync: (arrayBuffer: ArrayBuffer, options?: LASLoaderOptions) => LASMesh | MeshArrowTable;
15
+ readonly parseInBatches: (arrayBufferIterator: AsyncIterable<ArrayBufferLike | ArrayBufferView<ArrayBufferLike>> | Iterable<ArrayBufferLike | ArrayBufferView<ArrayBufferLike>>, options?: LASLoaderOptions) => AsyncGenerator<LASMesh | MeshArrowTable, void, any>;
16
+ readonly dataType: LASMesh | MeshArrowTable;
17
+ readonly batchType: LASMesh | MeshArrowTable;
18
+ readonly version: any;
19
+ readonly options: {
20
+ readonly las: {
21
+ readonly shape: "arrow-table";
22
+ readonly fp64: false;
23
+ readonly colorDepth: 8;
24
+ readonly colorFormat: "uint8norm";
25
+ readonly columns: undefined;
26
+ readonly extraBytes: "raw";
27
+ readonly recoverMissingChunkTable: false;
28
+ readonly compatibilityMode: "auto";
29
+ };
30
+ };
31
+ readonly name: "LAS";
32
+ readonly id: "las";
33
+ readonly module: "pointclouds";
34
+ readonly encoding: "binary";
35
+ readonly format: "las";
36
+ readonly extensions: ["las", "laz"];
37
+ readonly mimeTypes: ["application/octet-stream"];
38
+ readonly text: false;
39
+ readonly binary: true;
40
+ readonly tests: ["LASF"];
41
+ }>;
42
+ /** Metadata-only loader for the LAS (LASer) point cloud format. */
43
+ export declare const LASLoader: {
44
+ readonly worker: true;
45
+ readonly workerInBatches: true;
46
+ readonly preload: typeof preload;
47
+ readonly dataType: LASMesh | MeshArrowTable;
48
+ readonly batchType: LASMesh | MeshArrowTable;
49
+ readonly version: any;
50
+ readonly options: {
51
+ readonly las: {
52
+ readonly shape: "arrow-table";
53
+ readonly fp64: false;
54
+ readonly colorDepth: 8;
55
+ readonly colorFormat: "uint8norm";
56
+ readonly columns: undefined;
57
+ readonly extraBytes: "raw";
58
+ readonly recoverMissingChunkTable: false;
59
+ readonly compatibilityMode: "auto";
60
+ };
61
+ };
62
+ readonly name: "LAS";
63
+ readonly id: "las";
64
+ readonly module: "pointclouds";
65
+ readonly encoding: "binary";
66
+ readonly format: "las";
67
+ readonly extensions: ["las", "laz"];
68
+ readonly mimeTypes: ["application/octet-stream"];
69
+ readonly text: false;
70
+ readonly binary: true;
71
+ readonly tests: ["LASF"];
72
+ };
73
+ /** @deprecated Use LASLoader. */
74
+ export declare const LASWorkerLoader: {
75
+ readonly worker: true;
76
+ readonly workerInBatches: true;
77
+ readonly preload: typeof preload;
78
+ readonly dataType: LASMesh | MeshArrowTable;
79
+ readonly batchType: LASMesh | MeshArrowTable;
80
+ readonly version: any;
81
+ readonly options: {
82
+ readonly las: {
83
+ readonly shape: "arrow-table";
84
+ readonly fp64: false;
85
+ readonly colorDepth: 8;
86
+ readonly colorFormat: "uint8norm";
87
+ readonly columns: undefined;
88
+ readonly extraBytes: "raw";
89
+ readonly recoverMissingChunkTable: false;
90
+ readonly compatibilityMode: "auto";
91
+ };
92
+ };
93
+ readonly name: "LAS";
94
+ readonly id: "las";
95
+ readonly module: "pointclouds";
96
+ readonly encoding: "binary";
97
+ readonly format: "las";
98
+ readonly extensions: ["las", "laz"];
99
+ readonly mimeTypes: ["application/octet-stream"];
100
+ readonly text: false;
101
+ readonly binary: true;
102
+ readonly tests: ["LASF"];
103
+ };
104
+ //# sourceMappingURL=las-loader-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"las-loader-types.d.ts","sourceRoot":"","sources":["../../src/las/las-loader-types.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,yBAAyB,CAAC;AAC5D,OAAO,KAAK,EAAC,OAAO,EAAC,2BAAwB;AAC7C,OAAO,EAAsB,KAAK,gBAAgB,EAAC,+BAA4B;AAE/E,YAAY,EAAC,aAAa,EAAE,gBAAgB,EAAC,+BAA4B;AAEzE,gFAAgF;AAChF,iBAAe,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAGrB;AAED,mEAAmE;AACnE,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAK2E,CAAC;AAElG,iCAAiC;AACjC,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAY,CAAC"}
@@ -0,0 +1,19 @@
1
+ // loaders.gl
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
4
+ import { LAS_LOADER_METADATA } from "./las-loader-shared.js";
5
+ /** Preloads the parser-bearing primary TypeScript LAS loader implementation. */
6
+ async function preload() {
7
+ const { LASLoaderWithParser } = await import('@loaders.gl/pointclouds/las/las-loader');
8
+ return LASLoaderWithParser;
9
+ }
10
+ /** Metadata-only loader for the LAS (LASer) point cloud format. */
11
+ export const LASLoader = {
12
+ ...LAS_LOADER_METADATA,
13
+ worker: true,
14
+ workerInBatches: true,
15
+ preload
16
+ };
17
+ /** @deprecated Use LASLoader. */
18
+ export const LASWorkerLoader = LASLoader;
19
+ //# sourceMappingURL=las-loader-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"las-loader-types.js","sourceRoot":"","sources":["../../src/las/las-loader-types.ts"],"names":[],"mappings":"AAAA,aAAa;AACb,+BAA+B;AAC/B,oCAAoC;AAKpC,OAAO,EAAC,mBAAmB,EAAwB,+BAA4B;AAI/E,gFAAgF;AAChF,KAAK,UAAU,OAAO;IACpB,MAAM,EAAC,mBAAmB,EAAC,GAAG,MAAM,MAAM,CAAC,wCAAwC,CAAC,CAAC;IACrF,OAAO,mBAAmB,CAAC;AAC7B,CAAC;AAED,mEAAmE;AACnE,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,GAAG,mBAAmB;IACtB,MAAM,EAAE,IAAI;IACZ,eAAe,EAAE,IAAI;IACrB,OAAO;CACwF,CAAC;AAElG,iCAAiC;AACjC,MAAM,CAAC,MAAM,eAAe,GAAG,SAAS,CAAC"}