@loaders.gl/tile-converter 3.4.0-alpha.2 → 3.4.0-alpha.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (142) hide show
  1. package/dist/3d-tiles-attributes-worker.js +2 -2
  2. package/dist/3d-tiles-attributes-worker.js.map +3 -3
  3. package/dist/converter.min.js +182 -182
  4. package/dist/dist.min.js +1101 -754
  5. package/dist/es5/3d-tiles-attributes-worker.js +1 -2
  6. package/dist/es5/3d-tiles-attributes-worker.js.map +1 -1
  7. package/dist/es5/3d-tiles-converter/3d-tiles-converter.js +264 -287
  8. package/dist/es5/3d-tiles-converter/3d-tiles-converter.js.map +1 -1
  9. package/dist/es5/3d-tiles-converter/helpers/b3dm-converter.js +89 -113
  10. package/dist/es5/3d-tiles-converter/helpers/b3dm-converter.js.map +1 -1
  11. package/dist/es5/3d-tiles-converter/helpers/i3s-obb-to-3d-tiles-obb.js.map +1 -1
  12. package/dist/es5/3d-tiles-converter/helpers/texture-atlas.js +0 -2
  13. package/dist/es5/3d-tiles-converter/helpers/texture-atlas.js.map +1 -1
  14. package/dist/es5/3d-tiles-converter/json-templates/tileset.js.map +1 -1
  15. package/dist/es5/constants.js.map +1 -1
  16. package/dist/es5/converter-cli.js +67 -81
  17. package/dist/es5/converter-cli.js.map +1 -1
  18. package/dist/es5/deps-installer/deps-installer.js +64 -69
  19. package/dist/es5/deps-installer/deps-installer.js.map +1 -1
  20. package/dist/es5/i3s-attributes-worker.js +1 -2
  21. package/dist/es5/i3s-attributes-worker.js.map +1 -1
  22. package/dist/es5/i3s-converter/helpers/batch-ids-extensions.js +0 -8
  23. package/dist/es5/i3s-converter/helpers/batch-ids-extensions.js.map +1 -1
  24. package/dist/es5/i3s-converter/helpers/coordinate-converter.js +0 -5
  25. package/dist/es5/i3s-converter/helpers/coordinate-converter.js.map +1 -1
  26. package/dist/es5/i3s-converter/helpers/create-scene-server-path.js +14 -16
  27. package/dist/es5/i3s-converter/helpers/create-scene-server-path.js.map +1 -1
  28. package/dist/es5/i3s-converter/helpers/feature-attributes.js +1 -11
  29. package/dist/es5/i3s-converter/helpers/feature-attributes.js.map +1 -1
  30. package/dist/es5/i3s-converter/helpers/geometry-attributes.js +3 -10
  31. package/dist/es5/i3s-converter/helpers/geometry-attributes.js.map +1 -1
  32. package/dist/es5/i3s-converter/helpers/geometry-converter.js +397 -449
  33. package/dist/es5/i3s-converter/helpers/geometry-converter.js.map +1 -1
  34. package/dist/es5/i3s-converter/helpers/gltf-attributes.js +0 -2
  35. package/dist/es5/i3s-converter/helpers/gltf-attributes.js.map +1 -1
  36. package/dist/es5/i3s-converter/helpers/node-debug.js +1 -9
  37. package/dist/es5/i3s-converter/helpers/node-debug.js.map +1 -1
  38. package/dist/es5/i3s-converter/helpers/node-index-document.js +293 -318
  39. package/dist/es5/i3s-converter/helpers/node-index-document.js.map +1 -1
  40. package/dist/es5/i3s-converter/helpers/node-pages.js +279 -319
  41. package/dist/es5/i3s-converter/helpers/node-pages.js.map +1 -1
  42. package/dist/es5/i3s-converter/i3s-converter.js +964 -1030
  43. package/dist/es5/i3s-converter/i3s-converter.js.map +1 -1
  44. package/dist/es5/i3s-converter/json-templates/geometry-definitions.js.map +1 -1
  45. package/dist/es5/i3s-converter/json-templates/layers.js.map +1 -1
  46. package/dist/es5/i3s-converter/json-templates/metadata.js.map +1 -1
  47. package/dist/es5/i3s-converter/json-templates/node.js.map +1 -1
  48. package/dist/es5/i3s-converter/json-templates/scene-server.js.map +1 -1
  49. package/dist/es5/i3s-converter/json-templates/shared-resources.js +1 -1
  50. package/dist/es5/i3s-converter/json-templates/shared-resources.js.map +1 -1
  51. package/dist/es5/i3s-converter/json-templates/store.js.map +1 -1
  52. package/dist/es5/i3s-server/controllers/index-controller.js +28 -30
  53. package/dist/es5/i3s-server/controllers/index-controller.js.map +1 -1
  54. package/dist/es5/i3s-server/routes/index.js +15 -18
  55. package/dist/es5/i3s-server/routes/index.js.map +1 -1
  56. package/dist/es5/index.js.map +1 -1
  57. package/dist/es5/lib/utils/compress-util.js +198 -218
  58. package/dist/es5/lib/utils/compress-util.js.map +1 -1
  59. package/dist/es5/lib/utils/file-utils.js +118 -128
  60. package/dist/es5/lib/utils/file-utils.js.map +1 -1
  61. package/dist/es5/lib/utils/lod-conversion-utils.js +0 -1
  62. package/dist/es5/lib/utils/lod-conversion-utils.js.map +1 -1
  63. package/dist/es5/lib/utils/queue.js.map +1 -1
  64. package/dist/es5/lib/utils/statistic-utills.js +81 -85
  65. package/dist/es5/lib/utils/statistic-utills.js.map +1 -1
  66. package/dist/es5/lib/utils/write-queue.js +84 -92
  67. package/dist/es5/lib/utils/write-queue.js.map +1 -1
  68. package/dist/es5/pgm-loader.js +7 -10
  69. package/dist/es5/pgm-loader.js.map +1 -1
  70. package/dist/es5/workers/3d-tiles-attributes-worker.js +7 -9
  71. package/dist/es5/workers/3d-tiles-attributes-worker.js.map +1 -1
  72. package/dist/es5/workers/i3s-attributes-worker.js +10 -12
  73. package/dist/es5/workers/i3s-attributes-worker.js.map +1 -1
  74. package/dist/esm/3d-tiles-attributes-worker.js +1 -3
  75. package/dist/esm/3d-tiles-attributes-worker.js.map +1 -1
  76. package/dist/esm/3d-tiles-converter/3d-tiles-converter.js +1 -15
  77. package/dist/esm/3d-tiles-converter/3d-tiles-converter.js.map +1 -1
  78. package/dist/esm/3d-tiles-converter/helpers/b3dm-converter.js +0 -12
  79. package/dist/esm/3d-tiles-converter/helpers/b3dm-converter.js.map +1 -1
  80. package/dist/esm/3d-tiles-converter/helpers/i3s-obb-to-3d-tiles-obb.js +0 -1
  81. package/dist/esm/3d-tiles-converter/helpers/i3s-obb-to-3d-tiles-obb.js.map +1 -1
  82. package/dist/esm/3d-tiles-converter/helpers/texture-atlas.js +0 -3
  83. package/dist/esm/3d-tiles-converter/helpers/texture-atlas.js.map +1 -1
  84. package/dist/esm/3d-tiles-converter/json-templates/tileset.js.map +1 -1
  85. package/dist/esm/bundle.js +0 -1
  86. package/dist/esm/bundle.js.map +1 -1
  87. package/dist/esm/converter-cli.js +0 -11
  88. package/dist/esm/converter-cli.js.map +1 -1
  89. package/dist/esm/deps-installer/deps-installer.js +1 -4
  90. package/dist/esm/deps-installer/deps-installer.js.map +1 -1
  91. package/dist/esm/i3s-attributes-worker.js +1 -3
  92. package/dist/esm/i3s-attributes-worker.js.map +1 -1
  93. package/dist/esm/i3s-converter/helpers/batch-ids-extensions.js +0 -8
  94. package/dist/esm/i3s-converter/helpers/batch-ids-extensions.js.map +1 -1
  95. package/dist/esm/i3s-converter/helpers/coordinate-converter.js +0 -5
  96. package/dist/esm/i3s-converter/helpers/coordinate-converter.js.map +1 -1
  97. package/dist/esm/i3s-converter/helpers/create-scene-server-path.js +0 -1
  98. package/dist/esm/i3s-converter/helpers/create-scene-server-path.js.map +1 -1
  99. package/dist/esm/i3s-converter/helpers/feature-attributes.js +0 -11
  100. package/dist/esm/i3s-converter/helpers/feature-attributes.js.map +1 -1
  101. package/dist/esm/i3s-converter/helpers/geometry-attributes.js +0 -7
  102. package/dist/esm/i3s-converter/helpers/geometry-attributes.js.map +1 -1
  103. package/dist/esm/i3s-converter/helpers/geometry-converter.js +0 -48
  104. package/dist/esm/i3s-converter/helpers/geometry-converter.js.map +1 -1
  105. package/dist/esm/i3s-converter/helpers/gltf-attributes.js +0 -3
  106. package/dist/esm/i3s-converter/helpers/gltf-attributes.js.map +1 -1
  107. package/dist/esm/i3s-converter/helpers/node-debug.js +1 -9
  108. package/dist/esm/i3s-converter/helpers/node-debug.js.map +1 -1
  109. package/dist/esm/i3s-converter/helpers/node-index-document.js +0 -14
  110. package/dist/esm/i3s-converter/helpers/node-index-document.js.map +1 -1
  111. package/dist/esm/i3s-converter/helpers/node-pages.js +0 -18
  112. package/dist/esm/i3s-converter/helpers/node-pages.js.map +1 -1
  113. package/dist/esm/i3s-converter/i3s-converter.js +4 -42
  114. package/dist/esm/i3s-converter/i3s-converter.js.map +1 -1
  115. package/dist/esm/i3s-converter/json-templates/geometry-definitions.js.map +1 -1
  116. package/dist/esm/i3s-converter/json-templates/layers.js.map +1 -1
  117. package/dist/esm/i3s-converter/json-templates/metadata.js.map +1 -1
  118. package/dist/esm/i3s-converter/json-templates/node.js.map +1 -1
  119. package/dist/esm/i3s-converter/json-templates/scene-server.js.map +1 -1
  120. package/dist/esm/i3s-converter/json-templates/shared-resources.js.map +1 -1
  121. package/dist/esm/i3s-server/controllers/index-controller.js +0 -2
  122. package/dist/esm/i3s-server/controllers/index-controller.js.map +1 -1
  123. package/dist/esm/i3s-server/routes/index.js +0 -1
  124. package/dist/esm/i3s-server/routes/index.js.map +1 -1
  125. package/dist/esm/lib/utils/compress-util.js +1 -17
  126. package/dist/esm/lib/utils/compress-util.js.map +1 -1
  127. package/dist/esm/lib/utils/file-utils.js +0 -7
  128. package/dist/esm/lib/utils/file-utils.js.map +1 -1
  129. package/dist/esm/lib/utils/lod-conversion-utils.js +0 -2
  130. package/dist/esm/lib/utils/lod-conversion-utils.js.map +1 -1
  131. package/dist/esm/lib/utils/queue.js.map +1 -1
  132. package/dist/esm/lib/utils/statistic-utills.js.map +1 -1
  133. package/dist/esm/lib/utils/write-queue.js +0 -2
  134. package/dist/esm/lib/utils/write-queue.js.map +1 -1
  135. package/dist/esm/pgm-loader.js +1 -3
  136. package/dist/esm/pgm-loader.js.map +1 -1
  137. package/dist/esm/workers/3d-tiles-attributes-worker.js.map +1 -1
  138. package/dist/esm/workers/i3s-attributes-worker.js.map +1 -1
  139. package/dist/i3s-attributes-worker.js +2 -2
  140. package/dist/i3s-attributes-worker.js.map +3 -3
  141. package/dist/i3s-converter/helpers/node-pages.js +1 -1
  142. package/package.json +16 -16
@@ -47,17 +47,15 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
47
47
  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; }
48
48
  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; } } }; }
49
49
  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); }
50
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
50
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
51
51
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
52
52
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
53
- var ION_DEFAULT_TOKEN = ((_process$env = _process.default.env) === null || _process$env === void 0 ? void 0 : _process$env.IonToken) ||
54
- 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiJlYWMxMzcyYy0zZjJkLTQwODctODNlNi01MDRkZmMzMjIxOWIiLCJpZCI6OTYyMCwic2NvcGVzIjpbImFzbCIsImFzciIsImdjIl0sImlhdCI6MTU2Mjg2NjI3M30.1FNiClUyk00YH_nWfSGpiQAjR5V2OvREDq1PJ5QMjWQ';
53
+ var ION_DEFAULT_TOKEN = ((_process$env = _process.default.env) === null || _process$env === void 0 ? void 0 : _process$env.IonToken) || 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiJlYWMxMzcyYy0zZjJkLTQwODctODNlNi01MDRkZmMzMjIxOWIiLCJpZCI6OTYyMCwic2NvcGVzIjpbImFzbCIsImFzciIsImdjIl0sImlhdCI6MTU2Mjg2NjI3M30.1FNiClUyk00YH_nWfSGpiQAjR5V2OvREDq1PJ5QMjWQ';
55
54
  var HARDCODED_NODES_PER_PAGE = 64;
