@loaders.gl/tile-converter 3.3.0-alpha.4 → 3.3.0-alpha.6

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 (177) hide show
  1. package/dist/3d-tiles-attributes-worker.d.ts +1 -1
  2. package/dist/3d-tiles-attributes-worker.js +2 -3
  3. package/dist/3d-tiles-attributes-worker.js.map +3 -3
  4. package/dist/3d-tiles-converter/helpers/b3dm-converter.d.ts +5 -5
  5. package/dist/3d-tiles-converter/helpers/b3dm-converter.d.ts.map +1 -1
  6. package/dist/3d-tiles-converter/helpers/b3dm-converter.js +21 -17
  7. package/dist/converter.min.js +23 -20
  8. package/dist/dist.min.js +38223 -46900
  9. package/dist/es5/3d-tiles-attributes-worker.js +4 -7
  10. package/dist/es5/3d-tiles-attributes-worker.js.map +1 -1
  11. package/dist/es5/3d-tiles-converter/3d-tiles-converter.js +12 -111
  12. package/dist/es5/3d-tiles-converter/3d-tiles-converter.js.map +1 -1
  13. package/dist/es5/3d-tiles-converter/helpers/b3dm-converter.js +53 -85
  14. package/dist/es5/3d-tiles-converter/helpers/b3dm-converter.js.map +1 -1
  15. package/dist/es5/3d-tiles-converter/helpers/i3s-obb-to-3d-tiles-obb.js +0 -8
  16. package/dist/es5/3d-tiles-converter/helpers/i3s-obb-to-3d-tiles-obb.js.map +1 -1
  17. package/dist/es5/3d-tiles-converter/helpers/texture-atlas.js +0 -5
  18. package/dist/es5/3d-tiles-converter/helpers/texture-atlas.js.map +1 -1
  19. package/dist/es5/3d-tiles-converter/json-templates/tileset.js +0 -6
  20. package/dist/es5/3d-tiles-converter/json-templates/tileset.js.map +1 -1
  21. package/dist/es5/bundle.js +0 -1
  22. package/dist/es5/bundle.js.map +1 -1
  23. package/dist/es5/constants.js.map +1 -1
  24. package/dist/es5/converter-cli.js +2 -53
  25. package/dist/es5/converter-cli.js.map +1 -1
  26. package/dist/es5/deps-installer/deps-installer.js +5 -35
  27. package/dist/es5/deps-installer/deps-installer.js.map +1 -1
  28. package/dist/es5/i3s-attributes-worker.js +3 -6
  29. package/dist/es5/i3s-attributes-worker.js.map +1 -1
  30. package/dist/es5/i3s-converter/helpers/batch-ids-extensions.js +2 -28
  31. package/dist/es5/i3s-converter/helpers/batch-ids-extensions.js.map +1 -1
  32. package/dist/es5/i3s-converter/helpers/coordinate-converter.js +2 -20
  33. package/dist/es5/i3s-converter/helpers/coordinate-converter.js.map +1 -1
  34. package/dist/es5/i3s-converter/helpers/create-scene-server-path.js +0 -11
  35. package/dist/es5/i3s-converter/helpers/create-scene-server-path.js.map +1 -1
  36. package/dist/es5/i3s-converter/helpers/feature-attributes.js +5 -34
  37. package/dist/es5/i3s-converter/helpers/feature-attributes.js.map +1 -1
  38. package/dist/es5/i3s-converter/helpers/geometry-attributes.js +13 -45
  39. package/dist/es5/i3s-converter/helpers/geometry-attributes.js.map +1 -1
  40. package/dist/es5/i3s-converter/helpers/geometry-converter.js +26 -221
  41. package/dist/es5/i3s-converter/helpers/geometry-converter.js.map +1 -1
  42. package/dist/es5/i3s-converter/helpers/gltf-attributes.js +2 -16
  43. package/dist/es5/i3s-converter/helpers/gltf-attributes.js.map +1 -1
  44. package/dist/es5/i3s-converter/helpers/node-debug.js +4 -23
  45. package/dist/es5/i3s-converter/helpers/node-debug.js.map +1 -1
  46. package/dist/es5/i3s-converter/helpers/node-pages.js +50 -86
  47. package/dist/es5/i3s-converter/helpers/node-pages.js.map +1 -1
  48. package/dist/es5/i3s-converter/i3s-converter.js +43 -360
  49. package/dist/es5/i3s-converter/i3s-converter.js.map +1 -1
  50. package/dist/es5/i3s-converter/json-templates/layers.js +1 -15
  51. package/dist/es5/i3s-converter/json-templates/layers.js.map +1 -1
  52. package/dist/es5/i3s-converter/json-templates/metadata.js +0 -2
  53. package/dist/es5/i3s-converter/json-templates/metadata.js.map +1 -1
  54. package/dist/es5/i3s-converter/json-templates/node.js +2 -12
  55. package/dist/es5/i3s-converter/json-templates/node.js.map +1 -1
  56. package/dist/es5/i3s-converter/json-templates/scene-server.js +0 -2
  57. package/dist/es5/i3s-converter/json-templates/scene-server.js.map +1 -1
  58. package/dist/es5/i3s-converter/json-templates/shared-resources.js +6 -29
  59. package/dist/es5/i3s-converter/json-templates/shared-resources.js.map +1 -1
  60. package/dist/es5/i3s-converter/json-templates/store.js.map +1 -1
  61. package/dist/es5/i3s-converter/types.js.map +1 -1
  62. package/dist/es5/i3s-server/app.js +0 -5
  63. package/dist/es5/i3s-server/app.js.map +1 -1
  64. package/dist/es5/i3s-server/controllers/index-controller.js +0 -16
  65. package/dist/es5/i3s-server/controllers/index-controller.js.map +1 -1
  66. package/dist/es5/i3s-server/routes/index.js +1 -10
  67. package/dist/es5/i3s-server/routes/index.js.map +1 -1
  68. package/dist/es5/index.js +0 -3
  69. package/dist/es5/index.js.map +1 -1
  70. package/dist/es5/lib/utils/compress-util.js +19 -74
  71. package/dist/es5/lib/utils/compress-util.js.map +1 -1
  72. package/dist/es5/lib/utils/file-utils.js +10 -38
  73. package/dist/es5/lib/utils/file-utils.js.map +1 -1
  74. package/dist/es5/lib/utils/lod-conversion-utils.js +0 -7
  75. package/dist/es5/lib/utils/lod-conversion-utils.js.map +1 -1
  76. package/dist/es5/lib/utils/queue.js +0 -14
  77. package/dist/es5/lib/utils/queue.js.map +1 -1
  78. package/dist/es5/lib/utils/statistic-utills.js +1 -46
  79. package/dist/es5/lib/utils/statistic-utills.js.map +1 -1
  80. package/dist/es5/lib/utils/write-queue.js +0 -52
  81. package/dist/es5/lib/utils/write-queue.js.map +1 -1
  82. package/dist/es5/pgm-loader.js +1 -8
  83. package/dist/es5/pgm-loader.js.map +1 -1
  84. package/dist/es5/workers/3d-tiles-attributes-worker.js +2 -9
  85. package/dist/es5/workers/3d-tiles-attributes-worker.js.map +1 -1
  86. package/dist/es5/workers/i3s-attributes-worker.js +1 -9
  87. package/dist/es5/workers/i3s-attributes-worker.js.map +1 -1
  88. package/dist/esm/3d-tiles-attributes-worker.js +4 -2
  89. package/dist/esm/3d-tiles-attributes-worker.js.map +1 -1
  90. package/dist/esm/3d-tiles-converter/3d-tiles-converter.js +8 -40
  91. package/dist/esm/3d-tiles-converter/3d-tiles-converter.js.map +1 -1
  92. package/dist/esm/3d-tiles-converter/helpers/b3dm-converter.js +29 -50
  93. package/dist/esm/3d-tiles-converter/helpers/b3dm-converter.js.map +1 -1
  94. package/dist/esm/3d-tiles-converter/helpers/i3s-obb-to-3d-tiles-obb.js +1 -0
  95. package/dist/esm/3d-tiles-converter/helpers/i3s-obb-to-3d-tiles-obb.js.map +1 -1
  96. package/dist/esm/3d-tiles-converter/helpers/texture-atlas.js +1 -4
  97. package/dist/esm/3d-tiles-converter/helpers/texture-atlas.js.map +1 -1
  98. package/dist/esm/3d-tiles-converter/json-templates/tileset.js +0 -3
  99. package/dist/esm/3d-tiles-converter/json-templates/tileset.js.map +1 -1
  100. package/dist/esm/bundle.js +1 -1
  101. package/dist/esm/bundle.js.map +1 -1
  102. package/dist/esm/constants.js.map +1 -1
  103. package/dist/esm/converter-cli.js +3 -38
  104. package/dist/esm/converter-cli.js.map +1 -1
  105. package/dist/esm/deps-installer/deps-installer.js +6 -7
  106. package/dist/esm/deps-installer/deps-installer.js.map +1 -1
  107. package/dist/esm/i3s-attributes-worker.js +3 -1
  108. package/dist/esm/i3s-attributes-worker.js.map +1 -1
  109. package/dist/esm/i3s-converter/helpers/batch-ids-extensions.js +4 -23
  110. package/dist/esm/i3s-converter/helpers/batch-ids-extensions.js.map +1 -1
  111. package/dist/esm/i3s-converter/helpers/coordinate-converter.js +4 -6
  112. package/dist/esm/i3s-converter/helpers/coordinate-converter.js.map +1 -1
  113. package/dist/esm/i3s-converter/helpers/create-scene-server-path.js +1 -0
  114. package/dist/esm/i3s-converter/helpers/create-scene-server-path.js.map +1 -1
  115. package/dist/esm/i3s-converter/helpers/feature-attributes.js +6 -20
  116. package/dist/esm/i3s-converter/helpers/feature-attributes.js.map +1 -1
  117. package/dist/esm/i3s-converter/helpers/geometry-attributes.js +3 -22
  118. package/dist/esm/i3s-converter/helpers/geometry-attributes.js.map +1 -1
  119. package/dist/esm/i3s-converter/helpers/geometry-converter.js +28 -139
  120. package/dist/esm/i3s-converter/helpers/geometry-converter.js.map +1 -1
  121. package/dist/esm/i3s-converter/helpers/gltf-attributes.js +7 -12
  122. package/dist/esm/i3s-converter/helpers/gltf-attributes.js.map +1 -1
  123. package/dist/esm/i3s-converter/helpers/node-debug.js +3 -13
  124. package/dist/esm/i3s-converter/helpers/node-debug.js.map +1 -1
  125. package/dist/esm/i3s-converter/helpers/node-pages.js +2 -21
  126. package/dist/esm/i3s-converter/helpers/node-pages.js.map +1 -1
  127. package/dist/esm/i3s-converter/i3s-converter.js +49 -137
  128. package/dist/esm/i3s-converter/i3s-converter.js.map +1 -1
  129. package/dist/esm/i3s-converter/json-templates/layers.js +1 -11
  130. package/dist/esm/i3s-converter/json-templates/layers.js.map +1 -1
  131. package/dist/esm/i3s-converter/json-templates/metadata.js.map +1 -1
  132. package/dist/esm/i3s-converter/json-templates/node.js +0 -4
  133. package/dist/esm/i3s-converter/json-templates/node.js.map +1 -1
  134. package/dist/esm/i3s-converter/json-templates/scene-server.js.map +1 -1
  135. package/dist/esm/i3s-converter/json-templates/shared-resources.js +0 -12
  136. package/dist/esm/i3s-converter/json-templates/shared-resources.js.map +1 -1
  137. package/dist/esm/i3s-converter/json-templates/store.js.map +1 -1
  138. package/dist/esm/i3s-converter/types.js.map +1 -1
  139. package/dist/esm/i3s-server/app.js +0 -5
  140. package/dist/esm/i3s-server/app.js.map +1 -1
  141. package/dist/esm/i3s-server/controllers/index-controller.js +0 -5
  142. package/dist/esm/i3s-server/controllers/index-controller.js.map +1 -1
  143. package/dist/esm/i3s-server/routes/index.js +0 -3
  144. package/dist/esm/i3s-server/routes/index.js.map +1 -1
  145. package/dist/esm/index.js.map +1 -1
  146. package/dist/esm/lib/utils/compress-util.js +19 -12
  147. package/dist/esm/lib/utils/compress-util.js.map +1 -1
  148. package/dist/esm/lib/utils/file-utils.js +10 -8
  149. package/dist/esm/lib/utils/file-utils.js.map +1 -1
  150. package/dist/esm/lib/utils/lod-conversion-utils.js +2 -6
  151. package/dist/esm/lib/utils/lod-conversion-utils.js.map +1 -1
  152. package/dist/esm/lib/utils/queue.js +0 -4
  153. package/dist/esm/lib/utils/queue.js.map +1 -1
  154. package/dist/esm/lib/utils/statistic-utills.js +0 -11
  155. package/dist/esm/lib/utils/statistic-utills.js.map +1 -1
  156. package/dist/esm/lib/utils/write-queue.js +5 -23
  157. package/dist/esm/lib/utils/write-queue.js.map +1 -1
  158. package/dist/esm/pgm-loader.js +3 -1
  159. package/dist/esm/pgm-loader.js.map +1 -1
  160. package/dist/esm/workers/3d-tiles-attributes-worker.js +4 -1
  161. package/dist/esm/workers/3d-tiles-attributes-worker.js.map +1 -1
  162. package/dist/esm/workers/i3s-attributes-worker.js +4 -1
  163. package/dist/esm/workers/i3s-attributes-worker.js.map +1 -1
  164. package/dist/i3s-attributes-worker.js +2 -3
  165. package/dist/i3s-attributes-worker.js.map +3 -3
  166. package/dist/i3s-converter/helpers/geometry-converter.d.ts.map +1 -1
  167. package/dist/i3s-converter/helpers/geometry-converter.js +2 -0
  168. package/dist/i3s-converter/i3s-converter.js +5 -1
  169. package/dist/pgm-loader.d.ts.map +1 -1
  170. package/dist/pgm-loader.js +2 -1
  171. package/dist/workers/3d-tiles-attributes-worker.js +1 -1
  172. package/package.json +15 -15
  173. package/src/3d-tiles-attributes-worker.ts +1 -1
  174. package/src/3d-tiles-converter/helpers/b3dm-converter.ts +25 -18
  175. package/src/i3s-converter/helpers/geometry-converter.ts +2 -0
  176. package/src/pgm-loader.ts +2 -2
  177. package/src/workers/3d-tiles-attributes-worker.ts +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"geometry-converter.d.ts","sourceRoot":"","sources":["../../../src/i3s-converter/helpers/geometry-converter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,gBAAgB,EAAC,MAAM,sBAAsB,CAAC;AAqBxE,OAAO,EACL,mBAAmB,EACnB,qBAAqB,EAGtB,MAAM,UAAU,CAAC;AAClB,OAAO,EACL,oBAAoB,EAIrB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAC,KAAK,EAAC,MAAM,gBAAgB,CAAC;AACrC,+DAA+D;AAC/D,OAAO,EAAC,kBAAkB,EAAsC,MAAM,6BAA6B,CAAC;AA6BpG;;;;;;;;;;;GAWG;AACH,wBAA8B,wBAAwB,CACpD,WAAW,EAAE,WAAW,EACxB,iBAAiB,EAAE,MAAM,MAAM,EAC/B,aAAa,EAAE,gBAAgB,GAAG,IAAI,EACtC,iBAAiB,EAAE,MAAM,EAAE,EAC3B,oBAAoB,EAAE,oBAAoB,EAAE,GAAG,SAAS,EACxD,KAAK,EAAE,OAAO,EACd,uBAAuB,EAAE,OAAO,EAChC,gBAAgB,EAAE,KAAK,EACvB,YAAY,EAAE;IAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;CAAC,GACpC,OAAO,CAAC,qBAAqB,EAAE,GAAG,IAAI,CAAC,CAmEzC;AAwID;;;;;;GAMG;AACH,wBAAsB,iBAAiB,CACrC,cAAc,EAAE,kBAAkB,EAClC,qBAAqB,EAAE,OAAO,GAC7B,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC,CA2C3C;AA47BD;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,WAAW,GAAG,gBAAgB,GAAG,IAAI,CAoBlF"}
