@loaders.gl/tile-converter 3.2.0-alpha.1 → 3.2.0-alpha.4
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/3d-tiles-attributes-worker.d.ts +28 -0
- package/dist/3d-tiles-attributes-worker.d.ts.map +1 -0
- package/dist/3d-tiles-attributes-worker.js +4 -0
- package/dist/3d-tiles-attributes-worker.js.map +7 -0
- package/dist/3d-tiles-converter/3d-tiles-converter.d.ts +5 -1
- package/dist/3d-tiles-converter/3d-tiles-converter.d.ts.map +1 -1
- package/dist/3d-tiles-converter/3d-tiles-converter.js +34 -3
- package/dist/3d-tiles-converter/helpers/b3dm-converter.d.ts +5 -4
- package/dist/3d-tiles-converter/helpers/b3dm-converter.d.ts.map +1 -1
- package/dist/3d-tiles-converter/helpers/b3dm-converter.js +10 -10
- package/dist/constants.d.ts +2 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +4 -0
- package/dist/converter-cli.d.ts +2 -0
- package/dist/converter-cli.d.ts.map +1 -0
- package/dist/converter-cli.js +232 -0
- package/dist/converter.min.js +68 -68
- package/dist/deps-installer/deps-installer.d.ts +11 -1
- package/dist/deps-installer/deps-installer.d.ts.map +1 -1
- package/dist/deps-installer/deps-installer.js +10 -0
- package/dist/dist.min.js +910 -790
- package/dist/es5/3d-tiles-attributes-worker.js +29 -0
- package/dist/es5/3d-tiles-attributes-worker.js.map +1 -0
- package/dist/es5/3d-tiles-converter/3d-tiles-converter.js +116 -46
- package/dist/es5/3d-tiles-converter/3d-tiles-converter.js.map +1 -1
- package/dist/es5/3d-tiles-converter/helpers/b3dm-converter.js +21 -23
- package/dist/es5/3d-tiles-converter/helpers/b3dm-converter.js.map +1 -1
- package/dist/es5/constants.js +9 -0
- package/dist/es5/constants.js.map +1 -0
- package/dist/es5/converter-cli.js +306 -0
- package/dist/es5/converter-cli.js.map +1 -0
- package/dist/es5/deps-installer/deps-installer.js.map +1 -1
- package/dist/es5/i3s-attributes-worker.js +29 -0
- package/dist/es5/i3s-attributes-worker.js.map +1 -0
- package/dist/es5/i3s-converter/helpers/coordinate-converter.js +19 -11
- package/dist/es5/i3s-converter/helpers/coordinate-converter.js.map +1 -1
- package/dist/es5/i3s-converter/helpers/geometry-attributes.js +2 -2
- package/dist/es5/i3s-converter/helpers/geometry-attributes.js.map +1 -1
- package/dist/es5/i3s-converter/helpers/geometry-converter.js +271 -182
- package/dist/es5/i3s-converter/helpers/geometry-converter.js.map +1 -1
- package/dist/es5/i3s-converter/helpers/gltf-attributes.js +71 -0
- package/dist/es5/i3s-converter/helpers/gltf-attributes.js.map +1 -0
- package/dist/es5/i3s-converter/helpers/node-pages.js +47 -99
- package/dist/es5/i3s-converter/helpers/node-pages.js.map +1 -1
- package/dist/es5/i3s-converter/i3s-converter.js +293 -223
- package/dist/es5/i3s-converter/i3s-converter.js.map +1 -1
- package/dist/es5/i3s-converter/json-templates/layers.js +29 -0
- package/dist/es5/i3s-converter/json-templates/layers.js.map +1 -1
- package/dist/es5/index.js +0 -16
- package/dist/es5/index.js.map +1 -1
- package/dist/es5/lib/utils/compress-util.js +14 -17
- package/dist/es5/lib/utils/compress-util.js.map +1 -1
- package/dist/es5/lib/utils/file-utils.js +39 -14
- package/dist/es5/lib/utils/file-utils.js.map +1 -1
- package/dist/es5/lib/utils/lod-conversion-utils.js.map +1 -1
- package/dist/es5/lib/utils/queue.js +61 -0
- package/dist/es5/lib/utils/queue.js.map +1 -0
- package/dist/es5/lib/utils/statistic-utills.js.map +1 -1
- package/dist/es5/lib/utils/write-queue.js +225 -0
- package/dist/es5/lib/utils/write-queue.js.map +1 -0
- package/dist/es5/pgm-loader.js +1 -1
- package/dist/es5/workers/3d-tiles-attributes-worker.js +37 -0
- package/dist/es5/workers/3d-tiles-attributes-worker.js.map +1 -0
- package/dist/es5/workers/i3s-attributes-worker.js +40 -0
- package/dist/es5/workers/i3s-attributes-worker.js.map +1 -0
- package/dist/esm/3d-tiles-attributes-worker.js +16 -0
- package/dist/esm/3d-tiles-attributes-worker.js.map +1 -0
- package/dist/esm/3d-tiles-converter/3d-tiles-converter.js +36 -4
- package/dist/esm/3d-tiles-converter/3d-tiles-converter.js.map +1 -1
- package/dist/esm/3d-tiles-converter/helpers/b3dm-converter.js +16 -18
- package/dist/esm/3d-tiles-converter/helpers/b3dm-converter.js.map +1 -1
- package/dist/esm/constants.js +2 -0
- package/dist/esm/constants.js.map +1 -0
- package/dist/esm/converter-cli.js +230 -0
- package/dist/esm/converter-cli.js.map +1 -0
- package/dist/esm/deps-installer/deps-installer.js.map +1 -1
- package/dist/esm/i3s-attributes-worker.js +16 -0
- package/dist/esm/i3s-attributes-worker.js.map +1 -0
- package/dist/esm/i3s-converter/helpers/coordinate-converter.js +19 -11
- package/dist/esm/i3s-converter/helpers/coordinate-converter.js.map +1 -1
- package/dist/esm/i3s-converter/helpers/geometry-attributes.js +2 -2
- package/dist/esm/i3s-converter/helpers/geometry-attributes.js.map +1 -1
- package/dist/esm/i3s-converter/helpers/geometry-converter.js +121 -62
- package/dist/esm/i3s-converter/helpers/geometry-converter.js.map +1 -1
- package/dist/esm/i3s-converter/helpers/gltf-attributes.js +54 -0
- package/dist/esm/i3s-converter/helpers/gltf-attributes.js.map +1 -0
- package/dist/esm/i3s-converter/helpers/node-pages.js +12 -4
- package/dist/esm/i3s-converter/helpers/node-pages.js.map +1 -1
- package/dist/esm/i3s-converter/i3s-converter.js +157 -52
- package/dist/esm/i3s-converter/i3s-converter.js.map +1 -1
- package/dist/esm/i3s-converter/json-templates/layers.js +25 -0
- package/dist/esm/i3s-converter/json-templates/layers.js.map +1 -1
- package/dist/esm/index.js +0 -2
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/lib/utils/compress-util.js +6 -8
- package/dist/esm/lib/utils/compress-util.js.map +1 -1
- package/dist/esm/lib/utils/file-utils.js +11 -1
- package/dist/esm/lib/utils/file-utils.js.map +1 -1
- package/dist/esm/lib/utils/lod-conversion-utils.js.map +1 -1
- package/dist/esm/lib/utils/queue.js +19 -0
- package/dist/esm/lib/utils/queue.js.map +1 -0
- package/dist/esm/lib/utils/statistic-utills.js.map +1 -1
- package/dist/esm/lib/utils/write-queue.js +88 -0
- package/dist/esm/lib/utils/write-queue.js.map +1 -0
- package/dist/esm/pgm-loader.js +1 -1
- package/dist/esm/workers/3d-tiles-attributes-worker.js +5 -0
- package/dist/esm/workers/3d-tiles-attributes-worker.js.map +1 -0
- package/dist/esm/workers/i3s-attributes-worker.js +4 -0
- package/dist/esm/workers/i3s-attributes-worker.js.map +1 -0
- package/dist/i3s-attributes-worker.d.ts +33 -0
- package/dist/i3s-attributes-worker.d.ts.map +1 -0
- package/dist/i3s-attributes-worker.js +10 -0
- package/dist/i3s-attributes-worker.js.map +7 -0
- package/dist/i3s-converter/helpers/coordinate-converter.d.ts +7 -7
- package/dist/i3s-converter/helpers/coordinate-converter.d.ts.map +1 -1
- package/dist/i3s-converter/helpers/coordinate-converter.js +25 -21
- package/dist/i3s-converter/helpers/geometry-attributes.d.ts +2 -2
- package/dist/i3s-converter/helpers/geometry-attributes.d.ts.map +1 -1
- package/dist/i3s-converter/helpers/geometry-attributes.js +2 -1
- package/dist/i3s-converter/helpers/geometry-converter.d.ts +28 -11
- package/dist/i3s-converter/helpers/geometry-converter.d.ts.map +1 -1
- package/dist/i3s-converter/helpers/geometry-converter.js +223 -113
- package/dist/i3s-converter/helpers/gltf-attributes.d.ts +9 -0
- package/dist/i3s-converter/helpers/gltf-attributes.d.ts.map +1 -0
- package/dist/i3s-converter/helpers/gltf-attributes.js +56 -0
- package/dist/i3s-converter/helpers/node-pages.d.ts +6 -5
- package/dist/i3s-converter/helpers/node-pages.d.ts.map +1 -1
- package/dist/i3s-converter/helpers/node-pages.js +13 -8
- package/dist/i3s-converter/i3s-converter.d.ts +7 -5
- package/dist/i3s-converter/i3s-converter.d.ts.map +1 -1
- package/dist/i3s-converter/i3s-converter.js +126 -40
- package/dist/i3s-converter/json-templates/layers.d.ts +4 -0
- package/dist/i3s-converter/json-templates/layers.d.ts.map +1 -1
- package/dist/i3s-converter/json-templates/layers.js +24 -0
- package/dist/i3s-converter/types.d.ts +83 -8
- package/dist/i3s-converter/types.d.ts.map +1 -1
- package/dist/index.d.ts +0 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -5
- package/dist/lib/utils/compress-util.d.ts +44 -5
- package/dist/lib/utils/compress-util.d.ts.map +1 -1
- package/dist/lib/utils/compress-util.js +73 -6
- package/dist/lib/utils/file-utils.d.ts +34 -5
- package/dist/lib/utils/file-utils.d.ts.map +1 -1
- package/dist/lib/utils/file-utils.js +40 -1
- package/dist/lib/utils/lod-conversion-utils.d.ts +25 -4
- package/dist/lib/utils/lod-conversion-utils.d.ts.map +1 -1
- package/dist/lib/utils/lod-conversion-utils.js +21 -2
- package/dist/lib/utils/queue.d.ts +7 -0
- package/dist/lib/utils/queue.d.ts.map +1 -0
- package/dist/lib/utils/queue.js +18 -0
- package/dist/lib/utils/statistic-utills.d.ts +2 -2
- package/dist/lib/utils/statistic-utills.d.ts.map +1 -1
- package/dist/lib/utils/write-queue.d.ts +22 -0
- package/dist/lib/utils/write-queue.d.ts.map +1 -0
- package/dist/lib/utils/write-queue.js +62 -0
- package/dist/workers/3d-tiles-attributes-worker.d.ts +2 -0
- package/dist/workers/3d-tiles-attributes-worker.d.ts.map +1 -0
- package/dist/workers/3d-tiles-attributes-worker.js +9 -0
- package/dist/workers/i3s-attributes-worker.d.ts +2 -0
- package/dist/workers/i3s-attributes-worker.d.ts.map +1 -0
- package/dist/workers/i3s-attributes-worker.js +5 -0
- package/package.json +23 -18
- package/src/3d-tiles-attributes-worker.ts +43 -0
- package/src/3d-tiles-converter/3d-tiles-converter.ts +50 -5
- package/src/3d-tiles-converter/helpers/b3dm-converter.ts +15 -13
- package/src/constants.ts +2 -0
- package/src/converter-cli.ts +310 -0
- package/src/deps-installer/{deps-installer.js → deps-installer.ts} +11 -1
- package/src/i3s-attributes-worker.ts +46 -0
- package/src/i3s-converter/helpers/coordinate-converter.ts +29 -24
- package/src/i3s-converter/helpers/geometry-attributes.ts +4 -3
- package/src/i3s-converter/helpers/{geometry-converter.js → geometry-converter.ts} +425 -179
- package/src/i3s-converter/helpers/gltf-attributes.ts +68 -0
- package/src/i3s-converter/helpers/node-pages.ts +25 -17
- package/src/i3s-converter/i3s-converter.ts +150 -90
- package/src/i3s-converter/json-templates/layers.ts +25 -0
- package/src/i3s-converter/types.ts +90 -8
- package/src/index.ts +0 -4
- package/src/lib/utils/{compress-util.js → compress-util.ts} +105 -18
- package/src/lib/utils/file-utils.ts +84 -0
- package/src/lib/utils/{lod-conversion-utils.js → lod-conversion-utils.ts} +27 -5
- package/src/lib/utils/queue.ts +17 -0
- package/src/lib/utils/{statistic-utills.js → statistic-utills.ts} +0 -0
- package/src/lib/utils/write-queue.ts +75 -0
- package/src/workers/3d-tiles-attributes-worker.ts +6 -0
- package/src/workers/i3s-attributes-worker.ts +6 -0
- package/dist/es5/deps-installer/deps-installer.d.ts +0 -10
- package/dist/es5/i3s-converter/helpers/geometry-converter.d.ts +0 -44
- package/dist/es5/lib/utils/compress-util.d.ts +0 -53
- package/dist/es5/lib/utils/file-utils.d.ts +0 -43
- package/dist/es5/lib/utils/lod-conversion-utils.d.ts +0 -32
- package/dist/esm/deps-installer/deps-installer.d.ts +0 -10
- package/dist/esm/i3s-converter/helpers/geometry-converter.d.ts +0 -44
- package/dist/esm/lib/utils/compress-util.d.ts +0 -53
- package/dist/esm/lib/utils/file-utils.d.ts +0 -43
- package/dist/esm/lib/utils/lod-conversion-utils.d.ts +0 -32
- package/src/deps-installer/deps-installer.d.ts +0 -10
- package/src/i3s-converter/helpers/geometry-converter.d.ts +0 -44
- package/src/lib/utils/compress-util.d.ts +0 -53
- package/src/lib/utils/file-utils.d.ts +0 -43
- package/src/lib/utils/file-utils.js +0 -38
- package/src/lib/utils/lod-conversion-utils.d.ts +0 -32
|
@@ -69,6 +69,18 @@ var _textures = require("@loaders.gl/textures");
|
|
|
69
69
|
|
|
70
70
|
var _images = require("@loaders.gl/images");
|
|
71
71
|
|
|
72
|
+
var _workerUtils = require("@loaders.gl/worker-utils");
|
|
73
|
+
|
|
74
|
+
var _draco = require("@loaders.gl/draco");
|
|
75
|
+
|
|
76
|
+
var _writeQueue = _interopRequireDefault(require("../lib/utils/write-queue"));
|
|
77
|
+
|
|
78
|
+
var _i3sAttributesWorker = require("../i3s-attributes-worker");
|
|
79
|
+
|
|
80
|
+
var _constants = require("../constants");
|
|
81
|
+
|
|
82
|
+
var _process$env;
|
|
83
|
+
|
|
72
84
|
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
|
|
73
85
|
|
|
74
86
|
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
@@ -79,7 +91,7 @@ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (O
|
|
|
79
91
|
|
|
80
92
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
81
93
|
|
|
82
|
-
var ION_DEFAULT_TOKEN = _process.default.env.IonToken || 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiJlYWMxMzcyYy0zZjJkLTQwODctODNlNi01MDRkZmMzMjIxOWIiLCJpZCI6OTYyMCwic2NvcGVzIjpbImFzbCIsImFzciIsImdjIl0sImlhdCI6MTU2Mjg2NjI3M30.1FNiClUyk00YH_nWfSGpiQAjR5V2OvREDq1PJ5QMjWQ';
|
|
94
|
+
var ION_DEFAULT_TOKEN = ((_process$env = _process.default.env) === null || _process$env === void 0 ? void 0 : _process$env.IonToken) || 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiJlYWMxMzcyYy0zZjJkLTQwODctODNlNi01MDRkZmMzMjIxOWIiLCJpZCI6OTYyMCwic2NvcGVzIjpbImFzbCIsImFzciIsImdjIl0sImlhdCI6MTU2Mjg2NjI3M30.1FNiClUyk00YH_nWfSGpiQAjR5V2OvREDq1PJ5QMjWQ';
|
|
83
95
|
var HARDCODED_NODES_PER_PAGE = 64;
|
|
84
96
|
var _3D_TILES = '3DTILES';
|
|
85
97
|
var _3D_OBJECT_LAYER_TYPE = '3DObject';
|
|
@@ -94,7 +106,6 @@ var I3SConverter = function () {
|
|
|
94
106
|
function I3SConverter() {
|
|
95
107
|
(0, _classCallCheck2.default)(this, I3SConverter);
|
|
96
108
|
(0, _defineProperty2.default)(this, "nodePages", void 0);
|
|
97
|
-
(0, _defineProperty2.default)(this, "fileMap", void 0);
|
|
98
109
|
(0, _defineProperty2.default)(this, "options", void 0);
|
|
99
110
|
(0, _defineProperty2.default)(this, "layers0Path", void 0);
|
|
100
111
|
(0, _defineProperty2.default)(this, "materialMap", void 0);
|
|
@@ -113,8 +124,9 @@ var I3SConverter = function () {
|
|
|
113
124
|
(0, _defineProperty2.default)(this, "generateTextures", void 0);
|
|
114
125
|
(0, _defineProperty2.default)(this, "generateBoundingVolumes", void 0);
|
|
115
126
|
(0, _defineProperty2.default)(this, "layersHasTexture", void 0);
|
|
127
|
+
(0, _defineProperty2.default)(this, "workerSource", {});
|
|
128
|
+
(0, _defineProperty2.default)(this, "writeQueue", new _writeQueue.default());
|
|
116
129
|
this.nodePages = new _nodePages.default(_fileUtils.writeFile, HARDCODED_NODES_PER_PAGE);
|
|
117
|
-
this.fileMap = {};
|
|
118
130
|
this.options = {};
|
|
119
131
|
this.layers0Path = '';
|
|
120
132
|
this.materialMap = new Map();
|
|
@@ -136,11 +148,20 @@ var I3SConverter = function () {
|
|
|
136
148
|
key: "convert",
|
|
137
149
|
value: function () {
|
|
138
150
|
var _convert = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee(options) {
|
|
139
|
-
var tilesetName, slpk, egmFilePath, inputUrl, validate, outputPath, draco, sevenZipExe, maxDepth, token, generateTextures, generateBoundingVolumes, preloadOptions, tilesetOptions, sourceTilesetJson;
|
|
151
|
+
var tilesetName, slpk, egmFilePath, inputUrl, validate, outputPath, draco, sevenZipExe, maxDepth, token, generateTextures, generateBoundingVolumes, preloadOptions, tilesetOptions, sourceTilesetJson, workerFarm;
|
|
140
152
|
return _regenerator.default.wrap(function _callee$(_context) {
|
|
141
153
|
while (1) {
|
|
142
154
|
switch (_context.prev = _context.next) {
|
|
143
155
|
case 0:
|
|
156
|
+
if (!_core.isBrowser) {
|
|
157
|
+
_context.next = 3;
|
|
158
|
+
break;
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
console.log(_constants.BROWSER_ERROR_MESSAGE);
|
|
162
|
+
return _context.abrupt("return", _constants.BROWSER_ERROR_MESSAGE);
|
|
163
|
+
|
|
164
|
+
case 3:
|
|
144
165
|
this.conversionStartTime = _process.default.hrtime();
|
|
145
166
|
tilesetName = options.tilesetName, slpk = options.slpk, egmFilePath = options.egmFilePath, inputUrl = options.inputUrl, validate = options.validate, outputPath = options.outputPath, draco = options.draco, sevenZipExe = options.sevenZipExe, maxDepth = options.maxDepth, token = options.token, generateTextures = options.generateTextures, generateBoundingVolumes = options.generateBoundingVolumes;
|
|
146
167
|
this.options = {
|
|
@@ -156,11 +177,13 @@ var I3SConverter = function () {
|
|
|
156
177
|
this.Loader = inputUrl.indexOf(CESIUM_DATASET_PREFIX) !== -1 ? _dTiles.CesiumIonLoader : _dTiles.Tiles3DLoader;
|
|
157
178
|
this.generateTextures = Boolean(generateTextures);
|
|
158
179
|
this.generateBoundingVolumes = Boolean(generateBoundingVolumes);
|
|
180
|
+
this.writeQueue = new _writeQueue.default();
|
|
181
|
+
this.writeQueue.startListening();
|
|
159
182
|
console.log('Loading egm file...');
|
|
160
|
-
_context.next =
|
|
183
|
+
_context.next = 15;
|
|
161
184
|
return (0, _core.load)(egmFilePath, _pgmLoader.PGMLoader);
|
|
162
185
|
|
|
163
|
-
case
|
|
186
|
+
case 15:
|
|
164
187
|
this.geoidHeightModel = _context.sent;
|
|
165
188
|
console.log('Loading egm file completed!');
|
|
166
189
|
|
|
@@ -168,10 +191,15 @@ var I3SConverter = function () {
|
|
|
168
191
|
this.nodePages.useWriteFunction(_fileUtils.writeFileForSlpk);
|
|
169
192
|
}
|
|
170
193
|
|
|
171
|
-
_context.next =
|
|
194
|
+
_context.next = 20;
|
|
195
|
+
return this.loadWorkers();
|
|
196
|
+
|
|
197
|
+
case 20:
|
|
198
|
+
_context.prev = 20;
|
|
199
|
+
_context.next = 23;
|
|
172
200
|
return this._fetchPreloadOptions();
|
|
173
201
|
|
|
174
|
-
case
|
|
202
|
+
case 23:
|
|
175
203
|
preloadOptions = _context.sent;
|
|
176
204
|
tilesetOptions = {
|
|
177
205
|
loadOptions: {
|
|
@@ -188,32 +216,43 @@ var I3SConverter = function () {
|
|
|
188
216
|
}
|
|
189
217
|
|
|
190
218
|
Object.assign(tilesetOptions, preloadOptions);
|
|
191
|
-
_context.next =
|
|
219
|
+
_context.next = 29;
|
|
192
220
|
return (0, _core.load)(inputUrl, this.Loader, tilesetOptions.loadOptions);
|
|
193
221
|
|
|
194
|
-
case
|
|
222
|
+
case 29:
|
|
195
223
|
sourceTilesetJson = _context.sent;
|
|
196
224
|
this.sourceTileset = new _tiles.Tileset3D(sourceTilesetJson, tilesetOptions);
|
|
197
|
-
_context.next =
|
|
225
|
+
_context.next = 33;
|
|
198
226
|
return this._createAndSaveTileset(outputPath, tilesetName);
|
|
199
227
|
|
|
200
|
-
case
|
|
201
|
-
_context.next =
|
|
228
|
+
case 33:
|
|
229
|
+
_context.next = 35;
|
|
202
230
|
return this._finishConversion({
|
|
203
231
|
slpk: Boolean(slpk),
|
|
204
232
|
outputPath: outputPath,
|
|
205
233
|
tilesetName: tilesetName
|
|
206
234
|
});
|
|
207
235
|
|
|
208
|
-
case
|
|
236
|
+
case 35:
|
|
209
237
|
return _context.abrupt("return", sourceTilesetJson);
|
|
210
238
|
|
|
211
|
-
case
|
|
239
|
+
case 38:
|
|
240
|
+
_context.prev = 38;
|
|
241
|
+
_context.t0 = _context["catch"](20);
|
|
242
|
+
throw _context.t0;
|
|
243
|
+
|
|
244
|
+
case 41:
|
|
245
|
+
_context.prev = 41;
|
|
246
|
+
workerFarm = _workerUtils.WorkerFarm.getWorkerFarm({});
|
|
247
|
+
workerFarm.destroy();
|
|
248
|
+
return _context.finish(41);
|
|
249
|
+
|
|
250
|
+
case 45:
|
|
212
251
|
case "end":
|
|
213
252
|
return _context.stop();
|
|
214
253
|
}
|
|
215
254
|
}
|
|
216
|
-
}, _callee, this);
|
|
255
|
+
}, _callee, this, [[20, 38, 41, 45]]);
|
|
217
256
|
}));
|
|
218
257
|
|
|
219
258
|
function convert(_x) {
|
|
@@ -283,13 +322,17 @@ var I3SConverter = function () {
|
|
|
283
322
|
|
|
284
323
|
case 26:
|
|
285
324
|
_context2.next = 28;
|
|
286
|
-
return this.nodePages.save(this.layers0Path, this.
|
|
325
|
+
return this.nodePages.save(this.layers0Path, this.writeQueue, isCreateSlpk);
|
|
287
326
|
|
|
288
327
|
case 28:
|
|
289
328
|
_context2.next = 30;
|
|
290
|
-
return this.
|
|
329
|
+
return this.writeQueue.finalize();
|
|
291
330
|
|
|
292
331
|
case 30:
|
|
332
|
+
_context2.next = 32;
|
|
333
|
+
return this._createSlpk(tilesetPath);
|
|
334
|
+
|
|
335
|
+
case 32:
|
|
293
336
|
case "end":
|
|
294
337
|
return _context2.stop();
|
|
295
338
|
}
|
|
@@ -306,7 +349,10 @@ var I3SConverter = function () {
|
|
|
306
349
|
}, {
|
|
307
350
|
key: "_formLayers0",
|
|
308
351
|
value: function _formLayers0(tilesetName) {
|
|
309
|
-
var
|
|
352
|
+
var _this$sourceTileset, _this$sourceTileset2, _this$sourceTileset2$;
|
|
353
|
+
|
|
354
|
+
var fullExtent = (0, _coordinateConverter.convertBoundingVolumeToI3SFullExtent)(((_this$sourceTileset = this.sourceTileset) === null || _this$sourceTileset === void 0 ? void 0 : _this$sourceTileset.boundingVolume) || ((_this$sourceTileset2 = this.sourceTileset) === null || _this$sourceTileset2 === void 0 ? void 0 : (_this$sourceTileset2$ = _this$sourceTileset2.root) === null || _this$sourceTileset2$ === void 0 ? void 0 : _this$sourceTileset2$.boundingVolume));
|
|
355
|
+
var extent = [fullExtent.xmin, fullExtent.ymin, fullExtent.xmax, fullExtent.ymax];
|
|
310
356
|
var layers0data = {
|
|
311
357
|
version: "{".concat((0, _uuid.v4)().toUpperCase(), "}"),
|
|
312
358
|
id: 0,
|
|
@@ -319,7 +365,8 @@ var I3SConverter = function () {
|
|
|
319
365
|
nodePages: {
|
|
320
366
|
nodesPerPage: HARDCODED_NODES_PER_PAGE
|
|
321
367
|
},
|
|
322
|
-
compressGeometry: this.options.draco
|
|
368
|
+
compressGeometry: this.options.draco,
|
|
369
|
+
fullExtent: fullExtent
|
|
323
370
|
};
|
|
324
371
|
this.layers0 = (0, _jsonMapTransform.default)(layers0data, (0, _layers.LAYERS)());
|
|
325
372
|
}
|
|
@@ -358,7 +405,7 @@ var I3SConverter = function () {
|
|
|
358
405
|
|
|
359
406
|
case 2:
|
|
360
407
|
if (!this.isContentSupported(sourceRootTile)) {
|
|
361
|
-
_context3.next =
|
|
408
|
+
_context3.next = 14;
|
|
362
409
|
break;
|
|
363
410
|
}
|
|
364
411
|
|
|
@@ -376,29 +423,22 @@ var I3SConverter = function () {
|
|
|
376
423
|
child = _yield$this$_createNo2[0];
|
|
377
424
|
childPath = (0, _path.join)(this.layers0Path, 'nodes', child.path);
|
|
378
425
|
|
|
379
|
-
if (
|
|
380
|
-
|
|
381
|
-
|
|
426
|
+
if (this.options.slpk) {
|
|
427
|
+
this.writeQueue.enqueue({
|
|
428
|
+
archiveKey: 'nodes/1/3dNodeIndexDocument.json.gz',
|
|
429
|
+
writePromise: (0, _fileUtils.writeFileForSlpk)(childPath, JSON.stringify(child), '3dNodeIndexDocument.json')
|
|
430
|
+
});
|
|
431
|
+
} else {
|
|
432
|
+
this.writeQueue.enqueue({
|
|
433
|
+
writePromise: (0, _fileUtils.writeFile)(childPath, JSON.stringify(child))
|
|
434
|
+
});
|
|
382
435
|
}
|
|
383
436
|
|
|
384
|
-
_context3.next =
|
|
385
|
-
return (0, _fileUtils.writeFileForSlpk)(childPath, JSON.stringify(child), '3dNodeIndexDocument.json');
|
|
386
|
-
|
|
387
|
-
case 14:
|
|
388
|
-
this.fileMap['nodes/1/3dNodeIndexDocument.json.gz'] = _context3.sent;
|
|
389
|
-
_context3.next = 19;
|
|
390
|
-
break;
|
|
391
|
-
|
|
392
|
-
case 17:
|
|
393
|
-
_context3.next = 19;
|
|
394
|
-
return (0, _fileUtils.writeFile)(childPath, JSON.stringify(child));
|
|
395
|
-
|
|
396
|
-
case 19:
|
|
397
|
-
_context3.next = 23;
|
|
437
|
+
_context3.next = 16;
|
|
398
438
|
break;
|
|
399
439
|
|
|
400
|
-
case
|
|
401
|
-
_context3.next =
|
|
440
|
+
case 14:
|
|
441
|
+
_context3.next = 16;
|
|
402
442
|
return this._addChildrenWithNeighborsAndWriteFile({
|
|
403
443
|
parentNode: root0,
|
|
404
444
|
sourceTiles: sourceRootTile.children,
|
|
@@ -406,11 +446,11 @@ var I3SConverter = function () {
|
|
|
406
446
|
level: 1
|
|
407
447
|
});
|
|
408
448
|
|
|
409
|
-
case
|
|
410
|
-
_context3.next =
|
|
449
|
+
case 16:
|
|
450
|
+
_context3.next = 18;
|
|
411
451
|
return sourceRootTile.unloadContent();
|
|
412
452
|
|
|
413
|
-
case
|
|
453
|
+
case 18:
|
|
414
454
|
case "end":
|
|
415
455
|
return _context3.stop();
|
|
416
456
|
}
|
|
@@ -432,24 +472,18 @@ var I3SConverter = function () {
|
|
|
432
472
|
while (1) {
|
|
433
473
|
switch (_context4.prev = _context4.next) {
|
|
434
474
|
case 0:
|
|
435
|
-
if (
|
|
436
|
-
|
|
437
|
-
|
|
475
|
+
if (this.options.slpk) {
|
|
476
|
+
this.writeQueue.enqueue({
|
|
477
|
+
archiveKey: '3dSceneLayer.json.gz',
|
|
478
|
+
writePromise: (0, _fileUtils.writeFileForSlpk)(this.layers0Path, JSON.stringify(this.layers0), '3dSceneLayer.json')
|
|
479
|
+
});
|
|
480
|
+
} else {
|
|
481
|
+
this.writeQueue.enqueue({
|
|
482
|
+
writePromise: (0, _fileUtils.writeFile)(this.layers0Path, JSON.stringify(this.layers0))
|
|
483
|
+
});
|
|
438
484
|
}
|
|
439
485
|
|
|
440
|
-
|
|
441
|
-
return (0, _fileUtils.writeFileForSlpk)(this.layers0Path, JSON.stringify(this.layers0), '3dSceneLayer.json');
|
|
442
|
-
|
|
443
|
-
case 3:
|
|
444
|
-
this.fileMap['3dSceneLayer.json.gz'] = _context4.sent;
|
|
445
|
-
_context4.next = 8;
|
|
446
|
-
break;
|
|
447
|
-
|
|
448
|
-
case 6:
|
|
449
|
-
_context4.next = 8;
|
|
450
|
-
return (0, _fileUtils.writeFile)(this.layers0Path, JSON.stringify(this.layers0));
|
|
451
|
-
|
|
452
|
-
case 8:
|
|
486
|
+
case 1:
|
|
453
487
|
case "end":
|
|
454
488
|
return _context4.stop();
|
|
455
489
|
}
|
|
@@ -471,24 +505,18 @@ var I3SConverter = function () {
|
|
|
471
505
|
while (1) {
|
|
472
506
|
switch (_context5.prev = _context5.next) {
|
|
473
507
|
case 0:
|
|
474
|
-
if (
|
|
475
|
-
|
|
476
|
-
|
|
508
|
+
if (this.options.slpk) {
|
|
509
|
+
this.writeQueue.enqueue({
|
|
510
|
+
archiveKey: "nodes/".concat(nodePath, "/3dNodeIndexDocument.json.gz"),
|
|
511
|
+
writePromise: (0, _fileUtils.writeFileForSlpk)(rootPath, JSON.stringify(root0), '3dNodeIndexDocument.json')
|
|
512
|
+
});
|
|
513
|
+
} else {
|
|
514
|
+
this.writeQueue.enqueue({
|
|
515
|
+
writePromise: (0, _fileUtils.writeFile)(rootPath, JSON.stringify(root0))
|
|
516
|
+
});
|
|
477
517
|
}
|
|
478
518
|
|
|
479
|
-
|
|
480
|
-
return (0, _fileUtils.writeFileForSlpk)(rootPath, JSON.stringify(root0), '3dNodeIndexDocument.json');
|
|
481
|
-
|
|
482
|
-
case 3:
|
|
483
|
-
this.fileMap["nodes/".concat(nodePath, "/3dNodeIndexDocument.json.gz")] = _context5.sent;
|
|
484
|
-
_context5.next = 8;
|
|
485
|
-
break;
|
|
486
|
-
|
|
487
|
-
case 6:
|
|
488
|
-
_context5.next = 8;
|
|
489
|
-
return (0, _fileUtils.writeFile)(rootPath, JSON.stringify(root0));
|
|
490
|
-
|
|
491
|
-
case 8:
|
|
519
|
+
case 1:
|
|
492
520
|
case "end":
|
|
493
521
|
return _context5.stop();
|
|
494
522
|
}
|
|
@@ -1008,7 +1036,7 @@ var I3SConverter = function () {
|
|
|
1008
1036
|
|
|
1009
1037
|
case 2:
|
|
1010
1038
|
_context11.next = 4;
|
|
1011
|
-
return (0, _geometryConverter.default)(sourceTile.content, Number(this.nodePages.nodesCounter), this.featuresHashArray, (_this$layers2 = this.layers0) === null || _this$layers2 === void 0 ? void 0 : _this$layers2.attributeStorageInfo, this.options.draco, this.generateBoundingVolumes, this.geoidHeightModel);
|
|
1039
|
+
return (0, _geometryConverter.default)(sourceTile.content, Number(this.nodePages.nodesCounter), this.featuresHashArray, (_this$layers2 = this.layers0) === null || _this$layers2 === void 0 ? void 0 : _this$layers2.attributeStorageInfo, this.options.draco, this.generateBoundingVolumes, this.geoidHeightModel, this.workerSource);
|
|
1012
1040
|
|
|
1013
1041
|
case 4:
|
|
1014
1042
|
resourcesData = _context11.sent;
|
|
@@ -1190,51 +1218,35 @@ var I3SConverter = function () {
|
|
|
1190
1218
|
while (1) {
|
|
1191
1219
|
switch (_context13.prev = _context13.next) {
|
|
1192
1220
|
case 0:
|
|
1193
|
-
if (
|
|
1194
|
-
|
|
1195
|
-
|
|
1196
|
-
|
|
1197
|
-
|
|
1198
|
-
|
|
1199
|
-
|
|
1200
|
-
|
|
1201
|
-
|
|
1202
|
-
|
|
1203
|
-
|
|
1204
|
-
_context13.next = 10;
|
|
1205
|
-
break;
|
|
1206
|
-
|
|
1207
|
-
case 7:
|
|
1208
|
-
geometryPath = (0, _path.join)(childPath, 'geometries/0/');
|
|
1209
|
-
_context13.next = 10;
|
|
1210
|
-
return (0, _fileUtils.writeFile)(geometryPath, geometryBuffer, 'index.bin');
|
|
1211
|
-
|
|
1212
|
-
case 10:
|
|
1213
|
-
if (!this.options.draco) {
|
|
1214
|
-
_context13.next = 21;
|
|
1215
|
-
break;
|
|
1221
|
+
if (this.options.slpk) {
|
|
1222
|
+
slpkGeometryPath = (0, _path.join)(childPath, 'geometries');
|
|
1223
|
+
this.writeQueue.enqueue({
|
|
1224
|
+
archiveKey: "".concat(slpkChildPath, "/geometries/0.bin.gz"),
|
|
1225
|
+
writePromise: (0, _fileUtils.writeFileForSlpk)(slpkGeometryPath, geometryBuffer, '0.bin')
|
|
1226
|
+
});
|
|
1227
|
+
} else {
|
|
1228
|
+
geometryPath = (0, _path.join)(childPath, 'geometries/0/');
|
|
1229
|
+
this.writeQueue.enqueue({
|
|
1230
|
+
writePromise: (0, _fileUtils.writeFile)(geometryPath, geometryBuffer, 'index.bin')
|
|
1231
|
+
});
|
|
1216
1232
|
}
|
|
1217
1233
|
|
|
1218
|
-
if (
|
|
1219
|
-
|
|
1220
|
-
|
|
1234
|
+
if (this.options.draco) {
|
|
1235
|
+
if (this.options.slpk) {
|
|
1236
|
+
slpkCompressedGeometryPath = (0, _path.join)(childPath, 'geometries');
|
|
1237
|
+
this.writeQueue.enqueue({
|
|
1238
|
+
archiveKey: "".concat(slpkChildPath, "/geometries/1.bin.gz"),
|
|
1239
|
+
writePromise: (0, _fileUtils.writeFileForSlpk)(slpkCompressedGeometryPath, compressedGeometry, '1.bin')
|
|
1240
|
+
});
|
|
1241
|
+
} else {
|
|
1242
|
+
compressedGeometryPath = (0, _path.join)(childPath, 'geometries/1/');
|
|
1243
|
+
this.writeQueue.enqueue({
|
|
1244
|
+
writePromise: (0, _fileUtils.writeFile)(compressedGeometryPath, compressedGeometry, 'index.bin')
|
|
1245
|
+
});
|
|
1246
|
+
}
|
|
1221
1247
|
}
|
|
1222
1248
|
|
|
1223
|
-
|
|
1224
|
-
_context13.next = 15;
|
|
1225
|
-
return (0, _fileUtils.writeFileForSlpk)(slpkCompressedGeometryPath, compressedGeometry, '1.bin');
|
|
1226
|
-
|
|
1227
|
-
case 15:
|
|
1228
|
-
this.fileMap["".concat(slpkChildPath, "/geometries/1.bin.gz")] = _context13.sent;
|
|
1229
|
-
_context13.next = 21;
|
|
1230
|
-
break;
|
|
1231
|
-
|
|
1232
|
-
case 18:
|
|
1233
|
-
compressedGeometryPath = (0, _path.join)(childPath, 'geometries/1/');
|
|
1234
|
-
_context13.next = 21;
|
|
1235
|
-
return (0, _fileUtils.writeFile)(compressedGeometryPath, compressedGeometry, 'index.bin');
|
|
1236
|
-
|
|
1237
|
-
case 21:
|
|
1249
|
+
case 2:
|
|
1238
1250
|
case "end":
|
|
1239
1251
|
return _context13.stop();
|
|
1240
1252
|
}
|
|
@@ -1257,30 +1269,32 @@ var I3SConverter = function () {
|
|
|
1257
1269
|
while (1) {
|
|
1258
1270
|
switch (_context14.prev = _context14.next) {
|
|
1259
1271
|
case 0:
|
|
1260
|
-
sharedResources
|
|
1261
|
-
|
|
1262
|
-
sharedDataStr = JSON.stringify(sharedData);
|
|
1263
|
-
|
|
1264
|
-
if (!this.options.slpk) {
|
|
1265
|
-
_context14.next = 10;
|
|
1272
|
+
if (sharedResources) {
|
|
1273
|
+
_context14.next = 2;
|
|
1266
1274
|
break;
|
|
1267
1275
|
}
|
|
1268
1276
|
|
|
1269
|
-
|
|
1270
|
-
_context14.next = 7;
|
|
1271
|
-
return (0, _fileUtils.writeFileForSlpk)(slpkSharedPath, sharedDataStr, 'sharedResource.json');
|
|
1277
|
+
return _context14.abrupt("return");
|
|
1272
1278
|
|
|
1273
|
-
case
|
|
1274
|
-
|
|
1275
|
-
|
|
1276
|
-
|
|
1279
|
+
case 2:
|
|
1280
|
+
sharedResources.nodePath = nodePath;
|
|
1281
|
+
sharedData = (0, _jsonMapTransform.default)(sharedResources, (0, _sharedResources.SHARED_RESOURCES)());
|
|
1282
|
+
sharedDataStr = JSON.stringify(sharedData);
|
|
1277
1283
|
|
|
1278
|
-
|
|
1279
|
-
|
|
1280
|
-
|
|
1281
|
-
|
|
1284
|
+
if (this.options.slpk) {
|
|
1285
|
+
slpkSharedPath = (0, _path.join)(childPath, 'shared');
|
|
1286
|
+
this.writeQueue.enqueue({
|
|
1287
|
+
archiveKey: "".concat(slpkChildPath, "/shared/sharedResource.json.gz"),
|
|
1288
|
+
writePromise: (0, _fileUtils.writeFileForSlpk)(slpkSharedPath, sharedDataStr, 'sharedResource.json')
|
|
1289
|
+
});
|
|
1290
|
+
} else {
|
|
1291
|
+
sharedPath = (0, _path.join)(childPath, 'shared/');
|
|
1292
|
+
this.writeQueue.enqueue({
|
|
1293
|
+
writePromise: (0, _fileUtils.writeFile)(sharedPath, sharedDataStr)
|
|
1294
|
+
});
|
|
1295
|
+
}
|
|
1282
1296
|
|
|
1283
|
-
case
|
|
1297
|
+
case 6:
|
|
1284
1298
|
case "end":
|
|
1285
1299
|
return _context14.stop();
|
|
1286
1300
|
}
|
|
@@ -1304,7 +1318,7 @@ var I3SConverter = function () {
|
|
|
1304
1318
|
switch (_context15.prev = _context15.next) {
|
|
1305
1319
|
case 0:
|
|
1306
1320
|
if (!texture) {
|
|
1307
|
-
_context15.next =
|
|
1321
|
+
_context15.next = 25;
|
|
1308
1322
|
break;
|
|
1309
1323
|
}
|
|
1310
1324
|
|
|
@@ -1312,7 +1326,7 @@ var I3SConverter = function () {
|
|
|
1312
1326
|
formats = [];
|
|
1313
1327
|
textureData = texture.bufferView.data;
|
|
1314
1328
|
_context15.t0 = format;
|
|
1315
|
-
_context15.next = _context15.t0 === 'jpg' ? 7 : _context15.t0 === 'png' ? 7 : _context15.t0 === 'ktx2' ?
|
|
1329
|
+
_context15.next = _context15.t0 === 'jpg' ? 7 : _context15.t0 === 'png' ? 7 : _context15.t0 === 'ktx2' ? 16 : 24;
|
|
1316
1330
|
break;
|
|
1317
1331
|
|
|
1318
1332
|
case 7:
|
|
@@ -1325,7 +1339,7 @@ var I3SConverter = function () {
|
|
|
1325
1339
|
|
|
1326
1340
|
case 10:
|
|
1327
1341
|
if (!this.generateTextures) {
|
|
1328
|
-
_context15.next =
|
|
1342
|
+
_context15.next = 15;
|
|
1329
1343
|
break;
|
|
1330
1344
|
}
|
|
1331
1345
|
|
|
@@ -1333,30 +1347,28 @@ var I3SConverter = function () {
|
|
|
1333
1347
|
name: '1',
|
|
1334
1348
|
format: 'ktx2'
|
|
1335
1349
|
});
|
|
1336
|
-
|
|
1350
|
+
ktx2TextureData = (0, _core.encode)(texture.image, _textures.KTX2BasisWriterWorker, _objectSpread(_objectSpread({}, _textures.KTX2BasisWriterWorker.options), {}, {
|
|
1351
|
+
source: this.workerSource.ktx2,
|
|
1352
|
+
reuseWorkers: true,
|
|
1353
|
+
_nodeWorkers: true
|
|
1354
|
+
}));
|
|
1337
1355
|
_context15.next = 15;
|
|
1338
|
-
return (0, _core.encode)(texture.image, _textures.KTX2BasisUniversalTextureWriter);
|
|
1339
|
-
|
|
1340
|
-
case 15:
|
|
1341
|
-
_context15.t2 = _context15.sent;
|
|
1342
|
-
ktx2TextureData = new _context15.t1(_context15.t2);
|
|
1343
|
-
_context15.next = 19;
|
|
1344
1356
|
return this.writeTextureFile(ktx2TextureData, '1', 'ktx2', childPath, slpkChildPath);
|
|
1345
1357
|
|
|
1346
|
-
case
|
|
1347
|
-
return _context15.abrupt("break",
|
|
1358
|
+
case 15:
|
|
1359
|
+
return _context15.abrupt("break", 24);
|
|
1348
1360
|
|
|
1349
|
-
case
|
|
1361
|
+
case 16:
|
|
1350
1362
|
formats.push({
|
|
1351
1363
|
name: '1',
|
|
1352
1364
|
format: format
|
|
1353
1365
|
});
|
|
1354
|
-
_context15.next =
|
|
1366
|
+
_context15.next = 19;
|
|
1355
1367
|
return this.writeTextureFile(textureData, '1', format, childPath, slpkChildPath);
|
|
1356
1368
|
|
|
1357
|
-
case
|
|
1369
|
+
case 19:
|
|
1358
1370
|
if (!this.generateTextures) {
|
|
1359
|
-
_context15.next =
|
|
1371
|
+
_context15.next = 24;
|
|
1360
1372
|
break;
|
|
1361
1373
|
}
|
|
1362
1374
|
|
|
@@ -1364,24 +1376,18 @@ var I3SConverter = function () {
|
|
|
1364
1376
|
name: '0',
|
|
1365
1377
|
format: 'jpg'
|
|
1366
1378
|
});
|
|
1367
|
-
|
|
1368
|
-
_context15.next =
|
|
1369
|
-
return (0, _core.encode)(texture.image.data[0], _images.ImageWriter);
|
|
1370
|
-
|
|
1371
|
-
case 28:
|
|
1372
|
-
_context15.t4 = _context15.sent;
|
|
1373
|
-
decodedFromKTX2TextureData = new _context15.t3(_context15.t4);
|
|
1374
|
-
_context15.next = 32;
|
|
1379
|
+
decodedFromKTX2TextureData = (0, _core.encode)(texture.image.data[0], _images.ImageWriter);
|
|
1380
|
+
_context15.next = 24;
|
|
1375
1381
|
return this.writeTextureFile(decodedFromKTX2TextureData, '0', 'jpg', childPath, slpkChildPath);
|
|
1376
1382
|
|
|
1377
|
-
case
|
|
1383
|
+
case 24:
|
|
1378
1384
|
if (!this.layers0.textureSetDefinitions.length) {
|
|
1379
1385
|
this.layers0.textureSetDefinitions.push({
|
|
1380
1386
|
formats: formats
|
|
1381
1387
|
});
|
|
1382
1388
|
}
|
|
1383
1389
|
|
|
1384
|
-
case
|
|
1390
|
+
case 25:
|
|
1385
1391
|
case "end":
|
|
1386
1392
|
return _context15.stop();
|
|
1387
1393
|
}
|
|
@@ -1404,27 +1410,21 @@ var I3SConverter = function () {
|
|
|
1404
1410
|
while (1) {
|
|
1405
1411
|
switch (_context16.prev = _context16.next) {
|
|
1406
1412
|
case 0:
|
|
1407
|
-
if (
|
|
1408
|
-
|
|
1409
|
-
|
|
1413
|
+
if (this.options.slpk) {
|
|
1414
|
+
slpkTexturePath = (0, _path.join)(childPath, 'textures');
|
|
1415
|
+
compress = false;
|
|
1416
|
+
this.writeQueue.enqueue({
|
|
1417
|
+
archiveKey: "".concat(slpkChildPath, "/textures/").concat(name, ".").concat(format),
|
|
1418
|
+
writePromise: (0, _fileUtils.writeFileForSlpk)(slpkTexturePath, textureData, "".concat(name, ".").concat(format), compress)
|
|
1419
|
+
});
|
|
1420
|
+
} else {
|
|
1421
|
+
texturePath = (0, _path.join)(childPath, "textures/".concat(name, "/"));
|
|
1422
|
+
this.writeQueue.enqueue({
|
|
1423
|
+
writePromise: (0, _fileUtils.writeFile)(texturePath, textureData, "index.".concat(format))
|
|
1424
|
+
});
|
|
1410
1425
|
}
|
|
1411
1426
|
|
|
1412
|
-
|
|
1413
|
-
compress = false;
|
|
1414
|
-
_context16.next = 5;
|
|
1415
|
-
return (0, _fileUtils.writeFileForSlpk)(slpkTexturePath, textureData, "".concat(name, ".").concat(format), compress);
|
|
1416
|
-
|
|
1417
|
-
case 5:
|
|
1418
|
-
this.fileMap["".concat(slpkChildPath, "/textures/").concat(name, ".").concat(format)] = _context16.sent;
|
|
1419
|
-
_context16.next = 11;
|
|
1420
|
-
break;
|
|
1421
|
-
|
|
1422
|
-
case 8:
|
|
1423
|
-
texturePath = (0, _path.join)(childPath, "textures/".concat(name, "/"));
|
|
1424
|
-
_context16.next = 11;
|
|
1425
|
-
return (0, _fileUtils.writeFile)(texturePath, textureData, "index.".concat(format));
|
|
1426
|
-
|
|
1427
|
-
case 11:
|
|
1427
|
+
case 1:
|
|
1428
1428
|
case "end":
|
|
1429
1429
|
return _context16.stop();
|
|
1430
1430
|
}
|
|
@@ -1441,55 +1441,47 @@ var I3SConverter = function () {
|
|
|
1441
1441
|
}, {
|
|
1442
1442
|
key: "_writeAttributes",
|
|
1443
1443
|
value: function () {
|
|
1444
|
-
var _writeAttributes2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee17(
|
|
1444
|
+
var _writeAttributes2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee17() {
|
|
1445
1445
|
var _this$layers4, _this$layers4$attribu;
|
|
1446
1446
|
|
|
1447
|
-
var
|
|
1447
|
+
var attributes,
|
|
1448
|
+
childPath,
|
|
1449
|
+
slpkChildPath,
|
|
1450
|
+
index,
|
|
1451
|
+
folderName,
|
|
1452
|
+
fileBuffer,
|
|
1453
|
+
slpkAttributesPath,
|
|
1454
|
+
attributesPath,
|
|
1455
|
+
_args17 = arguments;
|
|
1448
1456
|
return _regenerator.default.wrap(function _callee17$(_context17) {
|
|
1449
1457
|
while (1) {
|
|
1450
1458
|
switch (_context17.prev = _context17.next) {
|
|
1451
1459
|
case 0:
|
|
1452
|
-
|
|
1453
|
-
|
|
1454
|
-
|
|
1455
|
-
|
|
1456
|
-
|
|
1457
|
-
|
|
1458
|
-
|
|
1459
|
-
|
|
1460
|
-
|
|
1461
|
-
|
|
1462
|
-
|
|
1463
|
-
|
|
1464
|
-
|
|
1465
|
-
|
|
1466
|
-
|
|
1467
|
-
|
|
1468
|
-
|
|
1469
|
-
|
|
1470
|
-
|
|
1460
|
+
attributes = _args17.length > 0 && _args17[0] !== undefined ? _args17[0] : [];
|
|
1461
|
+
childPath = _args17.length > 1 ? _args17[1] : undefined;
|
|
1462
|
+
slpkChildPath = _args17.length > 2 ? _args17[2] : undefined;
|
|
1463
|
+
|
|
1464
|
+
if (attributes !== null && attributes !== void 0 && attributes.length && (_this$layers4 = this.layers0) !== null && _this$layers4 !== void 0 && (_this$layers4$attribu = _this$layers4.attributeStorageInfo) !== null && _this$layers4$attribu !== void 0 && _this$layers4$attribu.length) {
|
|
1465
|
+
for (index = 0; index < attributes.length; index++) {
|
|
1466
|
+
folderName = this.layers0.attributeStorageInfo[index].key;
|
|
1467
|
+
fileBuffer = new Uint8Array(attributes[index]);
|
|
1468
|
+
|
|
1469
|
+
if (this.options.slpk) {
|
|
1470
|
+
slpkAttributesPath = (0, _path.join)(childPath, 'attributes', folderName);
|
|
1471
|
+
this.writeQueue.enqueue({
|
|
1472
|
+
archiveKey: "".concat(slpkChildPath, "/attributes/").concat(folderName, ".bin.gz"),
|
|
1473
|
+
writePromise: (0, _fileUtils.writeFileForSlpk)(slpkAttributesPath, fileBuffer, '0.bin')
|
|
1474
|
+
});
|
|
1475
|
+
} else {
|
|
1476
|
+
attributesPath = (0, _path.join)(childPath, "attributes/".concat(folderName, "/0"));
|
|
1477
|
+
this.writeQueue.enqueue({
|
|
1478
|
+
writePromise: (0, _fileUtils.writeFile)(attributesPath, fileBuffer, 'index.bin')
|
|
1479
|
+
});
|
|
1480
|
+
}
|
|
1481
|
+
}
|
|
1471
1482
|
}
|
|
1472
1483
|
|
|
1473
|
-
|
|
1474
|
-
_context17.next = 9;
|
|
1475
|
-
return (0, _fileUtils.writeFileForSlpk)(slpkAttributesPath, fileBuffer, '0.bin');
|
|
1476
|
-
|
|
1477
|
-
case 9:
|
|
1478
|
-
this.fileMap["".concat(slpkChildPath, "/attributes/").concat(folderName, ".bin.gz")] = _context17.sent;
|
|
1479
|
-
_context17.next = 15;
|
|
1480
|
-
break;
|
|
1481
|
-
|
|
1482
|
-
case 12:
|
|
1483
|
-
attributesPath = (0, _path.join)(childPath, "attributes/".concat(folderName, "/0"));
|
|
1484
|
-
_context17.next = 15;
|
|
1485
|
-
return (0, _fileUtils.writeFile)(attributesPath, fileBuffer, 'index.bin');
|
|
1486
|
-
|
|
1487
|
-
case 15:
|
|
1488
|
-
index++;
|
|
1489
|
-
_context17.next = 2;
|
|
1490
|
-
break;
|
|
1491
|
-
|
|
1492
|
-
case 18:
|
|
1484
|
+
case 4:
|
|
1493
1485
|
case "end":
|
|
1494
1486
|
return _context17.stop();
|
|
1495
1487
|
}
|
|
@@ -1497,7 +1489,7 @@ var I3SConverter = function () {
|
|
|
1497
1489
|
}, _callee17, this);
|
|
1498
1490
|
}));
|
|
1499
1491
|
|
|
1500
|
-
function _writeAttributes(
|
|
1492
|
+
function _writeAttributes() {
|
|
1501
1493
|
return _writeAttributes2.apply(this, arguments);
|
|
1502
1494
|
}
|
|
1503
1495
|
|
|
@@ -1747,7 +1739,7 @@ var I3SConverter = function () {
|
|
|
1747
1739
|
}, _callee18, this);
|
|
1748
1740
|
}));
|
|
1749
1741
|
|
|
1750
|
-
function _finishConversion(
|
|
1742
|
+
function _finishConversion(_x39) {
|
|
1751
1743
|
return _finishConversion2.apply(this, arguments);
|
|
1752
1744
|
}
|
|
1753
1745
|
|
|
@@ -1864,6 +1856,84 @@ var I3SConverter = function () {
|
|
|
1864
1856
|
|
|
1865
1857
|
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);
|
|
1866
1858
|
}
|
|
1859
|
+
}, {
|
|
1860
|
+
key: "loadWorkers",
|
|
1861
|
+
value: function () {
|
|
1862
|
+
var _loadWorkers = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee21() {
|
|
1863
|
+
var url, _sourceResponse, _source, _url, _sourceResponse2, _source2, i3sAttributesWorkerUrl, sourceResponse, source;
|
|
1864
|
+
|
|
1865
|
+
return _regenerator.default.wrap(function _callee21$(_context21) {
|
|
1866
|
+
while (1) {
|
|
1867
|
+
switch (_context21.prev = _context21.next) {
|
|
1868
|
+
case 0:
|
|
1869
|
+
console.log("Loading workers source...");
|
|
1870
|
+
|
|
1871
|
+
if (!this.options.draco) {
|
|
1872
|
+
_context21.next = 10;
|
|
1873
|
+
break;
|
|
1874
|
+
}
|
|
1875
|
+
|
|
1876
|
+
url = (0, _workerUtils.getWorkerURL)(_draco.DracoWriterWorker, _objectSpread({}, (0, _core.getLoaderOptions)()));
|
|
1877
|
+
_context21.next = 5;
|
|
1878
|
+
return (0, _core.fetchFile)(url);
|
|
1879
|
+
|
|
1880
|
+
case 5:
|
|
1881
|
+
_sourceResponse = _context21.sent;
|
|
1882
|
+
_context21.next = 8;
|
|
1883
|
+
return _sourceResponse.text();
|
|
1884
|
+
|
|
1885
|
+
case 8:
|
|
1886
|
+
_source = _context21.sent;
|
|
1887
|
+
this.workerSource.draco = _source;
|
|
1888
|
+
|
|
1889
|
+
case 10:
|
|
1890
|
+
if (!this.generateTextures) {
|
|
1891
|
+
_context21.next = 19;
|
|
1892
|
+
break;
|
|
1893
|
+
}
|
|
1894
|
+
|
|
1895
|
+
_url = (0, _workerUtils.getWorkerURL)(_textures.KTX2BasisWriterWorker, _objectSpread({}, (0, _core.getLoaderOptions)()));
|
|
1896
|
+
_context21.next = 14;
|
|
1897
|
+
return (0, _core.fetchFile)(_url);
|
|
1898
|
+
|
|
1899
|
+
case 14:
|
|
1900
|
+
_sourceResponse2 = _context21.sent;
|
|
1901
|
+
_context21.next = 17;
|
|
1902
|
+
return _sourceResponse2.text();
|
|
1903
|
+
|
|
1904
|
+
case 17:
|
|
1905
|
+
_source2 = _context21.sent;
|
|
1906
|
+
this.workerSource.ktx2 = _source2;
|
|
1907
|
+
|
|
1908
|
+
case 19:
|
|
1909
|
+
i3sAttributesWorkerUrl = (0, _workerUtils.getWorkerURL)(_i3sAttributesWorker.I3SAttributesWorker, _objectSpread({}, (0, _core.getLoaderOptions)()));
|
|
1910
|
+
_context21.next = 22;
|
|
1911
|
+
return (0, _core.fetchFile)(i3sAttributesWorkerUrl);
|
|
1912
|
+
|
|
1913
|
+
case 22:
|
|
1914
|
+
sourceResponse = _context21.sent;
|
|
1915
|
+
_context21.next = 25;
|
|
1916
|
+
return sourceResponse.text();
|
|
1917
|
+
|
|
1918
|
+
case 25:
|
|
1919
|
+
source = _context21.sent;
|
|
1920
|
+
this.workerSource.I3SAttributes = source;
|
|
1921
|
+
console.log("Loading workers source completed!");
|
|
1922
|
+
|
|
1923
|
+
case 28:
|
|
1924
|
+
case "end":
|
|
1925
|
+
return _context21.stop();
|
|
1926
|
+
}
|
|
1927
|
+
}
|
|
1928
|
+
}, _callee21, this);
|
|
1929
|
+
}));
|
|
1930
|
+
|
|
1931
|
+
function loadWorkers() {
|
|
1932
|
+
return _loadWorkers.apply(this, arguments);
|
|
1933
|
+
}
|
|
1934
|
+
|
|
1935
|
+
return loadWorkers;
|
|
1936
|
+
}()
|
|
1867
1937
|
}]);
|
|
1868
1938
|
return I3SConverter;
|
|
1869
1939
|
}();
|