@loaders.gl/pcd 4.0.0-beta.2 → 4.0.0-beta.3

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 (46) hide show
  1. package/dist/{dist.min.js → dist.dev.js} +92 -95
  2. package/dist/index.cjs +449 -0
  3. package/dist/{esm/index.js → index.js} +2 -2
  4. package/dist/index.js.map +1 -0
  5. package/dist/lib/decompress-lzf.js.map +1 -0
  6. package/dist/lib/get-pcd-schema.js.map +1 -0
  7. package/dist/{esm/lib → lib}/parse-pcd.js +3 -3
  8. package/dist/lib/parse-pcd.js.map +1 -0
  9. package/dist/lib/pcd-types.js.map +1 -0
  10. package/dist/{esm/pcd-loader.js → pcd-loader.js} +1 -1
  11. package/dist/pcd-loader.js.map +1 -0
  12. package/dist/pcd-worker.js +68 -15
  13. package/dist/{esm/workers → workers}/pcd-worker.js +1 -1
  14. package/dist/workers/pcd-worker.js.map +1 -0
  15. package/package.json +16 -8
  16. package/dist/bundle.d.ts +0 -2
  17. package/dist/bundle.d.ts.map +0 -1
  18. package/dist/es5/bundle.js +0 -6
  19. package/dist/es5/bundle.js.map +0 -1
  20. package/dist/es5/index.js +0 -42
  21. package/dist/es5/index.js.map +0 -1
  22. package/dist/es5/lib/decompress-lzf.js +0 -57
  23. package/dist/es5/lib/decompress-lzf.js.map +0 -1
  24. package/dist/es5/lib/get-pcd-schema.js +0 -54
  25. package/dist/es5/lib/get-pcd-schema.js.map +0 -1
  26. package/dist/es5/lib/parse-pcd.js +0 -299
  27. package/dist/es5/lib/parse-pcd.js.map +0 -1
  28. package/dist/es5/lib/pcd-types.js +0 -2
  29. package/dist/es5/lib/pcd-types.js.map +0 -1
  30. package/dist/es5/pcd-loader.js +0 -21
  31. package/dist/es5/pcd-loader.js.map +0 -1
  32. package/dist/es5/workers/pcd-worker.js +0 -6
  33. package/dist/es5/workers/pcd-worker.js.map +0 -1
  34. package/dist/esm/bundle.js +0 -4
  35. package/dist/esm/bundle.js.map +0 -1
  36. package/dist/esm/index.js.map +0 -1
  37. package/dist/esm/lib/decompress-lzf.js.map +0 -1
  38. package/dist/esm/lib/get-pcd-schema.js.map +0 -1
  39. package/dist/esm/lib/parse-pcd.js.map +0 -1
  40. package/dist/esm/lib/pcd-types.js.map +0 -1
  41. package/dist/esm/pcd-loader.js.map +0 -1
  42. package/dist/esm/workers/pcd-worker.js.map +0 -1
  43. package/src/bundle.ts +0 -4
  44. /package/dist/{esm/lib → lib}/decompress-lzf.js +0 -0
  45. /package/dist/{esm/lib → lib}/get-pcd-schema.js +0 -0
  46. /package/dist/{esm/lib → lib}/pcd-types.js +0 -0
