@loaders.gl/tile-converter 4.0.0-alpha.6 → 4.0.0-alpha.8
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/bin/converter.js +1 -1
- package/dist/3d-tiles-attributes-worker.js +2 -2
- package/dist/3d-tiles-attributes-worker.js.map +3 -3
- package/dist/3d-tiles-converter/3d-tiles-converter.d.ts.map +1 -1
- package/dist/3d-tiles-converter/3d-tiles-converter.js +4 -3
- package/dist/3d-tiles-converter/helpers/b3dm-converter.d.ts +0 -8
- package/dist/3d-tiles-converter/helpers/b3dm-converter.d.ts.map +1 -1
- package/dist/3d-tiles-converter/helpers/b3dm-converter.js +2 -15
- package/dist/converter.min.js +75 -76
- package/dist/deps-installer/deps-installer.js +4 -4
- package/dist/dist.min.js +2529 -1884
- package/dist/es5/3d-tiles-attributes-worker.js +1 -1
- package/dist/es5/3d-tiles-converter/3d-tiles-converter.js +0 -3
- package/dist/es5/3d-tiles-converter/3d-tiles-converter.js.map +1 -1
- package/dist/es5/3d-tiles-converter/helpers/b3dm-converter.js +2 -10
- package/dist/es5/3d-tiles-converter/helpers/b3dm-converter.js.map +1 -1
- package/dist/es5/deps-installer/deps-installer.js +5 -5
- package/dist/es5/deps-installer/deps-installer.js.map +1 -1
- package/dist/es5/i3s-attributes-worker.js +1 -1
- package/dist/es5/i3s-attributes-worker.js.map +1 -1
- package/dist/es5/i3s-converter/helpers/batch-ids-extensions.js +4 -4
- package/dist/es5/i3s-converter/helpers/batch-ids-extensions.js.map +1 -1
- package/dist/es5/i3s-converter/helpers/coordinate-converter.js +6 -7
- package/dist/es5/i3s-converter/helpers/coordinate-converter.js.map +1 -1
- package/dist/es5/i3s-converter/helpers/geometry-converter.js +49 -30
- package/dist/es5/i3s-converter/helpers/geometry-converter.js.map +1 -1
- package/dist/es5/i3s-converter/helpers/gltf-attributes.js +46 -16
- package/dist/es5/i3s-converter/helpers/gltf-attributes.js.map +1 -1
- package/dist/es5/i3s-converter/helpers/load-3d-tiles.js +82 -0
- package/dist/es5/i3s-converter/helpers/load-3d-tiles.js.map +1 -0
- package/dist/es5/i3s-converter/helpers/node-index-document.js +74 -45
- package/dist/es5/i3s-converter/helpers/node-index-document.js.map +1 -1
- package/dist/es5/i3s-converter/helpers/preprocess-3d-tiles.js +111 -0
- package/dist/es5/i3s-converter/helpers/preprocess-3d-tiles.js.map +1 -0
- package/dist/es5/i3s-converter/helpers/tileset-traversal.js +82 -0
- package/dist/es5/i3s-converter/helpers/tileset-traversal.js.map +1 -0
- package/dist/es5/i3s-converter/i3s-converter.js +545 -523
- package/dist/es5/i3s-converter/i3s-converter.js.map +1 -1
- package/dist/es5/i3s-converter/types.js +16 -0
- package/dist/es5/i3s-converter/types.js.map +1 -1
- package/dist/es5/i3s-server/README.md +19 -0
- package/dist/es5/i3s-server/app.js +10 -1
- package/dist/es5/i3s-server/app.js.map +1 -1
- package/dist/es5/i3s-server/controllers/slpk-controller.js +84 -0
- package/dist/es5/i3s-server/controllers/slpk-controller.js.map +1 -0
- package/dist/es5/i3s-server/routes/slpk-router.js +71 -0
- package/dist/es5/i3s-server/routes/slpk-router.js.map +1 -0
- package/dist/es5/i3s-server/utils/create-scene-server.js +17 -0
- package/dist/es5/i3s-server/utils/create-scene-server.js.map +1 -0
- package/dist/es5/lib/utils/file-utils.js +1 -1
- package/dist/es5/lib/utils/file-utils.js.map +1 -1
- package/dist/es5/lib/utils/geometry-utils.js +15 -0
- package/dist/es5/lib/utils/geometry-utils.js.map +1 -0
- package/dist/es5/lib/utils/lod-conversion-utils.js.map +1 -1
- package/dist/es5/pgm-loader.js +1 -1
- package/dist/esm/3d-tiles-attributes-worker.js +1 -1
- package/dist/esm/3d-tiles-converter/3d-tiles-converter.js +0 -3
- package/dist/esm/3d-tiles-converter/3d-tiles-converter.js.map +1 -1
- package/dist/esm/3d-tiles-converter/helpers/b3dm-converter.js +2 -8
- package/dist/esm/3d-tiles-converter/helpers/b3dm-converter.js.map +1 -1
- package/dist/esm/deps-installer/deps-installer.js +5 -5
- package/dist/esm/deps-installer/deps-installer.js.map +1 -1
- package/dist/esm/i3s-attributes-worker.js +1 -1
- package/dist/esm/i3s-attributes-worker.js.map +1 -1
- package/dist/esm/i3s-converter/helpers/batch-ids-extensions.js +4 -4
- package/dist/esm/i3s-converter/helpers/batch-ids-extensions.js.map +1 -1
- package/dist/esm/i3s-converter/helpers/coordinate-converter.js +6 -7
- package/dist/esm/i3s-converter/helpers/coordinate-converter.js.map +1 -1
- package/dist/esm/i3s-converter/helpers/geometry-converter.js +37 -18
- package/dist/esm/i3s-converter/helpers/geometry-converter.js.map +1 -1
- package/dist/esm/i3s-converter/helpers/gltf-attributes.js +50 -16
- package/dist/esm/i3s-converter/helpers/gltf-attributes.js.map +1 -1
- package/dist/esm/i3s-converter/helpers/load-3d-tiles.js +35 -0
- package/dist/esm/i3s-converter/helpers/load-3d-tiles.js.map +1 -0
- package/dist/esm/i3s-converter/helpers/node-index-document.js +14 -1
- package/dist/esm/i3s-converter/helpers/node-index-document.js.map +1 -1
- package/dist/esm/i3s-converter/helpers/preprocess-3d-tiles.js +48 -0
- package/dist/esm/i3s-converter/helpers/preprocess-3d-tiles.js.map +1 -0
- package/dist/esm/i3s-converter/helpers/tileset-traversal.js +14 -0
- package/dist/esm/i3s-converter/helpers/tileset-traversal.js.map +1 -0
- package/dist/esm/i3s-converter/i3s-converter.js +134 -127
- package/dist/esm/i3s-converter/i3s-converter.js.map +1 -1
- package/dist/esm/i3s-converter/types.js +10 -1
- package/dist/esm/i3s-converter/types.js.map +1 -1
- package/dist/esm/i3s-server/README.md +19 -0
- package/dist/esm/i3s-server/app.js +11 -1
- package/dist/esm/i3s-server/app.js.map +1 -1
- package/dist/esm/i3s-server/controllers/slpk-controller.js +36 -0
- package/dist/esm/i3s-server/controllers/slpk-controller.js.map +1 -0
- package/dist/esm/i3s-server/routes/slpk-router.js +33 -0
- package/dist/esm/i3s-server/routes/slpk-router.js.map +1 -0
- package/dist/esm/i3s-server/utils/create-scene-server.js +16 -0
- package/dist/esm/i3s-server/utils/create-scene-server.js.map +1 -0
- package/dist/esm/lib/utils/file-utils.js +1 -1
- package/dist/esm/lib/utils/file-utils.js.map +1 -1
- package/dist/esm/lib/utils/geometry-utils.js +8 -0
- package/dist/esm/lib/utils/geometry-utils.js.map +1 -0
- package/dist/esm/lib/utils/lod-conversion-utils.js.map +1 -1
- package/dist/esm/pgm-loader.js +1 -1
- package/dist/i3s-attributes-worker.d.ts +10 -2
- package/dist/i3s-attributes-worker.d.ts.map +1 -1
- package/dist/i3s-attributes-worker.js +2 -2
- package/dist/i3s-attributes-worker.js.map +3 -3
- package/dist/i3s-converter/helpers/batch-ids-extensions.d.ts +4 -2
- package/dist/i3s-converter/helpers/batch-ids-extensions.d.ts.map +1 -1
- package/dist/i3s-converter/helpers/batch-ids-extensions.js +4 -7
- package/dist/i3s-converter/helpers/coordinate-converter.d.ts +3 -4
- package/dist/i3s-converter/helpers/coordinate-converter.d.ts.map +1 -1
- package/dist/i3s-converter/helpers/coordinate-converter.js +8 -9
- package/dist/i3s-converter/helpers/geometry-converter.d.ts +9 -4
- package/dist/i3s-converter/helpers/geometry-converter.d.ts.map +1 -1
- package/dist/i3s-converter/helpers/geometry-converter.js +84 -54
- package/dist/i3s-converter/helpers/gltf-attributes.d.ts +22 -3
- package/dist/i3s-converter/helpers/gltf-attributes.d.ts.map +1 -1
- package/dist/i3s-converter/helpers/gltf-attributes.js +62 -22
- package/dist/i3s-converter/helpers/load-3d-tiles.d.ts +18 -0
- package/dist/i3s-converter/helpers/load-3d-tiles.d.ts.map +1 -0
- package/dist/i3s-converter/helpers/load-3d-tiles.js +53 -0
- package/dist/i3s-converter/helpers/node-index-document.d.ts +8 -0
- package/dist/i3s-converter/helpers/node-index-document.d.ts.map +1 -1
- package/dist/i3s-converter/helpers/node-index-document.js +20 -2
- package/dist/i3s-converter/helpers/node-pages.js +1 -1
- package/dist/i3s-converter/helpers/preprocess-3d-tiles.d.ts +23 -0
- package/dist/i3s-converter/helpers/preprocess-3d-tiles.d.ts.map +1 -0
- package/dist/i3s-converter/helpers/preprocess-3d-tiles.js +76 -0
- package/dist/i3s-converter/helpers/tileset-traversal.d.ts +25 -0
- package/dist/i3s-converter/helpers/tileset-traversal.d.ts.map +1 -0
- package/dist/i3s-converter/helpers/tileset-traversal.js +29 -0
- package/dist/i3s-converter/i3s-converter.d.ts +40 -40
- package/dist/i3s-converter/i3s-converter.d.ts.map +1 -1
- package/dist/i3s-converter/i3s-converter.js +150 -125
- package/dist/i3s-converter/types.d.ts +18 -0
- package/dist/i3s-converter/types.d.ts.map +1 -1
- package/dist/i3s-converter/types.js +15 -0
- package/dist/i3s-server/app.d.ts.map +1 -1
- package/dist/i3s-server/app.js +9 -1
- package/dist/i3s-server/controllers/slpk-controller.d.ts +3 -0
- package/dist/i3s-server/controllers/slpk-controller.d.ts.map +1 -0
- package/dist/i3s-server/controllers/slpk-controller.js +32 -0
- package/dist/i3s-server/routes/slpk-router.d.ts +3 -0
- package/dist/i3s-server/routes/slpk-router.d.ts.map +1 -0
- package/dist/i3s-server/routes/slpk-router.js +33 -0
- package/dist/i3s-server/utils/create-scene-server.d.ts +11 -0
- package/dist/i3s-server/utils/create-scene-server.d.ts.map +1 -0
- package/dist/i3s-server/utils/create-scene-server.js +14 -0
- package/dist/lib/utils/file-utils.d.ts.map +1 -1
- package/dist/lib/utils/file-utils.js +2 -1
- package/dist/lib/utils/geometry-utils.d.ts +9 -0
- package/dist/lib/utils/geometry-utils.d.ts.map +1 -0
- package/dist/lib/utils/geometry-utils.js +18 -0
- package/dist/lib/utils/lod-conversion-utils.d.ts +3 -2
- package/dist/lib/utils/lod-conversion-utils.d.ts.map +1 -1
- package/dist/lib/utils/lod-conversion-utils.js +1 -1
- package/package.json +15 -16
- package/src/3d-tiles-converter/3d-tiles-converter.ts +9 -8
- package/src/3d-tiles-converter/helpers/b3dm-converter.ts +2 -16
- package/src/deps-installer/deps-installer.ts +4 -4
- package/src/i3s-attributes-worker.ts +11 -2
- package/src/i3s-converter/helpers/batch-ids-extensions.ts +15 -19
- package/src/i3s-converter/helpers/coordinate-converter.ts +11 -10
- package/src/i3s-converter/helpers/geometry-converter.ts +154 -95
- package/src/i3s-converter/helpers/gltf-attributes.ts +85 -25
- package/src/i3s-converter/helpers/load-3d-tiles.ts +68 -0
- package/src/i3s-converter/helpers/node-index-document.ts +22 -2
- package/src/i3s-converter/helpers/preprocess-3d-tiles.ts +81 -0
- package/src/i3s-converter/helpers/tileset-traversal.ts +51 -0
- package/src/i3s-converter/i3s-converter.ts +229 -178
- package/src/i3s-converter/types.ts +20 -0
- package/src/i3s-server/README.md +19 -0
- package/src/i3s-server/app.js +8 -1
- package/src/i3s-server/controllers/slpk-controller.js +38 -0
- package/src/i3s-server/routes/slpk-router.js +33 -0
- package/src/i3s-server/utils/create-scene-server.js +15 -0
- package/src/lib/utils/file-utils.ts +2 -1
- package/src/lib/utils/geometry-utils.ts +14 -0
- package/src/lib/utils/lod-conversion-utils.ts +6 -2
|
@@ -13,7 +13,6 @@ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/cl
|
|
|
13
13
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
14
14
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
15
15
|
var _core = require("@loaders.gl/core");
|
|
16
|
-
var _tiles = require("@loaders.gl/tiles");
|
|
17
16
|
var _dTiles = require("@loaders.gl/3d-tiles");
|
|
18
17
|
var _path = require("path");
|
|
19
18
|
var _uuid = require("uuid");
|
|
@@ -35,6 +34,7 @@ var _sharedResources = require("./json-templates/shared-resources");
|
|
|
35
34
|
var _nodeDebug = require("./helpers/node-debug");
|
|
36
35
|
var _textures = require("@loaders.gl/textures");
|
|
37
36
|
var _images = require("@loaders.gl/images");
|
|
37
|
+
var _types = require("./types");
|
|
38
38
|
var _workerUtils = require("@loaders.gl/worker-utils");
|
|
39
39
|
var _draco = require("@loaders.gl/draco");
|
|
40
40
|
var _writeQueue = _interopRequireDefault(require("../lib/utils/write-queue"));
|
|
@@ -42,6 +42,11 @@ var _i3sAttributesWorker = require("../i3s-attributes-worker");
|
|
|
42
42
|
var _constants = require("../constants");
|
|
43
43
|
var _featureAttributes = require("./helpers/feature-attributes");
|
|
44
44
|
var _nodeIndexDocument = require("./helpers/node-index-document");
|
|
45
|
+
var _load3dTiles = require("./helpers/load-3d-tiles");
|
|
46
|
+
var _core2 = require("@math.gl/core");
|
|
47
|
+
var _tiles = require("@loaders.gl/tiles");
|
|
48
|
+
var _tilesetTraversal = require("./helpers/tileset-traversal");
|
|
49
|
+
var _preprocess3dTiles = require("./helpers/preprocess-3d-tiles");
|
|
45
50
|
var _process$env;
|
|
46
51
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
47
52
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
@@ -75,6 +80,18 @@ var I3SConverter = function () {
|
|
|
75
80
|
(0, _defineProperty2.default)(this, "conversionStartTime", [0, 0]);
|
|
76
81
|
(0, _defineProperty2.default)(this, "refreshTokenTime", [0, 0]);
|
|
77
82
|
(0, _defineProperty2.default)(this, "sourceTileset", null);
|
|
83
|
+
(0, _defineProperty2.default)(this, "loadOptions", {
|
|
84
|
+
_nodeWorkers: true,
|
|
85
|
+
reuseWorkers: true,
|
|
86
|
+
basis: {
|
|
87
|
+
format: 'rgba32',
|
|
88
|
+
workerUrl: './modules/textures/dist/basis-worker-node.js'
|
|
89
|
+
},
|
|
90
|
+
draco: {
|
|
91
|
+
workerUrl: './modules/draco/dist/draco-worker-node.js'
|
|
92
|
+
},
|
|
93
|
+
fetch: {}
|
|
94
|
+
});
|
|
78
95
|
(0, _defineProperty2.default)(this, "geoidHeightModel", null);
|
|
79
96
|
(0, _defineProperty2.default)(this, "Loader", _dTiles.Tiles3DLoader);
|
|
80
97
|
(0, _defineProperty2.default)(this, "generateTextures", void 0);
|
|
@@ -83,6 +100,9 @@ var I3SConverter = function () {
|
|
|
83
100
|
(0, _defineProperty2.default)(this, "workerSource", {});
|
|
84
101
|
(0, _defineProperty2.default)(this, "writeQueue", new _writeQueue.default());
|
|
85
102
|
(0, _defineProperty2.default)(this, "compressList", null);
|
|
103
|
+
(0, _defineProperty2.default)(this, "preprocessData", {
|
|
104
|
+
meshTopologyTypes: new Set()
|
|
105
|
+
});
|
|
86
106
|
this.nodePages = new _nodePages.default(_fileUtils.writeFile, HARDCODED_NODES_PER_PAGE, this);
|
|
87
107
|
this.options = {};
|
|
88
108
|
this.layers0Path = '';
|
|
@@ -107,7 +127,7 @@ var I3SConverter = function () {
|
|
|
107
127
|
key: "convert",
|
|
108
128
|
value: function () {
|
|
109
129
|
var _convert = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee(options) {
|
|
110
|
-
var tilesetName, slpk, egmFilePath, inputUrl, validate, outputPath, _options$draco, draco, sevenZipExe, maxDepth, token, generateTextures, generateBoundingVolumes, _options$instantNodeW, instantNodeWriting, _options$mergeMateria, mergeMaterials,
|
|
130
|
+
var tilesetName, slpk, egmFilePath, inputUrl, validate, outputPath, _options$draco, draco, sevenZipExe, maxDepth, token, generateTextures, generateBoundingVolumes, _options$instantNodeW, instantNodeWriting, _options$mergeMateria, mergeMaterials, preloadOptions, preprocessResult, workerFarm;
|
|
111
131
|
return _regenerator.default.wrap(function _callee$(_context) {
|
|
112
132
|
while (1) switch (_context.prev = _context.next) {
|
|
113
133
|
case 0:
|
|
@@ -155,58 +175,54 @@ var I3SConverter = function () {
|
|
|
155
175
|
return this._fetchPreloadOptions();
|
|
156
176
|
case 24:
|
|
157
177
|
preloadOptions = _context.sent;
|
|
158
|
-
tilesetOptions = {
|
|
159
|
-
loadOptions: {
|
|
160
|
-
_nodeWorkers: true,
|
|
161
|
-
reuseWorkers: true,
|
|
162
|
-
basis: {
|
|
163
|
-
format: 'rgba32'
|
|
164
|
-
},
|
|
165
|
-
'basis-nodejs': {
|
|
166
|
-
format: 'rgba32',
|
|
167
|
-
workerUrl: './modules/textures/dist/basis-nodejs-worker.js'
|
|
168
|
-
},
|
|
169
|
-
'draco-nodejs': {
|
|
170
|
-
workerUrl: './modules/draco/dist/draco-nodejs-worker.js'
|
|
171
|
-
}
|
|
172
|
-
}
|
|
173
|
-
};
|
|
174
178
|
if (preloadOptions.headers) {
|
|
175
|
-
|
|
179
|
+
this.loadOptions.fetch = {
|
|
176
180
|
headers: preloadOptions.headers
|
|
177
181
|
};
|
|
178
182
|
}
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
this.
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
183
|
+
_context.next = 28;
|
|
184
|
+
return (0, _core.load)(inputUrl, this.Loader, this.loadOptions);
|
|
185
|
+
case 28:
|
|
186
|
+
this.sourceTileset = _context.sent;
|
|
187
|
+
_context.next = 31;
|
|
188
|
+
return this.preprocessConversion();
|
|
189
|
+
case 31:
|
|
190
|
+
preprocessResult = _context.sent;
|
|
191
|
+
if (!preprocessResult) {
|
|
192
|
+
_context.next = 37;
|
|
193
|
+
break;
|
|
194
|
+
}
|
|
195
|
+
_context.next = 35;
|
|
196
|
+
return this._createAndSaveTileset(outputPath, tilesetName);
|
|
197
|
+
case 35:
|
|
198
|
+
_context.next = 37;
|
|
189
199
|
return this._finishConversion({
|
|
190
200
|
slpk: Boolean(slpk),
|
|
191
201
|
outputPath: outputPath,
|
|
192
202
|
tilesetName: tilesetName
|
|
193
203
|
});
|
|
194
|
-
case
|
|
195
|
-
|
|
204
|
+
case 37:
|
|
205
|
+
_context.next = 42;
|
|
206
|
+
break;
|
|
196
207
|
case 39:
|
|
197
208
|
_context.prev = 39;
|
|
198
209
|
_context.t0 = _context["catch"](21);
|
|
199
210
|
throw _context.t0;
|
|
200
211
|
case 42:
|
|
201
212
|
_context.prev = 42;
|
|
213
|
+
_context.next = 45;
|
|
214
|
+
return this.writeQueue.finalize();
|
|
215
|
+
case 45:
|
|
202
216
|
workerFarm = _workerUtils.WorkerFarm.getWorkerFarm({});
|
|
203
217
|
workerFarm.destroy();
|
|
204
218
|
return _context.finish(42);
|
|
205
|
-
case
|
|
219
|
+
case 48:
|
|
220
|
+
return _context.abrupt("return", 'success');
|
|
221
|
+
case 49:
|
|
206
222
|
case "end":
|
|
207
223
|
return _context.stop();
|
|
208
224
|
}
|
|
209
|
-
}, _callee, this, [[21, 39, 42,
|
|
225
|
+
}, _callee, this, [[21, 39, 42, 48]]);
|
|
210
226
|
}));
|
|
211
227
|
function convert(_x) {
|
|
212
228
|
return _convert.apply(this, arguments);
|
|
@@ -214,46 +230,136 @@ var I3SConverter = function () {
|
|
|
214
230
|
return convert;
|
|
215
231
|
}()
|
|
216
232
|
}, {
|
|
217
|
-
key: "
|
|
233
|
+
key: "preprocessConversion",
|
|
218
234
|
value: function () {
|
|
219
|
-
var
|
|
220
|
-
var
|
|
221
|
-
var tilesetPath, sourceRootTile, boundingVolumes, rootNode, _iterator, _step, filePath;
|
|
235
|
+
var _preprocessConversion = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee2() {
|
|
236
|
+
var sourceRootTile, meshTopologyTypes;
|
|
222
237
|
return _regenerator.default.wrap(function _callee2$(_context2) {
|
|
223
238
|
while (1) switch (_context2.prev = _context2.next) {
|
|
224
239
|
case 0:
|
|
225
|
-
|
|
226
|
-
|
|
240
|
+
console.log("Analyze source tileset");
|
|
241
|
+
sourceRootTile = this.sourceTileset.root;
|
|
227
242
|
_context2.next = 4;
|
|
243
|
+
return (0, _tilesetTraversal.traverseDatasetWith)(sourceRootTile, null, this.analyzeTile.bind(this), undefined, this.options.maxDepth);
|
|
244
|
+
case 4:
|
|
245
|
+
meshTopologyTypes = this.preprocessData.meshTopologyTypes;
|
|
246
|
+
console.log("------------------------------------------------");
|
|
247
|
+
console.log("Preprocess results:");
|
|
248
|
+
console.log("glTF mesh topology types: ".concat(Array.from(meshTopologyTypes).join(', ')));
|
|
249
|
+
console.log("------------------------------------------------");
|
|
250
|
+
if (!(!meshTopologyTypes.has(_types.GltfPrimitiveModeString.TRIANGLES) && !meshTopologyTypes.has(_types.GltfPrimitiveModeString.TRIANGLE_STRIP))) {
|
|
251
|
+
_context2.next = 13;
|
|
252
|
+
break;
|
|
253
|
+
}
|
|
254
|
+
console.log('The tileset is of unsupported mesh topology types. The conversion will be interrupted.');
|
|
255
|
+
console.log("------------------------------------------------");
|
|
256
|
+
return _context2.abrupt("return", false);
|
|
257
|
+
case 13:
|
|
258
|
+
return _context2.abrupt("return", true);
|
|
259
|
+
case 14:
|
|
260
|
+
case "end":
|
|
261
|
+
return _context2.stop();
|
|
262
|
+
}
|
|
263
|
+
}, _callee2, this);
|
|
264
|
+
}));
|
|
265
|
+
function preprocessConversion() {
|
|
266
|
+
return _preprocessConversion.apply(this, arguments);
|
|
267
|
+
}
|
|
268
|
+
return preprocessConversion;
|
|
269
|
+
}()
|
|
270
|
+
}, {
|
|
271
|
+
key: "analyzeTile",
|
|
272
|
+
value: function () {
|
|
273
|
+
var _analyzeTile = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee3(sourceTile, traversalProps) {
|
|
274
|
+
var tileContent, tilePreprocessData;
|
|
275
|
+
return _regenerator.default.wrap(function _callee3$(_context3) {
|
|
276
|
+
while (1) switch (_context3.prev = _context3.next) {
|
|
277
|
+
case 0:
|
|
278
|
+
if (!(sourceTile.type === 'json')) {
|
|
279
|
+
_context3.next = 4;
|
|
280
|
+
break;
|
|
281
|
+
}
|
|
282
|
+
_context3.next = 3;
|
|
283
|
+
return (0, _load3dTiles.loadNestedTileset)(this.sourceTileset, sourceTile, this.loadOptions);
|
|
284
|
+
case 3:
|
|
285
|
+
return _context3.abrupt("return", null);
|
|
286
|
+
case 4:
|
|
287
|
+
if (sourceTile.id) {
|
|
288
|
+
console.log("[analyze]: ".concat(sourceTile.id));
|
|
289
|
+
}
|
|
290
|
+
_context3.next = 7;
|
|
291
|
+
return (0, _load3dTiles.loadTile3DContent)(this.sourceTileset, sourceTile, _objectSpread(_objectSpread({}, this.loadOptions), {}, {
|
|
292
|
+
'3d-tiles': _objectSpread(_objectSpread({}, this.loadOptions['3d-tiles']), {}, {
|
|
293
|
+
loadGLTF: false
|
|
294
|
+
})
|
|
295
|
+
}));
|
|
296
|
+
case 7:
|
|
297
|
+
tileContent = _context3.sent;
|
|
298
|
+
_context3.next = 10;
|
|
299
|
+
return (0, _preprocess3dTiles.analyzeTileContent)(sourceTile, tileContent);
|
|
300
|
+
case 10:
|
|
301
|
+
tilePreprocessData = _context3.sent;
|
|
302
|
+
(0, _preprocess3dTiles.mergePreprocessData)(this.preprocessData, tilePreprocessData);
|
|
303
|
+
return _context3.abrupt("return", null);
|
|
304
|
+
case 13:
|
|
305
|
+
case "end":
|
|
306
|
+
return _context3.stop();
|
|
307
|
+
}
|
|
308
|
+
}, _callee3, this);
|
|
309
|
+
}));
|
|
310
|
+
function analyzeTile(_x2, _x3) {
|
|
311
|
+
return _analyzeTile.apply(this, arguments);
|
|
312
|
+
}
|
|
313
|
+
return analyzeTile;
|
|
314
|
+
}()
|
|
315
|
+
}, {
|
|
316
|
+
key: "_createAndSaveTileset",
|
|
317
|
+
value: function () {
|
|
318
|
+
var _createAndSaveTileset2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee4(outputPath, tilesetName) {
|
|
319
|
+
var _this$sourceTileset,
|
|
320
|
+
_this$sourceTileset$r,
|
|
321
|
+
_this$sourceTileset$r2,
|
|
322
|
+
_this = this;
|
|
323
|
+
var tilesetPath, sourceRootTile, sourceBoundingVolume, boundingVolumes, rootNode, _iterator, _step, filePath;
|
|
324
|
+
return _regenerator.default.wrap(function _callee4$(_context4) {
|
|
325
|
+
while (1) switch (_context4.prev = _context4.next) {
|
|
326
|
+
case 0:
|
|
327
|
+
tilesetPath = (0, _path.join)("".concat(outputPath), "".concat(tilesetName));
|
|
328
|
+
_context4.prev = 1;
|
|
329
|
+
_context4.next = 4;
|
|
228
330
|
return (0, _fileUtils.removeDir)(tilesetPath);
|
|
229
331
|
case 4:
|
|
230
|
-
|
|
332
|
+
_context4.next = 8;
|
|
231
333
|
break;
|
|
232
334
|
case 6:
|
|
233
|
-
|
|
234
|
-
|
|
335
|
+
_context4.prev = 6;
|
|
336
|
+
_context4.t0 = _context4["catch"](1);
|
|
235
337
|
case 8:
|
|
236
338
|
this.layers0Path = (0, _path.join)(tilesetPath, 'SceneServer', 'layers', '0');
|
|
237
|
-
this._formLayers0(tilesetName, boundingVolumeRegion);
|
|
238
339
|
this.materialDefinitions = [];
|
|
239
340
|
this.materialMap = new Map();
|
|
240
341
|
sourceRootTile = this.sourceTileset.root;
|
|
241
|
-
|
|
242
|
-
|
|
342
|
+
sourceBoundingVolume = (0, _tiles.createBoundingVolume)(sourceRootTile.boundingVolume, new _core2.Matrix4(sourceRootTile.transform), null);
|
|
343
|
+
this._formLayers0(tilesetName, sourceBoundingVolume, (_this$sourceTileset = this.sourceTileset) === null || _this$sourceTileset === void 0 ? void 0 : (_this$sourceTileset$r = _this$sourceTileset.root) === null || _this$sourceTileset$r === void 0 ? void 0 : (_this$sourceTileset$r2 = _this$sourceTileset$r.boundingVolume) === null || _this$sourceTileset$r2 === void 0 ? void 0 : _this$sourceTileset$r2.region);
|
|
344
|
+
boundingVolumes = (0, _coordinateConverter.createBoundingVolumes)(sourceBoundingVolume, this.geoidHeightModel);
|
|
345
|
+
_context4.next = 17;
|
|
243
346
|
return this.nodePages.push({
|
|
244
347
|
index: 0,
|
|
245
348
|
lodThreshold: 0,
|
|
246
349
|
obb: boundingVolumes.obb,
|
|
247
350
|
children: []
|
|
248
351
|
});
|
|
249
|
-
case
|
|
250
|
-
|
|
352
|
+
case 17:
|
|
353
|
+
_context4.next = 19;
|
|
251
354
|
return _nodeIndexDocument.NodeIndexDocument.createRootNode(boundingVolumes, this);
|
|
252
|
-
case
|
|
253
|
-
rootNode =
|
|
254
|
-
|
|
255
|
-
return
|
|
256
|
-
|
|
355
|
+
case 19:
|
|
356
|
+
rootNode = _context4.sent;
|
|
357
|
+
_context4.next = 22;
|
|
358
|
+
return (0, _tilesetTraversal.traverseDatasetWith)(sourceRootTile, {
|
|
359
|
+
transform: new _core2.Matrix4(sourceRootTile.transform),
|
|
360
|
+
parentNodes: [rootNode]
|
|
361
|
+
}, this.convertTile.bind(this), this.finalizeTile.bind(this), this.options.maxDepth);
|
|
362
|
+
case 22:
|
|
257
363
|
this.layers0.materialDefinitions = this.materialDefinitions;
|
|
258
364
|
this.layers0.geometryDefinitions = (0, _jsonMapTransform.default)(this.geometryConfigs.map(function (config) {
|
|
259
365
|
return {
|
|
@@ -267,63 +373,66 @@ var I3SConverter = function () {
|
|
|
267
373
|
return attribute !== 'uv0';
|
|
268
374
|
});
|
|
269
375
|
}
|
|
270
|
-
|
|
376
|
+
_context4.next = 27;
|
|
271
377
|
return this._writeLayers0();
|
|
272
|
-
case
|
|
378
|
+
case 27:
|
|
273
379
|
(0, _createSceneServerPath.createSceneServerPath)(tilesetName, this.layers0, tilesetPath);
|
|
274
380
|
_iterator = _createForOfIteratorHelper(this.compressList || []);
|
|
275
|
-
|
|
381
|
+
_context4.prev = 29;
|
|
276
382
|
_iterator.s();
|
|
277
|
-
case
|
|
383
|
+
case 31:
|
|
278
384
|
if ((_step = _iterator.n()).done) {
|
|
279
|
-
|
|
385
|
+
_context4.next = 39;
|
|
280
386
|
break;
|
|
281
387
|
}
|
|
282
388
|
filePath = _step.value;
|
|
283
|
-
|
|
389
|
+
_context4.next = 35;
|
|
284
390
|
return (0, _compressUtil.compressFileWithGzip)(filePath);
|
|
285
|
-
case
|
|
286
|
-
|
|
391
|
+
case 35:
|
|
392
|
+
_context4.next = 37;
|
|
287
393
|
return (0, _fileUtils.removeFile)(filePath);
|
|
288
|
-
case
|
|
289
|
-
|
|
394
|
+
case 37:
|
|
395
|
+
_context4.next = 31;
|
|
290
396
|
break;
|
|
291
|
-
case
|
|
292
|
-
|
|
397
|
+
case 39:
|
|
398
|
+
_context4.next = 44;
|
|
293
399
|
break;
|
|
294
|
-
case
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
_iterator.e(
|
|
298
|
-
case
|
|
299
|
-
|
|
400
|
+
case 41:
|
|
401
|
+
_context4.prev = 41;
|
|
402
|
+
_context4.t1 = _context4["catch"](29);
|
|
403
|
+
_iterator.e(_context4.t1);
|
|
404
|
+
case 44:
|
|
405
|
+
_context4.prev = 44;
|
|
300
406
|
_iterator.f();
|
|
301
|
-
return
|
|
302
|
-
case
|
|
303
|
-
|
|
407
|
+
return _context4.finish(44);
|
|
408
|
+
case 47:
|
|
409
|
+
_context4.next = 49;
|
|
304
410
|
return this.nodePages.save();
|
|
305
|
-
case
|
|
306
|
-
|
|
411
|
+
case 49:
|
|
412
|
+
_context4.next = 51;
|
|
307
413
|
return this.writeQueue.finalize();
|
|
308
|
-
case
|
|
309
|
-
|
|
414
|
+
case 51:
|
|
415
|
+
_context4.next = 53;
|
|
310
416
|
return this._createSlpk(tilesetPath);
|
|
311
|
-
case
|
|
417
|
+
case 53:
|
|
312
418
|
case "end":
|
|
313
|
-
return
|
|
419
|
+
return _context4.stop();
|
|
314
420
|
}
|
|
315
|
-
},
|
|
421
|
+
}, _callee4, this, [[1, 6], [29, 41, 44, 47]]);
|
|
316
422
|
}));
|
|
317
|
-
function _createAndSaveTileset(
|
|
423
|
+
function _createAndSaveTileset(_x4, _x5) {
|
|
318
424
|
return _createAndSaveTileset2.apply(this, arguments);
|
|
319
425
|
}
|
|
320
426
|
return _createAndSaveTileset;
|
|
321
427
|
}()
|
|
322
428
|
}, {
|
|
323
429
|
key: "_formLayers0",
|
|
324
|
-
value: function _formLayers0(tilesetName, boundingVolumeRegion) {
|
|
325
|
-
var _this$
|
|
326
|
-
|
|
430
|
+
value: function _formLayers0(tilesetName, sourceBoundingVolume, boundingVolumeRegion) {
|
|
431
|
+
var _this$sourceTileset2;
|
|
432
|
+
if (!((_this$sourceTileset2 = this.sourceTileset) !== null && _this$sourceTileset2 !== void 0 && _this$sourceTileset2.root)) {
|
|
433
|
+
return;
|
|
434
|
+
}
|
|
435
|
+
var fullExtent = (0, _coordinateConverter.convertBoundingVolumeToI3SFullExtent)(sourceBoundingVolume);
|
|
327
436
|
if (boundingVolumeRegion) {
|
|
328
437
|
fullExtent.zmin = boundingVolumeRegion[4];
|
|
329
438
|
fullExtent.zmax = boundingVolumeRegion[5];
|
|
@@ -346,93 +455,19 @@ var I3SConverter = function () {
|
|
|
346
455
|
};
|
|
347
456
|
this.layers0 = (0, _jsonMapTransform.default)(layers0data, (0, _layers.LAYERS)());
|
|
348
457
|
}
|
|
349
|
-
}, {
|
|
350
|
-
key: "_convertNodesTree",
|
|
351
|
-
value: function () {
|
|
352
|
-
var _convertNodesTree2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee3(rootNode, sourceRootTile) {
|
|
353
|
-
var childNodes, _iterator2, _step2, childNode;
|
|
354
|
-
return _regenerator.default.wrap(function _callee3$(_context3) {
|
|
355
|
-
while (1) switch (_context3.prev = _context3.next) {
|
|
356
|
-
case 0:
|
|
357
|
-
_context3.next = 2;
|
|
358
|
-
return this.sourceTileset._loadTile(sourceRootTile);
|
|
359
|
-
case 2:
|
|
360
|
-
if (!this.isContentSupported(sourceRootTile)) {
|
|
361
|
-
_context3.next = 27;
|
|
362
|
-
break;
|
|
363
|
-
}
|
|
364
|
-
_context3.next = 5;
|
|
365
|
-
return this._createNode(rootNode, sourceRootTile, 0);
|
|
366
|
-
case 5:
|
|
367
|
-
childNodes = _context3.sent;
|
|
368
|
-
_iterator2 = _createForOfIteratorHelper(childNodes);
|
|
369
|
-
_context3.prev = 7;
|
|
370
|
-
_iterator2.s();
|
|
371
|
-
case 9:
|
|
372
|
-
if ((_step2 = _iterator2.n()).done) {
|
|
373
|
-
_context3.next = 15;
|
|
374
|
-
break;
|
|
375
|
-
}
|
|
376
|
-
childNode = _step2.value;
|
|
377
|
-
_context3.next = 13;
|
|
378
|
-
return childNode.save();
|
|
379
|
-
case 13:
|
|
380
|
-
_context3.next = 9;
|
|
381
|
-
break;
|
|
382
|
-
case 15:
|
|
383
|
-
_context3.next = 20;
|
|
384
|
-
break;
|
|
385
|
-
case 17:
|
|
386
|
-
_context3.prev = 17;
|
|
387
|
-
_context3.t0 = _context3["catch"](7);
|
|
388
|
-
_iterator2.e(_context3.t0);
|
|
389
|
-
case 20:
|
|
390
|
-
_context3.prev = 20;
|
|
391
|
-
_iterator2.f();
|
|
392
|
-
return _context3.finish(20);
|
|
393
|
-
case 23:
|
|
394
|
-
_context3.next = 25;
|
|
395
|
-
return rootNode.addChildren(childNodes);
|
|
396
|
-
case 25:
|
|
397
|
-
_context3.next = 29;
|
|
398
|
-
break;
|
|
399
|
-
case 27:
|
|
400
|
-
_context3.next = 29;
|
|
401
|
-
return this._addChildrenWithNeighborsAndWriteFile({
|
|
402
|
-
parentNode: rootNode,
|
|
403
|
-
sourceTiles: sourceRootTile.children,
|
|
404
|
-
level: 1
|
|
405
|
-
});
|
|
406
|
-
case 29:
|
|
407
|
-
_context3.next = 31;
|
|
408
|
-
return sourceRootTile.unloadContent();
|
|
409
|
-
case 31:
|
|
410
|
-
_context3.next = 33;
|
|
411
|
-
return rootNode.save();
|
|
412
|
-
case 33:
|
|
413
|
-
case "end":
|
|
414
|
-
return _context3.stop();
|
|
415
|
-
}
|
|
416
|
-
}, _callee3, this, [[7, 17, 20, 23]]);
|
|
417
|
-
}));
|
|
418
|
-
function _convertNodesTree(_x5, _x6) {
|
|
419
|
-
return _convertNodesTree2.apply(this, arguments);
|
|
420
|
-
}
|
|
421
|
-
return _convertNodesTree;
|
|
422
|
-
}()
|
|
423
458
|
}, {
|
|
424
459
|
key: "_writeLayers0",
|
|
425
460
|
value: function () {
|
|
426
|
-
var _writeLayers = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function
|
|
461
|
+
var _writeLayers = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee5() {
|
|
427
462
|
var _this2 = this;
|
|
428
|
-
return _regenerator.default.wrap(function
|
|
429
|
-
while (1) switch (
|
|
463
|
+
return _regenerator.default.wrap(function _callee5$(_context5) {
|
|
464
|
+
while (1) switch (_context5.prev = _context5.next) {
|
|
430
465
|
case 0:
|
|
431
466
|
if (!this.options.slpk) {
|
|
432
|
-
|
|
467
|
+
_context5.next = 5;
|
|
433
468
|
break;
|
|
434
469
|
}
|
|
435
|
-
|
|
470
|
+
_context5.next = 3;
|
|
436
471
|
return this.writeQueue.enqueue({
|
|
437
472
|
archiveKey: '3dSceneLayer.json.gz',
|
|
438
473
|
writePromise: function writePromise() {
|
|
@@ -440,10 +475,10 @@ var I3SConverter = function () {
|
|
|
440
475
|
}
|
|
441
476
|
});
|
|
442
477
|
case 3:
|
|
443
|
-
|
|
478
|
+
_context5.next = 7;
|
|
444
479
|
break;
|
|
445
480
|
case 5:
|
|
446
|
-
|
|
481
|
+
_context5.next = 7;
|
|
447
482
|
return this.writeQueue.enqueue({
|
|
448
483
|
writePromise: function writePromise() {
|
|
449
484
|
return (0, _fileUtils.writeFile)(_this2.layers0Path, JSON.stringify(_this2.layers0));
|
|
@@ -451,9 +486,9 @@ var I3SConverter = function () {
|
|
|
451
486
|
});
|
|
452
487
|
case 7:
|
|
453
488
|
case "end":
|
|
454
|
-
return
|
|
489
|
+
return _context5.stop();
|
|
455
490
|
}
|
|
456
|
-
},
|
|
491
|
+
}, _callee5, this);
|
|
457
492
|
}));
|
|
458
493
|
function _writeLayers0() {
|
|
459
494
|
return _writeLayers.apply(this, arguments);
|
|
@@ -463,219 +498,216 @@ var I3SConverter = function () {
|
|
|
463
498
|
}, {
|
|
464
499
|
key: "_createSlpk",
|
|
465
500
|
value: function () {
|
|
466
|
-
var _createSlpk2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function
|
|
501
|
+
var _createSlpk2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee6(tilesetPath) {
|
|
467
502
|
var slpkTilesetPath, slpkFileName;
|
|
468
|
-
return _regenerator.default.wrap(function
|
|
469
|
-
while (1) switch (
|
|
503
|
+
return _regenerator.default.wrap(function _callee6$(_context6) {
|
|
504
|
+
while (1) switch (_context6.prev = _context6.next) {
|
|
470
505
|
case 0:
|
|
471
506
|
if (!this.options.slpk) {
|
|
472
|
-
|
|
507
|
+
_context6.next = 12;
|
|
473
508
|
break;
|
|
474
509
|
}
|
|
475
510
|
slpkTilesetPath = (0, _path.join)(tilesetPath, 'SceneServer', 'layers', '0');
|
|
476
511
|
slpkFileName = "".concat(tilesetPath, ".slpk");
|
|
477
|
-
|
|
512
|
+
_context6.next = 5;
|
|
478
513
|
return (0, _compressUtil.compressWithChildProcess)(slpkTilesetPath, slpkFileName, 0, '.', this.options.sevenZipExe);
|
|
479
514
|
case 5:
|
|
480
|
-
|
|
481
|
-
|
|
515
|
+
_context6.prev = 5;
|
|
516
|
+
_context6.next = 8;
|
|
482
517
|
return (0, _fileUtils.removeDir)(tilesetPath);
|
|
483
518
|
case 8:
|
|
484
|
-
|
|
519
|
+
_context6.next = 12;
|
|
485
520
|
break;
|
|
486
521
|
case 10:
|
|
487
|
-
|
|
488
|
-
|
|
522
|
+
_context6.prev = 10;
|
|
523
|
+
_context6.t0 = _context6["catch"](5);
|
|
489
524
|
case 12:
|
|
490
525
|
case "end":
|
|
491
|
-
return
|
|
526
|
+
return _context6.stop();
|
|
492
527
|
}
|
|
493
|
-
},
|
|
528
|
+
}, _callee6, this, [[5, 10]]);
|
|
494
529
|
}));
|
|
495
|
-
function _createSlpk(
|
|
530
|
+
function _createSlpk(_x6) {
|
|
496
531
|
return _createSlpk2.apply(this, arguments);
|
|
497
532
|
}
|
|
498
533
|
return _createSlpk;
|
|
499
534
|
}()
|
|
500
535
|
}, {
|
|
501
|
-
key: "
|
|
536
|
+
key: "convertTile",
|
|
502
537
|
value: function () {
|
|
503
|
-
var
|
|
504
|
-
|
|
505
|
-
while (1) switch (_context6.prev = _context6.next) {
|
|
506
|
-
case 0:
|
|
507
|
-
_context6.next = 2;
|
|
508
|
-
return this._addChildren(data);
|
|
509
|
-
case 2:
|
|
510
|
-
_context6.next = 4;
|
|
511
|
-
return data.parentNode.addNeighbors();
|
|
512
|
-
case 4:
|
|
513
|
-
case "end":
|
|
514
|
-
return _context6.stop();
|
|
515
|
-
}
|
|
516
|
-
}, _callee6, this);
|
|
517
|
-
}));
|
|
518
|
-
function _addChildrenWithNeighborsAndWriteFile(_x8) {
|
|
519
|
-
return _addChildrenWithNeighborsAndWriteFile2.apply(this, arguments);
|
|
520
|
-
}
|
|
521
|
-
return _addChildrenWithNeighborsAndWriteFile;
|
|
522
|
-
}()
|
|
523
|
-
}, {
|
|
524
|
-
key: "convertNestedTileset",
|
|
525
|
-
value: function () {
|
|
526
|
-
var _convertNestedTileset = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee7(_ref) {
|
|
527
|
-
var parentNode, sourceTile, level;
|
|
538
|
+
var _convertTile = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee7(sourceTile, traversalProps) {
|
|
539
|
+
var parentNodes, transform, transformationMatrix, parentNode, childNodes, newTraversalProps;
|
|
528
540
|
return _regenerator.default.wrap(function _callee7$(_context7) {
|
|
529
541
|
while (1) switch (_context7.prev = _context7.next) {
|
|
530
542
|
case 0:
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
543
|
+
if (!(sourceTile.type === 'json' || sourceTile.type === 'empty')) {
|
|
544
|
+
_context7.next = 6;
|
|
545
|
+
break;
|
|
546
|
+
}
|
|
547
|
+
if (!(sourceTile.type === 'json')) {
|
|
548
|
+
_context7.next = 5;
|
|
549
|
+
break;
|
|
550
|
+
}
|
|
551
|
+
if (sourceTile.id) {
|
|
552
|
+
console.log("[load]: ".concat(sourceTile.id));
|
|
553
|
+
}
|
|
535
554
|
_context7.next = 5;
|
|
536
|
-
return this.
|
|
537
|
-
parentNode: parentNode,
|
|
538
|
-
sourceTiles: sourceTile.children,
|
|
539
|
-
level: level + 1
|
|
540
|
-
});
|
|
555
|
+
return (0, _load3dTiles.loadNestedTileset)(this.sourceTileset, sourceTile, this.loadOptions);
|
|
541
556
|
case 5:
|
|
542
|
-
_context7.
|
|
543
|
-
|
|
544
|
-
|
|
557
|
+
return _context7.abrupt("return", traversalProps);
|
|
558
|
+
case 6:
|
|
559
|
+
if (sourceTile.id) {
|
|
560
|
+
console.log("[convert]: ".concat(sourceTile.id));
|
|
561
|
+
}
|
|
562
|
+
parentNodes = traversalProps.parentNodes, transform = traversalProps.transform;
|
|
563
|
+
transformationMatrix = transform.clone();
|
|
564
|
+
if (sourceTile.transform) {
|
|
565
|
+
transformationMatrix = transformationMatrix.multiplyRight(sourceTile.transform);
|
|
566
|
+
}
|
|
567
|
+
parentNode = parentNodes[0];
|
|
568
|
+
_context7.next = 13;
|
|
569
|
+
return this._createNode(parentNode, sourceTile, transformationMatrix);
|
|
570
|
+
case 13:
|
|
571
|
+
childNodes = _context7.sent;
|
|
572
|
+
_context7.next = 16;
|
|
573
|
+
return parentNode.addChildren(childNodes);
|
|
574
|
+
case 16:
|
|
575
|
+
newTraversalProps = {
|
|
576
|
+
transform: transformationMatrix,
|
|
577
|
+
parentNodes: childNodes
|
|
578
|
+
};
|
|
579
|
+
return _context7.abrupt("return", newTraversalProps);
|
|
580
|
+
case 18:
|
|
545
581
|
case "end":
|
|
546
582
|
return _context7.stop();
|
|
547
583
|
}
|
|
548
584
|
}, _callee7, this);
|
|
549
585
|
}));
|
|
550
|
-
function
|
|
551
|
-
return
|
|
586
|
+
function convertTile(_x7, _x8) {
|
|
587
|
+
return _convertTile.apply(this, arguments);
|
|
552
588
|
}
|
|
553
|
-
return
|
|
589
|
+
return convertTile;
|
|
554
590
|
}()
|
|
555
591
|
}, {
|
|
556
|
-
key: "
|
|
592
|
+
key: "finalizeTile",
|
|
557
593
|
value: function () {
|
|
558
|
-
var
|
|
559
|
-
var
|
|
594
|
+
var _finalizeTile = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee8(conversionResults, currentTraversalProps) {
|
|
595
|
+
var _iterator2, _step2, result, _iterator4, _step4, node, _iterator3, _step3, _node;
|
|
560
596
|
return _regenerator.default.wrap(function _callee8$(_context8) {
|
|
561
597
|
while (1) switch (_context8.prev = _context8.next) {
|
|
562
598
|
case 0:
|
|
563
|
-
|
|
564
|
-
_context8.
|
|
565
|
-
|
|
566
|
-
case 3:
|
|
567
|
-
childNodes = _context8.sent;
|
|
568
|
-
_context8.next = 6;
|
|
569
|
-
return parentNode.addChildren(childNodes);
|
|
570
|
-
case 6:
|
|
571
|
-
case "end":
|
|
572
|
-
return _context8.stop();
|
|
573
|
-
}
|
|
574
|
-
}, _callee8, this);
|
|
575
|
-
}));
|
|
576
|
-
function convertNode(_x10) {
|
|
577
|
-
return _convertNode.apply(this, arguments);
|
|
578
|
-
}
|
|
579
|
-
return convertNode;
|
|
580
|
-
}()
|
|
581
|
-
}, {
|
|
582
|
-
key: "_addChildren",
|
|
583
|
-
value: function () {
|
|
584
|
-
var _addChildren2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee9(data) {
|
|
585
|
-
var sourceTiles, parentNode, level, _iterator3, _step3, sourceTile;
|
|
586
|
-
return _regenerator.default.wrap(function _callee9$(_context9) {
|
|
587
|
-
while (1) switch (_context9.prev = _context9.next) {
|
|
588
|
-
case 0:
|
|
589
|
-
sourceTiles = data.sourceTiles, parentNode = data.parentNode, level = data.level;
|
|
590
|
-
if (!(this.options.maxDepth && level > this.options.maxDepth)) {
|
|
591
|
-
_context9.next = 3;
|
|
592
|
-
break;
|
|
593
|
-
}
|
|
594
|
-
return _context9.abrupt("return");
|
|
599
|
+
_iterator2 = _createForOfIteratorHelper(conversionResults);
|
|
600
|
+
_context8.prev = 1;
|
|
601
|
+
_iterator2.s();
|
|
595
602
|
case 3:
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
_iterator3.s();
|
|
599
|
-
case 6:
|
|
600
|
-
if ((_step3 = _iterator3.n()).done) {
|
|
601
|
-
_context9.next = 18;
|
|
603
|
+
if ((_step2 = _iterator2.n()).done) {
|
|
604
|
+
_context8.next = 24;
|
|
602
605
|
break;
|
|
603
606
|
}
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
+
result = _step2.value;
|
|
608
|
+
_iterator4 = _createForOfIteratorHelper(result.parentNodes);
|
|
609
|
+
_context8.prev = 6;
|
|
610
|
+
_iterator4.s();
|
|
611
|
+
case 8:
|
|
612
|
+
if ((_step4 = _iterator4.n()).done) {
|
|
613
|
+
_context8.next = 14;
|
|
607
614
|
break;
|
|
608
615
|
}
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
case
|
|
616
|
-
|
|
616
|
+
node = _step4.value;
|
|
617
|
+
_context8.next = 12;
|
|
618
|
+
return node.addNeighbors();
|
|
619
|
+
case 12:
|
|
620
|
+
_context8.next = 8;
|
|
621
|
+
break;
|
|
622
|
+
case 14:
|
|
623
|
+
_context8.next = 19;
|
|
617
624
|
break;
|
|
618
|
-
case 13:
|
|
619
|
-
_context9.next = 15;
|
|
620
|
-
return this.convertNode({
|
|
621
|
-
parentNode: parentNode,
|
|
622
|
-
sourceTile: sourceTile,
|
|
623
|
-
level: level
|
|
624
|
-
});
|
|
625
|
-
case 15:
|
|
626
|
-
if (sourceTile.id) {
|
|
627
|
-
console.log(sourceTile.id);
|
|
628
|
-
}
|
|
629
625
|
case 16:
|
|
630
|
-
|
|
626
|
+
_context8.prev = 16;
|
|
627
|
+
_context8.t0 = _context8["catch"](6);
|
|
628
|
+
_iterator4.e(_context8.t0);
|
|
629
|
+
case 19:
|
|
630
|
+
_context8.prev = 19;
|
|
631
|
+
_iterator4.f();
|
|
632
|
+
return _context8.finish(19);
|
|
633
|
+
case 22:
|
|
634
|
+
_context8.next = 3;
|
|
631
635
|
break;
|
|
632
|
-
case
|
|
633
|
-
|
|
636
|
+
case 24:
|
|
637
|
+
_context8.next = 29;
|
|
634
638
|
break;
|
|
635
|
-
case 20:
|
|
636
|
-
_context9.prev = 20;
|
|
637
|
-
_context9.t0 = _context9["catch"](4);
|
|
638
|
-
_iterator3.e(_context9.t0);
|
|
639
|
-
case 23:
|
|
640
|
-
_context9.prev = 23;
|
|
641
|
-
_iterator3.f();
|
|
642
|
-
return _context9.finish(23);
|
|
643
639
|
case 26:
|
|
640
|
+
_context8.prev = 26;
|
|
641
|
+
_context8.t1 = _context8["catch"](1);
|
|
642
|
+
_iterator2.e(_context8.t1);
|
|
643
|
+
case 29:
|
|
644
|
+
_context8.prev = 29;
|
|
645
|
+
_iterator2.f();
|
|
646
|
+
return _context8.finish(29);
|
|
647
|
+
case 32:
|
|
648
|
+
_iterator3 = _createForOfIteratorHelper(currentTraversalProps.parentNodes);
|
|
649
|
+
_context8.prev = 33;
|
|
650
|
+
_iterator3.s();
|
|
651
|
+
case 35:
|
|
652
|
+
if ((_step3 = _iterator3.n()).done) {
|
|
653
|
+
_context8.next = 41;
|
|
654
|
+
break;
|
|
655
|
+
}
|
|
656
|
+
_node = _step3.value;
|
|
657
|
+
_context8.next = 39;
|
|
658
|
+
return _node.save();
|
|
659
|
+
case 39:
|
|
660
|
+
_context8.next = 35;
|
|
661
|
+
break;
|
|
662
|
+
case 41:
|
|
663
|
+
_context8.next = 46;
|
|
664
|
+
break;
|
|
665
|
+
case 43:
|
|
666
|
+
_context8.prev = 43;
|
|
667
|
+
_context8.t2 = _context8["catch"](33);
|
|
668
|
+
_iterator3.e(_context8.t2);
|
|
669
|
+
case 46:
|
|
670
|
+
_context8.prev = 46;
|
|
671
|
+
_iterator3.f();
|
|
672
|
+
return _context8.finish(46);
|
|
673
|
+
case 49:
|
|
644
674
|
case "end":
|
|
645
|
-
return
|
|
675
|
+
return _context8.stop();
|
|
646
676
|
}
|
|
647
|
-
},
|
|
677
|
+
}, _callee8, null, [[1, 26, 29, 32], [6, 16, 19, 22], [33, 43, 46, 49]]);
|
|
648
678
|
}));
|
|
649
|
-
function
|
|
650
|
-
return
|
|
679
|
+
function finalizeTile(_x9, _x10) {
|
|
680
|
+
return _finalizeTile.apply(this, arguments);
|
|
651
681
|
}
|
|
652
|
-
return
|
|
682
|
+
return finalizeTile;
|
|
653
683
|
}()
|
|
654
684
|
}, {
|
|
655
685
|
key: "_createNode",
|
|
656
686
|
value: function () {
|
|
657
|
-
var _createNode2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function
|
|
687
|
+
var _createNode2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee9(parentNode, sourceTile, transformationMatrix) {
|
|
658
688
|
var _this$layers, _this$layers$attribut;
|
|
659
|
-
var boundingVolumes, propertyTable, resourcesData, nodes, nodeIds, nodesInPage, emptyResources,
|
|
660
|
-
return _regenerator.default.wrap(function
|
|
661
|
-
while (1) switch (
|
|
689
|
+
var tileContent, sourceBoundingVolume, boundingVolumes, propertyTable, resourcesData, nodes, nodeIds, nodesInPage, emptyResources, _iterator5, _step5, resources, lodSelection, maxScreenThresholdSQ, nodeInPage, nodeData, node, _console;
|
|
690
|
+
return _regenerator.default.wrap(function _callee9$(_context9) {
|
|
691
|
+
while (1) switch (_context9.prev = _context9.next) {
|
|
662
692
|
case 0:
|
|
663
693
|
this._checkAddRefinementTypeForTile(sourceTile);
|
|
664
|
-
|
|
694
|
+
_context9.next = 3;
|
|
665
695
|
return this._updateTilesetOptions();
|
|
666
696
|
case 3:
|
|
667
|
-
|
|
668
|
-
return this.sourceTileset.
|
|
697
|
+
_context9.next = 5;
|
|
698
|
+
return (0, _load3dTiles.loadTile3DContent)(this.sourceTileset, sourceTile, this.loadOptions);
|
|
669
699
|
case 5:
|
|
670
|
-
|
|
671
|
-
|
|
700
|
+
tileContent = _context9.sent;
|
|
701
|
+
sourceBoundingVolume = (0, _tiles.createBoundingVolume)(sourceTile.boundingVolume, transformationMatrix, null);
|
|
702
|
+
boundingVolumes = (0, _coordinateConverter.createBoundingVolumes)(sourceBoundingVolume, this.geoidHeightModel);
|
|
703
|
+
propertyTable = (0, _geometryConverter.getPropertyTable)(tileContent);
|
|
672
704
|
if (propertyTable && !((_this$layers = this.layers0) !== null && _this$layers !== void 0 && (_this$layers$attribut = _this$layers.attributeStorageInfo) !== null && _this$layers$attribut !== void 0 && _this$layers$attribut.length)) {
|
|
673
705
|
this._convertPropertyTableToNodeAttributes(propertyTable);
|
|
674
706
|
}
|
|
675
|
-
|
|
676
|
-
return this._convertResources(sourceTile, parentNode.inPageId, propertyTable);
|
|
677
|
-
case
|
|
678
|
-
resourcesData =
|
|
707
|
+
_context9.next = 12;
|
|
708
|
+
return this._convertResources(sourceTile, transformationMatrix, sourceBoundingVolume, tileContent, parentNode.inPageId, propertyTable);
|
|
709
|
+
case 12:
|
|
710
|
+
resourcesData = _context9.sent;
|
|
679
711
|
nodes = [];
|
|
680
712
|
nodeIds = [];
|
|
681
713
|
nodesInPage = [];
|
|
@@ -691,15 +723,15 @@ var I3SConverter = function () {
|
|
|
691
723
|
featureCount: null,
|
|
692
724
|
boundingVolumes: null
|
|
693
725
|
};
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
|
|
697
|
-
case
|
|
698
|
-
if ((
|
|
699
|
-
|
|
726
|
+
_iterator5 = _createForOfIteratorHelper(resourcesData || [emptyResources]);
|
|
727
|
+
_context9.prev = 18;
|
|
728
|
+
_iterator5.s();
|
|
729
|
+
case 20:
|
|
730
|
+
if ((_step5 = _iterator5.n()).done) {
|
|
731
|
+
_context9.next = 44;
|
|
700
732
|
break;
|
|
701
733
|
}
|
|
702
|
-
resources =
|
|
734
|
+
resources = _step5.value;
|
|
703
735
|
this.layersHasTexture = this.layersHasTexture || Boolean(resources.texture);
|
|
704
736
|
if (this.generateBoundingVolumes && resources.boundingVolumes) {
|
|
705
737
|
boundingVolumes = resources.boundingVolumes;
|
|
@@ -710,26 +742,26 @@ var I3SConverter = function () {
|
|
|
710
742
|
}) || {
|
|
711
743
|
maxError: 0
|
|
712
744
|
};
|
|
713
|
-
|
|
745
|
+
_context9.next = 28;
|
|
714
746
|
return this._updateNodeInNodePages(maxScreenThresholdSQ, boundingVolumes, sourceTile, parentNode.inPageId, resources);
|
|
715
|
-
case
|
|
716
|
-
nodeInPage =
|
|
717
|
-
|
|
747
|
+
case 28:
|
|
748
|
+
nodeInPage = _context9.sent;
|
|
749
|
+
_context9.next = 31;
|
|
718
750
|
return _nodeIndexDocument.NodeIndexDocument.createNodeIndexDocument(parentNode, boundingVolumes, lodSelection, nodeInPage, resources);
|
|
719
|
-
case
|
|
720
|
-
nodeData =
|
|
721
|
-
|
|
751
|
+
case 31:
|
|
752
|
+
nodeData = _context9.sent;
|
|
753
|
+
_context9.next = 34;
|
|
722
754
|
return new _nodeIndexDocument.NodeIndexDocument(nodeInPage.index, this).addData(nodeData);
|
|
723
|
-
case
|
|
724
|
-
node =
|
|
755
|
+
case 34:
|
|
756
|
+
node = _context9.sent;
|
|
725
757
|
nodes.push(node);
|
|
726
758
|
if (!nodeInPage.mesh) {
|
|
727
|
-
|
|
759
|
+
_context9.next = 39;
|
|
728
760
|
break;
|
|
729
761
|
}
|
|
730
|
-
|
|
762
|
+
_context9.next = 39;
|
|
731
763
|
return this._writeResources(resources, node.id);
|
|
732
|
-
case
|
|
764
|
+
case 39:
|
|
733
765
|
if (this.validate) {
|
|
734
766
|
this.boundingVolumeWarnings = (0, _nodeDebug.validateNodeBoundingVolumes)(nodeData);
|
|
735
767
|
if (this.boundingVolumeWarnings && this.boundingVolumeWarnings.length) {
|
|
@@ -738,37 +770,29 @@ var I3SConverter = function () {
|
|
|
738
770
|
}
|
|
739
771
|
nodeIds.push(nodeInPage.index);
|
|
740
772
|
nodesInPage.push(nodeInPage);
|
|
741
|
-
case 40:
|
|
742
|
-
_context10.next = 18;
|
|
743
|
-
break;
|
|
744
773
|
case 42:
|
|
745
|
-
|
|
774
|
+
_context9.next = 20;
|
|
746
775
|
break;
|
|
747
776
|
case 44:
|
|
748
|
-
|
|
749
|
-
|
|
750
|
-
|
|
751
|
-
|
|
752
|
-
|
|
753
|
-
|
|
754
|
-
|
|
755
|
-
|
|
756
|
-
|
|
757
|
-
|
|
758
|
-
|
|
759
|
-
|
|
760
|
-
sourceTiles: sourceTile.children,
|
|
761
|
-
level: level + 1
|
|
762
|
-
});
|
|
777
|
+
_context9.next = 49;
|
|
778
|
+
break;
|
|
779
|
+
case 46:
|
|
780
|
+
_context9.prev = 46;
|
|
781
|
+
_context9.t0 = _context9["catch"](18);
|
|
782
|
+
_iterator5.e(_context9.t0);
|
|
783
|
+
case 49:
|
|
784
|
+
_context9.prev = 49;
|
|
785
|
+
_iterator5.f();
|
|
786
|
+
return _context9.finish(49);
|
|
787
|
+
case 52:
|
|
788
|
+
return _context9.abrupt("return", nodes);
|
|
763
789
|
case 53:
|
|
764
|
-
return _context10.abrupt("return", nodes);
|
|
765
|
-
case 54:
|
|
766
790
|
case "end":
|
|
767
|
-
return
|
|
791
|
+
return _context9.stop();
|
|
768
792
|
}
|
|
769
|
-
},
|
|
793
|
+
}, _callee9, this, [[18, 46, 49, 52]]);
|
|
770
794
|
}));
|
|
771
|
-
function _createNode(_x12, _x13
|
|
795
|
+
function _createNode(_x11, _x12, _x13) {
|
|
772
796
|
return _createNode2.apply(this, arguments);
|
|
773
797
|
}
|
|
774
798
|
return _createNode;
|
|
@@ -776,52 +800,52 @@ var I3SConverter = function () {
|
|
|
776
800
|
}, {
|
|
777
801
|
key: "_convertResources",
|
|
778
802
|
value: function () {
|
|
779
|
-
var _convertResources2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function
|
|
803
|
+
var _convertResources2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee11(sourceTile, transformationMatrix, boundingVolume, tileContent, parentId, propertyTable) {
|
|
780
804
|
var _this3 = this,
|
|
781
805
|
_this$layers2;
|
|
782
806
|
var draftObb, resourcesData;
|
|
783
|
-
return _regenerator.default.wrap(function
|
|
784
|
-
while (1) switch (
|
|
807
|
+
return _regenerator.default.wrap(function _callee11$(_context11) {
|
|
808
|
+
while (1) switch (_context11.prev = _context11.next) {
|
|
785
809
|
case 0:
|
|
786
|
-
if (this.isContentSupported(sourceTile)) {
|
|
787
|
-
|
|
810
|
+
if (!(!this.isContentSupported(sourceTile) || !tileContent)) {
|
|
811
|
+
_context11.next = 2;
|
|
788
812
|
break;
|
|
789
813
|
}
|
|
790
|
-
return
|
|
814
|
+
return _context11.abrupt("return", null);
|
|
791
815
|
case 2:
|
|
792
816
|
draftObb = {
|
|
793
817
|
center: [],
|
|
794
818
|
halfSize: [],
|
|
795
819
|
quaternion: []
|
|
796
820
|
};
|
|
797
|
-
|
|
798
|
-
return (0, _geometryConverter.default)(
|
|
799
|
-
return _regenerator.default.wrap(function
|
|
800
|
-
while (1) switch (
|
|
821
|
+
_context11.next = 5;
|
|
822
|
+
return (0, _geometryConverter.default)(tileContent, transformationMatrix, boundingVolume, (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee10() {
|
|
823
|
+
return _regenerator.default.wrap(function _callee10$(_context10) {
|
|
824
|
+
while (1) switch (_context10.prev = _context10.next) {
|
|
801
825
|
case 0:
|
|
802
|
-
|
|
826
|
+
_context10.next = 2;
|
|
803
827
|
return _this3.nodePages.push({
|
|
804
828
|
index: 0,
|
|
805
829
|
obb: draftObb
|
|
806
830
|
}, parentId);
|
|
807
831
|
case 2:
|
|
808
|
-
return
|
|
832
|
+
return _context10.abrupt("return", _context10.sent.index);
|
|
809
833
|
case 3:
|
|
810
834
|
case "end":
|
|
811
|
-
return
|
|
835
|
+
return _context10.stop();
|
|
812
836
|
}
|
|
813
|
-
},
|
|
837
|
+
}, _callee10);
|
|
814
838
|
})), propertyTable, this.featuresHashArray, (_this$layers2 = this.layers0) === null || _this$layers2 === void 0 ? void 0 : _this$layers2.attributeStorageInfo, this.options.draco, this.generateBoundingVolumes, this.options.mergeMaterials, this.geoidHeightModel, this.workerSource);
|
|
815
839
|
case 5:
|
|
816
|
-
resourcesData =
|
|
817
|
-
return
|
|
840
|
+
resourcesData = _context11.sent;
|
|
841
|
+
return _context11.abrupt("return", resourcesData);
|
|
818
842
|
case 7:
|
|
819
843
|
case "end":
|
|
820
|
-
return
|
|
844
|
+
return _context11.stop();
|
|
821
845
|
}
|
|
822
|
-
},
|
|
846
|
+
}, _callee11, this);
|
|
823
847
|
}));
|
|
824
|
-
function _convertResources(_x15, _x16, _x17) {
|
|
848
|
+
function _convertResources(_x14, _x15, _x16, _x17, _x18, _x19) {
|
|
825
849
|
return _convertResources2.apply(this, arguments);
|
|
826
850
|
}
|
|
827
851
|
return _convertResources;
|
|
@@ -829,10 +853,10 @@ var I3SConverter = function () {
|
|
|
829
853
|
}, {
|
|
830
854
|
key: "_updateNodeInNodePages",
|
|
831
855
|
value: function () {
|
|
832
|
-
var _updateNodeInNodePages2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function
|
|
856
|
+
var _updateNodeInNodePages2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee12(maxScreenThresholdSQ, boundingVolumes, sourceTile, parentId, resources) {
|
|
833
857
|
var meshMaterial, texture, vertexCount, featureCount, geometry, hasUvRegions, nodeInPage, nodeId, node, texelCountHint;
|
|
834
|
-
return _regenerator.default.wrap(function
|
|
835
|
-
while (1) switch (
|
|
858
|
+
return _regenerator.default.wrap(function _callee12$(_context12) {
|
|
859
|
+
while (1) switch (_context12.prev = _context12.next) {
|
|
836
860
|
case 0:
|
|
837
861
|
meshMaterial = resources.meshMaterial, texture = resources.texture, vertexCount = resources.vertexCount, featureCount = resources.featureCount, geometry = resources.geometry, hasUvRegions = resources.hasUvRegions;
|
|
838
862
|
nodeInPage = {
|
|
@@ -857,20 +881,20 @@ var I3SConverter = function () {
|
|
|
857
881
|
}
|
|
858
882
|
nodeId = resources.nodeId;
|
|
859
883
|
if (nodeId) {
|
|
860
|
-
|
|
884
|
+
_context12.next = 10;
|
|
861
885
|
break;
|
|
862
886
|
}
|
|
863
|
-
|
|
887
|
+
_context12.next = 7;
|
|
864
888
|
return this.nodePages.push(nodeInPage, parentId);
|
|
865
889
|
case 7:
|
|
866
|
-
node =
|
|
867
|
-
|
|
890
|
+
node = _context12.sent;
|
|
891
|
+
_context12.next = 13;
|
|
868
892
|
break;
|
|
869
893
|
case 10:
|
|
870
|
-
|
|
894
|
+
_context12.next = 12;
|
|
871
895
|
return this.nodePages.getNodeById(nodeId);
|
|
872
896
|
case 12:
|
|
873
|
-
node =
|
|
897
|
+
node = _context12.sent;
|
|
874
898
|
case 13:
|
|
875
899
|
_nodePages.default.updateAll(node, nodeInPage);
|
|
876
900
|
if (meshMaterial) {
|
|
@@ -889,14 +913,14 @@ var I3SConverter = function () {
|
|
|
889
913
|
_nodePages.default.updateFeatureCountByNodeId(node, featureCount);
|
|
890
914
|
}
|
|
891
915
|
this.nodePages.saveNode(node);
|
|
892
|
-
return
|
|
916
|
+
return _context12.abrupt("return", node);
|
|
893
917
|
case 21:
|
|
894
918
|
case "end":
|
|
895
|
-
return
|
|
919
|
+
return _context12.stop();
|
|
896
920
|
}
|
|
897
|
-
},
|
|
921
|
+
}, _callee12, this);
|
|
898
922
|
}));
|
|
899
|
-
function _updateNodeInNodePages(
|
|
923
|
+
function _updateNodeInNodePages(_x20, _x21, _x22, _x23, _x24) {
|
|
900
924
|
return _updateNodeInNodePages2.apply(this, arguments);
|
|
901
925
|
}
|
|
902
926
|
return _updateNodeInNodePages;
|
|
@@ -904,32 +928,32 @@ var I3SConverter = function () {
|
|
|
904
928
|
}, {
|
|
905
929
|
key: "_writeResources",
|
|
906
930
|
value: function () {
|
|
907
|
-
var _writeResources2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function
|
|
931
|
+
var _writeResources2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee13(resources, nodePath) {
|
|
908
932
|
var geometryBuffer, compressedGeometry, texture, sharedResources, attributes, childPath, slpkChildPath;
|
|
909
|
-
return _regenerator.default.wrap(function
|
|
910
|
-
while (1) switch (
|
|
933
|
+
return _regenerator.default.wrap(function _callee13$(_context13) {
|
|
934
|
+
while (1) switch (_context13.prev = _context13.next) {
|
|
911
935
|
case 0:
|
|
912
936
|
geometryBuffer = resources.geometry, compressedGeometry = resources.compressedGeometry, texture = resources.texture, sharedResources = resources.sharedResources, attributes = resources.attributes;
|
|
913
937
|
childPath = (0, _path.join)(this.layers0Path, 'nodes', nodePath);
|
|
914
938
|
slpkChildPath = (0, _path.join)('nodes', nodePath);
|
|
915
|
-
|
|
939
|
+
_context13.next = 5;
|
|
916
940
|
return this._writeGeometries(geometryBuffer, compressedGeometry, childPath, slpkChildPath);
|
|
917
941
|
case 5:
|
|
918
|
-
|
|
942
|
+
_context13.next = 7;
|
|
919
943
|
return this._writeShared(sharedResources, childPath, slpkChildPath, nodePath);
|
|
920
944
|
case 7:
|
|
921
|
-
|
|
945
|
+
_context13.next = 9;
|
|
922
946
|
return this._writeTexture(texture, childPath, slpkChildPath);
|
|
923
947
|
case 9:
|
|
924
|
-
|
|
948
|
+
_context13.next = 11;
|
|
925
949
|
return this._writeAttributes(attributes, childPath, slpkChildPath);
|
|
926
950
|
case 11:
|
|
927
951
|
case "end":
|
|
928
|
-
return
|
|
952
|
+
return _context13.stop();
|
|
929
953
|
}
|
|
930
|
-
},
|
|
954
|
+
}, _callee13, this);
|
|
931
955
|
}));
|
|
932
|
-
function _writeResources(
|
|
956
|
+
function _writeResources(_x25, _x26) {
|
|
933
957
|
return _writeResources2.apply(this, arguments);
|
|
934
958
|
}
|
|
935
959
|
return _writeResources;
|
|
@@ -937,17 +961,17 @@ var I3SConverter = function () {
|
|
|
937
961
|
}, {
|
|
938
962
|
key: "_writeGeometries",
|
|
939
963
|
value: function () {
|
|
940
|
-
var _writeGeometries2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function
|
|
964
|
+
var _writeGeometries2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee14(geometryBuffer, compressedGeometry, childPath, slpkChildPath) {
|
|
941
965
|
var slpkGeometryPath, geometryPath, slpkCompressedGeometryPath, compressedGeometryPath;
|
|
942
|
-
return _regenerator.default.wrap(function
|
|
943
|
-
while (1) switch (
|
|
966
|
+
return _regenerator.default.wrap(function _callee14$(_context14) {
|
|
967
|
+
while (1) switch (_context14.prev = _context14.next) {
|
|
944
968
|
case 0:
|
|
945
969
|
if (!this.options.slpk) {
|
|
946
|
-
|
|
970
|
+
_context14.next = 6;
|
|
947
971
|
break;
|
|
948
972
|
}
|
|
949
973
|
slpkGeometryPath = (0, _path.join)(childPath, 'geometries');
|
|
950
|
-
|
|
974
|
+
_context14.next = 4;
|
|
951
975
|
return this.writeQueue.enqueue({
|
|
952
976
|
archiveKey: "".concat(slpkChildPath, "/geometries/0.bin.gz"),
|
|
953
977
|
writePromise: function writePromise() {
|
|
@@ -955,11 +979,11 @@ var I3SConverter = function () {
|
|
|
955
979
|
}
|
|
956
980
|
});
|
|
957
981
|
case 4:
|
|
958
|
-
|
|
982
|
+
_context14.next = 9;
|
|
959
983
|
break;
|
|
960
984
|
case 6:
|
|
961
985
|
geometryPath = (0, _path.join)(childPath, 'geometries/0/');
|
|
962
|
-
|
|
986
|
+
_context14.next = 9;
|
|
963
987
|
return this.writeQueue.enqueue({
|
|
964
988
|
writePromise: function writePromise() {
|
|
965
989
|
return (0, _fileUtils.writeFile)(geometryPath, geometryBuffer, 'index.bin');
|
|
@@ -967,15 +991,15 @@ var I3SConverter = function () {
|
|
|
967
991
|
});
|
|
968
992
|
case 9:
|
|
969
993
|
if (!this.options.draco) {
|
|
970
|
-
|
|
994
|
+
_context14.next = 19;
|
|
971
995
|
break;
|
|
972
996
|
}
|
|
973
997
|
if (!this.options.slpk) {
|
|
974
|
-
|
|
998
|
+
_context14.next = 16;
|
|
975
999
|
break;
|
|
976
1000
|
}
|
|
977
1001
|
slpkCompressedGeometryPath = (0, _path.join)(childPath, 'geometries');
|
|
978
|
-
|
|
1002
|
+
_context14.next = 14;
|
|
979
1003
|
return this.writeQueue.enqueue({
|
|
980
1004
|
archiveKey: "".concat(slpkChildPath, "/geometries/1.bin.gz"),
|
|
981
1005
|
writePromise: function writePromise() {
|
|
@@ -983,11 +1007,11 @@ var I3SConverter = function () {
|
|
|
983
1007
|
}
|
|
984
1008
|
});
|
|
985
1009
|
case 14:
|
|
986
|
-
|
|
1010
|
+
_context14.next = 19;
|
|
987
1011
|
break;
|
|
988
1012
|
case 16:
|
|
989
1013
|
compressedGeometryPath = (0, _path.join)(childPath, 'geometries/1/');
|
|
990
|
-
|
|
1014
|
+
_context14.next = 19;
|
|
991
1015
|
return this.writeQueue.enqueue({
|
|
992
1016
|
writePromise: function writePromise() {
|
|
993
1017
|
return (0, _fileUtils.writeFile)(compressedGeometryPath, compressedGeometry, 'index.bin');
|
|
@@ -995,11 +1019,11 @@ var I3SConverter = function () {
|
|
|
995
1019
|
});
|
|
996
1020
|
case 19:
|
|
997
1021
|
case "end":
|
|
998
|
-
return
|
|
1022
|
+
return _context14.stop();
|
|
999
1023
|
}
|
|
1000
|
-
},
|
|
1024
|
+
}, _callee14, this);
|
|
1001
1025
|
}));
|
|
1002
|
-
function _writeGeometries(
|
|
1026
|
+
function _writeGeometries(_x27, _x28, _x29, _x30) {
|
|
1003
1027
|
return _writeGeometries2.apply(this, arguments);
|
|
1004
1028
|
}
|
|
1005
1029
|
return _writeGeometries;
|
|
@@ -1007,26 +1031,26 @@ var I3SConverter = function () {
|
|
|
1007
1031
|
}, {
|
|
1008
1032
|
key: "_writeShared",
|
|
1009
1033
|
value: function () {
|
|
1010
|
-
var _writeShared2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function
|
|
1034
|
+
var _writeShared2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee15(sharedResources, childPath, slpkChildPath, nodePath) {
|
|
1011
1035
|
var sharedData, sharedDataStr, slpkSharedPath, sharedPath;
|
|
1012
|
-
return _regenerator.default.wrap(function
|
|
1013
|
-
while (1) switch (
|
|
1036
|
+
return _regenerator.default.wrap(function _callee15$(_context15) {
|
|
1037
|
+
while (1) switch (_context15.prev = _context15.next) {
|
|
1014
1038
|
case 0:
|
|
1015
1039
|
if (sharedResources) {
|
|
1016
|
-
|
|
1040
|
+
_context15.next = 2;
|
|
1017
1041
|
break;
|
|
1018
1042
|
}
|
|
1019
|
-
return
|
|
1043
|
+
return _context15.abrupt("return");
|
|
1020
1044
|
case 2:
|
|
1021
1045
|
sharedResources.nodePath = nodePath;
|
|
1022
1046
|
sharedData = (0, _jsonMapTransform.default)(sharedResources, (0, _sharedResources.SHARED_RESOURCES)());
|
|
1023
1047
|
sharedDataStr = JSON.stringify(sharedData);
|
|
1024
1048
|
if (!this.options.slpk) {
|
|
1025
|
-
|
|
1049
|
+
_context15.next = 11;
|
|
1026
1050
|
break;
|
|
1027
1051
|
}
|
|
1028
1052
|
slpkSharedPath = (0, _path.join)(childPath, 'shared');
|
|
1029
|
-
|
|
1053
|
+
_context15.next = 9;
|
|
1030
1054
|
return this.writeQueue.enqueue({
|
|
1031
1055
|
archiveKey: "".concat(slpkChildPath, "/shared/sharedResource.json.gz"),
|
|
1032
1056
|
writePromise: function writePromise() {
|
|
@@ -1034,11 +1058,11 @@ var I3SConverter = function () {
|
|
|
1034
1058
|
}
|
|
1035
1059
|
});
|
|
1036
1060
|
case 9:
|
|
1037
|
-
|
|
1061
|
+
_context15.next = 14;
|
|
1038
1062
|
break;
|
|
1039
1063
|
case 11:
|
|
1040
1064
|
sharedPath = (0, _path.join)(childPath, 'shared/');
|
|
1041
|
-
|
|
1065
|
+
_context15.next = 14;
|
|
1042
1066
|
return this.writeQueue.enqueue({
|
|
1043
1067
|
writePromise: function writePromise() {
|
|
1044
1068
|
return (0, _fileUtils.writeFile)(sharedPath, sharedDataStr);
|
|
@@ -1046,11 +1070,11 @@ var I3SConverter = function () {
|
|
|
1046
1070
|
});
|
|
1047
1071
|
case 14:
|
|
1048
1072
|
case "end":
|
|
1049
|
-
return
|
|
1073
|
+
return _context15.stop();
|
|
1050
1074
|
}
|
|
1051
|
-
},
|
|
1075
|
+
}, _callee15, this);
|
|
1052
1076
|
}));
|
|
1053
|
-
function _writeShared(
|
|
1077
|
+
function _writeShared(_x31, _x32, _x33, _x34) {
|
|
1054
1078
|
return _writeShared2.apply(this, arguments);
|
|
1055
1079
|
}
|
|
1056
1080
|
return _writeShared;
|
|
@@ -1058,31 +1082,31 @@ var I3SConverter = function () {
|
|
|
1058
1082
|
}, {
|
|
1059
1083
|
key: "_writeTexture",
|
|
1060
1084
|
value: function () {
|
|
1061
|
-
var _writeTexture2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function
|
|
1085
|
+
var _writeTexture2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee16(texture, childPath, slpkChildPath) {
|
|
1062
1086
|
var format, formats, textureData, copyArrayBuffer, arrayToEncode, ktx2TextureData, decodedFromKTX2TextureData;
|
|
1063
|
-
return _regenerator.default.wrap(function
|
|
1064
|
-
while (1) switch (
|
|
1087
|
+
return _regenerator.default.wrap(function _callee16$(_context16) {
|
|
1088
|
+
while (1) switch (_context16.prev = _context16.next) {
|
|
1065
1089
|
case 0:
|
|
1066
1090
|
if (!texture) {
|
|
1067
|
-
|
|
1091
|
+
_context16.next = 27;
|
|
1068
1092
|
break;
|
|
1069
1093
|
}
|
|
1070
1094
|
format = this._getFormatByMimeType(texture === null || texture === void 0 ? void 0 : texture.mimeType);
|
|
1071
1095
|
formats = [];
|
|
1072
1096
|
textureData = texture.bufferView.data;
|
|
1073
|
-
|
|
1074
|
-
|
|
1097
|
+
_context16.t0 = format;
|
|
1098
|
+
_context16.next = _context16.t0 === 'jpg' ? 7 : _context16.t0 === 'png' ? 7 : _context16.t0 === 'ktx2' ? 18 : 26;
|
|
1075
1099
|
break;
|
|
1076
1100
|
case 7:
|
|
1077
1101
|
formats.push({
|
|
1078
1102
|
name: '0',
|
|
1079
1103
|
format: format
|
|
1080
1104
|
});
|
|
1081
|
-
|
|
1105
|
+
_context16.next = 10;
|
|
1082
1106
|
return this.writeTextureFile(textureData, '0', format, childPath, slpkChildPath);
|
|
1083
1107
|
case 10:
|
|
1084
1108
|
if (!this.generateTextures) {
|
|
1085
|
-
|
|
1109
|
+
_context16.next = 17;
|
|
1086
1110
|
break;
|
|
1087
1111
|
}
|
|
1088
1112
|
formats.push({
|
|
@@ -1098,20 +1122,20 @@ var I3SConverter = function () {
|
|
|
1098
1122
|
reuseWorkers: true,
|
|
1099
1123
|
_nodeWorkers: true
|
|
1100
1124
|
}));
|
|
1101
|
-
|
|
1125
|
+
_context16.next = 17;
|
|
1102
1126
|
return this.writeTextureFile(ktx2TextureData, '1', 'ktx2', childPath, slpkChildPath);
|
|
1103
1127
|
case 17:
|
|
1104
|
-
return
|
|
1128
|
+
return _context16.abrupt("break", 26);
|
|
1105
1129
|
case 18:
|
|
1106
1130
|
formats.push({
|
|
1107
1131
|
name: '1',
|
|
1108
1132
|
format: format
|
|
1109
1133
|
});
|
|
1110
|
-
|
|
1134
|
+
_context16.next = 21;
|
|
1111
1135
|
return this.writeTextureFile(textureData, '1', format, childPath, slpkChildPath);
|
|
1112
1136
|
case 21:
|
|
1113
1137
|
if (!this.generateTextures) {
|
|
1114
|
-
|
|
1138
|
+
_context16.next = 26;
|
|
1115
1139
|
break;
|
|
1116
1140
|
}
|
|
1117
1141
|
formats.push({
|
|
@@ -1119,7 +1143,7 @@ var I3SConverter = function () {
|
|
|
1119
1143
|
format: 'jpg'
|
|
1120
1144
|
});
|
|
1121
1145
|
decodedFromKTX2TextureData = (0, _core.encode)(texture.image.data[0], _images.ImageWriter);
|
|
1122
|
-
|
|
1146
|
+
_context16.next = 26;
|
|
1123
1147
|
return this.writeTextureFile(decodedFromKTX2TextureData, '0', 'jpg', childPath, slpkChildPath);
|
|
1124
1148
|
case 26:
|
|
1125
1149
|
if (!this.layers0.textureSetDefinitions.length) {
|
|
@@ -1133,11 +1157,11 @@ var I3SConverter = function () {
|
|
|
1133
1157
|
}
|
|
1134
1158
|
case 27:
|
|
1135
1159
|
case "end":
|
|
1136
|
-
return
|
|
1160
|
+
return _context16.stop();
|
|
1137
1161
|
}
|
|
1138
|
-
},
|
|
1162
|
+
}, _callee16, this);
|
|
1139
1163
|
}));
|
|
1140
|
-
function _writeTexture(
|
|
1164
|
+
function _writeTexture(_x35, _x36, _x37) {
|
|
1141
1165
|
return _writeTexture2.apply(this, arguments);
|
|
1142
1166
|
}
|
|
1143
1167
|
return _writeTexture;
|
|
@@ -1145,18 +1169,18 @@ var I3SConverter = function () {
|
|
|
1145
1169
|
}, {
|
|
1146
1170
|
key: "writeTextureFile",
|
|
1147
1171
|
value: function () {
|
|
1148
|
-
var _writeTextureFile = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function
|
|
1172
|
+
var _writeTextureFile = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee17(textureData, name, format, childPath, slpkChildPath) {
|
|
1149
1173
|
var slpkTexturePath, compress, texturePath;
|
|
1150
|
-
return _regenerator.default.wrap(function
|
|
1151
|
-
while (1) switch (
|
|
1174
|
+
return _regenerator.default.wrap(function _callee17$(_context17) {
|
|
1175
|
+
while (1) switch (_context17.prev = _context17.next) {
|
|
1152
1176
|
case 0:
|
|
1153
1177
|
if (!this.options.slpk) {
|
|
1154
|
-
|
|
1178
|
+
_context17.next = 7;
|
|
1155
1179
|
break;
|
|
1156
1180
|
}
|
|
1157
1181
|
slpkTexturePath = (0, _path.join)(childPath, 'textures');
|
|
1158
1182
|
compress = false;
|
|
1159
|
-
|
|
1183
|
+
_context17.next = 5;
|
|
1160
1184
|
return this.writeQueue.enqueue({
|
|
1161
1185
|
archiveKey: "".concat(slpkChildPath, "/textures/").concat(name, ".").concat(format),
|
|
1162
1186
|
writePromise: function writePromise() {
|
|
@@ -1164,11 +1188,11 @@ var I3SConverter = function () {
|
|
|
1164
1188
|
}
|
|
1165
1189
|
});
|
|
1166
1190
|
case 5:
|
|
1167
|
-
|
|
1191
|
+
_context17.next = 10;
|
|
1168
1192
|
break;
|
|
1169
1193
|
case 7:
|
|
1170
1194
|
texturePath = (0, _path.join)(childPath, "textures/".concat(name, "/"));
|
|
1171
|
-
|
|
1195
|
+
_context17.next = 10;
|
|
1172
1196
|
return this.writeQueue.enqueue({
|
|
1173
1197
|
writePromise: function writePromise() {
|
|
1174
1198
|
return (0, _fileUtils.writeFile)(texturePath, textureData, "index.".concat(format));
|
|
@@ -1176,11 +1200,11 @@ var I3SConverter = function () {
|
|
|
1176
1200
|
});
|
|
1177
1201
|
case 10:
|
|
1178
1202
|
case "end":
|
|
1179
|
-
return
|
|
1203
|
+
return _context17.stop();
|
|
1180
1204
|
}
|
|
1181
|
-
},
|
|
1205
|
+
}, _callee17, this);
|
|
1182
1206
|
}));
|
|
1183
|
-
function writeTextureFile(
|
|
1207
|
+
function writeTextureFile(_x38, _x39, _x40, _x41, _x42) {
|
|
1184
1208
|
return _writeTextureFile.apply(this, arguments);
|
|
1185
1209
|
}
|
|
1186
1210
|
return writeTextureFile;
|
|
@@ -1188,7 +1212,7 @@ var I3SConverter = function () {
|
|
|
1188
1212
|
}, {
|
|
1189
1213
|
key: "_writeAttributes",
|
|
1190
1214
|
value: function () {
|
|
1191
|
-
var _writeAttributes2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function
|
|
1215
|
+
var _writeAttributes2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee18() {
|
|
1192
1216
|
var _this$layers3,
|
|
1193
1217
|
_this$layers3$attribu,
|
|
1194
1218
|
_this4 = this;
|
|
@@ -1197,30 +1221,30 @@ var I3SConverter = function () {
|
|
|
1197
1221
|
slpkChildPath,
|
|
1198
1222
|
_loop,
|
|
1199
1223
|
index,
|
|
1200
|
-
|
|
1201
|
-
return _regenerator.default.wrap(function
|
|
1202
|
-
while (1) switch (
|
|
1224
|
+
_args19 = arguments;
|
|
1225
|
+
return _regenerator.default.wrap(function _callee18$(_context19) {
|
|
1226
|
+
while (1) switch (_context19.prev = _context19.next) {
|
|
1203
1227
|
case 0:
|
|
1204
|
-
attributes =
|
|
1205
|
-
childPath =
|
|
1206
|
-
slpkChildPath =
|
|
1228
|
+
attributes = _args19.length > 0 && _args19[0] !== undefined ? _args19[0] : [];
|
|
1229
|
+
childPath = _args19.length > 1 ? _args19[1] : undefined;
|
|
1230
|
+
slpkChildPath = _args19.length > 2 ? _args19[2] : undefined;
|
|
1207
1231
|
if (!(attributes !== null && attributes !== void 0 && attributes.length && (_this$layers3 = this.layers0) !== null && _this$layers3 !== void 0 && (_this$layers3$attribu = _this$layers3.attributeStorageInfo) !== null && _this$layers3$attribu !== void 0 && _this$layers3$attribu.length)) {
|
|
1208
|
-
|
|
1232
|
+
_context19.next = 11;
|
|
1209
1233
|
break;
|
|
1210
1234
|
}
|
|
1211
1235
|
_loop = _regenerator.default.mark(function _loop() {
|
|
1212
1236
|
var folderName, fileBuffer, slpkAttributesPath, attributesPath;
|
|
1213
|
-
return _regenerator.default.wrap(function _loop$(
|
|
1214
|
-
while (1) switch (
|
|
1237
|
+
return _regenerator.default.wrap(function _loop$(_context18) {
|
|
1238
|
+
while (1) switch (_context18.prev = _context18.next) {
|
|
1215
1239
|
case 0:
|
|
1216
1240
|
folderName = _this4.layers0.attributeStorageInfo[index].key;
|
|
1217
1241
|
fileBuffer = new Uint8Array(attributes[index]);
|
|
1218
1242
|
if (!_this4.options.slpk) {
|
|
1219
|
-
|
|
1243
|
+
_context18.next = 8;
|
|
1220
1244
|
break;
|
|
1221
1245
|
}
|
|
1222
1246
|
slpkAttributesPath = (0, _path.join)(childPath, 'attributes', folderName);
|
|
1223
|
-
|
|
1247
|
+
_context18.next = 6;
|
|
1224
1248
|
return _this4.writeQueue.enqueue({
|
|
1225
1249
|
archiveKey: "".concat(slpkChildPath, "/attributes/").concat(folderName, ".bin.gz"),
|
|
1226
1250
|
writePromise: function writePromise() {
|
|
@@ -1228,11 +1252,11 @@ var I3SConverter = function () {
|
|
|
1228
1252
|
}
|
|
1229
1253
|
});
|
|
1230
1254
|
case 6:
|
|
1231
|
-
|
|
1255
|
+
_context18.next = 11;
|
|
1232
1256
|
break;
|
|
1233
1257
|
case 8:
|
|
1234
1258
|
attributesPath = (0, _path.join)(childPath, "attributes/".concat(folderName, "/0"));
|
|
1235
|
-
|
|
1259
|
+
_context18.next = 11;
|
|
1236
1260
|
return _this4.writeQueue.enqueue({
|
|
1237
1261
|
writePromise: function writePromise() {
|
|
1238
1262
|
return (0, _fileUtils.writeFile)(attributesPath, fileBuffer, 'index.bin');
|
|
@@ -1240,26 +1264,26 @@ var I3SConverter = function () {
|
|
|
1240
1264
|
});
|
|
1241
1265
|
case 11:
|
|
1242
1266
|
case "end":
|
|
1243
|
-
return
|
|
1267
|
+
return _context18.stop();
|
|
1244
1268
|
}
|
|
1245
1269
|
}, _loop);
|
|
1246
1270
|
});
|
|
1247
1271
|
index = 0;
|
|
1248
1272
|
case 6:
|
|
1249
1273
|
if (!(index < attributes.length)) {
|
|
1250
|
-
|
|
1274
|
+
_context19.next = 11;
|
|
1251
1275
|
break;
|
|
1252
1276
|
}
|
|
1253
|
-
return
|
|
1277
|
+
return _context19.delegateYield(_loop(), "t0", 8);
|
|
1254
1278
|
case 8:
|
|
1255
1279
|
index++;
|
|
1256
|
-
|
|
1280
|
+
_context19.next = 6;
|
|
1257
1281
|
break;
|
|
1258
1282
|
case 11:
|
|
1259
1283
|
case "end":
|
|
1260
|
-
return
|
|
1284
|
+
return _context19.stop();
|
|
1261
1285
|
}
|
|
1262
|
-
},
|
|
1286
|
+
}, _callee18, this);
|
|
1263
1287
|
}));
|
|
1264
1288
|
function _writeAttributes() {
|
|
1265
1289
|
return _writeAttributes2.apply(this, arguments);
|
|
@@ -1330,17 +1354,17 @@ var I3SConverter = function () {
|
|
|
1330
1354
|
}, {
|
|
1331
1355
|
key: "_finishConversion",
|
|
1332
1356
|
value: function () {
|
|
1333
|
-
var _finishConversion2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function
|
|
1357
|
+
var _finishConversion2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee19(params) {
|
|
1334
1358
|
var _this$refinementCount, tilesCount, tilesWithAddRefineCount, addRefinementPercentage, filesSize, diff, conversionTime;
|
|
1335
|
-
return _regenerator.default.wrap(function
|
|
1336
|
-
while (1) switch (
|
|
1359
|
+
return _regenerator.default.wrap(function _callee19$(_context20) {
|
|
1360
|
+
while (1) switch (_context20.prev = _context20.next) {
|
|
1337
1361
|
case 0:
|
|
1338
1362
|
_this$refinementCount = this.refinementCounter, tilesCount = _this$refinementCount.tilesCount, tilesWithAddRefineCount = _this$refinementCount.tilesWithAddRefineCount;
|
|
1339
1363
|
addRefinementPercentage = tilesWithAddRefineCount ? tilesWithAddRefineCount / tilesCount * 100 : 0;
|
|
1340
|
-
|
|
1364
|
+
_context20.next = 4;
|
|
1341
1365
|
return (0, _statisticUtills.calculateFilesSize)(params);
|
|
1342
1366
|
case 4:
|
|
1343
|
-
filesSize =
|
|
1367
|
+
filesSize = _context20.sent;
|
|
1344
1368
|
diff = _process.default.hrtime(this.conversionStartTime);
|
|
1345
1369
|
conversionTime = (0, _statisticUtills.timeConverter)(diff);
|
|
1346
1370
|
console.log("------------------------------------------------");
|
|
@@ -1352,11 +1376,11 @@ var I3SConverter = function () {
|
|
|
1352
1376
|
console.log("------------------------------------------------");
|
|
1353
1377
|
case 14:
|
|
1354
1378
|
case "end":
|
|
1355
|
-
return
|
|
1379
|
+
return _context20.stop();
|
|
1356
1380
|
}
|
|
1357
|
-
},
|
|
1381
|
+
}, _callee19, this);
|
|
1358
1382
|
}));
|
|
1359
|
-
function _finishConversion(
|
|
1383
|
+
function _finishConversion(_x43) {
|
|
1360
1384
|
return _finishConversion2.apply(this, arguments);
|
|
1361
1385
|
}
|
|
1362
1386
|
return _finishConversion;
|
|
@@ -1364,33 +1388,33 @@ var I3SConverter = function () {
|
|
|
1364
1388
|
}, {
|
|
1365
1389
|
key: "_fetchPreloadOptions",
|
|
1366
1390
|
value: function () {
|
|
1367
|
-
var _fetchPreloadOptions2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function
|
|
1391
|
+
var _fetchPreloadOptions2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee20() {
|
|
1368
1392
|
var options, preloadOptions;
|
|
1369
|
-
return _regenerator.default.wrap(function
|
|
1370
|
-
while (1) switch (
|
|
1393
|
+
return _regenerator.default.wrap(function _callee20$(_context21) {
|
|
1394
|
+
while (1) switch (_context21.prev = _context21.next) {
|
|
1371
1395
|
case 0:
|
|
1372
1396
|
if (this.Loader.preload) {
|
|
1373
|
-
|
|
1397
|
+
_context21.next = 2;
|
|
1374
1398
|
break;
|
|
1375
1399
|
}
|
|
1376
|
-
return
|
|
1400
|
+
return _context21.abrupt("return", {});
|
|
1377
1401
|
case 2:
|
|
1378
1402
|
options = {
|
|
1379
1403
|
'cesium-ion': {
|
|
1380
1404
|
accessToken: this.options.token || ION_DEFAULT_TOKEN
|
|
1381
1405
|
}
|
|
1382
1406
|
};
|
|
1383
|
-
|
|
1407
|
+
_context21.next = 5;
|
|
1384
1408
|
return this.Loader.preload(this.options.inputUrl, options);
|
|
1385
1409
|
case 5:
|
|
1386
|
-
preloadOptions =
|
|
1410
|
+
preloadOptions = _context21.sent;
|
|
1387
1411
|
this.refreshTokenTime = _process.default.hrtime();
|
|
1388
|
-
return
|
|
1412
|
+
return _context21.abrupt("return", _objectSpread(_objectSpread({}, options), preloadOptions));
|
|
1389
1413
|
case 8:
|
|
1390
1414
|
case "end":
|
|
1391
|
-
return
|
|
1415
|
+
return _context21.stop();
|
|
1392
1416
|
}
|
|
1393
|
-
},
|
|
1417
|
+
}, _callee20, this);
|
|
1394
1418
|
}));
|
|
1395
1419
|
function _fetchPreloadOptions() {
|
|
1396
1420
|
return _fetchPreloadOptions2.apply(this, arguments);
|
|
@@ -1400,35 +1424,34 @@ var I3SConverter = function () {
|
|
|
1400
1424
|
}, {
|
|
1401
1425
|
key: "_updateTilesetOptions",
|
|
1402
1426
|
value: function () {
|
|
1403
|
-
var _updateTilesetOptions2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function
|
|
1427
|
+
var _updateTilesetOptions2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee21() {
|
|
1404
1428
|
var diff, preloadOptions;
|
|
1405
|
-
return _regenerator.default.wrap(function
|
|
1406
|
-
while (1) switch (
|
|
1429
|
+
return _regenerator.default.wrap(function _callee21$(_context22) {
|
|
1430
|
+
while (1) switch (_context22.prev = _context22.next) {
|
|
1407
1431
|
case 0:
|
|
1408
1432
|
diff = _process.default.hrtime(this.refreshTokenTime);
|
|
1409
1433
|
if (!(diff[0] < REFRESH_TOKEN_TIMEOUT)) {
|
|
1410
|
-
|
|
1434
|
+
_context22.next = 3;
|
|
1411
1435
|
break;
|
|
1412
1436
|
}
|
|
1413
|
-
return
|
|
1437
|
+
return _context22.abrupt("return");
|
|
1414
1438
|
case 3:
|
|
1415
1439
|
this.refreshTokenTime = _process.default.hrtime();
|
|
1416
|
-
|
|
1440
|
+
_context22.next = 6;
|
|
1417
1441
|
return this._fetchPreloadOptions();
|
|
1418
1442
|
case 6:
|
|
1419
|
-
preloadOptions =
|
|
1420
|
-
this.sourceTileset.options = _objectSpread(_objectSpread({}, this.sourceTileset.options), preloadOptions);
|
|
1443
|
+
preloadOptions = _context22.sent;
|
|
1421
1444
|
if (preloadOptions.headers) {
|
|
1422
|
-
this.
|
|
1445
|
+
this.loadOptions.fetch = _objectSpread(_objectSpread({}, this.loadOptions.fetch), {}, {
|
|
1423
1446
|
headers: preloadOptions.headers
|
|
1424
1447
|
});
|
|
1425
1448
|
console.log('Authorization Bearer token has been updated');
|
|
1426
1449
|
}
|
|
1427
|
-
case
|
|
1450
|
+
case 8:
|
|
1428
1451
|
case "end":
|
|
1429
|
-
return
|
|
1452
|
+
return _context22.stop();
|
|
1430
1453
|
}
|
|
1431
|
-
},
|
|
1454
|
+
}, _callee21, this);
|
|
1432
1455
|
}));
|
|
1433
1456
|
function _updateTilesetOptions() {
|
|
1434
1457
|
return _updateTilesetOptions2.apply(this, arguments);
|
|
@@ -1447,65 +1470,64 @@ var I3SConverter = function () {
|
|
|
1447
1470
|
}
|
|
1448
1471
|
}, {
|
|
1449
1472
|
key: "isContentSupported",
|
|
1450
|
-
value: function isContentSupported(
|
|
1451
|
-
|
|
1452
|
-
return ['b3dm', 'glTF'].includes(sourceRootTile === null || sourceRootTile === void 0 ? void 0 : (_sourceRootTile$conte = sourceRootTile.content) === null || _sourceRootTile$conte === void 0 ? void 0 : _sourceRootTile$conte.type);
|
|
1473
|
+
value: function isContentSupported(sourceTile) {
|
|
1474
|
+
return ['b3dm', 'glTF', 'scenegraph'].includes(sourceTile.type || '');
|
|
1453
1475
|
}
|
|
1454
1476
|
}, {
|
|
1455
1477
|
key: "loadWorkers",
|
|
1456
1478
|
value: function () {
|
|
1457
|
-
var _loadWorkers = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function
|
|
1479
|
+
var _loadWorkers = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee22() {
|
|
1458
1480
|
var url, _sourceResponse, _source, _url, _sourceResponse2, _source2, i3sAttributesWorkerUrl, sourceResponse, source;
|
|
1459
|
-
return _regenerator.default.wrap(function
|
|
1460
|
-
while (1) switch (
|
|
1481
|
+
return _regenerator.default.wrap(function _callee22$(_context23) {
|
|
1482
|
+
while (1) switch (_context23.prev = _context23.next) {
|
|
1461
1483
|
case 0:
|
|
1462
1484
|
console.log("Loading workers source...");
|
|
1463
1485
|
if (!this.options.draco) {
|
|
1464
|
-
|
|
1486
|
+
_context23.next = 10;
|
|
1465
1487
|
break;
|
|
1466
1488
|
}
|
|
1467
1489
|
url = (0, _workerUtils.getWorkerURL)(_draco.DracoWriterWorker, _objectSpread({}, (0, _core.getLoaderOptions)()));
|
|
1468
|
-
|
|
1490
|
+
_context23.next = 5;
|
|
1469
1491
|
return (0, _core.fetchFile)(url);
|
|
1470
1492
|
case 5:
|
|
1471
|
-
_sourceResponse =
|
|
1472
|
-
|
|
1493
|
+
_sourceResponse = _context23.sent;
|
|
1494
|
+
_context23.next = 8;
|
|
1473
1495
|
return _sourceResponse.text();
|
|
1474
1496
|
case 8:
|
|
1475
|
-
_source =
|
|
1497
|
+
_source = _context23.sent;
|
|
1476
1498
|
this.workerSource.draco = _source;
|
|
1477
1499
|
case 10:
|
|
1478
1500
|
if (!this.generateTextures) {
|
|
1479
|
-
|
|
1501
|
+
_context23.next = 19;
|
|
1480
1502
|
break;
|
|
1481
1503
|
}
|
|
1482
1504
|
_url = (0, _workerUtils.getWorkerURL)(_textures.KTX2BasisWriterWorker, _objectSpread({}, (0, _core.getLoaderOptions)()));
|
|
1483
|
-
|
|
1505
|
+
_context23.next = 14;
|
|
1484
1506
|
return (0, _core.fetchFile)(_url);
|
|
1485
1507
|
case 14:
|
|
1486
|
-
_sourceResponse2 =
|
|
1487
|
-
|
|
1508
|
+
_sourceResponse2 = _context23.sent;
|
|
1509
|
+
_context23.next = 17;
|
|
1488
1510
|
return _sourceResponse2.text();
|
|
1489
1511
|
case 17:
|
|
1490
|
-
_source2 =
|
|
1512
|
+
_source2 = _context23.sent;
|
|
1491
1513
|
this.workerSource.ktx2 = _source2;
|
|
1492
1514
|
case 19:
|
|
1493
1515
|
i3sAttributesWorkerUrl = (0, _workerUtils.getWorkerURL)(_i3sAttributesWorker.I3SAttributesWorker, _objectSpread({}, (0, _core.getLoaderOptions)()));
|
|
1494
|
-
|
|
1516
|
+
_context23.next = 22;
|
|
1495
1517
|
return (0, _core.fetchFile)(i3sAttributesWorkerUrl);
|
|
1496
1518
|
case 22:
|
|
1497
|
-
sourceResponse =
|
|
1498
|
-
|
|
1519
|
+
sourceResponse = _context23.sent;
|
|
1520
|
+
_context23.next = 25;
|
|
1499
1521
|
return sourceResponse.text();
|
|
1500
1522
|
case 25:
|
|
1501
|
-
source =
|
|
1523
|
+
source = _context23.sent;
|
|
1502
1524
|
this.workerSource.I3SAttributes = source;
|
|
1503
1525
|
console.log("Loading workers source completed!");
|
|
1504
1526
|
case 28:
|
|
1505
1527
|
case "end":
|
|
1506
|
-
return
|
|
1528
|
+
return _context23.stop();
|
|
1507
1529
|
}
|
|
1508
|
-
},
|
|
1530
|
+
}, _callee22, this);
|
|
1509
1531
|
}));
|
|
1510
1532
|
function loadWorkers() {
|
|
1511
1533
|
return _loadWorkers.apply(this, arguments);
|