56
55
  var _3D_TILES = '3DTILES';
57
56
  var _3D_OBJECT_LAYER_TYPE = '3DObject';
58
57
  var REFRESH_TOKEN_TIMEOUT = 1800;
59
58
  var CESIUM_DATASET_PREFIX = 'https://';
60
-
61
59
  var I3SConverter = function () {
62
60
  function I3SConverter() {
63
61
  (0, _classCallCheck2.default)(this, I3SConverter);
@@ -105,112 +103,108 @@ var I3SConverter = function () {
105
103
  this.layersHasTexture = false;
106
104
  this.compressList = null;
107
105
  }
108
-
109
106
  (0, _createClass2.default)(I3SConverter, [{
110
107
  key: "convert",
111
108
  value: function () {
112
109
  var _convert = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee(options) {
113
110
  var tilesetName, slpk, egmFilePath, inputUrl, validate, outputPath, _options$draco, draco, sevenZipExe, maxDepth, token, generateTextures, generateBoundingVolumes, _options$instantNodeW, instantNodeWriting, _options$mergeMateria, mergeMaterials, _sourceTilesetJson$ro, _sourceTilesetJson$ro2, preloadOptions, tilesetOptions, sourceTilesetJson, workerFarm;
114
111
  return _regenerator.default.wrap(function _callee$(_context) {
115
- while (1) {
116
- switch (_context.prev = _context.next) {
117
- case 0:
118
- if (!_core.isBrowser) {
119
- _context.next = 3;
120
- break;
121
- }
122
- console.log(_constants.BROWSER_ERROR_MESSAGE);
123
- return _context.abrupt("return", _constants.BROWSER_ERROR_MESSAGE);
124
- case 3:
125
- this.conversionStartTime = _process.default.hrtime();
126
- tilesetName = options.tilesetName, slpk = options.slpk, egmFilePath = options.egmFilePath, inputUrl = options.inputUrl, validate = options.validate, outputPath = options.outputPath, _options$draco = options.draco, draco = _options$draco === void 0 ? true : _options$draco, sevenZipExe = options.sevenZipExe, maxDepth = options.maxDepth, token = options.token, generateTextures = options.generateTextures, generateBoundingVolumes = options.generateBoundingVolumes, _options$instantNodeW = options.instantNodeWriting, instantNodeWriting = _options$instantNodeW === void 0 ? false : _options$instantNodeW, _options$mergeMateria = options.mergeMaterials, mergeMaterials = _options$mergeMateria === void 0 ? true : _options$mergeMateria;
127
- this.options = {
128
- maxDepth: maxDepth,
129
- slpk: slpk,
130
- sevenZipExe: sevenZipExe,
131
- egmFilePath: egmFilePath,
132
- draco: draco,
133
- token: token,
134
- inputUrl: inputUrl,
135
- instantNodeWriting: instantNodeWriting,
136
- mergeMaterials: mergeMaterials
137
- };
138
- this.compressList = this.options.instantNodeWriting && [] || null;
139
- this.validate = Boolean(validate);
140
- this.Loader = inputUrl.indexOf(CESIUM_DATASET_PREFIX) !== -1 ? _dTiles.CesiumIonLoader : _dTiles.Tiles3DLoader;
141
- this.generateTextures = Boolean(generateTextures);
142
- this.generateBoundingVolumes = Boolean(generateBoundingVolumes);
143
- this.writeQueue = new _writeQueue.default();
144
- this.writeQueue.startListening();
145
- console.log('Loading egm file...');
146
- _context.next = 16;
147
- return (0, _core.load)(egmFilePath, _pgmLoader.PGMLoader);
148
- case 16:
149
- this.geoidHeightModel = _context.sent;
150
- console.log('Loading egm file completed!');
151
-
152
- if (slpk) {
153
- this.nodePages.useWriteFunction(_fileUtils.writeFileForSlpk);
154
- }
155
- _context.next = 21;
156
- return this.loadWorkers();
157
- case 21:
158
- _context.prev = 21;
159
- _context.next = 24;
160
- return this._fetchPreloadOptions();
161
- case 24:
162
- preloadOptions = _context.sent;
163
- tilesetOptions = {
164
- loadOptions: {
165
- _nodeWorkers: true,
166
- reuseWorkers: true,
167
- basis: {
168
- format: 'rgba32'
169
- },
170
- 'basis-nodejs': {
171
- format: 'rgba32',
172
- workerUrl: './modules/textures/dist/basis-nodejs-worker.js'
173
- },
174
- 'draco-nodejs': {
175
- workerUrl: './modules/draco/dist/draco-nodejs-worker.js'
176
- }
112
+ while (1) switch (_context.prev = _context.next) {
113
+ case 0:
114
+ if (!_core.isBrowser) {
115
+ _context.next = 3;
116
+ break;
117
+ }
118
+ console.log(_constants.BROWSER_ERROR_MESSAGE);
119
+ return _context.abrupt("return", _constants.BROWSER_ERROR_MESSAGE);
120
+ case 3:
121
+ this.conversionStartTime = _process.default.hrtime();
122
+ tilesetName = options.tilesetName, slpk = options.slpk, egmFilePath = options.egmFilePath, inputUrl = options.inputUrl, validate = options.validate, outputPath = options.outputPath, _options$draco = options.draco, draco = _options$draco === void 0 ? true : _options$draco, sevenZipExe = options.sevenZipExe, maxDepth = options.maxDepth, token = options.token, generateTextures = options.generateTextures, generateBoundingVolumes = options.generateBoundingVolumes, _options$instantNodeW = options.instantNodeWriting, instantNodeWriting = _options$instantNodeW === void 0 ? false : _options$instantNodeW, _options$mergeMateria = options.mergeMaterials, mergeMaterials = _options$mergeMateria === void 0 ? true : _options$mergeMateria;
123
+ this.options = {
124
+ maxDepth: maxDepth,
125
+ slpk: slpk,
126
+ sevenZipExe: sevenZipExe,
127
+ egmFilePath: egmFilePath,
128
+ draco: draco,
129
+ token: token,
130
+ inputUrl: inputUrl,
131
+ instantNodeWriting: instantNodeWriting,
132
+ mergeMaterials: mergeMaterials
133
+ };
134
+ this.compressList = this.options.instantNodeWriting && [] || null;
135
+ this.validate = Boolean(validate);
136
+ this.Loader = inputUrl.indexOf(CESIUM_DATASET_PREFIX) !== -1 ? _dTiles.CesiumIonLoader : _dTiles.Tiles3DLoader;
137
+ this.generateTextures = Boolean(generateTextures);
138
+ this.generateBoundingVolumes = Boolean(generateBoundingVolumes);
139
+ this.writeQueue = new _writeQueue.default();
140
+ this.writeQueue.startListening();
141
+ console.log('Loading egm file...');
142
+ _context.next = 16;
143
+ return (0, _core.load)(egmFilePath, _pgmLoader.PGMLoader);
144
+ case 16:
145
+ this.geoidHeightModel = _context.sent;
146
+ console.log('Loading egm file completed!');
147
+ if (slpk) {
148
+ this.nodePages.useWriteFunction(_fileUtils.writeFileForSlpk);
149
+ }
150
+ _context.next = 21;
151
+ return this.loadWorkers();
152
+ case 21:
153
+ _context.prev = 21;
154
+ _context.next = 24;
155
+ return this._fetchPreloadOptions();
156
+ case 24:
157
+ 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'
177
171
  }
178
- };
179
- if (preloadOptions.headers) {
180
- tilesetOptions.loadOptions.fetch = {
181
- headers: preloadOptions.headers
182
- };
183
172
  }
184
- Object.assign(tilesetOptions, preloadOptions);
185
- _context.next = 30;
186
- return (0, _core.load)(inputUrl, this.Loader, tilesetOptions.loadOptions);
187
- case 30:
188
- sourceTilesetJson = _context.sent;
189
- this.sourceTileset = new _tiles.Tileset3D(sourceTilesetJson, tilesetOptions);
190
- _context.next = 34;
191
- return this._createAndSaveTileset(outputPath, tilesetName, sourceTilesetJson === null || sourceTilesetJson === void 0 ? void 0 : (_sourceTilesetJson$ro = sourceTilesetJson.root) === null || _sourceTilesetJson$ro === void 0 ? void 0 : (_sourceTilesetJson$ro2 = _sourceTilesetJson$ro.boundingVolume) === null || _sourceTilesetJson$ro2 === void 0 ? void 0 : _sourceTilesetJson$ro2.region);
192
- case 34:
193
- _context.next = 36;
194
- return this._finishConversion({
195
- slpk: Boolean(slpk),
196
- outputPath: outputPath,
197
- tilesetName: tilesetName
198
- });
199
- case 36:
200
- return _context.abrupt("return", sourceTilesetJson);
201
- case 39:
202
- _context.prev = 39;
203
- _context.t0 = _context["catch"](21);
204
- throw _context.t0;
205
- case 42:
206
- _context.prev = 42;
207
- workerFarm = _workerUtils.WorkerFarm.getWorkerFarm({});
208
- workerFarm.destroy();
209
- return _context.finish(42);
210
- case 46:
211
- case "end":
212
- return _context.stop();
213
- }
173
+ };
174
+ if (preloadOptions.headers) {
175
+ tilesetOptions.loadOptions.fetch = {
176
+ headers: preloadOptions.headers
177
+ };
178
+ }
179
+ Object.assign(tilesetOptions, preloadOptions);
180
+ _context.next = 30;
181
+ return (0, _core.load)(inputUrl, this.Loader, tilesetOptions.loadOptions);
182
+ case 30:
183
+ sourceTilesetJson = _context.sent;
184
+ this.sourceTileset = new _tiles.Tileset3D(sourceTilesetJson, tilesetOptions);
185
+ _context.next = 34;
186
+ return this._createAndSaveTileset(outputPath, tilesetName, sourceTilesetJson === null || sourceTilesetJson === void 0 ? void 0 : (_sourceTilesetJson$ro = sourceTilesetJson.root) === null || _sourceTilesetJson$ro === void 0 ? void 0 : (_sourceTilesetJson$ro2 = _sourceTilesetJson$ro.boundingVolume) === null || _sourceTilesetJson$ro2 === void 0 ? void 0 : _sourceTilesetJson$ro2.region);
187
+ case 34:
188
+ _context.next = 36;
189
+ return this._finishConversion({
190
+ slpk: Boolean(slpk),
191
+ outputPath: outputPath,
192
+ tilesetName: tilesetName
193
+ });
194
+ case 36:
195
+ return _context.abrupt("return", sourceTilesetJson);
196
+ case 39:
197
+ _context.prev = 39;
198
+ _context.t0 = _context["catch"](21);
199
+ throw _context.t0;
200
+ case 42:
201
+ _context.prev = 42;
202
+ workerFarm = _workerUtils.WorkerFarm.getWorkerFarm({});
203
+ workerFarm.destroy();
204
+ return _context.finish(42);
205
+ case 46:
206
+ case "end":
207
+ return _context.stop();
214
208
  }
215
209
  }, _callee, this, [[21, 39, 42, 46]]);
216
210
  }));
@@ -226,99 +220,97 @@ var I3SConverter = function () {
226
220
  var _this = this;
227
221
  var tilesetPath, sourceRootTile, boundingVolumes, rootNode, _iterator, _step, filePath;
228
222
  return _regenerator.default.wrap(function _callee2$(_context2) {
229
- while (1) {
230
- switch (_context2.prev = _context2.next) {
231
- case 0:
232
- tilesetPath = (0, _path.join)("".concat(outputPath), "".concat(tilesetName));
233
- _context2.prev = 1;
234
- _context2.next = 4;
235
- return (0, _fileUtils.removeDir)(tilesetPath);
236
- case 4:
237
- _context2.next = 8;
238
- break;
239
- case 6:
240
- _context2.prev = 6;
241
- _context2.t0 = _context2["catch"](1);
242
- case 8:
243
- this.layers0Path = (0, _path.join)(tilesetPath, 'SceneServer', 'layers', '0');
244
- this._formLayers0(tilesetName, boundingVolumeRegion);
245
- this.materialDefinitions = [];
246
- this.materialMap = new Map();
247
- sourceRootTile = this.sourceTileset.root;
248
- boundingVolumes = (0, _coordinateConverter.createBoundingVolumes)(sourceRootTile, this.geoidHeightModel);
249
- _context2.next = 16;
250
- return this.nodePages.push({
251
- index: 0,
252
- lodThreshold: 0,
253
- obb: boundingVolumes.obb,
254
- children: []
223
+ while (1) switch (_context2.prev = _context2.next) {
224
+ case 0:
225
+ tilesetPath = (0, _path.join)("".concat(outputPath), "".concat(tilesetName));
226
+ _context2.prev = 1;
227
+ _context2.next = 4;
228
+ return (0, _fileUtils.removeDir)(tilesetPath);
229
+ case 4:
230
+ _context2.next = 8;
231
+ break;
232
+ case 6:
233
+ _context2.prev = 6;
234
+ _context2.t0 = _context2["catch"](1);
235
+ case 8:
236
+ this.layers0Path = (0, _path.join)(tilesetPath, 'SceneServer', 'layers', '0');
237
+ this._formLayers0(tilesetName, boundingVolumeRegion);
238
+ this.materialDefinitions = [];
239
+ this.materialMap = new Map();
240
+ sourceRootTile = this.sourceTileset.root;
241
+ boundingVolumes = (0, _coordinateConverter.createBoundingVolumes)(sourceRootTile, this.geoidHeightModel);
242
+ _context2.next = 16;
243
+ return this.nodePages.push({
244
+ index: 0,
245
+ lodThreshold: 0,
246
+ obb: boundingVolumes.obb,
247
+ children: []
248
+ });
249
+ case 16:
250
+ _context2.next = 18;
251
+ return _nodeIndexDocument.NodeIndexDocument.createRootNode(boundingVolumes, this);
252
+ case 18:
253
+ rootNode = _context2.sent;
254
+ _context2.next = 21;
255
+ return this._convertNodesTree(rootNode, sourceRootTile);
256
+ case 21:
257
+ this.layers0.materialDefinitions = this.materialDefinitions;
258
+ this.layers0.geometryDefinitions = (0, _jsonMapTransform.default)(this.geometryConfigs.map(function (config) {
259
+ return {
260
+ geometryConfig: _objectSpread(_objectSpread({}, config), {}, {
261
+ draco: _this.options.draco
262
+ })
263
+ };
264
+ }), (0, _geometryDefinitions.GEOMETRY_DEFINITION)());
265
+ if (this.layersHasTexture === false) {
266
+ this.layers0.store.defaultGeometrySchema.ordering = this.layers0.store.defaultGeometrySchema.ordering.filter(function (attribute) {
267
+ return attribute !== 'uv0';
255
268
  });
256
- case 16:
257
- _context2.next = 18;
258
- return _nodeIndexDocument.NodeIndexDocument.createRootNode(boundingVolumes, this);
259
- case 18:
260
- rootNode = _context2.sent;
261
- _context2.next = 21;
262
- return this._convertNodesTree(rootNode, sourceRootTile);
263
- case 21:
264
- this.layers0.materialDefinitions = this.materialDefinitions;
265
- this.layers0.geometryDefinitions = (0, _jsonMapTransform.default)(this.geometryConfigs.map(function (config) {
266
- return {
267
- geometryConfig: _objectSpread(_objectSpread({}, config), {}, {
268
- draco: _this.options.draco
269
- })
270
- };
271
- }), (0, _geometryDefinitions.GEOMETRY_DEFINITION)());
272
- if (this.layersHasTexture === false) {
273
- this.layers0.store.defaultGeometrySchema.ordering = this.layers0.store.defaultGeometrySchema.ordering.filter(function (attribute) {
274
- return attribute !== 'uv0';
275
- });
276
- }
277
- _context2.next = 26;
278
- return this._writeLayers0();
279
- case 26:
280
- (0, _createSceneServerPath.createSceneServerPath)(tilesetName, this.layers0, tilesetPath);
281
- _iterator = _createForOfIteratorHelper(this.compressList || []);
282
- _context2.prev = 28;
283
- _iterator.s();
284
- case 30:
285
- if ((_step = _iterator.n()).done) {
286
- _context2.next = 38;
287
- break;
288
- }
289
- filePath = _step.value;
290
- _context2.next = 34;
291
- return (0, _compressUtil.compressFileWithGzip)(filePath);
292
- case 34:
293
- _context2.next = 36;
294
- return (0, _fileUtils.removeFile)(filePath);
295
- case 36:
296
- _context2.next = 30;
269
+ }
270
+ _context2.next = 26;
271
+ return this._writeLayers0();
272
+ case 26:
273
+ (0, _createSceneServerPath.createSceneServerPath)(tilesetName, this.layers0, tilesetPath);
274
+ _iterator = _createForOfIteratorHelper(this.compressList || []);
275
+ _context2.prev = 28;
276
+ _iterator.s();
277
+ case 30:
278
+ if ((_step = _iterator.n()).done) {
279
+ _context2.next = 38;
297
280
  break;
298
- case 38:
299
- _context2.next = 43;
300
- break;
301
- case 40:
302
- _context2.prev = 40;
303
- _context2.t1 = _context2["catch"](28);
304
- _iterator.e(_context2.t1);
305
- case 43:
306
- _context2.prev = 43;
307
- _iterator.f();
308
- return _context2.finish(43);
309
- case 46:
310
- _context2.next = 48;
311
- return this.nodePages.save();
312
- case 48:
313
- _context2.next = 50;
314
- return this.writeQueue.finalize();
315
- case 50:
316
- _context2.next = 52;
317
- return this._createSlpk(tilesetPath);
318
- case 52:
319
- case "end":
320
- return _context2.stop();
321
- }
281
+ }
282
+ filePath = _step.value;
283
+ _context2.next = 34;
284
+ return (0, _compressUtil.compressFileWithGzip)(filePath);
285
+ case 34:
286
+ _context2.next = 36;
287
+ return (0, _fileUtils.removeFile)(filePath);
288
+ case 36:
289
+ _context2.next = 30;
290
+ break;
291
+ case 38:
292
+ _context2.next = 43;
293
+ break;
294
+ case 40:
295
+ _context2.prev = 40;
296
+ _context2.t1 = _context2["catch"](28);
297
+ _iterator.e(_context2.t1);
298
+ case 43:
299
+ _context2.prev = 43;
300
+ _iterator.f();
301
+ return _context2.finish(43);
302
+ case 46:
303
+ _context2.next = 48;
304
+ return this.nodePages.save();
305
+ case 48:
306
+ _context2.next = 50;
307
+ return this.writeQueue.finalize();
308
+ case 50:
309
+ _context2.next = 52;
310
+ return this._createSlpk(tilesetPath);
311
+ case 52:
312
+ case "end":
313
+ return _context2.stop();
322
314
  }
323
315
  }, _callee2, this, [[1, 6], [28, 40, 43, 46]]);
324
316
  }));
@@ -329,8 +321,7 @@ var I3SConverter = function () {
329
321
  }()
330
322
  }, {
331
323
  key: "_formLayers0",
332
- value:
333
- function _formLayers0(tilesetName, boundingVolumeRegion) {
324
+ value: function _formLayers0(tilesetName, boundingVolumeRegion) {
334
325
  var _this$sourceTileset, _this$sourceTileset2, _this$sourceTileset2$;
335
326
  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));
336
327
  if (boundingVolumeRegion) {
@@ -355,75 +346,72 @@ var I3SConverter = function () {
355
346
  };
356
347
  this.layers0 = (0, _jsonMapTransform.default)(layers0data, (0, _layers.LAYERS)());
357
348
  }
358
-
359
349
  }, {
360
350
  key: "_convertNodesTree",
361
351
  value: function () {
362
352
  var _convertNodesTree2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee3(rootNode, sourceRootTile) {
363
353
  var childNodes, _iterator2, _step2, childNode;
364
354
  return _regenerator.default.wrap(function _callee3$(_context3) {
365
- while (1) {
366
- switch (_context3.prev = _context3.next) {
367
- case 0:
368
- _context3.next = 2;
369
- return this.sourceTileset._loadTile(sourceRootTile);
370
- case 2:
371
- if (!this.isContentSupported(sourceRootTile)) {
372
- _context3.next = 27;
373
- break;
374
- }
375
- _context3.next = 5;
376
- return this._createNode(rootNode, sourceRootTile, 0);
377
- case 5:
378
- childNodes = _context3.sent;
379
- _iterator2 = _createForOfIteratorHelper(childNodes);
380
- _context3.prev = 7;
381
- _iterator2.s();
382
- case 9:
383
- if ((_step2 = _iterator2.n()).done) {
384
- _context3.next = 15;
385
- break;
386
- }
387
- childNode = _step2.value;
388
- _context3.next = 13;
389
- return childNode.save();
390
- case 13:
391
- _context3.next = 9;
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;
392
362
  break;
393
- case 15:
394
- _context3.next = 20;
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;
395
374
  break;
396
- case 17:
397
- _context3.prev = 17;
398
- _context3.t0 = _context3["catch"](7);
399
- _iterator2.e(_context3.t0);
400
- case 20:
401
- _context3.prev = 20;
402
- _iterator2.f();
403
- return _context3.finish(20);
404
- case 23:
405
- _context3.next = 25;
406
- return rootNode.addChildren(childNodes);
407
- case 25:
408
- _context3.next = 29;
409
- break;
410
- case 27:
411
- _context3.next = 29;
412
- return this._addChildrenWithNeighborsAndWriteFile({
413
- parentNode: rootNode,
414
- sourceTiles: sourceRootTile.children,
415
- level: 1
416
- });
417
- case 29:
418
- _context3.next = 31;
419
- return sourceRootTile.unloadContent();
420
- case 31:
421
- _context3.next = 33;
422
- return rootNode.save();
423
- case 33:
424
- case "end":
425
- return _context3.stop();
426
- }
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();
427
415
  }
428
416
  }, _callee3, this, [[7, 17, 20, 23]]);
429
417
  }));
@@ -438,34 +426,32 @@ var I3SConverter = function () {
438
426
  var _writeLayers = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee4() {
439
427
  var _this2 = this;
440
428
  return _regenerator.default.wrap(function _callee4$(_context4) {
441
- while (1) {
442
- switch (_context4.prev = _context4.next) {
443
- case 0:
444
- if (!this.options.slpk) {
445
- _context4.next = 5;
446
- break;
447
- }
448
- _context4.next = 3;
449
- return this.writeQueue.enqueue({
450
- archiveKey: '3dSceneLayer.json.gz',
451
- writePromise: function writePromise() {
452
- return (0, _fileUtils.writeFileForSlpk)(_this2.layers0Path, JSON.stringify(_this2.layers0), '3dSceneLayer.json');
453
- }
454
- });
455
- case 3:
456
- _context4.next = 7;
429
+ while (1) switch (_context4.prev = _context4.next) {
430
+ case 0:
431
+ if (!this.options.slpk) {
432
+ _context4.next = 5;
457
433
  break;
458
- case 5:
459
- _context4.next = 7;
460
- return this.writeQueue.enqueue({
461
- writePromise: function writePromise() {
462
- return (0, _fileUtils.writeFile)(_this2.layers0Path, JSON.stringify(_this2.layers0));
463
- }
464
- });
465
- case 7:
466
- case "end":
467
- return _context4.stop();
468
- }
434
+ }
435
+ _context4.next = 3;
436
+ return this.writeQueue.enqueue({
437
+ archiveKey: '3dSceneLayer.json.gz',
438
+ writePromise: function writePromise() {
439
+ return (0, _fileUtils.writeFileForSlpk)(_this2.layers0Path, JSON.stringify(_this2.layers0), '3dSceneLayer.json');
440
+ }
441
+ });
442
+ case 3:
443
+ _context4.next = 7;
444
+ break;
445
+ case 5:
446
+ _context4.next = 7;
447
+ return this.writeQueue.enqueue({
448
+ writePromise: function writePromise() {
449
+ return (0, _fileUtils.writeFile)(_this2.layers0Path, JSON.stringify(_this2.layers0));
450
+ }
451
+ });
452
+ case 7:
453
+ case "end":
454
+ return _context4.stop();
469
455
  }
470
456
  }, _callee4, this);
471
457
  }));
@@ -480,31 +466,29 @@ var I3SConverter = function () {
480
466
  var _createSlpk2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee5(tilesetPath) {
481
467
  var slpkTilesetPath, slpkFileName;
482
468
  return _regenerator.default.wrap(function _callee5$(_context5) {
483
- while (1) {
484
- switch (_context5.prev = _context5.next) {
485
- case 0:
486
- if (!this.options.slpk) {
487
- _context5.next = 12;
488
- break;
489
- }
490
- slpkTilesetPath = (0, _path.join)(tilesetPath, 'SceneServer', 'layers', '0');
491
- slpkFileName = "".concat(tilesetPath, ".slpk");
492
- _context5.next = 5;
493
- return (0, _compressUtil.compressWithChildProcess)(slpkTilesetPath, slpkFileName, 0, '.', this.options.sevenZipExe);
494
- case 5:
495
- _context5.prev = 5;
496
- _context5.next = 8;
497
- return (0, _fileUtils.removeDir)(tilesetPath);
498
- case 8:
469
+ while (1) switch (_context5.prev = _context5.next) {
470
+ case 0:
471
+ if (!this.options.slpk) {
499
472
  _context5.next = 12;
500
473
  break;
501
- case 10:
502
- _context5.prev = 10;
503
- _context5.t0 = _context5["catch"](5);
504
- case 12:
505
- case "end":
506
- return _context5.stop();
507
- }
474
+ }
475
+ slpkTilesetPath = (0, _path.join)(tilesetPath, 'SceneServer', 'layers', '0');
476
+ slpkFileName = "".concat(tilesetPath, ".slpk");
477
+ _context5.next = 5;
478
+ return (0, _compressUtil.compressWithChildProcess)(slpkTilesetPath, slpkFileName, 0, '.', this.options.sevenZipExe);
479
+ case 5:
480
+ _context5.prev = 5;
481
+ _context5.next = 8;
482
+ return (0, _fileUtils.removeDir)(tilesetPath);
483
+ case 8:
484
+ _context5.next = 12;
485
+ break;
486
+ case 10:
487
+ _context5.prev = 10;
488
+ _context5.t0 = _context5["catch"](5);
489
+ case 12:
490
+ case "end":
491
+ return _context5.stop();
508
492
  }
509
493
  }, _callee5, this, [[5, 10]]);
510
494
  }));
@@ -518,18 +502,16 @@ var I3SConverter = function () {
518
502
  value: function () {
519
503
  var _addChildrenWithNeighborsAndWriteFile2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee6(data) {
520
504
  return _regenerator.default.wrap(function _callee6$(_context6) {
521
- while (1) {
522
- switch (_context6.prev = _context6.next) {
523
- case 0:
524
- _context6.next = 2;
525
- return this._addChildren(data);
526
- case 2:
527
- _context6.next = 4;
528
- return data.parentNode.addNeighbors();
529
- case 4:
530
- case "end":
531
- return _context6.stop();
532
- }
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();
533
515
  }
534
516
  }, _callee6, this);
535
517
  }));
@@ -544,26 +526,24 @@ var I3SConverter = function () {
544
526
  var _convertNestedTileset = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee7(_ref) {
545
527
  var parentNode, sourceTile, level;
546
528
  return _regenerator.default.wrap(function _callee7$(_context7) {
547
- while (1) {
548
- switch (_context7.prev = _context7.next) {
549
- case 0:
550
- parentNode = _ref.parentNode, sourceTile = _ref.sourceTile, level = _ref.level;
551
- _context7.next = 3;
552
- return this.sourceTileset._loadTile(sourceTile);
553
- case 3:
554
- _context7.next = 5;
555
- return this._addChildren({
556
- parentNode: parentNode,
557
- sourceTiles: sourceTile.children,
558
- level: level + 1
559
- });
560
- case 5:
561
- _context7.next = 7;
562
- return sourceTile.unloadContent();
563
- case 7:
564
- case "end":
565
- return _context7.stop();
566
- }
529
+ while (1) switch (_context7.prev = _context7.next) {
530
+ case 0:
531
+ parentNode = _ref.parentNode, sourceTile = _ref.sourceTile, level = _ref.level;
532
+ _context7.next = 3;
533
+ return this.sourceTileset._loadTile(sourceTile);
534
+ case 3:
535
+ _context7.next = 5;
536
+ return this._addChildren({
537
+ parentNode: parentNode,
538
+ sourceTiles: sourceTile.children,
539
+ level: level + 1
540
+ });
541
+ case 5:
542
+ _context7.next = 7;
543
+ return sourceTile.unloadContent();
544
+ case 7:
545
+ case "end":
546
+ return _context7.stop();
567
547
  }
568
548
  }, _callee7, this);
569
549
  }));
@@ -578,20 +558,18 @@ var I3SConverter = function () {
578
558
  var _convertNode = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee8(_ref2) {
579
559
  var parentNode, sourceTile, level, childNodes;
580
560
  return _regenerator.default.wrap(function _callee8$(_context8) {
581
- while (1) {
582
- switch (_context8.prev = _context8.next) {
583
- case 0:
584
- parentNode = _ref2.parentNode, sourceTile = _ref2.sourceTile, level = _ref2.level;
585
- _context8.next = 3;
586
- return this._createNode(parentNode, sourceTile, level);
587
- case 3:
588
- childNodes = _context8.sent;
589
- _context8.next = 6;
590
- return parentNode.addChildren(childNodes);
591
- case 6:
592
- case "end":
593
- return _context8.stop();
594
- }
561
+ while (1) switch (_context8.prev = _context8.next) {
562
+ case 0:
563
+ parentNode = _ref2.parentNode, sourceTile = _ref2.sourceTile, level = _ref2.level;
564
+ _context8.next = 3;
565
+ return this._createNode(parentNode, sourceTile, level);
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();
595
573
  }
596
574
  }, _callee8, this);
597
575
  }));
@@ -606,67 +584,65 @@ var I3SConverter = function () {
606
584
  var _addChildren2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee9(data) {
607
585
  var sourceTiles, parentNode, level, _iterator3, _step3, sourceTile;
608
586
  return _regenerator.default.wrap(function _callee9$(_context9) {
609
- while (1) {
610
- switch (_context9.prev = _context9.next) {
611
- case 0:
612
- sourceTiles = data.sourceTiles, parentNode = data.parentNode, level = data.level;
613
- if (!(this.options.maxDepth && level > this.options.maxDepth)) {
614
- _context9.next = 3;
615
- break;
616
- }
617
- return _context9.abrupt("return");
618
- case 3:
619
- _iterator3 = _createForOfIteratorHelper(sourceTiles);
620
- _context9.prev = 4;
621
- _iterator3.s();
622
- case 6:
623
- if ((_step3 = _iterator3.n()).done) {
624
- _context9.next = 18;
625
- break;
626
- }
627
- sourceTile = _step3.value;
628
- if (!(sourceTile.type === 'json')) {
629
- _context9.next = 13;
630
- break;
631
- }
632
- _context9.next = 11;
633
- return this.convertNestedTileset({
634
- parentNode: parentNode,
635
- sourceTile: sourceTile,
636
- level: level
637
- });
638
- case 11:
639
- _context9.next = 15;
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;
640
592
  break;
641
- case 13:
642
- _context9.next = 15;
643
- return this.convertNode({
644
- parentNode: parentNode,
645
- sourceTile: sourceTile,
646
- level: level
647
- });
648
- case 15:
649
- if (sourceTile.id) {
650
- console.log(sourceTile.id);
651
- }
652
- case 16:
653
- _context9.next = 6;
593
+ }
594
+ return _context9.abrupt("return");
595
+ case 3:
596
+ _iterator3 = _createForOfIteratorHelper(sourceTiles);
597
+ _context9.prev = 4;
598
+ _iterator3.s();
599
+ case 6:
600
+ if ((_step3 = _iterator3.n()).done) {
601
+ _context9.next = 18;
654
602
  break;
655
- case 18:
656
- _context9.next = 23;
603
+ }
604
+ sourceTile = _step3.value;
605
+ if (!(sourceTile.type === 'json')) {
606
+ _context9.next = 13;
657
607
  break;
658
- case 20:
659
- _context9.prev = 20;
660
- _context9.t0 = _context9["catch"](4);
661
- _iterator3.e(_context9.t0);
662
- case 23:
663
- _context9.prev = 23;
664
- _iterator3.f();
665
- return _context9.finish(23);
666
- case 26:
667
- case "end":
668
- return _context9.stop();
669
- }
608
+ }
609
+ _context9.next = 11;
610
+ return this.convertNestedTileset({
611
+ parentNode: parentNode,
612
+ sourceTile: sourceTile,
613
+ level: level
614
+ });
615
+ case 11:
616
+ _context9.next = 15;
617
+ 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
+ case 16:
630
+ _context9.next = 6;
631
+ break;
632
+ case 18:
633
+ _context9.next = 23;
634
+ 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
+ case 26:
644
+ case "end":
645
+ return _context9.stop();
670
646
  }
671
647
  }, _callee9, this, [[4, 20, 23, 26]]);
672
648
  }));
@@ -682,116 +658,113 @@ var I3SConverter = function () {
682
658
  var _this$layers, _this$layers$attribut;
683
659
  var boundingVolumes, propertyTable, resourcesData, nodes, nodeIds, nodesInPage, emptyResources, _iterator4, _step4, resources, lodSelection, maxScreenThresholdSQ, nodeInPage, nodeData, node, _console;
684
660
  return _regenerator.default.wrap(function _callee10$(_context10) {
685
- while (1) {
686
- switch (_context10.prev = _context10.next) {
687
- case 0:
688
- this._checkAddRefinementTypeForTile(sourceTile);
689
- _context10.next = 3;
690
- return this._updateTilesetOptions();
691
- case 3:
692
- _context10.next = 5;
693
- return this.sourceTileset._loadTile(sourceTile);
694
- case 5:
695
- boundingVolumes = (0, _coordinateConverter.createBoundingVolumes)(sourceTile, this.geoidHeightModel);
696
- propertyTable = (0, _geometryConverter.getPropertyTable)(sourceTile.content);
697
- 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)) {
698
- this._convertPropertyTableToNodeAttributes(propertyTable);
699
- }
700
- _context10.next = 10;
701
- return this._convertResources(sourceTile, parentNode.inPageId, propertyTable);
702
- case 10:
703
- resourcesData = _context10.sent;
704
- nodes = [];
705
- nodeIds = [];
706
- nodesInPage = [];
707
- emptyResources = {
708
- geometry: null,
709
- compressedGeometry: null,
710
- texture: null,
711
- hasUvRegions: false,
712
- sharedResources: null,
713
- meshMaterial: null,
714
- vertexCount: null,
715
- attributes: null,
716
- featureCount: null,
717
- boundingVolumes: null
718
- };
719
- _iterator4 = _createForOfIteratorHelper(resourcesData || [emptyResources]);
720
- _context10.prev = 16;
721
- _iterator4.s();
722
- case 18:
723
- if ((_step4 = _iterator4.n()).done) {
724
- _context10.next = 42;
725
- break;
726
- }
727
- resources = _step4.value;
728
- this.layersHasTexture = this.layersHasTexture || Boolean(resources.texture);
729
- if (this.generateBoundingVolumes && resources.boundingVolumes) {
730
- boundingVolumes = resources.boundingVolumes;
731
- }
732
- lodSelection = (0, _lodConversionUtils.convertGeometricErrorToScreenThreshold)(sourceTile, boundingVolumes);
733
- maxScreenThresholdSQ = lodSelection.find(function (val) {
734
- return val.metricType === 'maxScreenThresholdSQ';
735
- }) || {
736
- maxError: 0
737
- };
738
- _context10.next = 26;
739
- return this._updateNodeInNodePages(maxScreenThresholdSQ, boundingVolumes, sourceTile, parentNode.inPageId, resources);
740
- case 26:
741
- nodeInPage = _context10.sent;
742
- _context10.next = 29;
743
- return _nodeIndexDocument.NodeIndexDocument.createNodeIndexDocument(parentNode, boundingVolumes, lodSelection, nodeInPage, resources);
744
- case 29:
745
- nodeData = _context10.sent;
746
- _context10.next = 32;
747
- return new _nodeIndexDocument.NodeIndexDocument(nodeInPage.index, this).addData(nodeData);
748
- case 32:
749
- node = _context10.sent;
750
- nodes.push(node);
751
- if (!nodeInPage.mesh) {
752
- _context10.next = 37;
753
- break;
754
- }
755
- _context10.next = 37;
756
- return this._writeResources(resources, node.id);
757
- case 37:
758
- if (this.validate) {
759
- this.boundingVolumeWarnings = (0, _nodeDebug.validateNodeBoundingVolumes)(nodeData);
760
- if (this.boundingVolumeWarnings && this.boundingVolumeWarnings.length) {
761
- (_console = console).warn.apply(_console, ['Bounding Volume Warnings: '].concat((0, _toConsumableArray2.default)(this.boundingVolumeWarnings)));
762
- }
763
- }
764
-
765
- nodeIds.push(nodeInPage.index);
766
- nodesInPage.push(nodeInPage);
767
- case 40:
768
- _context10.next = 18;
661
+ while (1) switch (_context10.prev = _context10.next) {
662
+ case 0:
663
+ this._checkAddRefinementTypeForTile(sourceTile);
664
+ _context10.next = 3;
665
+ return this._updateTilesetOptions();
666
+ case 3:
667
+ _context10.next = 5;
668
+ return this.sourceTileset._loadTile(sourceTile);
669
+ case 5:
670
+ boundingVolumes = (0, _coordinateConverter.createBoundingVolumes)(sourceTile, this.geoidHeightModel);
671
+ propertyTable = (0, _geometryConverter.getPropertyTable)(sourceTile.content);
672
+ 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
+ this._convertPropertyTableToNodeAttributes(propertyTable);
674
+ }
675
+ _context10.next = 10;
676
+ return this._convertResources(sourceTile, parentNode.inPageId, propertyTable);
677
+ case 10:
678
+ resourcesData = _context10.sent;
679
+ nodes = [];
680
+ nodeIds = [];
681
+ nodesInPage = [];
682
+ emptyResources = {
683
+ geometry: null,
684
+ compressedGeometry: null,
685
+ texture: null,
686
+ hasUvRegions: false,
687
+ sharedResources: null,
688
+ meshMaterial: null,
689
+ vertexCount: null,
690
+ attributes: null,
691
+ featureCount: null,
692
+ boundingVolumes: null
693
+ };
694
+ _iterator4 = _createForOfIteratorHelper(resourcesData || [emptyResources]);
695
+ _context10.prev = 16;
696
+ _iterator4.s();
697
+ case 18:
698
+ if ((_step4 = _iterator4.n()).done) {
699
+ _context10.next = 42;
769
700
  break;
770
- case 42:
771
- _context10.next = 47;
701
+ }
702
+ resources = _step4.value;
703
+ this.layersHasTexture = this.layersHasTexture || Boolean(resources.texture);
704
+ if (this.generateBoundingVolumes && resources.boundingVolumes) {
705
+ boundingVolumes = resources.boundingVolumes;
706
+ }
707
+ lodSelection = (0, _lodConversionUtils.convertGeometricErrorToScreenThreshold)(sourceTile, boundingVolumes);
708
+ maxScreenThresholdSQ = lodSelection.find(function (val) {
709
+ return val.metricType === 'maxScreenThresholdSQ';
710
+ }) || {
711
+ maxError: 0
712
+ };
713
+ _context10.next = 26;
714
+ return this._updateNodeInNodePages(maxScreenThresholdSQ, boundingVolumes, sourceTile, parentNode.inPageId, resources);
715
+ case 26:
716
+ nodeInPage = _context10.sent;
717
+ _context10.next = 29;
718
+ return _nodeIndexDocument.NodeIndexDocument.createNodeIndexDocument(parentNode, boundingVolumes, lodSelection, nodeInPage, resources);
719
+ case 29:
720
+ nodeData = _context10.sent;
721
+ _context10.next = 32;
722
+ return new _nodeIndexDocument.NodeIndexDocument(nodeInPage.index, this).addData(nodeData);
723
+ case 32:
724
+ node = _context10.sent;
725
+ nodes.push(node);
726
+ if (!nodeInPage.mesh) {
727
+ _context10.next = 37;
772
728
  break;
773
- case 44:
774
- _context10.prev = 44;
775
- _context10.t0 = _context10["catch"](16);
776
- _iterator4.e(_context10.t0);
777
- case 47:
778
- _context10.prev = 47;
779
- _iterator4.f();
780
- return _context10.finish(47);
781
- case 50:
782
- sourceTile.unloadContent();
783
- _context10.next = 53;
784
- return this._addChildrenWithNeighborsAndWriteFile({
785
- parentNode: nodes[0],
786
- sourceTiles: sourceTile.children,
787
- level: level + 1
788
- });
789
- case 53:
790
- return _context10.abrupt("return", nodes);
791
- case 54:
792
- case "end":
793
- return _context10.stop();
794
- }
729
+ }
730
+ _context10.next = 37;
731
+ return this._writeResources(resources, node.id);
732
+ case 37:
733
+ if (this.validate) {
734
+ this.boundingVolumeWarnings = (0, _nodeDebug.validateNodeBoundingVolumes)(nodeData);
735
+ if (this.boundingVolumeWarnings && this.boundingVolumeWarnings.length) {
736
+ (_console = console).warn.apply(_console, ['Bounding Volume Warnings: '].concat((0, _toConsumableArray2.default)(this.boundingVolumeWarnings)));
737
+ }
738
+ }
739
+ nodeIds.push(nodeInPage.index);
740
+ nodesInPage.push(nodeInPage);
741
+ case 40:
742
+ _context10.next = 18;
743
+ break;
744
+ case 42:
745
+ _context10.next = 47;
746
+ break;
747
+ case 44:
748
+ _context10.prev = 44;
749
+ _context10.t0 = _context10["catch"](16);
750
+ _iterator4.e(_context10.t0);
751
+ case 47:
752
+ _context10.prev = 47;
753
+ _iterator4.f();
754
+ return _context10.finish(47);
755
+ case 50:
756
+ sourceTile.unloadContent();
757
+ _context10.next = 53;
758
+ return this._addChildrenWithNeighborsAndWriteFile({
759
+ parentNode: nodes[0],
760
+ sourceTiles: sourceTile.children,
761
+ level: level + 1
762
+ });
763
+ case 53:
764
+ return _context10.abrupt("return", nodes);
765
+ case 54:
766
+ case "end":
767
+ return _context10.stop();
795
768
  }
796
769
  }, _callee10, this, [[16, 44, 47, 50]]);
797
770
  }));