@@ -1,7 +1,8 @@
1
+ "use strict";
1
2
  (() => {
2
3
  // ../worker-utils/src/lib/worker-utils/get-transfer-list.ts
3
4
  function getTransferList(object, recursive = true, transfers) {
4
- const transfersSet = transfers || new Set();
5
+ const transfersSet = transfers || /* @__PURE__ */ new Set();
5
6
  if (!object) {
6
7
  } else if (isTransferable(object)) {
7
8
  transfersSet.add(object);
@@ -44,11 +45,15 @@
44
45
  }
45
46
  return parentPort;
46
47
  }
47
- var onMessageWrapperMap = new Map();
48
+ var onMessageWrapperMap = /* @__PURE__ */ new Map();
48
49
  var WorkerBody = class {
50
+ /** Check that we are actually in a worker thread */
49
51
  static inWorkerThread() {
50
52
  return typeof self !== "undefined" || Boolean(getParentPort());
51
53
  }
54
+ /*
55
+ * (type: WorkerMessageType, payload: WorkerMessagePayload) => any
56
+ */
52
57
  static set onmessage(onMessage) {
53
58
  function handleMessage(message) {
54
59
  const parentPort3 = getParentPort();
@@ -92,6 +97,11 @@
92
97
  globalThis.removeEventListener("message", onMessageWrapper);
93
98
  }
94
99
  }
100
+ /**
101
+ * Send a message from a worker to creating thread (main thread)
102
+ * @param type
103
+ * @param payload
104
+ */
95
105
  static postMessage(type, payload) {
96
106
  const data = { source: "loaders.gl", type, payload };
97
107
  const transferList = getTransferList(payload);
@@ -123,6 +133,7 @@
123
133
  loader,
124
134
  arrayBuffer: input,
125
135
  options,
136
+ // @ts-expect-error fetch missing
126
137
  context: {
127
138
  ...context,
128
139
  _parse: parseOnMainThread
@@ -324,6 +335,7 @@
324
335
  header,
325
336
  schema,
326
337
  mode: 0,
338
+ // POINTS
327
339
  topology: "point-list",
328
340
  attributes
329
341
  };
@@ -344,6 +356,7 @@
344
356
  function getMeshAttributes(attributes) {
345
357
  const normalizedAttributes = {
346
358
  POSITION: {
359
+ // Binary PCD is only 32 bit
347
360
  value: new Float32Array(attributes.position),
348
361
  size: 3
349
362
  }
@@ -527,32 +540,72 @@
527
540
  const sizes = new Uint32Array(data.slice(pcdHeader.headerLen, pcdHeader.headerLen + 8));
528
541
  const compressedSize = sizes[0];
529
542
  const decompressedSize = sizes[1];
530
- const decompressed = decompressLZF(new Uint8Array(data, pcdHeader.headerLen + 8, compressedSize), decompressedSize);
543
+ const decompressed = decompressLZF(
544
+ new Uint8Array(data, pcdHeader.headerLen + 8, compressedSize),
545
+ decompressedSize
546
+ );
531
547
  const dataview = new DataView(decompressed.buffer);
532
548
  const offset = pcdHeader.offset;
533
549
  for (let i = 0; i < pcdHeader.points; i++) {
534
550
  if (offset.x !== void 0) {
535
- position.push(dataview.getFloat32(pcdHeader.points * offset.x + pcdHeader.size[0] * i, LITTLE_ENDIAN));
536
- position.push(dataview.getFloat32(pcdHeader.points * offset.y + pcdHeader.size[1] * i, LITTLE_ENDIAN));
537
- position.push(dataview.getFloat32(pcdHeader.points * offset.z + pcdHeader.size[2] * i, LITTLE_ENDIAN));
551
+ position.push(
552
+ dataview.getFloat32(pcdHeader.points * offset.x + pcdHeader.size[0] * i, LITTLE_ENDIAN)
553
+ );
554
+ position.push(
555
+ dataview.getFloat32(pcdHeader.points * offset.y + pcdHeader.size[1] * i, LITTLE_ENDIAN)
556
+ );
557
+ position.push(
558
+ dataview.getFloat32(pcdHeader.points * offset.z + pcdHeader.size[2] * i, LITTLE_ENDIAN)
559
+ );
538
560
  }
539
561
  if (offset.rgb !== void 0) {
540
- color.push(dataview.getUint8(pcdHeader.points * offset.rgb + pcdHeader.size[3] * i + 0) / 255);
541
- color.push(dataview.getUint8(pcdHeader.points * offset.rgb + pcdHeader.size[3] * i + 1) / 255);
542
- color.push(dataview.getUint8(pcdHeader.points * offset.rgb + pcdHeader.size[3] * i + 2) / 255);
562
+ color.push(
563
+ dataview.getUint8(pcdHeader.points * offset.rgb + pcdHeader.size[3] * i + 0) / 255
564
+ );
565
+ color.push(
566
+ dataview.getUint8(pcdHeader.points * offset.rgb + pcdHeader.size[3] * i + 1) / 255
567
+ );
568
+ color.push(
569
+ dataview.getUint8(pcdHeader.points * offset.rgb + pcdHeader.size[3] * i + 2) / 255
570
+ );
543
571
  }
544
572
  if (offset.normal_x !== void 0) {
545
- normal.push(dataview.getFloat32(pcdHeader.points * offset.normal_x + pcdHeader.size[4] * i, LITTLE_ENDIAN));
546
- normal.push(dataview.getFloat32(pcdHeader.points * offset.normal_y + pcdHeader.size[5] * i, LITTLE_ENDIAN));
547
- normal.push(dataview.getFloat32(pcdHeader.points * offset.normal_z + pcdHeader.size[6] * i, LITTLE_ENDIAN));
573
+ normal.push(
574
+ dataview.getFloat32(
575
+ pcdHeader.points * offset.normal_x + pcdHeader.size[4] * i,
576
+ LITTLE_ENDIAN
577
+ )
578
+ );
579
+ normal.push(
580
+ dataview.getFloat32(
581
+ pcdHeader.points * offset.normal_y + pcdHeader.size[5] * i,
582
+ LITTLE_ENDIAN
583
+ )
584
+ );
585
+ normal.push(
586
+ dataview.getFloat32(
587
+ pcdHeader.points * offset.normal_z + pcdHeader.size[6] * i,
588
+ LITTLE_ENDIAN
589
+ )
590
+ );
548
591
  }
549
592
  if (offset.intensity !== void 0) {
550
593
  const intensityIndex = pcdHeader.fields.indexOf("intensity");
551
- intensity.push(dataview.getFloat32(pcdHeader.points * offset.intensity + pcdHeader.size[intensityIndex] * i, LITTLE_ENDIAN));
594
+ intensity.push(
595
+ dataview.getFloat32(
596
+ pcdHeader.points * offset.intensity + pcdHeader.size[intensityIndex] * i,
597
+ LITTLE_ENDIAN
598
+ )
599
+ );
552
600
  }
553
601
  if (offset.label !== void 0) {
554
602
  const labelIndex = pcdHeader.fields.indexOf("label");
555
- label.push(dataview.getInt32(pcdHeader.points * offset.label + pcdHeader.size[labelIndex] * i, LITTLE_ENDIAN));
603
+ label.push(
604
+ dataview.getInt32(
605
+ pcdHeader.points * offset.label + pcdHeader.size[labelIndex] * i,
606
+ LITTLE_ENDIAN
607
+ )
608
+ );
556
609
  }
557
610
  }
558
611
  return {
@@ -565,7 +618,7 @@
565
618
  }
566
619
 
567
620
  // src/pcd-loader.ts
568
- var VERSION = true ? "4.0.0-beta.2" : "latest";
621
+ var VERSION = true ? "4.0.0-beta.3" : "latest";
569
622
  var PCDLoader = {
570
623
  name: "PCD (Point Cloud Data)",
571
624
  id: "pcd",
@@ -1,4 +1,4 @@
1
1
  import { createLoaderWorker } from '@loaders.gl/loader-utils';
2
- import { PCDLoader } from '../index';
2
+ import { PCDLoader } from "../index.js";
3
3
  createLoaderWorker(PCDLoader);
4
4
  //# sourceMappingURL=pcd-worker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pcd-worker.js","names":["createLoaderWorker","PCDLoader"],"sources":["../../src/workers/pcd-worker.ts"],"sourcesContent":["import {createLoaderWorker} from '@loaders.gl/loader-utils';\nimport {PCDLoader} from '../index';\n\ncreateLoaderWorker(PCDLoader);\n"],"mappings":"AAAA,SAAQA,kBAAkB,QAAO,0BAA0B;AAAC,SACpDC,SAAS;AAEjBD,kBAAkB,CAACC,SAAS,CAAC"}
package/package.json CHANGED
@@ -1,8 +1,9 @@
1
1
  {
2
2
  "name": "@loaders.gl/pcd",
3
- "version": "4.0.0-beta.2",
3
+ "version": "4.0.0-beta.3",
4
4
  "description": "Framework-independent loader for the PCD format",
5
5
  "license": "MIT",
6
+ "type": "module",
6
7
  "publishConfig": {
7
8
  "access": "public"
8
9
  },
@@ -19,8 +20,15 @@
19
20
  "PCD"
20
21
  ],
21
22
  "types": "dist/index.d.ts",
22
- "main": "dist/es5/index.js",
23
- "module": "dist/esm/index.js",
23
+ "main": "dist/index.cjs",
24
+ "module": "dist/index.js",
25
+ "exports": {
26
+ ".": {
27
+ "import": "./dist/index.js",
28
+ "require": "./dist/index.cjs",
29
+ "types": "./dist/index.d.ts"
30
+ }
31
+ },
24
32
  "sideEffects": false,
25
33
  "files": [
26
34
  "src",
@@ -28,13 +36,13 @@
28
36
  "README.md"
29
37
  ],
30
38
  "scripts": {
31
- "pre-build": "npm run build-worker && npm run build-bundle",
32
- "build-bundle": "esbuild src/bundle.ts --bundle --outfile=dist/dist.min.js",
39
+ "pre-build": "npm run build-worker && npm run build-bundle && npm run build-bundle -- --env=dev",
40
+ "build-bundle": "ocular-bundle ./src/index.ts",
33
41
  "build-worker": "esbuild src/workers/pcd-worker.ts --bundle --outfile=dist/pcd-worker.js --define:__VERSION__=\\\"$npm_package_version\\\""
34
42
  },
35
43
  "dependencies": {
36
- "@loaders.gl/loader-utils": "4.0.0-beta.2",
37
- "@loaders.gl/schema": "4.0.0-beta.2"
44
+ "@loaders.gl/loader-utils": "4.0.0-beta.3",
45
+ "@loaders.gl/schema": "4.0.0-beta.3"
38
46
  },
39
- "gitHead": "79c2033f755e88e11bc30a04428e3666b177b8fc"
47
+ "gitHead": "7ba9621cc51c7a26c407086ac86171f35b8712af"
40
48
  }
package/dist/bundle.d.ts DELETED
@@ -1,2 +0,0 @@
1
- declare const moduleExports: any;
2
- //# sourceMappingURL=bundle.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"bundle.d.ts","sourceRoot":"","sources":["../src/bundle.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,aAAa,KAAqB,CAAC"}
@@ -1,6 +0,0 @@
1
- "use strict";
2
-
3
- var moduleExports = require('./index');
4
- globalThis.loaders = globalThis.loaders || {};
5
- module.exports = Object.assign(globalThis.loaders, moduleExports);
6
- //# sourceMappingURL=bundle.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"bundle.js","names":["moduleExports","require","globalThis","loaders","module","exports","Object","assign"],"sources":["../../src/bundle.ts"],"sourcesContent":["// @ts-nocheck\nconst moduleExports = require('./index');\nglobalThis.loaders = globalThis.loaders || {};\nmodule.exports = Object.assign(globalThis.loaders, moduleExports);\n"],"mappings":";;AACA,IAAMA,aAAa,GAAGC,OAAO,CAAC,SAAS,CAAC;AACxCC,UAAU,CAACC,OAAO,GAAGD,UAAU,CAACC,OAAO,IAAI,CAAC,CAAC;AAC7CC,MAAM,CAACC,OAAO,GAAGC,MAAM,CAACC,MAAM,CAACL,UAAU,CAACC,OAAO,EAAEH,aAAa,CAAC"}
package/dist/es5/index.js DELETED
@@ -1,42 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.PCDLoader = void 0;
8
- Object.defineProperty(exports, "PCDWorkerLoader", {
9
- enumerable: true,
10
- get: function get() {
11
- return _pcdLoader.PCDLoader;
12
- }
13
- });
14
- var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
15
- var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
16
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
17
- var _parsePcd = _interopRequireDefault(require("./lib/parse-pcd"));
18
- var _pcdLoader = require("./pcd-loader");
19
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
20
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
21
- var PCDLoader = _objectSpread(_objectSpread({}, _pcdLoader.PCDLoader), {}, {
22
- parse: function () {
23
- var _parse = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee(arrayBuffer) {
24
- return _regenerator.default.wrap(function _callee$(_context) {
25
- while (1) switch (_context.prev = _context.next) {
26
- case 0:
27
- return _context.abrupt("return", (0, _parsePcd.default)(arrayBuffer));
28
- case 1:
29
- case "end":
30
- return _context.stop();
31
- }
32
- }, _callee);
33
- }));
34
- function parse(_x) {
35
- return _parse.apply(this, arguments);
36
- }
37
- return parse;
38
- }(),
39
- parseSync: _parsePcd.default
40
- });
41
- exports.PCDLoader = PCDLoader;
42
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","names":["_parsePcd","_interopRequireDefault","require","_pcdLoader","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty2","default","getOwnPropertyDescriptors","defineProperties","defineProperty","PCDLoader","PCDWorkerLoader","parse","_parse","_asyncToGenerator2","_regenerator","mark","_callee","arrayBuffer","wrap","_callee$","_context","prev","next","abrupt","parsePCDSync","stop","_x","parseSync","exports"],"sources":["../../src/index.ts"],"sourcesContent":["import type {LoaderOptions, LoaderWithParser} from '@loaders.gl/loader-utils';\nimport parsePCDSync from './lib/parse-pcd';\nimport {PCDLoader as PCDWorkerLoader} from './pcd-loader';\nimport {PCDMesh} from './lib/pcd-types';\n\nexport {PCDWorkerLoader};\n\n/**\n * Loader for PCD - Point Cloud Data\n */\nexport const PCDLoader: LoaderWithParser<PCDMesh, never, LoaderOptions> = {\n ...PCDWorkerLoader,\n parse: async (arrayBuffer) => parsePCDSync(arrayBuffer),\n parseSync: parsePCDSync\n};\n"],"mappings":";;;;;;;;;;;;;;;;AACA,IAAAA,SAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAD,OAAA;AAA0D,SAAAE,QAAAC,MAAA,EAAAC,cAAA,QAAAC,IAAA,GAAAC,MAAA,CAAAD,IAAA,CAAAF,MAAA,OAAAG,MAAA,CAAAC,qBAAA,QAAAC,OAAA,GAAAF,MAAA,CAAAC,qBAAA,CAAAJ,MAAA,GAAAC,cAAA,KAAAI,OAAA,GAAAA,OAAA,CAAAC,MAAA,WAAAC,GAAA,WAAAJ,MAAA,CAAAK,wBAAA,CAAAR,MAAA,EAAAO,GAAA,EAAAE,UAAA,OAAAP,IAAA,CAAAQ,IAAA,CAAAC,KAAA,CAAAT,IAAA,EAAAG,OAAA,YAAAH,IAAA;AAAA,SAAAU,cAAAC,MAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAF,CAAA,UAAAG,MAAA,WAAAF,SAAA,CAAAD,CAAA,IAAAC,SAAA,CAAAD,CAAA,QAAAA,CAAA,OAAAf,OAAA,CAAAI,MAAA,CAAAc,MAAA,OAAAC,OAAA,WAAAC,GAAA,QAAAC,gBAAA,CAAAC,OAAA,EAAAR,MAAA,EAAAM,GAAA,EAAAF,MAAA,CAAAE,GAAA,SAAAhB,MAAA,CAAAmB,yBAAA,GAAAnB,MAAA,CAAAoB,gBAAA,CAAAV,MAAA,EAAAV,MAAA,CAAAmB,yBAAA,CAAAL,MAAA,KAAAlB,OAAA,CAAAI,MAAA,CAAAc,MAAA,GAAAC,OAAA,WAAAC,GAAA,IAAAhB,MAAA,CAAAqB,cAAA,CAAAX,MAAA,EAAAM,GAAA,EAAAhB,MAAA,CAAAK,wBAAA,CAAAS,MAAA,EAAAE,GAAA,iBAAAN,MAAA;AAQnD,IAAMY,SAA0D,GAAAb,aAAA,CAAAA,aAAA,KAClEc,oBAAe;EAClBC,KAAK;IAAA,IAAAC,MAAA,OAAAC,kBAAA,CAAAR,OAAA,EAAAS,YAAA,CAAAT,OAAA,CAAAU,IAAA,CAAE,SAAAC,QAAOC,WAAW;MAAA,OAAAH,YAAA,CAAAT,OAAA,CAAAa,IAAA,UAAAC,SAAAC,QAAA;QAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;UAAA;YAAA,OAAAF,QAAA,CAAAG,MAAA,WAAK,IAAAC,iBAAY,EAACP,WAAW,CAAC;UAAA;UAAA;YAAA,OAAAG,QAAA,CAAAK,IAAA;QAAA;MAAA,GAAAT,OAAA;IAAA;IAAA,SAAAL,MAAAe,EAAA;MAAA,OAAAd,MAAA,CAAAjB,KAAA,OAAAI,SAAA;IAAA;IAAA,OAAAY,KAAA;EAAA;EACvDgB,SAAS,EAAEH;AAAY,EACxB;AAACI,OAAA,CAAAnB,SAAA,GAAAA,SAAA"}
@@ -1,57 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.decompressLZF = decompressLZF;
7
- function decompressLZF(inData, outLength) {
8
- var inLength = inData.length;
9
- var outData = new Uint8Array(outLength);
10
- var inPtr = 0;
11
- var outPtr = 0;
12
- var ctrl;
13
- var len;
14
- var ref;
15
- do {
16
- ctrl = inData[inPtr++];
17
- if (ctrl < 1 << 5) {
18
- ctrl++;
19
- if (outPtr + ctrl > outLength) {
20
- throw new Error('Output buffer is not large enough');
21
- }
22
- if (inPtr + ctrl > inLength) {
23
- throw new Error('Invalid compressed data');
24
- }
25
- do {
26
- outData[outPtr++] = inData[inPtr++];
27
- } while (--ctrl);
28
- } else {
29
- len = ctrl >> 5;
30
- ref = outPtr - ((ctrl & 0x1f) << 8) - 1;
31
- if (inPtr >= inLength) {
32
- throw new Error('Invalid compressed data');
33
- }
34
- if (len === 7) {
35
- len += inData[inPtr++];
36
- if (inPtr >= inLength) {
37
- throw new Error('Invalid compressed data');
38
- }
39
- }
40
- ref -= inData[inPtr++];
41
- if (outPtr + len + 2 > outLength) {
42
- throw new Error('Output buffer is not large enough');
43
- }
44
- if (ref < 0) {
45
- throw new Error('Invalid compressed data');
46
- }
47
- if (ref >= outPtr) {
48
- throw new Error('Invalid compressed data');
49
- }
50
- do {
51
- outData[outPtr++] = outData[ref++];
52
- } while (--len + 2);
53
- }
54
- } while (inPtr < inLength);
55
- return outData;
56
- }
57
- //# sourceMappingURL=decompress-lzf.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"decompress-lzf.js","names":["decompressLZF","inData","outLength","inLength","length","outData","Uint8Array","inPtr","outPtr","ctrl","len","ref","Error"],"sources":["../../../src/lib/decompress-lzf.ts"],"sourcesContent":["/* eslint-disable */\n/**\n * from https://gitlab.com/taketwo/three-pcd-loader/blob/master/decompress-lzf.js\n * @param inData\n * @param outLength\n * @returns\n */\nexport function decompressLZF(inData: Uint8Array, outLength: number): Uint8Array {\n const inLength = inData.length;\n const outData = new Uint8Array(outLength);\n let inPtr = 0;\n let outPtr = 0;\n let ctrl;\n let len;\n let ref;\n\n do {\n ctrl = inData[inPtr++];\n\n if (ctrl < 1 << 5) {\n ctrl++;\n if (outPtr + ctrl > outLength) {\n throw new Error('Output buffer is not large enough');\n }\n if (inPtr + ctrl > inLength) {\n throw new Error('Invalid compressed data');\n }\n\n do {\n outData[outPtr++] = inData[inPtr++];\n } while (--ctrl);\n } else {\n len = ctrl >> 5;\n ref = outPtr - ((ctrl & 0x1f) << 8) - 1;\n if (inPtr >= inLength) {\n throw new Error('Invalid compressed data');\n }\n\n if (len === 7) {\n len += inData[inPtr++];\n if (inPtr >= inLength) {\n throw new Error('Invalid compressed data');\n }\n }\n\n ref -= inData[inPtr++];\n if (outPtr + len + 2 > outLength) {\n throw new Error('Output buffer is not large enough');\n }\n if (ref < 0) {\n throw new Error('Invalid compressed data');\n }\n if (ref >= outPtr) {\n throw new Error('Invalid compressed data');\n }\n\n do {\n outData[outPtr++] = outData[ref++];\n } while (--len + 2);\n }\n } while (inPtr < inLength);\n\n return outData;\n}\n"],"mappings":";;;;;;AAOO,SAASA,aAAaA,CAACC,MAAkB,EAAEC,SAAiB,EAAc;EAC/E,IAAMC,QAAQ,GAAGF,MAAM,CAACG,MAAM;EAC9B,IAAMC,OAAO,GAAG,IAAIC,UAAU,CAACJ,SAAS,CAAC;EACzC,IAAIK,KAAK,GAAG,CAAC;EACb,IAAIC,MAAM,GAAG,CAAC;EACd,IAAIC,IAAI;EACR,IAAIC,GAAG;EACP,IAAIC,GAAG;EAEP,GAAG;IACDF,IAAI,GAAGR,MAAM,CAACM,KAAK,EAAE,CAAC;IAEtB,IAAIE,IAAI,GAAG,CAAC,IAAI,CAAC,EAAE;MACjBA,IAAI,EAAE;MACN,IAAID,MAAM,GAAGC,IAAI,GAAGP,SAAS,EAAE;QAC7B,MAAM,IAAIU,KAAK,CAAC,mCAAmC,CAAC;MACtD;MACA,IAAIL,KAAK,GAAGE,IAAI,GAAGN,QAAQ,EAAE;QAC3B,MAAM,IAAIS,KAAK,CAAC,yBAAyB,CAAC;MAC5C;MAEA,GAAG;QACDP,OAAO,CAACG,MAAM,EAAE,CAAC,GAAGP,MAAM,CAACM,KAAK,EAAE,CAAC;MACrC,CAAC,QAAQ,EAAEE,IAAI;IACjB,CAAC,MAAM;MACLC,GAAG,GAAGD,IAAI,IAAI,CAAC;MACfE,GAAG,GAAGH,MAAM,IAAI,CAACC,IAAI,GAAG,IAAI,KAAK,CAAC,CAAC,GAAG,CAAC;MACvC,IAAIF,KAAK,IAAIJ,QAAQ,EAAE;QACrB,MAAM,IAAIS,KAAK,CAAC,yBAAyB,CAAC;MAC5C;MAEA,IAAIF,GAAG,KAAK,CAAC,EAAE;QACbA,GAAG,IAAIT,MAAM,CAACM,KAAK,EAAE,CAAC;QACtB,IAAIA,KAAK,IAAIJ,QAAQ,EAAE;UACrB,MAAM,IAAIS,KAAK,CAAC,yBAAyB,CAAC;QAC5C;MACF;MAEAD,GAAG,IAAIV,MAAM,CAACM,KAAK,EAAE,CAAC;MACtB,IAAIC,MAAM,GAAGE,GAAG,GAAG,CAAC,GAAGR,SAAS,EAAE;QAChC,MAAM,IAAIU,KAAK,CAAC,mCAAmC,CAAC;MACtD;MACA,IAAID,GAAG,GAAG,CAAC,EAAE;QACX,MAAM,IAAIC,KAAK,CAAC,yBAAyB,CAAC;MAC5C;MACA,IAAID,GAAG,IAAIH,MAAM,EAAE;QACjB,MAAM,IAAII,KAAK,CAAC,yBAAyB,CAAC;MAC5C;MAEA,GAAG;QACDP,OAAO,CAACG,MAAM,EAAE,CAAC,GAAGH,OAAO,CAACM,GAAG,EAAE,CAAC;MACpC,CAAC,QAAQ,EAAED,GAAG,GAAG,CAAC;IACpB;EACF,CAAC,QAAQH,KAAK,GAAGJ,QAAQ;EAEzB,OAAOE,OAAO;AAChB"}
@@ -1,54 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.getPCDSchema = getPCDSchema;
7
- function getPCDSchema(PCDheader, metadata) {
8
- var offset = PCDheader.offset;
9
- var fields = [];
10
- if (offset.x !== undefined) {
11
- fields.push({
12
- name: 'POSITION',
13
- type: {
14
- type: 'fixed-size-list',
15
- listSize: 3,
16
- children: [{
17
- name: 'xyz',
18
- type: 'float32'
19
- }]
20
- }
21
- });
22
- }
23
- if (offset.normal_x !== undefined) {
24
- fields.push({
25
- name: 'NORMAL',
26
- type: {
27
- type: 'fixed-size-list',
28
- listSize: 3,
29
- children: [{
30
- name: 'xyz',
31
- type: 'float32'
32
- }]
33
- }
34
- });
35
- }
36
- if (offset.rgb !== undefined) {
37
- fields.push({
38
- name: 'COLOR_0',
39
- type: {
40
- type: 'fixed-size-list',
41
- listSize: 3,
42
- children: [{
43
- name: 'rgb',
44
- type: 'uint8'
45
- }]
46
- }
47
- });
48
- }
49
- return {
50
- fields: fields,
51
- metadata: metadata
52
- };
53
- }
54
- //# sourceMappingURL=get-pcd-schema.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"get-pcd-schema.js","names":["getPCDSchema","PCDheader","metadata","offset","fields","x","undefined","push","name","type","listSize","children","normal_x","rgb"],"sources":["../../../src/lib/get-pcd-schema.ts"],"sourcesContent":["import {Schema, Field} from '@loaders.gl/schema';\nimport type {PCDHeader} from './pcd-types';\n\n/**\n * Gets schema from PCD header\n * @param PCDheader\n * @param metadata\n * @returns Schema\n */\nexport function getPCDSchema(PCDheader: PCDHeader, metadata: Record<string, string>): Schema {\n const offset = PCDheader.offset;\n\n const fields: Field[] = [];\n\n if (offset.x !== undefined) {\n fields.push({\n name: 'POSITION',\n type: {type: 'fixed-size-list', listSize: 3, children: [{name: 'xyz', type: 'float32'}]}\n });\n }\n\n if (offset.normal_x !== undefined) {\n fields.push({\n name: 'NORMAL',\n type: {type: 'fixed-size-list', listSize: 3, children: [{name: 'xyz', type: 'float32'}]}\n });\n }\n\n if (offset.rgb !== undefined) {\n fields.push({\n name: 'COLOR_0',\n type: {type: 'fixed-size-list', listSize: 3, children: [{name: 'rgb', type: 'uint8'}]}\n });\n }\n\n return {fields, metadata};\n}\n"],"mappings":";;;;;;AASO,SAASA,YAAYA,CAACC,SAAoB,EAAEC,QAAgC,EAAU;EAC3F,IAAMC,MAAM,GAAGF,SAAS,CAACE,MAAM;EAE/B,IAAMC,MAAe,GAAG,EAAE;EAE1B,IAAID,MAAM,CAACE,CAAC,KAAKC,SAAS,EAAE;IAC1BF,MAAM,CAACG,IAAI,CAAC;MACVC,IAAI,EAAE,UAAU;MAChBC,IAAI,EAAE;QAACA,IAAI,EAAE,iBAAiB;QAAEC,QAAQ,EAAE,CAAC;QAAEC,QAAQ,EAAE,CAAC;UAACH,IAAI,EAAE,KAAK;UAAEC,IAAI,EAAE;QAAS,CAAC;MAAC;IACzF,CAAC,CAAC;EACJ;EAEA,IAAIN,MAAM,CAACS,QAAQ,KAAKN,SAAS,EAAE;IACjCF,MAAM,CAACG,IAAI,CAAC;MACVC,IAAI,EAAE,QAAQ;MACdC,IAAI,EAAE;QAACA,IAAI,EAAE,iBAAiB;QAAEC,QAAQ,EAAE,CAAC;QAAEC,QAAQ,EAAE,CAAC;UAACH,IAAI,EAAE,KAAK;UAAEC,IAAI,EAAE;QAAS,CAAC;MAAC;IACzF,CAAC,CAAC;EACJ;EAEA,IAAIN,MAAM,CAACU,GAAG,KAAKP,SAAS,EAAE;IAC5BF,MAAM,CAACG,IAAI,CAAC;MACVC,IAAI,EAAE,SAAS;MACfC,IAAI,EAAE;QAACA,IAAI,EAAE,iBAAiB;QAAEC,QAAQ,EAAE,CAAC;QAAEC,QAAQ,EAAE,CAAC;UAACH,IAAI,EAAE,KAAK;UAAEC,IAAI,EAAE;QAAO,CAAC;MAAC;IACvF,CAAC,CAAC;EACJ;EAEA,OAAO;IAACL,MAAM,EAANA,MAAM;IAAEF,QAAQ,EAARA;EAAQ,CAAC;AAC3B"}