@loaders.gl/pcd 3.1.3 → 4.0.0-alpha.5
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.
- package/dist/bundle.js +2 -2
- package/dist/bundle.js.map +1 -0
- package/dist/index.js +8 -17
- package/dist/index.js.map +1 -0
- package/dist/lib/decompress-lzf.js +43 -54
- package/dist/lib/decompress-lzf.js.map +1 -0
- package/dist/lib/get-pcd-schema.js +19 -24
- package/dist/lib/get-pcd-schema.js.map +1 -0
- package/dist/lib/parse-pcd.js +261 -260
- package/dist/lib/parse-pcd.js.map +1 -0
- package/dist/lib/pcd-types.js +2 -2
- package/dist/{es5/lib → lib}/pcd-types.js.map +0 -0
- package/dist/pcd-loader.js +14 -21
- package/dist/pcd-loader.js.map +1 -0
- package/dist/pcd-worker.js +1 -1
- package/dist/workers/pcd-worker.js +4 -5
- package/dist/workers/pcd-worker.js.map +1 -0
- package/package.json +7 -7
- package/dist/es5/bundle.js +0 -7
- package/dist/es5/bundle.js.map +0 -1
- package/dist/es5/index.js +0 -59
- package/dist/es5/index.js.map +0 -1
- package/dist/es5/lib/decompress-lzf.js +0 -51
- package/dist/es5/lib/decompress-lzf.js.map +0 -1
- package/dist/es5/lib/get-pcd-schema.js +0 -28
- package/dist/es5/lib/get-pcd-schema.js.map +0 -1
- package/dist/es5/lib/parse-pcd.js +0 -304
- package/dist/es5/lib/parse-pcd.js.map +0 -1
- package/dist/es5/lib/pcd-types.js +0 -2
- package/dist/es5/pcd-loader.js +0 -23
- package/dist/es5/pcd-loader.js.map +0 -1
- package/dist/es5/workers/pcd-worker.js +0 -8
- package/dist/es5/workers/pcd-worker.js.map +0 -1
- package/dist/esm/bundle.js +0 -5
- package/dist/esm/bundle.js.map +0 -1
- package/dist/esm/index.js +0 -9
- package/dist/esm/index.js.map +0 -1
- package/dist/esm/lib/decompress-lzf.js +0 -44
- package/dist/esm/lib/decompress-lzf.js.map +0 -1
- package/dist/esm/lib/get-pcd-schema.js +0 -20
- package/dist/esm/lib/get-pcd-schema.js.map +0 -1
- package/dist/esm/lib/parse-pcd.js +0 -289
- package/dist/esm/lib/parse-pcd.js.map +0 -1
- package/dist/esm/lib/pcd-types.js +0 -2
- package/dist/esm/lib/pcd-types.js.map +0 -1
- package/dist/esm/pcd-loader.js +0 -15
- package/dist/esm/pcd-loader.js.map +0 -1
- package/dist/esm/workers/pcd-worker.js +0 -4
- package/dist/esm/workers/pcd-worker.js.map +0 -1
package/dist/bundle.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/bundle.ts"],"names":["moduleExports","require","globalThis","loaders","module","exports","Object","assign"],"mappings":"AACA,MAAMA,aAAa,GAAGC,OAAO,CAAC,SAAD,CAA7B;;AACAC,UAAU,CAACC,OAAX,GAAqBD,UAAU,CAACC,OAAX,IAAsB,EAA3C;AACAC,MAAM,CAACC,OAAP,GAAiBC,MAAM,CAACC,MAAP,CAAcL,UAAU,CAACC,OAAzB,EAAkCH,aAAlC,CAAjB","sourcesContent":["// @ts-nocheck\nconst moduleExports = require('./index');\nglobalThis.loaders = globalThis.loaders || {};\nmodule.exports = Object.assign(globalThis.loaders, moduleExports);\n"],"file":"bundle.js"}
|
package/dist/index.js
CHANGED
|
@@ -1,18 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import parsePCDSync from './lib/parse-pcd';
|
|
2
|
+
import { PCDLoader as PCDWorkerLoader } from './pcd-loader';
|
|
3
|
+
export { PCDWorkerLoader };
|
|
4
|
+
export const PCDLoader = { ...PCDWorkerLoader,
|
|
5
|
+
parse: async arrayBuffer => parsePCDSync(arrayBuffer),
|
|
6
|
+
parseSync: parsePCDSync
|
|
4
7
|
};
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
const parse_pcd_1 = __importDefault(require("./lib/parse-pcd"));
|
|
8
|
-
const pcd_loader_1 = require("./pcd-loader");
|
|
9
|
-
Object.defineProperty(exports, "PCDWorkerLoader", { enumerable: true, get: function () { return pcd_loader_1.PCDLoader; } });
|
|
10
|
-
/**
|
|
11
|
-
* Loader for PCD - Point Cloud Data
|
|
12
|
-
*/
|
|
13
|
-
exports.PCDLoader = {
|
|
14
|
-
...pcd_loader_1.PCDLoader,
|
|
15
|
-
parse: async (arrayBuffer) => (0, parse_pcd_1.default)(arrayBuffer),
|
|
16
|
-
parseSync: parse_pcd_1.default
|
|
17
|
-
};
|
|
18
|
-
exports._typecheckPCDLoader = exports.PCDLoader;
|
|
8
|
+
export const _typecheckPCDLoader = PCDLoader;
|
|
9
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/index.ts"],"names":["parsePCDSync","PCDLoader","PCDWorkerLoader","parse","arrayBuffer","parseSync","_typecheckPCDLoader"],"mappings":"AACA,OAAOA,YAAP,MAAyB,iBAAzB;AACA,SAAQC,SAAS,IAAIC,eAArB,QAA2C,cAA3C;AAEA,SAAQA,eAAR;AAKA,OAAO,MAAMD,SAAS,GAAG,EACvB,GAAGC,eADoB;AAEvBC,EAAAA,KAAK,EAAE,MAAOC,WAAP,IAAuBJ,YAAY,CAACI,WAAD,CAFnB;AAGvBC,EAAAA,SAAS,EAAEL;AAHY,CAAlB;AAMP,OAAO,MAAMM,mBAAqC,GAAGL,SAA9C","sourcesContent":["import type {LoaderWithParser} from '@loaders.gl/loader-utils';\nimport parsePCDSync from './lib/parse-pcd';\nimport {PCDLoader as PCDWorkerLoader} from './pcd-loader';\n\nexport {PCDWorkerLoader};\n\n/**\n * Loader for PCD - Point Cloud Data\n */\nexport const PCDLoader = {\n ...PCDWorkerLoader,\n parse: async (arrayBuffer) => parsePCDSync(arrayBuffer),\n parseSync: parsePCDSync\n};\n\nexport const _typecheckPCDLoader: LoaderWithParser = PCDLoader;\n"],"file":"index.js"}
|
|
@@ -1,55 +1,44 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
throw new Error('Output buffer is not large enough');
|
|
44
|
-
if (ref < 0)
|
|
45
|
-
throw new Error('Invalid compressed data');
|
|
46
|
-
if (ref >= outPtr)
|
|
47
|
-
throw new Error('Invalid compressed data');
|
|
48
|
-
do {
|
|
49
|
-
outData[outPtr++] = outData[ref++];
|
|
50
|
-
} while (--len + 2);
|
|
51
|
-
}
|
|
52
|
-
} while (inPtr < inLength);
|
|
53
|
-
return outData;
|
|
1
|
+
export function decompressLZF(inData, outLength) {
|
|
2
|
+
const inLength = inData.length;
|
|
3
|
+
const outData = new Uint8Array(outLength);
|
|
4
|
+
let inPtr = 0;
|
|
5
|
+
let outPtr = 0;
|
|
6
|
+
let ctrl;
|
|
7
|
+
let len;
|
|
8
|
+
let ref;
|
|
9
|
+
|
|
10
|
+
do {
|
|
11
|
+
ctrl = inData[inPtr++];
|
|
12
|
+
|
|
13
|
+
if (ctrl < 1 << 5) {
|
|
14
|
+
ctrl++;
|
|
15
|
+
if (outPtr + ctrl > outLength) throw new Error('Output buffer is not large enough');
|
|
16
|
+
if (inPtr + ctrl > inLength) throw new Error('Invalid compressed data');
|
|
17
|
+
|
|
18
|
+
do {
|
|
19
|
+
outData[outPtr++] = inData[inPtr++];
|
|
20
|
+
} while (--ctrl);
|
|
21
|
+
} else {
|
|
22
|
+
len = ctrl >> 5;
|
|
23
|
+
ref = outPtr - ((ctrl & 0x1f) << 8) - 1;
|
|
24
|
+
if (inPtr >= inLength) throw new Error('Invalid compressed data');
|
|
25
|
+
|
|
26
|
+
if (len === 7) {
|
|
27
|
+
len += inData[inPtr++];
|
|
28
|
+
if (inPtr >= inLength) throw new Error('Invalid compressed data');
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
ref -= inData[inPtr++];
|
|
32
|
+
if (outPtr + len + 2 > outLength) throw new Error('Output buffer is not large enough');
|
|
33
|
+
if (ref < 0) throw new Error('Invalid compressed data');
|
|
34
|
+
if (ref >= outPtr) throw new Error('Invalid compressed data');
|
|
35
|
+
|
|
36
|
+
do {
|
|
37
|
+
outData[outPtr++] = outData[ref++];
|
|
38
|
+
} while (--len + 2);
|
|
39
|
+
}
|
|
40
|
+
} while (inPtr < inLength);
|
|
41
|
+
|
|
42
|
+
return outData;
|
|
54
43
|
}
|
|
55
|
-
|
|
44
|
+
//# sourceMappingURL=decompress-lzf.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/lib/decompress-lzf.ts"],"names":["decompressLZF","inData","outLength","inLength","length","outData","Uint8Array","inPtr","outPtr","ctrl","len","ref","Error"],"mappings":"AAOA,OAAO,SAASA,aAAT,CAAuBC,MAAvB,EAA2CC,SAA3C,EAA0E;AAC/E,QAAMC,QAAQ,GAAGF,MAAM,CAACG,MAAxB;AACA,QAAMC,OAAO,GAAG,IAAIC,UAAJ,CAAeJ,SAAf,CAAhB;AACA,MAAIK,KAAK,GAAG,CAAZ;AACA,MAAIC,MAAM,GAAG,CAAb;AACA,MAAIC,IAAJ;AACA,MAAIC,GAAJ;AACA,MAAIC,GAAJ;;AAEA,KAAG;AACDF,IAAAA,IAAI,GAAGR,MAAM,CAACM,KAAK,EAAN,CAAb;;AAEA,QAAIE,IAAI,GAAG,KAAK,CAAhB,EAAmB;AACjBA,MAAAA,IAAI;AACJ,UAAID,MAAM,GAAGC,IAAT,GAAgBP,SAApB,EAA+B,MAAM,IAAIU,KAAJ,CAAU,mCAAV,CAAN;AAC/B,UAAIL,KAAK,GAAGE,IAAR,GAAeN,QAAnB,EAA6B,MAAM,IAAIS,KAAJ,CAAU,yBAAV,CAAN;;AAE7B,SAAG;AACDP,QAAAA,OAAO,CAACG,MAAM,EAAP,CAAP,GAAoBP,MAAM,CAACM,KAAK,EAAN,CAA1B;AACD,OAFD,QAES,EAAEE,IAFX;AAGD,KARD,MAQO;AACLC,MAAAA,GAAG,GAAGD,IAAI,IAAI,CAAd;AACAE,MAAAA,GAAG,GAAGH,MAAM,IAAI,CAACC,IAAI,GAAG,IAAR,KAAiB,CAArB,CAAN,GAAgC,CAAtC;AACA,UAAIF,KAAK,IAAIJ,QAAb,EAAuB,MAAM,IAAIS,KAAJ,CAAU,yBAAV,CAAN;;AAEvB,UAAIF,GAAG,KAAK,CAAZ,EAAe;AACbA,QAAAA,GAAG,IAAIT,MAAM,CAACM,KAAK,EAAN,CAAb;AACA,YAAIA,KAAK,IAAIJ,QAAb,EAAuB,MAAM,IAAIS,KAAJ,CAAU,yBAAV,CAAN;AACxB;;AAEDD,MAAAA,GAAG,IAAIV,MAAM,CAACM,KAAK,EAAN,CAAb;AACA,UAAIC,MAAM,GAAGE,GAAT,GAAe,CAAf,GAAmBR,SAAvB,EAAkC,MAAM,IAAIU,KAAJ,CAAU,mCAAV,CAAN;AAClC,UAAID,GAAG,GAAG,CAAV,EAAa,MAAM,IAAIC,KAAJ,CAAU,yBAAV,CAAN;AACb,UAAID,GAAG,IAAIH,MAAX,EAAmB,MAAM,IAAII,KAAJ,CAAU,yBAAV,CAAN;;AAEnB,SAAG;AACDP,QAAAA,OAAO,CAACG,MAAM,EAAP,CAAP,GAAoBH,OAAO,CAACM,GAAG,EAAJ,CAA3B;AACD,OAFD,QAES,EAAED,GAAF,GAAQ,CAFjB;AAGD;AACF,GA9BD,QA8BSH,KAAK,GAAGJ,QA9BjB;;AAgCA,SAAOE,OAAP;AACD","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) throw new Error('Output buffer is not large enough');\n if (inPtr + ctrl > inLength) throw new Error('Invalid compressed data');\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) throw new Error('Invalid compressed data');\n\n if (len === 7) {\n len += inData[inPtr++];\n if (inPtr >= inLength) throw new Error('Invalid compressed data');\n }\n\n ref -= inData[inPtr++];\n if (outPtr + len + 2 > outLength) throw new Error('Output buffer is not large enough');\n if (ref < 0) throw new Error('Invalid compressed data');\n if (ref >= outPtr) throw new Error('Invalid compressed data');\n\n do {\n outData[outPtr++] = outData[ref++];\n } while (--len + 2);\n }\n } while (inPtr < inLength);\n\n return outData;\n}\n"],"file":"decompress-lzf.js"}
|
|
@@ -1,25 +1,20 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
}
|
|
20
|
-
if (offset.rgb !== undefined) {
|
|
21
|
-
fields.push(new schema_1.Field('COLOR_0', new schema_1.FixedSizeList(3, new schema_1.Field('rgb', new schema_1.Uint8())), false));
|
|
22
|
-
}
|
|
23
|
-
return new schema_1.Schema(fields, metadata);
|
|
1
|
+
import { Schema, Field, Float32, Uint8, FixedSizeList } from '@loaders.gl/schema';
|
|
2
|
+
export function getPCDSchema(PCDheader, metadata) {
|
|
3
|
+
const offset = PCDheader.offset;
|
|
4
|
+
const fields = [];
|
|
5
|
+
|
|
6
|
+
if (offset.x !== undefined) {
|
|
7
|
+
fields.push(new Field('POSITION', new FixedSizeList(3, new Field('xyz', new Float32())), false));
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
if (offset.normal_x !== undefined) {
|
|
11
|
+
fields.push(new Field('NORMAL', new FixedSizeList(3, new Field('xyz', new Float32())), false));
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
if (offset.rgb !== undefined) {
|
|
15
|
+
fields.push(new Field('COLOR_0', new FixedSizeList(3, new Field('rgb', new Uint8())), false));
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
return new Schema(fields, metadata);
|
|
24
19
|
}
|
|
25
|
-
|
|
20
|
+
//# sourceMappingURL=get-pcd-schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/lib/get-pcd-schema.ts"],"names":["Schema","Field","Float32","Uint8","FixedSizeList","getPCDSchema","PCDheader","metadata","offset","fields","x","undefined","push","normal_x","rgb"],"mappings":"AAAA,SAAQA,MAAR,EAAgBC,KAAhB,EAAuBC,OAAvB,EAAgCC,KAAhC,EAAuCC,aAAvC,QAA2D,oBAA3D;AAWA,OAAO,SAASC,YAAT,CAAsBC,SAAtB,EAA4CC,QAA5C,EAA8E;AACnF,QAAMC,MAAM,GAAGF,SAAS,CAACE,MAAzB;AAEA,QAAMC,MAAe,GAAG,EAAxB;;AAEA,MAAID,MAAM,CAACE,CAAP,KAAaC,SAAjB,EAA4B;AAC1BF,IAAAA,MAAM,CAACG,IAAP,CACE,IAAIX,KAAJ,CAAU,UAAV,EAAsB,IAAIG,aAAJ,CAAkB,CAAlB,EAAqB,IAAIH,KAAJ,CAAU,KAAV,EAAiB,IAAIC,OAAJ,EAAjB,CAArB,CAAtB,EAA6E,KAA7E,CADF;AAGD;;AAED,MAAIM,MAAM,CAACK,QAAP,KAAoBF,SAAxB,EAAmC;AACjCF,IAAAA,MAAM,CAACG,IAAP,CAAY,IAAIX,KAAJ,CAAU,QAAV,EAAoB,IAAIG,aAAJ,CAAkB,CAAlB,EAAqB,IAAIH,KAAJ,CAAU,KAAV,EAAiB,IAAIC,OAAJ,EAAjB,CAArB,CAApB,EAA2E,KAA3E,CAAZ;AACD;;AAED,MAAIM,MAAM,CAACM,GAAP,KAAeH,SAAnB,EAA8B;AAC5BF,IAAAA,MAAM,CAACG,IAAP,CAAY,IAAIX,KAAJ,CAAU,SAAV,EAAqB,IAAIG,aAAJ,CAAkB,CAAlB,EAAqB,IAAIH,KAAJ,CAAU,KAAV,EAAiB,IAAIE,KAAJ,EAAjB,CAArB,CAArB,EAA0E,KAA1E,CAAZ;AACD;;AAED,SAAO,IAAIH,MAAJ,CAAWS,MAAX,EAAmBF,QAAnB,CAAP;AACD","sourcesContent":["import {Schema, Field, Float32, Uint8, FixedSizeList} from '@loaders.gl/schema';\nimport type {PCDHeader} from './pcd-types';\n\ntype SchemaMetadata = Map<string, any>;\n\n/**\n * Gets schema from PCD header\n * @param PCDheader\n * @param metadata\n * @returns Schema\n */\nexport function getPCDSchema(PCDheader: PCDHeader, metadata: SchemaMetadata): Schema {\n const offset = PCDheader.offset;\n\n const fields: Field[] = [];\n\n if (offset.x !== undefined) {\n fields.push(\n new Field('POSITION', new FixedSizeList(3, new Field('xyz', new Float32())), false)\n );\n }\n\n if (offset.normal_x !== undefined) {\n fields.push(new Field('NORMAL', new FixedSizeList(3, new Field('xyz', new Float32())), false));\n }\n\n if (offset.rgb !== undefined) {\n fields.push(new Field('COLOR_0', new FixedSizeList(3, new Field('rgb', new Uint8())), false));\n }\n\n return new Schema(fields, metadata);\n}\n"],"file":"get-pcd-schema.js"}
|