@@ -808,47 +781,43 @@ var I3SConverter = function () {
808
781
  _this$layers2;
809
782
  var draftObb, resourcesData;
810
783
  return _regenerator.default.wrap(function _callee12$(_context12) {
811
- while (1) {
812
- switch (_context12.prev = _context12.next) {
813
- case 0:
814
- if (this.isContentSupported(sourceTile)) {
815
- _context12.next = 2;
816
- break;
817
- }
818
- return _context12.abrupt("return", null);
819
- case 2:
820
- draftObb = {
821
- center: [],
822
- halfSize: [],
823
- quaternion: []
824
- };
825
- _context12.next = 5;
826
- return (0, _geometryConverter.default)(sourceTile.content, (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee11() {
827
- return _regenerator.default.wrap(function _callee11$(_context11) {
828
- while (1) {
829
- switch (_context11.prev = _context11.next) {
830
- case 0:
831
- _context11.next = 2;
832
- return _this3.nodePages.push({
833
- index: 0,
834
- obb: draftObb
835
- }, parentId);
836
- case 2:
837
- return _context11.abrupt("return", _context11.sent.index);
838
- case 3:
839
- case "end":
840
- return _context11.stop();
841
- }
842
- }
843
- }, _callee11);
844
- })), 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);
845
- case 5:
846
- resourcesData = _context12.sent;
847
- return _context12.abrupt("return", resourcesData);
848
- case 7:
849
- case "end":
850
- return _context12.stop();
851
- }
784
+ while (1) switch (_context12.prev = _context12.next) {
785
+ case 0:
786
+ if (this.isContentSupported(sourceTile)) {
787
+ _context12.next = 2;
788
+ break;
789
+ }
790
+ return _context12.abrupt("return", null);
791
+ case 2:
792
+ draftObb = {
793
+ center: [],
794
+ halfSize: [],
795
+ quaternion: []
796
+ };
797
+ _context12.next = 5;
798
+ return (0, _geometryConverter.default)(sourceTile.content, (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee11() {
799
+ return _regenerator.default.wrap(function _callee11$(_context11) {
800
+ while (1) switch (_context11.prev = _context11.next) {
801
+ case 0:
802
+ _context11.next = 2;
803
+ return _this3.nodePages.push({
804
+ index: 0,
805
+ obb: draftObb
806
+ }, parentId);
807
+ case 2:
808
+ return _context11.abrupt("return", _context11.sent.index);
809
+ case 3:
810
+ case "end":
811
+ return _context11.stop();
812
+ }
813
+ }, _callee11);
814
+ })), 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
+ case 5:
816
+ resourcesData = _context12.sent;
817
+ return _context12.abrupt("return", resourcesData);
818
+ case 7:
819
+ case "end":
820
+ return _context12.stop();
852
821
  }
853
822
  }, _callee12, this);
854
823
  }));
