@loaders.gl/terrain 4.0.0-alpha.21 → 4.0.0-alpha.22
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/dist.min.js +44 -33
- package/dist/es5/index.js +2 -1
- package/dist/es5/index.js.map +1 -1
- package/dist/es5/lib/utils/version.js +1 -1
- package/dist/esm/index.js +2 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/lib/utils/version.js +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -1
- package/dist/quantized-mesh-worker.js +15 -5
- package/dist/terrain-worker.js +15 -5
- package/package.json +5 -5
- package/src/index.ts +3 -1
package/dist/dist.min.js
CHANGED
|
@@ -13,6 +13,44 @@
|
|
|
13
13
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
14
14
|
};
|
|
15
15
|
|
|
16
|
+
// ../loader-utils/src/loader-types.ts
|
|
17
|
+
async function parseFromContext(data, loaders, options, context) {
|
|
18
|
+
return context._parse(data, loaders, options, context);
|
|
19
|
+
}
|
|
20
|
+
var init_loader_types = __esm({
|
|
21
|
+
"../loader-utils/src/loader-types.ts"() {
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
|
|
25
|
+
// ../loader-utils/src/lib/binary-utils/array-buffer-utils.ts
|
|
26
|
+
function concatenateTypedArrays(...typedArrays) {
|
|
27
|
+
const arrays = typedArrays;
|
|
28
|
+
const TypedArrayConstructor = arrays && arrays.length > 1 && arrays[0].constructor || null;
|
|
29
|
+
if (!TypedArrayConstructor) {
|
|
30
|
+
throw new Error('"concatenateTypedArrays" - incorrect quantity of arguments or arguments have incompatible data types');
|
|
31
|
+
}
|
|
32
|
+
const sumLength = arrays.reduce((acc, value) => acc + value.length, 0);
|
|
33
|
+
const result = new TypedArrayConstructor(sumLength);
|
|
34
|
+
let offset = 0;
|
|
35
|
+
for (const array of arrays) {
|
|
36
|
+
result.set(array, offset);
|
|
37
|
+
offset += array.length;
|
|
38
|
+
}
|
|
39
|
+
return result;
|
|
40
|
+
}
|
|
41
|
+
var init_array_buffer_utils = __esm({
|
|
42
|
+
"../loader-utils/src/lib/binary-utils/array-buffer-utils.ts"() {
|
|
43
|
+
}
|
|
44
|
+
});
|
|
45
|
+
|
|
46
|
+
// ../loader-utils/src/index.ts
|
|
47
|
+
var init_src = __esm({
|
|
48
|
+
"../loader-utils/src/index.ts"() {
|
|
49
|
+
init_loader_types();
|
|
50
|
+
init_array_buffer_utils();
|
|
51
|
+
}
|
|
52
|
+
});
|
|
53
|
+
|
|
16
54
|
// ../schema/src/lib/mesh/mesh-utils.ts
|
|
17
55
|
function getMeshBoundingBox(attributes) {
|
|
18
56
|
let minX = Infinity;
|
|
@@ -45,7 +83,7 @@
|
|
|
45
83
|
});
|
|
46
84
|
|
|
47
85
|
// ../schema/src/index.ts
|
|
48
|
-
var
|
|
86
|
+
var init_src2 = __esm({
|
|
49
87
|
"../schema/src/index.ts"() {
|
|
50
88
|
init_mesh_utils();
|
|
51
89
|
}
|
|
@@ -260,34 +298,6 @@
|
|
|
260
298
|
}
|
|
261
299
|
});
|
|
262
300
|
|
|
263
|
-
// ../loader-utils/src/lib/binary-utils/array-buffer-utils.ts
|
|
264
|
-
function concatenateTypedArrays(...typedArrays) {
|
|
265
|
-
const arrays = typedArrays;
|
|
266
|
-
const TypedArrayConstructor = arrays && arrays.length > 1 && arrays[0].constructor || null;
|
|
267
|
-
if (!TypedArrayConstructor) {
|
|
268
|
-
throw new Error('"concatenateTypedArrays" - incorrect quantity of arguments or arguments have incompatible data types');
|
|
269
|
-
}
|
|
270
|
-
const sumLength = arrays.reduce((acc, value) => acc + value.length, 0);
|
|
271
|
-
const result = new TypedArrayConstructor(sumLength);
|
|
272
|
-
let offset = 0;
|
|
273
|
-
for (const array of arrays) {
|
|
274
|
-
result.set(array, offset);
|
|
275
|
-
offset += array.length;
|
|
276
|
-
}
|
|
277
|
-
return result;
|
|
278
|
-
}
|
|
279
|
-
var init_array_buffer_utils = __esm({
|
|
280
|
-
"../loader-utils/src/lib/binary-utils/array-buffer-utils.ts"() {
|
|
281
|
-
}
|
|
282
|
-
});
|
|
283
|
-
|
|
284
|
-
// ../loader-utils/src/index.ts
|
|
285
|
-
var init_src2 = __esm({
|
|
286
|
-
"../loader-utils/src/index.ts"() {
|
|
287
|
-
init_array_buffer_utils();
|
|
288
|
-
}
|
|
289
|
-
});
|
|
290
|
-
|
|
291
301
|
// src/lib/helpers/skirt.ts
|
|
292
302
|
function addSkirt(attributes, triangles, skirtHeight, outsideIndices) {
|
|
293
303
|
const outsideEdges = outsideIndices ? getOutsideEdgesFromIndices(outsideIndices, attributes.POSITION.value) : getOutsideEdgesFromTriangles(triangles);
|
|
@@ -376,7 +386,7 @@
|
|
|
376
386
|
}
|
|
377
387
|
var init_skirt = __esm({
|
|
378
388
|
"src/lib/helpers/skirt.ts"() {
|
|
379
|
-
|
|
389
|
+
init_src();
|
|
380
390
|
}
|
|
381
391
|
});
|
|
382
392
|
|
|
@@ -446,7 +456,7 @@
|
|
|
446
456
|
}
|
|
447
457
|
var init_parse_quantized_mesh = __esm({
|
|
448
458
|
"src/lib/parse-quantized-mesh.ts"() {
|
|
449
|
-
|
|
459
|
+
init_src2();
|
|
450
460
|
init_decode_quantized_mesh();
|
|
451
461
|
init_skirt();
|
|
452
462
|
}
|
|
@@ -1056,7 +1066,7 @@
|
|
|
1056
1066
|
}
|
|
1057
1067
|
var init_parse_terrain = __esm({
|
|
1058
1068
|
"src/lib/parse-terrain.ts"() {
|
|
1059
|
-
|
|
1069
|
+
init_src2();
|
|
1060
1070
|
init_martini();
|
|
1061
1071
|
init_delatin();
|
|
1062
1072
|
init_skirt();
|
|
@@ -1140,13 +1150,14 @@
|
|
|
1140
1150
|
mimeType: "application/x.image",
|
|
1141
1151
|
image: { ...options?.image, type: "data" }
|
|
1142
1152
|
};
|
|
1143
|
-
const image = await
|
|
1153
|
+
const image = await parseFromContext(arrayBuffer, [], loadImageOptions, context);
|
|
1144
1154
|
const terrainOptions = { ...TerrainLoader2.options.terrain, ...options?.terrain };
|
|
1145
1155
|
return makeTerrainMeshFromImage(image, terrainOptions);
|
|
1146
1156
|
}
|
|
1147
1157
|
var TerrainLoader2, QuantizedMeshLoader2;
|
|
1148
1158
|
var init_src3 = __esm({
|
|
1149
1159
|
"src/index.ts"() {
|
|
1160
|
+
init_src();
|
|
1150
1161
|
init_parse_quantized_mesh();
|
|
1151
1162
|
init_parse_terrain();
|
|
1152
1163
|
init_terrain_loader();
|
package/dist/es5/index.js
CHANGED
|
@@ -22,6 +22,7 @@ exports.parseTerrain = parseTerrain;
|
|
|
22
22
|
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
23
23
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
24
24
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
25
|
+
var _loaderUtils = require("@loaders.gl/loader-utils");
|
|
25
26
|
var _parseQuantizedMesh = require("./lib/parse-quantized-mesh");
|
|
26
27
|
var _parseTerrain2 = require("./lib/parse-terrain");
|
|
27
28
|
var _terrainLoader = require("./terrain-loader");
|
|
@@ -48,7 +49,7 @@ function _parseTerrain() {
|
|
|
48
49
|
})
|
|
49
50
|
});
|
|
50
51
|
_context2.next = 3;
|
|
51
|
-
return
|
|
52
|
+
return (0, _loaderUtils.parseFromContext)(arrayBuffer, [], loadImageOptions, context);
|
|
52
53
|
case 3:
|
|
53
54
|
image = _context2.sent;
|
|
54
55
|
terrainOptions = _objectSpread(_objectSpread({}, TerrainLoader.options.terrain), options === null || options === void 0 ? void 0 : options.terrain);
|
package/dist/es5/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["
|
|
1
|
+
{"version":3,"file":"index.js","names":["_loaderUtils","require","_parseQuantizedMesh","_parseTerrain2","_terrainLoader","_quantizedMeshLoader","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","TerrainLoader","TerrainWorkerLoader","parse","parseTerrain","exports","_x","_x2","_x3","_parseTerrain","_asyncToGenerator2","_regenerator","mark","_callee2","arrayBuffer","options","context","loadImageOptions","image","terrainOptions","wrap","_callee2$","_context2","prev","next","mimeType","type","parseFromContext","sent","terrain","abrupt","makeTerrainMeshFromImage","stop","QuantizedMeshLoader","QuantizedMeshWorkerLoader","parseSync","parseQuantizedMesh","_parse","_callee","_callee$","_context","_x4","_x5"],"sources":["../../src/index.ts"],"sourcesContent":["import type {LoaderContext, LoaderWithParser} from '@loaders.gl/loader-utils';\nimport {parseFromContext} from '@loaders.gl/loader-utils';\nimport {parseQuantizedMesh} from './lib/parse-quantized-mesh';\nimport {TerrainOptions, makeTerrainMeshFromImage} from './lib/parse-terrain';\n\nimport {TerrainLoader as TerrainWorkerLoader, TerrainLoaderOptions} from './terrain-loader';\nimport {\n QuantizedMeshLoader as QuantizedMeshWorkerLoader,\n QuantizedMeshLoaderOptions\n} from './quantized-mesh-loader';\n\n// TerrainLoader\n\nexport {TerrainWorkerLoader};\n\nexport const TerrainLoader: LoaderWithParser<any, never, TerrainLoaderOptions> = {\n ...TerrainWorkerLoader,\n parse: parseTerrain\n};\n\nexport async function parseTerrain(\n arrayBuffer: ArrayBuffer,\n options?: TerrainLoaderOptions,\n context?: LoaderContext\n) {\n const loadImageOptions = {\n ...options,\n mimeType: 'application/x.image',\n image: {...options?.image, type: 'data'}\n };\n const image = await parseFromContext(arrayBuffer, [], loadImageOptions, context!);\n // Extend function to support additional mesh generation options (square grid or delatin)\n const terrainOptions = {...TerrainLoader.options.terrain, ...options?.terrain} as TerrainOptions;\n // @ts-expect-error sort out image typing asap\n return makeTerrainMeshFromImage(image, terrainOptions);\n}\n\n// QuantizedMeshLoader\n\nexport {QuantizedMeshWorkerLoader};\n\n/**\n * Loader for quantized meshes\n */\nexport const QuantizedMeshLoader: LoaderWithParser<any, never, QuantizedMeshLoaderOptions> = {\n ...QuantizedMeshWorkerLoader,\n parseSync: (arrayBuffer, options) => parseQuantizedMesh(arrayBuffer, options?.['quantized-mesh']),\n parse: async (arrayBuffer, options) =>\n parseQuantizedMesh(arrayBuffer, options?.['quantized-mesh'])\n};\n"],"mappings":"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"}
|
|
@@ -4,6 +4,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.VERSION = void 0;
|
|
7
|
-
var VERSION = typeof "4.0.0-alpha.
|
|
7
|
+
var VERSION = typeof "4.0.0-alpha.22" !== 'undefined' ? "4.0.0-alpha.22" : 'latest';
|
|
8
8
|
exports.VERSION = VERSION;
|
|
9
9
|
//# sourceMappingURL=version.js.map
|
package/dist/esm/index.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { parseFromContext } from '@loaders.gl/loader-utils';
|
|
1
2
|
import { parseQuantizedMesh } from './lib/parse-quantized-mesh';
|
|
2
3
|
import { makeTerrainMeshFromImage } from './lib/parse-terrain';
|
|
3
4
|
import { TerrainLoader as TerrainWorkerLoader } from './terrain-loader';
|
|
@@ -16,7 +17,7 @@ export async function parseTerrain(arrayBuffer, options, context) {
|
|
|
16
17
|
type: 'data'
|
|
17
18
|
}
|
|
18
19
|
};
|
|
19
|
-
const image = await (
|
|
20
|
+
const image = await parseFromContext(arrayBuffer, [], loadImageOptions, context);
|
|
20
21
|
const terrainOptions = {
|
|
21
22
|
...TerrainLoader.options.terrain,
|
|
22
23
|
...(options === null || options === void 0 ? void 0 : options.terrain)
|
package/dist/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["parseQuantizedMesh","makeTerrainMeshFromImage","TerrainLoader","TerrainWorkerLoader","QuantizedMeshLoader","QuantizedMeshWorkerLoader","parse","parseTerrain","arrayBuffer","options","context","loadImageOptions","mimeType","image","type","terrainOptions","terrain","parseSync"],"sources":["../../src/index.ts"],"sourcesContent":["import type {LoaderContext, LoaderWithParser} from '@loaders.gl/loader-utils';\nimport {parseQuantizedMesh} from './lib/parse-quantized-mesh';\nimport {TerrainOptions, makeTerrainMeshFromImage} from './lib/parse-terrain';\n\nimport {TerrainLoader as TerrainWorkerLoader, TerrainLoaderOptions} from './terrain-loader';\nimport {\n QuantizedMeshLoader as QuantizedMeshWorkerLoader,\n QuantizedMeshLoaderOptions\n} from './quantized-mesh-loader';\n\n// TerrainLoader\n\nexport {TerrainWorkerLoader};\n\nexport const TerrainLoader: LoaderWithParser<any, never, TerrainLoaderOptions> = {\n ...TerrainWorkerLoader,\n parse: parseTerrain\n};\n\nexport async function parseTerrain(\n arrayBuffer: ArrayBuffer,\n options?: TerrainLoaderOptions,\n context?: LoaderContext\n) {\n const loadImageOptions = {\n ...options,\n mimeType: 'application/x.image',\n image: {...options?.image, type: 'data'}\n };\n const image = await
|
|
1
|
+
{"version":3,"file":"index.js","names":["parseFromContext","parseQuantizedMesh","makeTerrainMeshFromImage","TerrainLoader","TerrainWorkerLoader","QuantizedMeshLoader","QuantizedMeshWorkerLoader","parse","parseTerrain","arrayBuffer","options","context","loadImageOptions","mimeType","image","type","terrainOptions","terrain","parseSync"],"sources":["../../src/index.ts"],"sourcesContent":["import type {LoaderContext, LoaderWithParser} from '@loaders.gl/loader-utils';\nimport {parseFromContext} from '@loaders.gl/loader-utils';\nimport {parseQuantizedMesh} from './lib/parse-quantized-mesh';\nimport {TerrainOptions, makeTerrainMeshFromImage} from './lib/parse-terrain';\n\nimport {TerrainLoader as TerrainWorkerLoader, TerrainLoaderOptions} from './terrain-loader';\nimport {\n QuantizedMeshLoader as QuantizedMeshWorkerLoader,\n QuantizedMeshLoaderOptions\n} from './quantized-mesh-loader';\n\n// TerrainLoader\n\nexport {TerrainWorkerLoader};\n\nexport const TerrainLoader: LoaderWithParser<any, never, TerrainLoaderOptions> = {\n ...TerrainWorkerLoader,\n parse: parseTerrain\n};\n\nexport async function parseTerrain(\n arrayBuffer: ArrayBuffer,\n options?: TerrainLoaderOptions,\n context?: LoaderContext\n) {\n const loadImageOptions = {\n ...options,\n mimeType: 'application/x.image',\n image: {...options?.image, type: 'data'}\n };\n const image = await parseFromContext(arrayBuffer, [], loadImageOptions, context!);\n // Extend function to support additional mesh generation options (square grid or delatin)\n const terrainOptions = {...TerrainLoader.options.terrain, ...options?.terrain} as TerrainOptions;\n // @ts-expect-error sort out image typing asap\n return makeTerrainMeshFromImage(image, terrainOptions);\n}\n\n// QuantizedMeshLoader\n\nexport {QuantizedMeshWorkerLoader};\n\n/**\n * Loader for quantized meshes\n */\nexport const QuantizedMeshLoader: LoaderWithParser<any, never, QuantizedMeshLoaderOptions> = {\n ...QuantizedMeshWorkerLoader,\n parseSync: (arrayBuffer, options) => parseQuantizedMesh(arrayBuffer, options?.['quantized-mesh']),\n parse: async (arrayBuffer, options) =>\n parseQuantizedMesh(arrayBuffer, options?.['quantized-mesh'])\n};\n"],"mappings":"AACA,SAAQA,gBAAgB,QAAO,0BAA0B;AACzD,SAAQC,kBAAkB,QAAO,4BAA4B;AAC7D,SAAwBC,wBAAwB,QAAO,qBAAqB;AAE5E,SAAQC,aAAa,IAAIC,mBAAmB,QAA6B,kBAAkB;AAC3F,SACEC,mBAAmB,IAAIC,yBAAyB,QAE3C,yBAAyB;AAIhC,SAAQF,mBAAmB;AAE3B,OAAO,MAAMD,aAAiE,GAAG;EAC/E,GAAGC,mBAAmB;EACtBG,KAAK,EAAEC;AACT,CAAC;AAED,OAAO,eAAeA,YAAYA,CAChCC,WAAwB,EACxBC,OAA8B,EAC9BC,OAAuB,EACvB;EACA,MAAMC,gBAAgB,GAAG;IACvB,GAAGF,OAAO;IACVG,QAAQ,EAAE,qBAAqB;IAC/BC,KAAK,EAAE;MAAC,IAAGJ,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEI,KAAK;MAAEC,IAAI,EAAE;IAAM;EACzC,CAAC;EACD,MAAMD,KAAK,GAAG,MAAMd,gBAAgB,CAACS,WAAW,EAAE,EAAE,EAAEG,gBAAgB,EAAED,OAAQ,CAAC;EAEjF,MAAMK,cAAc,GAAG;IAAC,GAAGb,aAAa,CAACO,OAAO,CAACO,OAAO;IAAE,IAAGP,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEO,OAAO;EAAA,CAAmB;EAEhG,OAAOf,wBAAwB,CAACY,KAAK,EAAEE,cAAc,CAAC;AACxD;AAIA,SAAQV,yBAAyB;AAKjC,OAAO,MAAMD,mBAA6E,GAAG;EAC3F,GAAGC,yBAAyB;EAC5BY,SAAS,EAAEA,CAACT,WAAW,EAAEC,OAAO,KAAKT,kBAAkB,CAACQ,WAAW,EAAEC,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAG,gBAAgB,CAAC,CAAC;EACjGH,KAAK,EAAE,MAAAA,CAAOE,WAAW,EAAEC,OAAO,KAChCT,kBAAkB,CAACQ,WAAW,EAAEC,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAG,gBAAgB,CAAC;AAC/D,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export const VERSION = typeof "4.0.0-alpha.
|
|
1
|
+
export const VERSION = typeof "4.0.0-alpha.22" !== 'undefined' ? "4.0.0-alpha.22" : 'latest';
|
|
2
2
|
//# sourceMappingURL=version.js.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,aAAa,EAAE,gBAAgB,EAAC,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,aAAa,EAAE,gBAAgB,EAAC,MAAM,0BAA0B,CAAC;AAK9E,OAAO,EAAC,aAAa,IAAI,mBAAmB,EAAE,oBAAoB,EAAC,MAAM,kBAAkB,CAAC;AAC5F,OAAO,EACL,mBAAmB,IAAI,yBAAyB,EAChD,0BAA0B,EAC3B,MAAM,yBAAyB,CAAC;AAIjC,OAAO,EAAC,mBAAmB,EAAC,CAAC;AAE7B,eAAO,MAAM,aAAa,EAAE,gBAAgB,CAAC,GAAG,EAAE,KAAK,EAAE,oBAAoB,CAG5E,CAAC;AAEF,wBAAsB,YAAY,CAChC,WAAW,EAAE,WAAW,EACxB,OAAO,CAAC,EAAE,oBAAoB,EAC9B,OAAO,CAAC,EAAE,aAAa;;;;;;;;;;;;;;;;;;;;;;;GAYxB;AAID,OAAO,EAAC,yBAAyB,EAAC,CAAC;AAEnC;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,gBAAgB,CAAC,GAAG,EAAE,KAAK,EAAE,0BAA0B,CAKxF,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.QuantizedMeshLoader = exports.QuantizedMeshWorkerLoader = exports.parseTerrain = exports.TerrainLoader = exports.TerrainWorkerLoader = void 0;
|
|
4
|
+
const loader_utils_1 = require("@loaders.gl/loader-utils");
|
|
4
5
|
const parse_quantized_mesh_1 = require("./lib/parse-quantized-mesh");
|
|
5
6
|
const parse_terrain_1 = require("./lib/parse-terrain");
|
|
6
7
|
const terrain_loader_1 = require("./terrain-loader");
|
|
@@ -17,9 +18,10 @@ async function parseTerrain(arrayBuffer, options, context) {
|
|
|
17
18
|
mimeType: 'application/x.image',
|
|
18
19
|
image: { ...options?.image, type: 'data' }
|
|
19
20
|
};
|
|
20
|
-
const image = await
|
|
21
|
+
const image = await (0, loader_utils_1.parseFromContext)(arrayBuffer, [], loadImageOptions, context);
|
|
21
22
|
// Extend function to support additional mesh generation options (square grid or delatin)
|
|
22
23
|
const terrainOptions = { ...exports.TerrainLoader.options.terrain, ...options?.terrain };
|
|
24
|
+
// @ts-expect-error sort out image typing asap
|
|
23
25
|
return (0, parse_terrain_1.makeTerrainMeshFromImage)(image, terrainOptions);
|
|
24
26
|
}
|
|
25
27
|
exports.parseTerrain = parseTerrain;
|
|
@@ -1,4 +1,9 @@
|
|
|
1
1
|
(() => {
|
|
2
|
+
// ../loader-utils/src/loader-types.ts
|
|
3
|
+
async function parseFromContext(data, loaders, options, context) {
|
|
4
|
+
return context._parse(data, loaders, options, context);
|
|
5
|
+
}
|
|
6
|
+
|
|
2
7
|
// ../worker-utils/src/lib/worker-utils/get-transfer-list.ts
|
|
3
8
|
function getTransferList(object, recursive = true, transfers) {
|
|
4
9
|
const transfersSet = transfers || new Set();
|
|
@@ -125,7 +130,7 @@
|
|
|
125
130
|
options,
|
|
126
131
|
context: {
|
|
127
132
|
...context,
|
|
128
|
-
|
|
133
|
+
_parse: parseOnMainThread
|
|
129
134
|
}
|
|
130
135
|
});
|
|
131
136
|
WorkerBody.postMessage("done", { result });
|
|
@@ -138,7 +143,7 @@
|
|
|
138
143
|
}
|
|
139
144
|
};
|
|
140
145
|
}
|
|
141
|
-
function parseOnMainThread(arrayBuffer, options) {
|
|
146
|
+
function parseOnMainThread(arrayBuffer, loader, options, context) {
|
|
142
147
|
return new Promise((resolve, reject) => {
|
|
143
148
|
const id = requestId++;
|
|
144
149
|
const onMessage = (type, payload2) => {
|
|
@@ -162,7 +167,12 @@
|
|
|
162
167
|
WorkerBody.postMessage("process", payload);
|
|
163
168
|
});
|
|
164
169
|
}
|
|
165
|
-
async function parseData({
|
|
170
|
+
async function parseData({
|
|
171
|
+
loader,
|
|
172
|
+
arrayBuffer,
|
|
173
|
+
options,
|
|
174
|
+
context
|
|
175
|
+
}) {
|
|
166
176
|
let data;
|
|
167
177
|
let parser;
|
|
168
178
|
if (loader.parseSync || loader.parse) {
|
|
@@ -1177,7 +1187,7 @@
|
|
|
1177
1187
|
}
|
|
1178
1188
|
|
|
1179
1189
|
// src/lib/utils/version.ts
|
|
1180
|
-
var VERSION = true ? "4.0.0-alpha.
|
|
1190
|
+
var VERSION = true ? "4.0.0-alpha.22" : "latest";
|
|
1181
1191
|
|
|
1182
1192
|
// src/terrain-loader.ts
|
|
1183
1193
|
var TerrainLoader = {
|
|
@@ -1232,7 +1242,7 @@
|
|
|
1232
1242
|
mimeType: "application/x.image",
|
|
1233
1243
|
image: { ...options?.image, type: "data" }
|
|
1234
1244
|
};
|
|
1235
|
-
const image = await
|
|
1245
|
+
const image = await parseFromContext(arrayBuffer, [], loadImageOptions, context);
|
|
1236
1246
|
const terrainOptions = { ...TerrainLoader2.options.terrain, ...options?.terrain };
|
|
1237
1247
|
return makeTerrainMeshFromImage(image, terrainOptions);
|
|
1238
1248
|
}
|
package/dist/terrain-worker.js
CHANGED
|
@@ -1,4 +1,9 @@
|
|
|
1
1
|
(() => {
|
|
2
|
+
// ../loader-utils/src/loader-types.ts
|
|
3
|
+
async function parseFromContext(data, loaders, options, context) {
|
|
4
|
+
return context._parse(data, loaders, options, context);
|
|
5
|
+
}
|
|
6
|
+
|
|
2
7
|
// ../worker-utils/src/lib/worker-utils/get-transfer-list.ts
|
|
3
8
|
function getTransferList(object, recursive = true, transfers) {
|
|
4
9
|
const transfersSet = transfers || new Set();
|
|
@@ -125,7 +130,7 @@
|
|
|
125
130
|
options,
|
|
126
131
|
context: {
|
|
127
132
|
...context,
|
|
128
|
-
|
|
133
|
+
_parse: parseOnMainThread
|
|
129
134
|
}
|
|
130
135
|
});
|
|
131
136
|
WorkerBody.postMessage("done", { result });
|
|
@@ -138,7 +143,7 @@
|
|
|
138
143
|
}
|
|
139
144
|
};
|
|
140
145
|
}
|
|
141
|
-
function parseOnMainThread(arrayBuffer, options) {
|
|
146
|
+
function parseOnMainThread(arrayBuffer, loader, options, context) {
|
|
142
147
|
return new Promise((resolve, reject) => {
|
|
143
148
|
const id = requestId++;
|
|
144
149
|
const onMessage = (type, payload2) => {
|
|
@@ -162,7 +167,12 @@
|
|
|
162
167
|
WorkerBody.postMessage("process", payload);
|
|
163
168
|
});
|
|
164
169
|
}
|
|
165
|
-
async function parseData({
|
|
170
|
+
async function parseData({
|
|
171
|
+
loader,
|
|
172
|
+
arrayBuffer,
|
|
173
|
+
options,
|
|
174
|
+
context
|
|
175
|
+
}) {
|
|
166
176
|
let data;
|
|
167
177
|
let parser;
|
|
168
178
|
if (loader.parseSync || loader.parse) {
|
|
@@ -1177,7 +1187,7 @@
|
|
|
1177
1187
|
}
|
|
1178
1188
|
|
|
1179
1189
|
// src/lib/utils/version.ts
|
|
1180
|
-
var VERSION = true ? "4.0.0-alpha.
|
|
1190
|
+
var VERSION = true ? "4.0.0-alpha.22" : "latest";
|
|
1181
1191
|
|
|
1182
1192
|
// src/terrain-loader.ts
|
|
1183
1193
|
var TerrainLoader = {
|
|
@@ -1232,7 +1242,7 @@
|
|
|
1232
1242
|
mimeType: "application/x.image",
|
|
1233
1243
|
image: { ...options?.image, type: "data" }
|
|
1234
1244
|
};
|
|
1235
|
-
const image = await
|
|
1245
|
+
const image = await parseFromContext(arrayBuffer, [], loadImageOptions, context);
|
|
1236
1246
|
const terrainOptions = { ...TerrainLoader2.options.terrain, ...options?.terrain };
|
|
1237
1247
|
return makeTerrainMeshFromImage(image, terrainOptions);
|
|
1238
1248
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@loaders.gl/terrain",
|
|
3
|
-
"version": "4.0.0-alpha.
|
|
3
|
+
"version": "4.0.0-alpha.22",
|
|
4
4
|
"description": "Framework-independent loader for terrain raster formats",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"publishConfig": {
|
|
@@ -35,10 +35,10 @@
|
|
|
35
35
|
},
|
|
36
36
|
"dependencies": {
|
|
37
37
|
"@babel/runtime": "^7.3.1",
|
|
38
|
-
"@loaders.gl/images": "4.0.0-alpha.
|
|
39
|
-
"@loaders.gl/loader-utils": "4.0.0-alpha.
|
|
40
|
-
"@loaders.gl/schema": "4.0.0-alpha.
|
|
38
|
+
"@loaders.gl/images": "4.0.0-alpha.22",
|
|
39
|
+
"@loaders.gl/loader-utils": "4.0.0-alpha.22",
|
|
40
|
+
"@loaders.gl/schema": "4.0.0-alpha.22",
|
|
41
41
|
"@mapbox/martini": "^0.2.0"
|
|
42
42
|
},
|
|
43
|
-
"gitHead": "
|
|
43
|
+
"gitHead": "0da838c506d1275383f2fd3d244d9c72b25397d2"
|
|
44
44
|
}
|
package/src/index.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type {LoaderContext, LoaderWithParser} from '@loaders.gl/loader-utils';
|
|
2
|
+
import {parseFromContext} from '@loaders.gl/loader-utils';
|
|
2
3
|
import {parseQuantizedMesh} from './lib/parse-quantized-mesh';
|
|
3
4
|
import {TerrainOptions, makeTerrainMeshFromImage} from './lib/parse-terrain';
|
|
4
5
|
|
|
@@ -27,9 +28,10 @@ export async function parseTerrain(
|
|
|
27
28
|
mimeType: 'application/x.image',
|
|
28
29
|
image: {...options?.image, type: 'data'}
|
|
29
30
|
};
|
|
30
|
-
const image = await
|
|
31
|
+
const image = await parseFromContext(arrayBuffer, [], loadImageOptions, context!);
|
|
31
32
|
// Extend function to support additional mesh generation options (square grid or delatin)
|
|
32
33
|
const terrainOptions = {...TerrainLoader.options.terrain, ...options?.terrain} as TerrainOptions;
|
|
34
|
+
// @ts-expect-error sort out image typing asap
|
|
33
35
|
return makeTerrainMeshFromImage(image, terrainOptions);
|
|
34
36
|
}
|
|
35
37
|
|