1
+ {"version":3,"file":"geometry-converter.d.ts","sourceRoot":"","sources":["../../../src/i3s-converter/helpers/geometry-converter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,gBAAgB,EAAC,MAAM,sBAAsB,CAAC;AAqBxE,OAAO,EACL,mBAAmB,EACnB,qBAAqB,EAGtB,MAAM,UAAU,CAAC;AAClB,OAAO,EACL,oBAAoB,EAIrB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAC,KAAK,EAAC,MAAM,gBAAgB,CAAC;AACrC,+DAA+D;AAC/D,OAAO,EAAC,kBAAkB,EAAsC,MAAM,6BAA6B,CAAC;AA6BpG;;;;;;;;;;;GAWG;AACH,wBAA8B,wBAAwB,CACpD,WAAW,EAAE,WAAW,EACxB,iBAAiB,EAAE,MAAM,MAAM,EAC/B,aAAa,EAAE,gBAAgB,GAAG,IAAI,EACtC,iBAAiB,EAAE,MAAM,EAAE,EAC3B,oBAAoB,EAAE,oBAAoB,EAAE,GAAG,SAAS,EACxD,KAAK,EAAE,OAAO,EACd,uBAAuB,EAAE,OAAO,EAChC,gBAAgB,EAAE,KAAK,EACvB,YAAY,EAAE;IAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;CAAC,GACpC,OAAO,CAAC,qBAAqB,EAAE,GAAG,IAAI,CAAC,CAmEzC;AAwID;;;;;;GAMG;AACH,wBAAsB,iBAAiB,CACrC,cAAc,EAAE,kBAAkB,EAClC,qBAAqB,EAAE,OAAO,GAC7B,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC,CA2C3C;AA87BD;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,WAAW,GAAG,gBAAgB,GAAG,IAAI,CAoBlF"}
@@ -634,7 +634,9 @@ function extractSharedResourcesMaterialInfo(baseColorFactor, metallicFactor = 1)
634
634
  const specular = dielectricSpecular.lerp(dielectricSpecular, baseColorVector, metallicFactor);
635
635
  return {
636
636
  params: {
637
+ // @ts-expect-error NumericArray
637
638
  diffuse: diffuse.toArray(),
639
+ // @ts-expect-error NumericArray
638
640
  specular: specular.toArray(),
639
641
  renderMode: 'solid'
640
642
  }
@@ -1,7 +1,11 @@
1
1
  "use strict";
2
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
3
  if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
5
9
  }) : (function(o, m, k, k2) {
6
10
  if (k2 === undefined) k2 = k;
7
11
  o[k2] = m[k];
@@ -1 +1 @@
1
- {"version":3,"file":"pgm-loader.d.ts","sourceRoot":"","sources":["../src/pgm-loader.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,gBAAgB,EAAC,MAAM,0BAA0B,CAAC;AAQ/D;;GAEG;AACH,eAAO,MAAM,SAAS,EAAE,gBAYvB,CAAC"}
1
+ {"version":3,"file":"pgm-loader.d.ts","sourceRoot":"","sources":["../src/pgm-loader.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,gBAAgB,EAAC,MAAM,0BAA0B,CAAC;AAO/D;;GAEG;AACH,eAAO,MAAM,SAAS,EAAE,gBAavB,CAAC"}
@@ -1,10 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.PGMLoader = void 0;
4
+ const geoid_1 = require("@math.gl/geoid");
4
5
  // __VERSION__ is injected by babel-plugin-version-inline
5
6
  // @ts-ignore TS2304: Cannot find name '__VERSION__'.
6
7
  const VERSION = typeof __VERSION__ !== 'undefined' ? __VERSION__ : 'latest';
7
- const geoid_1 = require("@math.gl/geoid");
8
8
  /**
9
9
  * Loader for PGM - Netpbm grayscale image format
10
10
  */
@@ -14,6 +14,7 @@ exports.PGMLoader = {
14
14
  module: 'tile-converter',
15
15
  version: VERSION,
16
16
  mimeTypes: ['image/x-portable-graymap'],
17
+ // @ts-expect-error LoaderOptions does not have cubic parameter
17
18
  parse: async (arrayBuffer, options) => (0, geoid_1.parsePGM)(new Uint8Array(arrayBuffer), options),
18
19
  extensions: ['pgm'],
19
20
  options: {
@@ -6,4 +6,4 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const worker_utils_1 = require("@loaders.gl/worker-utils");
7
7
  const b3dm_converter_1 = __importDefault(require("../3d-tiles-converter/helpers/b3dm-converter"));
8
8
  const b3dmConverter = new b3dm_converter_1.default();
9
- (0, worker_utils_1.createWorker)(async (data, options = {}) => b3dmConverter.convert(data, options.attributes));
9
+ (0, worker_utils_1.createWorker)(async (data, options = {}) => b3dmConverter.convert(data, options.featureAttributes));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@loaders.gl/tile-converter",
3
- "version": "3.3.0-alpha.4",
3
+ "version": "3.3.0-alpha.6",
4
4
  "description": "Converter",
5
5
  "license": "MIT",
6
6
  "publishConfig": {
@@ -43,19 +43,19 @@
43
43
  "build-3d-tiles-attributes-worker": "esbuild src/workers/3d-tiles-attributes-worker.ts --outfile=dist/3d-tiles-attributes-worker.js --platform=node --target=esnext,node12 --minify --bundle --sourcemap --define:__VERSION__=\\\"$npm_package_version\\\""
44
44
  },
45
45
  "dependencies": {
46
- "@loaders.gl/3d-tiles": "3.3.0-alpha.4",
47
- "@loaders.gl/crypto": "3.3.0-alpha.4",
48
- "@loaders.gl/draco": "3.3.0-alpha.4",
49
- "@loaders.gl/gltf": "3.3.0-alpha.4",
50
- "@loaders.gl/i3s": "3.3.0-alpha.4",
51
- "@loaders.gl/images": "3.3.0-alpha.4",
52
- "@loaders.gl/loader-utils": "3.3.0-alpha.4",
53
- "@loaders.gl/polyfills": "3.3.0-alpha.4",
54
- "@loaders.gl/schema": "3.3.0-alpha.4",
55
- "@loaders.gl/textures": "3.3.0-alpha.4",
56
- "@loaders.gl/tiles": "3.3.0-alpha.4",
57
- "@loaders.gl/worker-utils": "3.3.0-alpha.4",
58
- "@loaders.gl/zip": "3.3.0-alpha.4",
46
+ "@loaders.gl/3d-tiles": "3.3.0-alpha.6",
47
+ "@loaders.gl/crypto": "3.3.0-alpha.6",
48
+ "@loaders.gl/draco": "3.3.0-alpha.6",
49
+ "@loaders.gl/gltf": "3.3.0-alpha.6",
50
+ "@loaders.gl/i3s": "3.3.0-alpha.6",
51
+ "@loaders.gl/images": "3.3.0-alpha.6",
52
+ "@loaders.gl/loader-utils": "3.3.0-alpha.6",
53
+ "@loaders.gl/polyfills": "3.3.0-alpha.6",
54
+ "@loaders.gl/schema": "3.3.0-alpha.6",
55
+ "@loaders.gl/textures": "3.3.0-alpha.6",
56
+ "@loaders.gl/tiles": "3.3.0-alpha.6",
57
+ "@loaders.gl/worker-utils": "3.3.0-alpha.6",
58
+ "@loaders.gl/zip": "3.3.0-alpha.6",
59
59
  "@luma.gl/engine": "^8.5.4",
60
60
  "@math.gl/core": "^3.5.1",
61
61
  "@math.gl/culling": "^3.5.1",
@@ -75,5 +75,5 @@
75
75
  "peerDependencies": {
76
76
  "@loaders.gl/core": "^3.2.0"
77
77
  },
78
- "gitHead": "d1c524fd3cb9296ecd1bf7d185765c4f6aaef6a1"
78
+ "gitHead": "718a2998a26883247461ff05f01dcbef8d8c2417"
79
79
  }
@@ -26,7 +26,7 @@ export const Tile3dAttributesWorker = {
26
26
  module: 'tile-converter',
27
27
  version: VERSION,
28
28
  options: {
29
- attributes: null
29
+ featureAttributes: null
30
30
  }
31
31
  };
32
32
 
@@ -27,7 +27,7 @@ export default class B3dmConverter {
27
27
  i3sAttributesData: I3SAttributesData,
28
28
  featureAttributes: any = null
29
29
  ): Promise<ArrayBuffer> {
30
- const gltf = await this.buildGltf(i3sAttributesData);
30
+ const gltf = await this.buildGltf(i3sAttributesData, featureAttributes);
31
31
  const b3dm = encodeSync(
32
32
  {
33
33
  gltfEncoded: new Uint8Array(gltf),
@@ -45,7 +45,10 @@ export default class B3dmConverter {
45
45
  * @param i3sTile - Tile3D instance for I3S node
46
46
  * @returns - encoded glb content
47
47
  */
48
- async buildGltf(i3sAttributesData: I3SAttributesData): Promise<ArrayBuffer> {
48
+ async buildGltf(
49
+ i3sAttributesData: I3SAttributesData,
50
+ featureAttributes: any
51
+ ): Promise<ArrayBuffer> {
49
52
  const {tileContent, textureFormat} = i3sAttributesData;
50
53
  const {
51
54
  material,
@@ -77,6 +80,7 @@ export default class B3dmConverter {
77
80
  cartographicOrigin,
78
81
  modelMatrix
79
82
  );
83
+ this._createBatchIds(tileContent, featureAttributes);
80
84
  if (attributes.normals && !this._checkNormals(attributes.normals.value)) {
81
85
  delete attributes.normals;
82
86
  }
@@ -163,25 +167,28 @@ export default class B3dmConverter {
163
167
  }
164
168
 
165
169
  /**
166
- * Generate batchId attribute from faceRanges.
167
- * @param {Uint32Array} faceRanges - the source array
168
- * @returns {Float32Array} batchId list.
170
+ * Create _BATCHID attribute
171
+ * @param {Object} i3sContent - the source object
172
+ * @returns {void}
169
173
  */
170
- _generateBatchId(faceRanges) {
171
- const batchIdArraySize = (faceRanges[faceRanges.length - 1] + 1) * 3;
172
- const batchId = new Float32Array(batchIdArraySize);
173
- let rangeIndex = 0;
174
- let currentBatchId = 0;
175
-
176
- for (let index = 0; index < faceRanges.length / 2; index++) {
177
- const fromIndex = faceRanges[rangeIndex] * 3;
178
- const untilPosition = (faceRanges[rangeIndex + 1] + 1) * 3;
174
+ _createBatchIds(i3sContent, featureAttributes) {
175
+ const {featureIds} = i3sContent;
176
+ const {OBJECTID: objectIds} = featureAttributes || {};
177
+ if (!featureIds || !objectIds) {
178
+ return;
179
+ }
179
180
 
180
- batchId.fill(currentBatchId, fromIndex, untilPosition);
181
- rangeIndex += 2;
182
- currentBatchId += 1;
181
+ for (let i = 0; i < featureIds.length; i++) {
182
+ const featureId = featureIds[i];
183
+ const batchId = objectIds.indexOf(featureId);
184
+ featureIds[i] = batchId;
183
185
  }
184
- return batchId;
186
+
187
+ i3sContent.attributes._BATCHID = {
188
+ size: 1,
189
+ byteOffset: 0,
190
+ value: featureIds
191
+ };
185
192
  }
186
193
 
187
194
  /**
@@ -934,7 +934,9 @@ function extractSharedResourcesMaterialInfo(
934
934
  const specular = dielectricSpecular.lerp(dielectricSpecular, baseColorVector, metallicFactor);
935
935
  return {
936
936
  params: {
937
+ // @ts-expect-error NumericArray
937
938
  diffuse: diffuse.toArray(),
939
+ // @ts-expect-error NumericArray
938
940
  specular: specular.toArray(),
939
941
  renderMode: 'solid'
940
942
  }
package/src/pgm-loader.ts CHANGED
@@ -1,11 +1,10 @@
1
1
  import type {LoaderWithParser} from '@loaders.gl/loader-utils';
2
+ import {parsePGM} from '@math.gl/geoid';
2
3
 
3
4
  // __VERSION__ is injected by babel-plugin-version-inline
4
5
  // @ts-ignore TS2304: Cannot find name '__VERSION__'.
5
6
  const VERSION = typeof __VERSION__ !== 'undefined' ? __VERSION__ : 'latest';
6
7
 
7
- import {parsePGM} from '@math.gl/geoid';
8
-
9
8
  /**
10
9
  * Loader for PGM - Netpbm grayscale image format
11
10
  */
@@ -15,6 +14,7 @@ export const PGMLoader: LoaderWithParser = {
15
14
  module: 'tile-converter',
16
15
  version: VERSION,
17
16
  mimeTypes: ['image/x-portable-graymap'],
17
+ // @ts-expect-error LoaderOptions does not have cubic parameter
18
18
  parse: async (arrayBuffer, options) => parsePGM(new Uint8Array(arrayBuffer), options),
19
19
  extensions: ['pgm'],
20
20
  options: {
@@ -3,4 +3,4 @@ import B3dmConverter from '../3d-tiles-converter/helpers/b3dm-converter';
3
3
 
4
4
  const b3dmConverter = new B3dmConverter();
5
5
 
6
- createWorker(async (data, options = {}) => b3dmConverter.convert(data, options.attributes));
6
+ createWorker(async (data, options = {}) => b3dmConverter.convert(data, options.featureAttributes));