@@ -863,69 +832,67 @@ var I3SConverter = function () {
863
832
  var _updateNodeInNodePages2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee13(maxScreenThresholdSQ, boundingVolumes, sourceTile, parentId, resources) {
864
833
  var meshMaterial, texture, vertexCount, featureCount, geometry, hasUvRegions, nodeInPage, nodeId, node, texelCountHint;
865
834
  return _regenerator.default.wrap(function _callee13$(_context13) {
866
- while (1) {
867
- switch (_context13.prev = _context13.next) {
868
- case 0:
869
- meshMaterial = resources.meshMaterial, texture = resources.texture, vertexCount = resources.vertexCount, featureCount = resources.featureCount, geometry = resources.geometry, hasUvRegions = resources.hasUvRegions;
870
- nodeInPage = {
871
- index: 0,
872
- lodThreshold: maxScreenThresholdSQ.maxError,
873
- obb: boundingVolumes.obb,
874
- children: []
835
+ while (1) switch (_context13.prev = _context13.next) {
836
+ case 0:
837
+ meshMaterial = resources.meshMaterial, texture = resources.texture, vertexCount = resources.vertexCount, featureCount = resources.featureCount, geometry = resources.geometry, hasUvRegions = resources.hasUvRegions;
838
+ nodeInPage = {
839
+ index: 0,
840
+ lodThreshold: maxScreenThresholdSQ.maxError,
841
+ obb: boundingVolumes.obb,
842
+ children: []
843
+ };
844
+ if (geometry && this.isContentSupported(sourceTile)) {
845
+ nodeInPage.mesh = {
846
+ geometry: {
847
+ definition: this.findOrCreateGeometryDefinition(Boolean(texture), hasUvRegions),
848
+ resource: 0
849
+ },
850
+ attribute: {
851
+ resource: 0
852
+ },
853
+ material: {
854
+ definition: 0
855
+ }
875
856
  };
876
- if (geometry && this.isContentSupported(sourceTile)) {
877
- nodeInPage.mesh = {
878
- geometry: {
879
- definition: this.findOrCreateGeometryDefinition(Boolean(texture), hasUvRegions),
880
- resource: 0
881
- },
882
- attribute: {
883
- resource: 0
884
- },
885
- material: {
886
- definition: 0
887
- }
888
- };
889
- }
890
- nodeId = resources.nodeId;
891
- if (nodeId) {
892
- _context13.next = 10;
893
- break;
894
- }
895
- _context13.next = 7;
896
- return this.nodePages.push(nodeInPage, parentId);
897
- case 7:
898
- node = _context13.sent;
899
- _context13.next = 13;
857
+ }
858
+ nodeId = resources.nodeId;
859
+ if (nodeId) {
860
+ _context13.next = 10;
900
861
  break;
901
- case 10:
902
- _context13.next = 12;
903
- return this.nodePages.getNodeById(nodeId);
904
- case 12:
905
- node = _context13.sent;
906
- case 13:
907
- _nodePages.default.updateAll(node, nodeInPage);
908
- if (meshMaterial) {
909
- _nodePages.default.updateMaterialByNodeId(node, this._findOrCreateMaterial(meshMaterial));
910
- }
911
- if (texture) {
912
- texelCountHint = texture.image.height * texture.image.width;
913
- _nodePages.default.updateTexelCountHintByNodeId(node, texelCountHint);
914
- }
915
- if (vertexCount) {
916
- this.vertexCounter += vertexCount;
917
- _nodePages.default.updateVertexCountByNodeId(node, vertexCount);
918
- }
919
- _nodePages.default.updateNodeAttributeByNodeId(node);
920
- if (featureCount) {
921
- _nodePages.default.updateFeatureCountByNodeId(node, featureCount);
922
- }
923
- this.nodePages.saveNode(node);
924
- return _context13.abrupt("return", node);
925
- case 21:
926
- case "end":
927
- return _context13.stop();
928
- }
862
+ }
863
+ _context13.next = 7;
864
+ return this.nodePages.push(nodeInPage, parentId);
865
+ case 7:
866
+ node = _context13.sent;
867
+ _context13.next = 13;
868
+ break;
869
+ case 10:
870
+ _context13.next = 12;
871
+ return this.nodePages.getNodeById(nodeId);
872
+ case 12:
873
+ node = _context13.sent;
874
+ case 13:
875
+ _nodePages.default.updateAll(node, nodeInPage);
876
+ if (meshMaterial) {
877
+ _nodePages.default.updateMaterialByNodeId(node, this._findOrCreateMaterial(meshMaterial));
878
+ }
879
+ if (texture) {
880
+ texelCountHint = texture.image.height * texture.image.width;
881
+ _nodePages.default.updateTexelCountHintByNodeId(node, texelCountHint);
882
+ }
883
+ if (vertexCount) {
884
+ this.vertexCounter += vertexCount;
885
+ _nodePages.default.updateVertexCountByNodeId(node, vertexCount);
886
+ }
887
+ _nodePages.default.updateNodeAttributeByNodeId(node);
888
+ if (featureCount) {
889
+ _nodePages.default.updateFeatureCountByNodeId(node, featureCount);
890
+ }
891
+ this.nodePages.saveNode(node);
892
+ return _context13.abrupt("return", node);
893
+ case 21:
894
+ case "end":
895
+ return _context13.stop();
929
896
  }
930
897
  }, _callee13, this);
931
898
  }));
@@ -940,27 +907,25 @@ var I3SConverter = function () {
940
907
  var _writeResources2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee14(resources, nodePath) {
941
908
  var geometryBuffer, compressedGeometry, texture, sharedResources, attributes, childPath, slpkChildPath;
942
909
  return _regenerator.default.wrap(function _callee14$(_context14) {
943
- while (1) {
944
- switch (_context14.prev = _context14.next) {
945
- case 0:
946
- geometryBuffer = resources.geometry, compressedGeometry = resources.compressedGeometry, texture = resources.texture, sharedResources = resources.sharedResources, attributes = resources.attributes;
947
- childPath = (0, _path.join)(this.layers0Path, 'nodes', nodePath);
948
- slpkChildPath = (0, _path.join)('nodes', nodePath);
949
- _context14.next = 5;
950
- return this._writeGeometries(geometryBuffer, compressedGeometry, childPath, slpkChildPath);
951
- case 5:
952
- _context14.next = 7;
953
- return this._writeShared(sharedResources, childPath, slpkChildPath, nodePath);
954
- case 7:
955
- _context14.next = 9;
956
- return this._writeTexture(texture, childPath, slpkChildPath);
957
- case 9:
958
- _context14.next = 11;
959
- return this._writeAttributes(attributes, childPath, slpkChildPath);
960
- case 11:
961
- case "end":
962
- return _context14.stop();
963
- }
910
+ while (1) switch (_context14.prev = _context14.next) {
911
+ case 0:
912
+ geometryBuffer = resources.geometry, compressedGeometry = resources.compressedGeometry, texture = resources.texture, sharedResources = resources.sharedResources, attributes = resources.attributes;
913
+ childPath = (0, _path.join)(this.layers0Path, 'nodes', nodePath);
914
+ slpkChildPath = (0, _path.join)('nodes', nodePath);
915
+ _context14.next = 5;
916
+ return this._writeGeometries(geometryBuffer, compressedGeometry, childPath, slpkChildPath);
917
+ case 5:
918
+ _context14.next = 7;
919
+ return this._writeShared(sharedResources, childPath, slpkChildPath, nodePath);
920
+ case 7:
921
+ _context14.next = 9;
922
+ return this._writeTexture(texture, childPath, slpkChildPath);
923
+ case 9:
924
+ _context14.next = 11;
925
+ return this._writeAttributes(attributes, childPath, slpkChildPath);
926
+ case 11:
927
+ case "end":
928
+ return _context14.stop();
964
929
  }
965
930
  }, _callee14, this);
966
931
  }));
@@ -975,64 +940,62 @@ var I3SConverter = function () {
975
940
  var _writeGeometries2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee15(geometryBuffer, compressedGeometry, childPath, slpkChildPath) {
976
941
  var slpkGeometryPath, geometryPath, slpkCompressedGeometryPath, compressedGeometryPath;
977
942
  return _regenerator.default.wrap(function _callee15$(_context15) {
978
- while (1) {
979
- switch (_context15.prev = _context15.next) {
980
- case 0:
981
- if (!this.options.slpk) {
982
- _context15.next = 6;
983
- break;
984
- }
985
- slpkGeometryPath = (0, _path.join)(childPath, 'geometries');
986
- _context15.next = 4;
987
- return this.writeQueue.enqueue({
988
- archiveKey: "".concat(slpkChildPath, "/geometries/0.bin.gz"),
989
- writePromise: function writePromise() {
990
- return (0, _fileUtils.writeFileForSlpk)(slpkGeometryPath, geometryBuffer, '0.bin');
991
- }
992
- });
993
- case 4:
994
- _context15.next = 9;
943
+ while (1) switch (_context15.prev = _context15.next) {
944
+ case 0:
945
+ if (!this.options.slpk) {
946
+ _context15.next = 6;
995
947
  break;
996
- case 6:
997
- geometryPath = (0, _path.join)(childPath, 'geometries/0/');
998
- _context15.next = 9;
999
- return this.writeQueue.enqueue({
1000
- writePromise: function writePromise() {
1001
- return (0, _fileUtils.writeFile)(geometryPath, geometryBuffer, 'index.bin');
1002
- }
1003
- });
1004
- case 9:
1005
- if (!this.options.draco) {
1006
- _context15.next = 19;
1007
- break;
948
+ }
949
+ slpkGeometryPath = (0, _path.join)(childPath, 'geometries');
950
+ _context15.next = 4;
951
+ return this.writeQueue.enqueue({
952
+ archiveKey: "".concat(slpkChildPath, "/geometries/0.bin.gz"),
953
+ writePromise: function writePromise() {
954
+ return (0, _fileUtils.writeFileForSlpk)(slpkGeometryPath, geometryBuffer, '0.bin');
1008
955
  }
1009
- if (!this.options.slpk) {
1010
- _context15.next = 16;
1011
- break;
956
+ });
957
+ case 4:
958
+ _context15.next = 9;
959
+ break;
960
+ case 6:
961
+ geometryPath = (0, _path.join)(childPath, 'geometries/0/');
962
+ _context15.next = 9;
963
+ return this.writeQueue.enqueue({
964
+ writePromise: function writePromise() {
965
+ return (0, _fileUtils.writeFile)(geometryPath, geometryBuffer, 'index.bin');
1012
966
  }
1013
- slpkCompressedGeometryPath = (0, _path.join)(childPath, 'geometries');
1014
- _context15.next = 14;
1015
- return this.writeQueue.enqueue({
1016
- archiveKey: "".concat(slpkChildPath, "/geometries/1.bin.gz"),
1017
- writePromise: function writePromise() {
1018
- return (0, _fileUtils.writeFileForSlpk)(slpkCompressedGeometryPath, compressedGeometry, '1.bin');
1019
- }
1020
- });
1021
- case 14:
967
+ });
968
+ case 9:
969
+ if (!this.options.draco) {
1022
970
  _context15.next = 19;
1023
971
  break;
1024
- case 16:
1025
- compressedGeometryPath = (0, _path.join)(childPath, 'geometries/1/');
1026
- _context15.next = 19;
1027
- return this.writeQueue.enqueue({
1028
- writePromise: function writePromise() {
1029
- return (0, _fileUtils.writeFile)(compressedGeometryPath, compressedGeometry, 'index.bin');
1030
- }
1031
- });
1032
- case 19:
1033
- case "end":
1034
- return _context15.stop();
1035
- }
972
+ }
973
+ if (!this.options.slpk) {
974
+ _context15.next = 16;
975
+ break;
976
+ }
977
+ slpkCompressedGeometryPath = (0, _path.join)(childPath, 'geometries');
978
+ _context15.next = 14;
979
+ return this.writeQueue.enqueue({
980
+ archiveKey: "".concat(slpkChildPath, "/geometries/1.bin.gz"),
981
+ writePromise: function writePromise() {
982
+ return (0, _fileUtils.writeFileForSlpk)(slpkCompressedGeometryPath, compressedGeometry, '1.bin');
983
+ }
984
+ });
985
+ case 14:
986
+ _context15.next = 19;
987
+ break;
988
+ case 16:
989
+ compressedGeometryPath = (0, _path.join)(childPath, 'geometries/1/');
990
+ _context15.next = 19;
991
+ return this.writeQueue.enqueue({
992
+ writePromise: function writePromise() {
993
+ return (0, _fileUtils.writeFile)(compressedGeometryPath, compressedGeometry, 'index.bin');
994
+ }
995
+ });
996
+ case 19:
997
+ case "end":
998
+ return _context15.stop();
1036
999
  }
1037
1000
  }, _callee15, this);
1038
1001
  }));
@@ -1047,45 +1010,43 @@ var I3SConverter = function () {
1047
1010
  var _writeShared2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee16(sharedResources, childPath, slpkChildPath, nodePath) {
1048
1011
  var sharedData, sharedDataStr, slpkSharedPath, sharedPath;
1049
1012
  return _regenerator.default.wrap(function _callee16$(_context16) {
1050
- while (1) {
1051
- switch (_context16.prev = _context16.next) {
1052
- case 0:
1053
- if (sharedResources) {
1054
- _context16.next = 2;
1055
- break;
1013
+ while (1) switch (_context16.prev = _context16.next) {
1014
+ case 0:
1015
+ if (sharedResources) {
1016
+ _context16.next = 2;
1017
+ break;
1018
+ }
1019
+ return _context16.abrupt("return");
1020
+ case 2:
1021
+ sharedResources.nodePath = nodePath;
1022
+ sharedData = (0, _jsonMapTransform.default)(sharedResources, (0, _sharedResources.SHARED_RESOURCES)());
1023
+ sharedDataStr = JSON.stringify(sharedData);
1024
+ if (!this.options.slpk) {
1025
+ _context16.next = 11;
1026
+ break;
1027
+ }
1028
+ slpkSharedPath = (0, _path.join)(childPath, 'shared');
1029
+ _context16.next = 9;
1030
+ return this.writeQueue.enqueue({
1031
+ archiveKey: "".concat(slpkChildPath, "/shared/sharedResource.json.gz"),
1032
+ writePromise: function writePromise() {
1033
+ return (0, _fileUtils.writeFileForSlpk)(slpkSharedPath, sharedDataStr, 'sharedResource.json');
1056
1034
  }
1057
- return _context16.abrupt("return");
1058
- case 2:
1059
- sharedResources.nodePath = nodePath;
1060
- sharedData = (0, _jsonMapTransform.default)(sharedResources, (0, _sharedResources.SHARED_RESOURCES)());
1061
- sharedDataStr = JSON.stringify(sharedData);
1062
- if (!this.options.slpk) {
1063
- _context16.next = 11;
1064
- break;
1035
+ });
1036
+ case 9:
1037
+ _context16.next = 14;
1038
+ break;
1039
+ case 11:
1040
+ sharedPath = (0, _path.join)(childPath, 'shared/');
1041
+ _context16.next = 14;
1042
+ return this.writeQueue.enqueue({
1043
+ writePromise: function writePromise() {
1044
+ return (0, _fileUtils.writeFile)(sharedPath, sharedDataStr);
1065
1045
  }
1066
- slpkSharedPath = (0, _path.join)(childPath, 'shared');
1067
- _context16.next = 9;
1068
- return this.writeQueue.enqueue({
1069
- archiveKey: "".concat(slpkChildPath, "/shared/sharedResource.json.gz"),
1070
- writePromise: function writePromise() {
1071
- return (0, _fileUtils.writeFileForSlpk)(slpkSharedPath, sharedDataStr, 'sharedResource.json');
1072
- }
1073
- });
1074
- case 9:
1075
- _context16.next = 14;
1076
- break;
1077
- case 11:
1078
- sharedPath = (0, _path.join)(childPath, 'shared/');
1079
- _context16.next = 14;
1080
- return this.writeQueue.enqueue({
1081
- writePromise: function writePromise() {
1082
- return (0, _fileUtils.writeFile)(sharedPath, sharedDataStr);
1083
- }
1084
- });
1085
- case 14:
1086
- case "end":
1087
- return _context16.stop();
1088
- }
1046
+ });
1047
+ case 14:
1048
+ case "end":
1049
+ return _context16.stop();
1089
1050
  }
1090
1051
  }, _callee16, this);
1091
1052
  }));
@@ -1100,81 +1061,79 @@ var I3SConverter = function () {
1100
1061
  var _writeTexture2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee17(texture, childPath, slpkChildPath) {
1101
1062
  var format, formats, textureData, copyArrayBuffer, arrayToEncode, ktx2TextureData, decodedFromKTX2TextureData;
1102
1063
  return _regenerator.default.wrap(function _callee17$(_context17) {
1103
- while (1) {
1104
- switch (_context17.prev = _context17.next) {
1105
- case 0:
1106
- if (!texture) {
1107
- _context17.next = 27;
1108
- break;
1109
- }
1110
- format = this._getFormatByMimeType(texture === null || texture === void 0 ? void 0 : texture.mimeType);
1111
- formats = [];
1112
- textureData = texture.bufferView.data;
1113
- _context17.t0 = format;
1114
- _context17.next = _context17.t0 === 'jpg' ? 7 : _context17.t0 === 'png' ? 7 : _context17.t0 === 'ktx2' ? 18 : 26;
1064
+ while (1) switch (_context17.prev = _context17.next) {
1065
+ case 0:
1066
+ if (!texture) {
1067
+ _context17.next = 27;
1115
1068
  break;
1116
- case 7:
1117
- formats.push({
1118
- name: '0',
1119
- format: format
1120
- });
1121
- _context17.next = 10;
1122
- return this.writeTextureFile(textureData, '0', format, childPath, slpkChildPath);
1123
- case 10:
1124
- if (!this.generateTextures) {
1125
- _context17.next = 17;
1126
- break;
1127
- }
1128
- formats.push({
1129
- name: '1',
1130
- format: 'ktx2'
1131
- });
1132
- copyArrayBuffer = texture.image.data.subarray();
1133
- arrayToEncode = new Uint8Array(copyArrayBuffer);
1134
- ktx2TextureData = (0, _core.encode)(_objectSpread(_objectSpread({}, texture.image), {}, {
1135
- data: arrayToEncode
1136
- }), _textures.KTX2BasisWriterWorker, _objectSpread(_objectSpread({}, _textures.KTX2BasisWriterWorker.options), {}, {
1137
- source: this.workerSource.ktx2,
1138
- reuseWorkers: true,
1139
- _nodeWorkers: true
1140
- }));
1069
+ }
1070
+ format = this._getFormatByMimeType(texture === null || texture === void 0 ? void 0 : texture.mimeType);
1071
+ formats = [];
1072
+ textureData = texture.bufferView.data;
1073
+ _context17.t0 = format;
1074
+ _context17.next = _context17.t0 === 'jpg' ? 7 : _context17.t0 === 'png' ? 7 : _context17.t0 === 'ktx2' ? 18 : 26;
1075
+ break;
1076
+ case 7:
1077
+ formats.push({
1078
+ name: '0',
1079
+ format: format
1080
+ });
1081
+ _context17.next = 10;
1082
+ return this.writeTextureFile(textureData, '0', format, childPath, slpkChildPath);
1083
+ case 10:
1084
+ if (!this.generateTextures) {
1141
1085
  _context17.next = 17;
1142
- return this.writeTextureFile(ktx2TextureData, '1', 'ktx2', childPath, slpkChildPath);
1143
- case 17:
1144
- return _context17.abrupt("break", 26);
1145
- case 18:
1146
- formats.push({
1147
- name: '1',
1148
- format: format
1086
+ break;
1087
+ }
1088
+ formats.push({
1089
+ name: '1',
1090
+ format: 'ktx2'
1091
+ });
1092
+ copyArrayBuffer = texture.image.data.subarray();
1093
+ arrayToEncode = new Uint8Array(copyArrayBuffer);
1094
+ ktx2TextureData = (0, _core.encode)(_objectSpread(_objectSpread({}, texture.image), {}, {
1095
+ data: arrayToEncode
1096
+ }), _textures.KTX2BasisWriterWorker, _objectSpread(_objectSpread({}, _textures.KTX2BasisWriterWorker.options), {}, {
1097
+ source: this.workerSource.ktx2,
1098
+ reuseWorkers: true,
1099
+ _nodeWorkers: true
1100
+ }));
1101
+ _context17.next = 17;
1102
+ return this.writeTextureFile(ktx2TextureData, '1', 'ktx2', childPath, slpkChildPath);
1103
+ case 17:
1104
+ return _context17.abrupt("break", 26);
1105
+ case 18:
1106
+ formats.push({
1107
+ name: '1',
1108
+ format: format
1109
+ });
1110
+ _context17.next = 21;
1111
+ return this.writeTextureFile(textureData, '1', format, childPath, slpkChildPath);
1112
+ case 21:
1113
+ if (!this.generateTextures) {
1114
+ _context17.next = 26;
1115
+ break;
1116
+ }
1117
+ formats.push({
1118
+ name: '0',
1119
+ format: 'jpg'
1120
+ });
1121
+ decodedFromKTX2TextureData = (0, _core.encode)(texture.image.data[0], _images.ImageWriter);
1122
+ _context17.next = 26;
1123
+ return this.writeTextureFile(decodedFromKTX2TextureData, '0', 'jpg', childPath, slpkChildPath);
1124
+ case 26:
1125
+ if (!this.layers0.textureSetDefinitions.length) {
1126
+ this.layers0.textureSetDefinitions.push({
1127
+ formats: formats
1149
1128
  });
1150
- _context17.next = 21;
1151
- return this.writeTextureFile(textureData, '1', format, childPath, slpkChildPath);
1152
- case 21:
1153
- if (!this.generateTextures) {
1154
- _context17.next = 26;
1155
- break;
1156
- }
1157
- formats.push({
1158
- name: '0',
1159
- format: 'jpg'
1129
+ this.layers0.textureSetDefinitions.push({
1130
+ formats: formats,
1131
+ atlas: true
1160
1132
  });
1161
- decodedFromKTX2TextureData = (0, _core.encode)(texture.image.data[0], _images.ImageWriter);
1162
- _context17.next = 26;
1163
- return this.writeTextureFile(decodedFromKTX2TextureData, '0', 'jpg', childPath, slpkChildPath);
1164
- case 26:
1165
- if (!this.layers0.textureSetDefinitions.length) {
1166
- this.layers0.textureSetDefinitions.push({
1167
- formats: formats
1168
- });
1169
- this.layers0.textureSetDefinitions.push({
1170
- formats: formats,
1171
- atlas: true
1172
- });
1173
- }
1174
- case 27:
1175
- case "end":
1176
- return _context17.stop();
1177
- }
1133
+ }
1134
+ case 27:
1135
+ case "end":
1136
+ return _context17.stop();
1178
1137
  }
1179
1138
  }, _callee17, this);
1180
1139
  }));
@@ -1189,37 +1148,35 @@ var I3SConverter = function () {
1189
1148
  var _writeTextureFile = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee18(textureData, name, format, childPath, slpkChildPath) {
1190
1149
  var slpkTexturePath, compress, texturePath;
1191
1150
  return _regenerator.default.wrap(function _callee18$(_context18) {
1192
- while (1) {
1193
- switch (_context18.prev = _context18.next) {
1194
- case 0:
1195
- if (!this.options.slpk) {
1196
- _context18.next = 7;
1197
- break;
1198
- }
1199
- slpkTexturePath = (0, _path.join)(childPath, 'textures');
1200
- compress = false;
1201
- _context18.next = 5;
1202
- return this.writeQueue.enqueue({
1203
- archiveKey: "".concat(slpkChildPath, "/textures/").concat(name, ".").concat(format),
1204
- writePromise: function writePromise() {
1205
- return (0, _fileUtils.writeFileForSlpk)(slpkTexturePath, textureData, "".concat(name, ".").concat(format), compress);
1206
- }
1207
- });
1208
- case 5:
1209
- _context18.next = 10;
1151
+ while (1) switch (_context18.prev = _context18.next) {
1152
+ case 0:
1153
+ if (!this.options.slpk) {
1154
+ _context18.next = 7;
1210
1155
  break;
1211
- case 7:
1212
- texturePath = (0, _path.join)(childPath, "textures/".concat(name, "/"));
1213
- _context18.next = 10;
1214
- return this.writeQueue.enqueue({
1215
- writePromise: function writePromise() {
1216
- return (0, _fileUtils.writeFile)(texturePath, textureData, "index.".concat(format));
1217
- }
1218
- });
1219
- case 10:
1220
- case "end":
1221
- return _context18.stop();
1222
- }
1156
+ }
1157
+ slpkTexturePath = (0, _path.join)(childPath, 'textures');
1158
+ compress = false;
1159
+ _context18.next = 5;
1160
+ return this.writeQueue.enqueue({
1161
+ archiveKey: "".concat(slpkChildPath, "/textures/").concat(name, ".").concat(format),
1162
+ writePromise: function writePromise() {
1163
+ return (0, _fileUtils.writeFileForSlpk)(slpkTexturePath, textureData, "".concat(name, ".").concat(format), compress);
1164
+ }
1165
+ });
1166
+ case 5:
1167
+ _context18.next = 10;
1168
+ break;
1169
+ case 7:
1170
+ texturePath = (0, _path.join)(childPath, "textures/".concat(name, "/"));
1171
+ _context18.next = 10;
1172
+ return this.writeQueue.enqueue({
1173
+ writePromise: function writePromise() {
1174
+ return (0, _fileUtils.writeFile)(texturePath, textureData, "index.".concat(format));
1175
+ }
1176
+ });
1177
+ case 10:
1178
+ case "end":
1179
+ return _context18.stop();
1223
1180
  }
1224
1181
  }, _callee18, this);
1225
1182
  }));
@@ -1242,69 +1199,65 @@ var I3SConverter = function () {
1242
1199
  index,
1243
1200
  _args20 = arguments;
1244
1201
  return _regenerator.default.wrap(function _callee19$(_context20) {
1245
- while (1) {
1246
- switch (_context20.prev = _context20.next) {
1247
- case 0:
1248
- attributes = _args20.length > 0 && _args20[0] !== undefined ? _args20[0] : [];
1249
- childPath = _args20.length > 1 ? _args20[1] : undefined;
1250
- slpkChildPath = _args20.length > 2 ? _args20[2] : undefined;
1251
- 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)) {
1252
- _context20.next = 11;
1253
- break;
1254
- }
1255
- _loop = _regenerator.default.mark(function _loop(index) {
1256
- var folderName, fileBuffer, slpkAttributesPath, attributesPath;
1257
- return _regenerator.default.wrap(function _loop$(_context19) {
1258
- while (1) {
1259
- switch (_context19.prev = _context19.next) {
1260
- case 0:
1261
- folderName = _this4.layers0.attributeStorageInfo[index].key;
1262
- fileBuffer = new Uint8Array(attributes[index]);
1263
- if (!_this4.options.slpk) {
1264
- _context19.next = 8;
1265
- break;
1266
- }
1267
- slpkAttributesPath = (0, _path.join)(childPath, 'attributes', folderName);
1268
- _context19.next = 6;
1269
- return _this4.writeQueue.enqueue({
1270
- archiveKey: "".concat(slpkChildPath, "/attributes/").concat(folderName, ".bin.gz"),
1271
- writePromise: function writePromise() {
1272
- return (0, _fileUtils.writeFileForSlpk)(slpkAttributesPath, fileBuffer, '0.bin');
1273
- }
1274
- });
1275
- case 6:
1276
- _context19.next = 11;
1277
- break;
1278
- case 8:
1279
- attributesPath = (0, _path.join)(childPath, "attributes/".concat(folderName, "/0"));
1280
- _context19.next = 11;
1281
- return _this4.writeQueue.enqueue({
1282
- writePromise: function writePromise() {
1283
- return (0, _fileUtils.writeFile)(attributesPath, fileBuffer, 'index.bin');
1284
- }
1285
- });
1286
- case 11:
1287
- case "end":
1288
- return _context19.stop();
1202
+ while (1) switch (_context20.prev = _context20.next) {
1203
+ case 0:
1204
+ attributes = _args20.length > 0 && _args20[0] !== undefined ? _args20[0] : [];
1205
+ childPath = _args20.length > 1 ? _args20[1] : undefined;
1206
+ slpkChildPath = _args20.length > 2 ? _args20[2] : undefined;
1207
+ 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
+ _context20.next = 11;
1209
+ break;
1210
+ }
1211
+ _loop = _regenerator.default.mark(function _loop() {
1212
+ var folderName, fileBuffer, slpkAttributesPath, attributesPath;
1213
+ return _regenerator.default.wrap(function _loop$(_context19) {
1214
+ while (1) switch (_context19.prev = _context19.next) {
1215
+ case 0:
1216
+ folderName = _this4.layers0.attributeStorageInfo[index].key;
1217
+ fileBuffer = new Uint8Array(attributes[index]);
1218
+ if (!_this4.options.slpk) {
1219
+ _context19.next = 8;
1220
+ break;
1289
1221
  }
1290
- }
1291
- }, _loop);
1292
- });
1293
- index = 0;
1294
- case 6:
1295
- if (!(index < attributes.length)) {
1296
- _context20.next = 11;
1297
- break;
1298
- }
1299
- return _context20.delegateYield(_loop(index), "t0", 8);
1300
- case 8:
1301
- index++;
1302
- _context20.next = 6;
1222
+ slpkAttributesPath = (0, _path.join)(childPath, 'attributes', folderName);
1223
+ _context19.next = 6;
1224
+ return _this4.writeQueue.enqueue({
1225
+ archiveKey: "".concat(slpkChildPath, "/attributes/").concat(folderName, ".bin.gz"),
1226
+ writePromise: function writePromise() {
1227
+ return (0, _fileUtils.writeFileForSlpk)(slpkAttributesPath, fileBuffer, '0.bin');
1228
+ }
1229
+ });
1230
+ case 6:
1231
+ _context19.next = 11;
1232
+ break;
1233
+ case 8:
1234
+ attributesPath = (0, _path.join)(childPath, "attributes/".concat(folderName, "/0"));
1235
+ _context19.next = 11;
1236
+ return _this4.writeQueue.enqueue({
1237
+ writePromise: function writePromise() {
1238
+ return (0, _fileUtils.writeFile)(attributesPath, fileBuffer, 'index.bin');
1239
+ }
1240
+ });
1241
+ case 11:
1242
+ case "end":
1243
+ return _context19.stop();
1244
+ }
1245
+ }, _loop);
1246
+ });
1247
+ index = 0;
1248
+ case 6:
1249
+ if (!(index < attributes.length)) {
1250
+ _context20.next = 11;
1303
1251
  break;
1304
- case 11:
1305
- case "end":
1306
- return _context20.stop();
1307
- }
1252
+ }
1253
+ return _context20.delegateYield(_loop(), "t0", 8);
1254
+ case 8:
1255
+ index++;
1256
+ _context20.next = 6;
1257
+ break;
1258
+ case 11:
1259
+ case "end":
1260
+ return _context20.stop();
1308
1261
  }
1309
1262
  }, _callee19, this);
1310
1263
  }));
@@ -1315,8 +1268,7 @@ var I3SConverter = function () {
1315
1268
  }()
1316
1269
  }, {
1317
1270
  key: "_getFormatByMimeType",
1318
- value:
1319
- function _getFormatByMimeType(mimeType) {
1271
+ value: function _getFormatByMimeType(mimeType) {
1320
1272
  switch (mimeType) {
1321
1273
  case 'image/jpeg':
1322
1274
  return 'jpg';
@@ -1328,11 +1280,9 @@ var I3SConverter = function () {
1328
1280
  return 'jpg';
1329
1281
  }
1330
1282
  }
1331
-
1332
1283
  }, {
1333
1284
  key: "_findOrCreateMaterial",
1334
- value:
1335
- function _findOrCreateMaterial(material) {
1285
+ value: function _findOrCreateMaterial(material) {
1336
1286
  var hash = (0, _md.default)(JSON.stringify(material));
1337
1287
  if (this.materialMap.has(hash)) {
1338
1288
  return this.materialMap.get(hash) || 0;
@@ -1341,11 +1291,9 @@ var I3SConverter = function () {
1341
1291
  this.materialMap.set(hash, newMaterialId);
1342
1292
  return newMaterialId;
1343
1293
  }
1344
-
1345
1294
  }, {
1346
1295
  key: "findOrCreateGeometryDefinition",
1347
- value:
1348
- function findOrCreateGeometryDefinition(hasTexture, hasUvRegions) {
1296
+ value: function findOrCreateGeometryDefinition(hasTexture, hasUvRegions) {
1349
1297
  var geometryConfig = {
1350
1298
  hasTexture: hasTexture,
1351
1299
  hasUvRegions: hasUvRegions
@@ -1358,11 +1306,9 @@ var I3SConverter = function () {
1358
1306
  this.geometryMap.set(hash, newGeometryId);
1359
1307
  return newGeometryId;
1360
1308
  }
1361
-
1362
1309
  }, {
1363
1310
  key: "_convertPropertyTableToNodeAttributes",
1364
- value:
1365
- function _convertPropertyTableToNodeAttributes(propertyTable) {
1311
+ value: function _convertPropertyTableToNodeAttributes(propertyTable) {
1366
1312
  var attributeIndex = 0;
1367
1313
  var propertyTableWithObjectId = _objectSpread({
1368
1314
  OBJECTID: [0]
@@ -1381,35 +1327,32 @@ var I3SConverter = function () {
1381
1327
  attributeIndex += 1;
1382
1328
  }
1383
1329
  }
1384
-
1385
1330
  }, {
1386
1331
  key: "_finishConversion",
1387
1332
  value: function () {
1388
1333
  var _finishConversion2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee20(params) {
1389
1334
  var _this$refinementCount, tilesCount, tilesWithAddRefineCount, addRefinementPercentage, filesSize, diff, conversionTime;
1390
1335
  return _regenerator.default.wrap(function _callee20$(_context21) {
1391
- while (1) {
1392
- switch (_context21.prev = _context21.next) {
1393
- case 0:
1394
- _this$refinementCount = this.refinementCounter, tilesCount = _this$refinementCount.tilesCount, tilesWithAddRefineCount = _this$refinementCount.tilesWithAddRefineCount;
1395
- addRefinementPercentage = tilesWithAddRefineCount ? tilesWithAddRefineCount / tilesCount * 100 : 0;
1396
- _context21.next = 4;
1397
- return (0, _statisticUtills.calculateFilesSize)(params);
1398
- case 4:
1399
- filesSize = _context21.sent;
1400
- diff = _process.default.hrtime(this.conversionStartTime);
1401
- conversionTime = (0, _statisticUtills.timeConverter)(diff);
1402
- console.log("------------------------------------------------");
1403
- console.log("Finishing conversion of ".concat(_3D_TILES));
1404
- console.log("Total conversion time: ".concat(conversionTime));
1405
- console.log("Vertex count: ", this.vertexCounter);
1406
- console.log("File(s) size: ", filesSize, ' bytes');
1407
- console.log("Percentage of tiles with \"ADD\" refinement type:", addRefinementPercentage, '%');
1408
- console.log("------------------------------------------------");
1409
- case 14:
1410
- case "end":
1411
- return _context21.stop();
1412
- }
1336
+ while (1) switch (_context21.prev = _context21.next) {
1337
+ case 0:
1338
+ _this$refinementCount = this.refinementCounter, tilesCount = _this$refinementCount.tilesCount, tilesWithAddRefineCount = _this$refinementCount.tilesWithAddRefineCount;
1339
+ addRefinementPercentage = tilesWithAddRefineCount ? tilesWithAddRefineCount / tilesCount * 100 : 0;
1340
+ _context21.next = 4;
1341
+ return (0, _statisticUtills.calculateFilesSize)(params);
1342
+ case 4:
1343
+ filesSize = _context21.sent;
1344
+ diff = _process.default.hrtime(this.conversionStartTime);
1345
+ conversionTime = (0, _statisticUtills.timeConverter)(diff);
1346
+ console.log("------------------------------------------------");
1347
+ console.log("Finishing conversion of ".concat(_3D_TILES));
1348
+ console.log("Total conversion time: ".concat(conversionTime));
1349
+ console.log("Vertex count: ", this.vertexCounter);
1350
+ console.log("File(s) size: ", filesSize, ' bytes');
1351
+ console.log("Percentage of tiles with \"ADD\" refinement type:", addRefinementPercentage, '%');
1352
+ console.log("------------------------------------------------");
1353
+ case 14:
1354
+ case "end":
1355
+ return _context21.stop();
1413
1356
  }
1414
1357
  }, _callee20, this);
1415
1358
  }));
@@ -1424,30 +1367,28 @@ var I3SConverter = function () {
1424
1367
  var _fetchPreloadOptions2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee21() {
1425
1368
  var options, preloadOptions;
1426
1369
  return _regenerator.default.wrap(function _callee21$(_context22) {
1427
- while (1) {
1428
- switch (_context22.prev = _context22.next) {
1429
- case 0:
1430
- if (this.Loader.preload) {
1431
- _context22.next = 2;
1432
- break;
1370
+ while (1) switch (_context22.prev = _context22.next) {
1371
+ case 0:
1372
+ if (this.Loader.preload) {
1373
+ _context22.next = 2;
1374
+ break;
1375
+ }
1376
+ return _context22.abrupt("return", {});
1377
+ case 2:
1378
+ options = {
1379
+ 'cesium-ion': {
1380
+ accessToken: this.options.token || ION_DEFAULT_TOKEN
1433
1381
  }
1434
- return _context22.abrupt("return", {});
1435
- case 2:
1436
- options = {
1437
- 'cesium-ion': {
1438
- accessToken: this.options.token || ION_DEFAULT_TOKEN
1439
- }
1440
- };
1441
- _context22.next = 5;
1442
- return this.Loader.preload(this.options.inputUrl, options);
1443
- case 5:
1444
- preloadOptions = _context22.sent;
1445
- this.refreshTokenTime = _process.default.hrtime();
1446
- return _context22.abrupt("return", _objectSpread(_objectSpread({}, options), preloadOptions));
1447
- case 8:
1448
- case "end":
1449
- return _context22.stop();
1450
- }
1382
+ };
1383
+ _context22.next = 5;
1384
+ return this.Loader.preload(this.options.inputUrl, options);
1385
+ case 5:
1386
+ preloadOptions = _context22.sent;
1387
+ this.refreshTokenTime = _process.default.hrtime();
1388
+ return _context22.abrupt("return", _objectSpread(_objectSpread({}, options), preloadOptions));
1389
+ case 8:
1390
+ case "end":
1391
+ return _context22.stop();
1451
1392
  }
1452
1393
  }, _callee21, this);
1453
1394
  }));
@@ -1462,32 +1403,30 @@ var I3SConverter = function () {
1462
1403
  var _updateTilesetOptions2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee22() {
1463
1404
  var diff, preloadOptions;
1464
1405
  return _regenerator.default.wrap(function _callee22$(_context23) {
1465
- while (1) {
1466
- switch (_context23.prev = _context23.next) {
1467
- case 0:
1468
- diff = _process.default.hrtime(this.refreshTokenTime);
1469
- if (!(diff[0] < REFRESH_TOKEN_TIMEOUT)) {
1470
- _context23.next = 3;
1471
- break;
1472
- }
1473
- return _context23.abrupt("return");
1474
- case 3:
1475
- this.refreshTokenTime = _process.default.hrtime();
1476
- _context23.next = 6;
1477
- return this._fetchPreloadOptions();
1478
- case 6:
1479
- preloadOptions = _context23.sent;
1480
- this.sourceTileset.options = _objectSpread(_objectSpread({}, this.sourceTileset.options), preloadOptions);
1481
- if (preloadOptions.headers) {
1482
- this.sourceTileset.loadOptions.fetch = _objectSpread(_objectSpread({}, this.sourceTileset.loadOptions.fetch), {}, {
1483
- headers: preloadOptions.headers
1484
- });
1485
- console.log('Authorization Bearer token has been updated');
1486
- }
1487
- case 9:
1488
- case "end":
1489
- return _context23.stop();
1490
- }
1406
+ while (1) switch (_context23.prev = _context23.next) {
1407
+ case 0:
1408
+ diff = _process.default.hrtime(this.refreshTokenTime);
1409
+ if (!(diff[0] < REFRESH_TOKEN_TIMEOUT)) {
1410
+ _context23.next = 3;
1411
+ break;
1412
+ }
1413
+ return _context23.abrupt("return");
1414
+ case 3:
1415
+ this.refreshTokenTime = _process.default.hrtime();
1416
+ _context23.next = 6;
1417
+ return this._fetchPreloadOptions();
1418
+ case 6:
1419
+ preloadOptions = _context23.sent;
1420
+ this.sourceTileset.options = _objectSpread(_objectSpread({}, this.sourceTileset.options), preloadOptions);
1421
+ if (preloadOptions.headers) {
1422
+ this.sourceTileset.loadOptions.fetch = _objectSpread(_objectSpread({}, this.sourceTileset.loadOptions.fetch), {}, {
1423
+ headers: preloadOptions.headers
1424
+ });
1425
+ console.log('Authorization Bearer token has been updated');
1426
+ }
1427
+ case 9:
1428
+ case "end":
1429
+ return _context23.stop();
1491
1430
  }
1492
1431
  }, _callee22, this);
1493
1432
  }));
@@ -1498,20 +1437,17 @@ var I3SConverter = function () {
1498
1437
  }()
1499
1438
  }, {
1500
1439
  key: "_checkAddRefinementTypeForTile",
1501
- value:
1502
- function _checkAddRefinementTypeForTile(tile) {
1440
+ value: function _checkAddRefinementTypeForTile(tile) {
1503
1441
  var ADD_TILE_REFINEMENT = 1;
1504
1442
  if (tile.refine === ADD_TILE_REFINEMENT) {
1505
1443
  this.refinementCounter.tilesWithAddRefineCount += 1;
1506
1444
  console.warn('This tile uses "ADD" type of refinement');
1507
1445
  }
1508
-
1509
1446
  this.refinementCounter.tilesCount += 1;
1510
1447
  }
1511
1448
  }, {
1512
1449
  key: "isContentSupported",
1513
- value:
1514
- function isContentSupported(sourceRootTile) {
1450
+ value: function isContentSupported(sourceRootTile) {
1515
1451
  var _sourceRootTile$conte;
1516
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);
1517
1453
  }
@@ -1521,55 +1457,53 @@ var I3SConverter = function () {
1521
1457
  var _loadWorkers = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee23() {
1522
1458
  var url, _sourceResponse, _source, _url, _sourceResponse2, _source2, i3sAttributesWorkerUrl, sourceResponse, source;
1523
1459
  return _regenerator.default.wrap(function _callee23$(_context24) {
1524
- while (1) {
1525
- switch (_context24.prev = _context24.next) {
1526
- case 0:
1527
- console.log("Loading workers source...");
1528
- if (!this.options.draco) {
1529
- _context24.next = 10;
1530
- break;
1531
- }
1532
- url = (0, _workerUtils.getWorkerURL)(_draco.DracoWriterWorker, _objectSpread({}, (0, _core.getLoaderOptions)()));
1533
- _context24.next = 5;
1534
- return (0, _core.fetchFile)(url);
1535
- case 5:
1536
- _sourceResponse = _context24.sent;
1537
- _context24.next = 8;
1538
- return _sourceResponse.text();
1539
- case 8:
1540
- _source = _context24.sent;
1541
- this.workerSource.draco = _source;
1542
- case 10:
1543
- if (!this.generateTextures) {
1544
- _context24.next = 19;
1545
- break;
1546
- }
1547
- _url = (0, _workerUtils.getWorkerURL)(_textures.KTX2BasisWriterWorker, _objectSpread({}, (0, _core.getLoaderOptions)()));
1548
- _context24.next = 14;
1549
- return (0, _core.fetchFile)(_url);
1550
- case 14:
1551
- _sourceResponse2 = _context24.sent;
1552
- _context24.next = 17;
1553
- return _sourceResponse2.text();
1554
- case 17:
1555
- _source2 = _context24.sent;
1556
- this.workerSource.ktx2 = _source2;
1557
- case 19:
1558
- i3sAttributesWorkerUrl = (0, _workerUtils.getWorkerURL)(_i3sAttributesWorker.I3SAttributesWorker, _objectSpread({}, (0, _core.getLoaderOptions)()));
1559
- _context24.next = 22;
1560
- return (0, _core.fetchFile)(i3sAttributesWorkerUrl);
1561
- case 22:
1562
- sourceResponse = _context24.sent;
1563
- _context24.next = 25;
1564
- return sourceResponse.text();
1565
- case 25:
1566
- source = _context24.sent;
1567
- this.workerSource.I3SAttributes = source;
1568
- console.log("Loading workers source completed!");
1569
- case 28:
1570
- case "end":
1571
- return _context24.stop();
1572
- }
1460
+ while (1) switch (_context24.prev = _context24.next) {
1461
+ case 0:
1462
+ console.log("Loading workers source...");
1463
+ if (!this.options.draco) {
1464
+ _context24.next = 10;
1465
+ break;
1466
+ }
1467
+ url = (0, _workerUtils.getWorkerURL)(_draco.DracoWriterWorker, _objectSpread({}, (0, _core.getLoaderOptions)()));
1468
+ _context24.next = 5;
1469
+ return (0, _core.fetchFile)(url);
1470
+ case 5:
1471
+ _sourceResponse = _context24.sent;
1472
+ _context24.next = 8;
1473
+ return _sourceResponse.text();
1474
+ case 8:
1475
+ _source = _context24.sent;
1476
+ this.workerSource.draco = _source;
1477
+ case 10:
1478
+ if (!this.generateTextures) {
1479
+ _context24.next = 19;
1480
+ break;
1481
+ }
1482
+ _url = (0, _workerUtils.getWorkerURL)(_textures.KTX2BasisWriterWorker, _objectSpread({}, (0, _core.getLoaderOptions)()));
1483
+ _context24.next = 14;
1484
+ return (0, _core.fetchFile)(_url);
1485
+ case 14:
1486
+ _sourceResponse2 = _context24.sent;
1487
+ _context24.next = 17;
1488
+ return _sourceResponse2.text();
1489
+ case 17:
1490
+ _source2 = _context24.sent;
1491
+ this.workerSource.ktx2 = _source2;
1492
+ case 19:
1493
+ i3sAttributesWorkerUrl = (0, _workerUtils.getWorkerURL)(_i3sAttributesWorker.I3SAttributesWorker, _objectSpread({}, (0, _core.getLoaderOptions)()));
1494
+ _context24.next = 22;
1495
+ return (0, _core.fetchFile)(i3sAttributesWorkerUrl);
1496
+ case 22:
1497
+ sourceResponse = _context24.sent;
1498
+ _context24.next = 25;
1499
+ return sourceResponse.text();
1500
+ case 25:
1501
+ source = _context24.sent;
1502
+ this.workerSource.I3SAttributes = source;
1503
+ console.log("Loading workers source completed!");
1504
+ case 28:
1505
+ case "end":
1506
+ return _context24.stop();
1573
1507
  }
1574
1508
  }, _callee23, this);
1575
1509
  }));