@loaders.gl/3d-tiles 4.0.0-alpha.1 → 4.0.0-alpha.11

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 (393) hide show
  1. package/dist/bundle.d.ts +2 -0
  2. package/dist/bundle.d.ts.map +1 -0
  3. package/dist/bundle.js +2 -2
  4. package/dist/cesium-ion-loader.d.ts +6 -0
  5. package/dist/cesium-ion-loader.d.ts.map +1 -0
  6. package/dist/cesium-ion-loader.js +37 -32
  7. package/dist/dist.min.js +14805 -0
  8. package/dist/es5/bundle.js +6 -0
  9. package/dist/es5/bundle.js.map +1 -0
  10. package/dist/es5/cesium-ion-loader.js +77 -0
  11. package/dist/es5/cesium-ion-loader.js.map +1 -0
  12. package/dist/es5/index.js +63 -0
  13. package/dist/es5/index.js.map +1 -0
  14. package/dist/es5/lib/classes/helpers/tile-3d-accessor-utils.js +114 -0
  15. package/dist/es5/lib/classes/helpers/tile-3d-accessor-utils.js.map +1 -0
  16. package/dist/es5/lib/classes/tile-3d-batch-table-hierarchy.js +180 -0
  17. package/dist/es5/lib/classes/tile-3d-batch-table-hierarchy.js.map +1 -0
  18. package/dist/es5/lib/classes/tile-3d-batch-table.js +285 -0
  19. package/dist/es5/lib/classes/tile-3d-batch-table.js.map +1 -0
  20. package/dist/es5/lib/classes/tile-3d-feature-table.js +97 -0
  21. package/dist/es5/lib/classes/tile-3d-feature-table.js.map +1 -0
  22. package/dist/es5/lib/constants.js +32 -0
  23. package/dist/es5/lib/constants.js.map +1 -0
  24. package/dist/es5/lib/encoders/encode-3d-tile-batched-model.js +49 -0
  25. package/dist/es5/lib/encoders/encode-3d-tile-batched-model.js.map +1 -0
  26. package/dist/es5/lib/encoders/encode-3d-tile-composite.js +30 -0
  27. package/dist/es5/lib/encoders/encode-3d-tile-composite.js.map +1 -0
  28. package/dist/es5/lib/encoders/encode-3d-tile-instanced-model.js +47 -0
  29. package/dist/es5/lib/encoders/encode-3d-tile-instanced-model.js.map +1 -0
  30. package/dist/es5/lib/encoders/encode-3d-tile-point-cloud.js +48 -0
  31. package/dist/es5/lib/encoders/encode-3d-tile-point-cloud.js.map +1 -0
  32. package/dist/es5/lib/encoders/encode-3d-tile.js +35 -0
  33. package/dist/es5/lib/encoders/encode-3d-tile.js.map +1 -0
  34. package/dist/es5/lib/encoders/helpers/encode-3d-tile-header.js +35 -0
  35. package/dist/es5/lib/encoders/helpers/encode-3d-tile-header.js.map +1 -0
  36. package/dist/es5/lib/ion/ion.js +170 -0
  37. package/dist/es5/lib/ion/ion.js.map +1 -0
  38. package/dist/es5/lib/parsers/helpers/normalize-3d-tile-colors.js +65 -0
  39. package/dist/es5/lib/parsers/helpers/normalize-3d-tile-colors.js.map +1 -0
  40. package/dist/es5/lib/parsers/helpers/normalize-3d-tile-normals.js +32 -0
  41. package/dist/es5/lib/parsers/helpers/normalize-3d-tile-normals.js.map +1 -0
  42. package/dist/es5/lib/parsers/helpers/normalize-3d-tile-positions.js +32 -0
  43. package/dist/es5/lib/parsers/helpers/normalize-3d-tile-positions.js.map +1 -0
  44. package/dist/es5/lib/parsers/helpers/parse-3d-implicit-tiles.js +280 -0
  45. package/dist/es5/lib/parsers/helpers/parse-3d-implicit-tiles.js.map +1 -0
  46. package/dist/es5/lib/parsers/helpers/parse-3d-tile-gltf-view.js +110 -0
  47. package/dist/es5/lib/parsers/helpers/parse-3d-tile-gltf-view.js.map +1 -0
  48. package/dist/es5/lib/parsers/helpers/parse-3d-tile-header.js +22 -0
  49. package/dist/es5/lib/parsers/helpers/parse-3d-tile-header.js.map +1 -0
  50. package/dist/es5/lib/parsers/helpers/parse-3d-tile-subtree.js +145 -0
  51. package/dist/es5/lib/parsers/helpers/parse-3d-tile-subtree.js.map +1 -0
  52. package/dist/es5/lib/parsers/helpers/parse-3d-tile-tables.js +85 -0
  53. package/dist/es5/lib/parsers/helpers/parse-3d-tile-tables.js.map +1 -0
  54. package/dist/es5/lib/parsers/helpers/parse-utils.js +28 -0
  55. package/dist/es5/lib/parsers/helpers/parse-utils.js.map +1 -0
  56. package/dist/es5/lib/parsers/parse-3d-tile-batched-model.js +51 -0
  57. package/dist/es5/lib/parsers/parse-3d-tile-batched-model.js.map +1 -0
  58. package/dist/es5/lib/parsers/parse-3d-tile-composite.js +48 -0
  59. package/dist/es5/lib/parsers/parse-3d-tile-composite.js.map +1 -0
  60. package/dist/es5/lib/parsers/parse-3d-tile-gltf.js +52 -0
  61. package/dist/es5/lib/parsers/parse-3d-tile-gltf.js.map +1 -0
  62. package/dist/es5/lib/parsers/parse-3d-tile-header.js +289 -0
  63. package/dist/es5/lib/parsers/parse-3d-tile-header.js.map +1 -0
  64. package/dist/es5/lib/parsers/parse-3d-tile-instanced-model.js +163 -0
  65. package/dist/es5/lib/parsers/parse-3d-tile-instanced-model.js.map +1 -0
  66. package/dist/es5/lib/parsers/parse-3d-tile-point-cloud.js +295 -0
  67. package/dist/es5/lib/parsers/parse-3d-tile-point-cloud.js.map +1 -0
  68. package/dist/es5/lib/parsers/parse-3d-tile.js +74 -0
  69. package/dist/es5/lib/parsers/parse-3d-tile.js.map +1 -0
  70. package/dist/es5/lib/utils/obb/s2-corners-to-obb.js +30 -0
  71. package/dist/es5/lib/utils/obb/s2-corners-to-obb.js.map +1 -0
  72. package/dist/es5/lib/utils/s2/converters/s2-to-boundary.js +44 -0
  73. package/dist/es5/lib/utils/s2/converters/s2-to-boundary.js.map +1 -0
  74. package/dist/es5/lib/utils/s2/converters/s2-to-obb-points.js +30 -0
  75. package/dist/es5/lib/utils/s2/converters/s2-to-obb-points.js.map +1 -0
  76. package/dist/es5/lib/utils/s2/converters/s2-to-region.js +52 -0
  77. package/dist/es5/lib/utils/s2/converters/s2-to-region.js.map +1 -0
  78. package/dist/es5/lib/utils/s2/index.js +90 -0
  79. package/dist/es5/lib/utils/s2/index.js.map +1 -0
  80. package/dist/es5/lib/utils/s2/s2-geometry-functions.js +19 -0
  81. package/dist/es5/lib/utils/s2/s2-geometry-functions.js.map +1 -0
  82. package/dist/es5/lib/utils/s2/s2-token-functions.js +41 -0
  83. package/dist/es5/lib/utils/s2/s2-token-functions.js.map +1 -0
  84. package/dist/es5/lib/utils/s2/s2geometry/s2-cell-utils.js +22 -0
  85. package/dist/es5/lib/utils/s2/s2geometry/s2-cell-utils.js.map +1 -0
  86. package/dist/es5/lib/utils/s2/s2geometry/s2-geometry.js +207 -0
  87. package/dist/es5/lib/utils/s2/s2geometry/s2-geometry.js.map +1 -0
  88. package/dist/es5/lib/utils/version.js +9 -0
  89. package/dist/es5/lib/utils/version.js.map +1 -0
  90. package/dist/es5/tile-3d-subtree-loader.js +22 -0
  91. package/dist/es5/tile-3d-subtree-loader.js.map +1 -0
  92. package/dist/es5/tile-3d-writer.js +26 -0
  93. package/dist/es5/tile-3d-writer.js.map +1 -0
  94. package/dist/es5/tiles-3d-loader.js +133 -0
  95. package/dist/es5/tiles-3d-loader.js.map +1 -0
  96. package/dist/es5/types.js +2 -0
  97. package/dist/es5/types.js.map +1 -0
  98. package/dist/esm/bundle.js +4 -0
  99. package/dist/esm/bundle.js.map +1 -0
  100. package/dist/esm/cesium-ion-loader.js +36 -0
  101. package/dist/esm/cesium-ion-loader.js.map +1 -0
  102. package/dist/esm/index.js +9 -0
  103. package/dist/esm/index.js.map +1 -0
  104. package/dist/esm/lib/classes/helpers/tile-3d-accessor-utils.js +96 -0
  105. package/dist/esm/lib/classes/helpers/tile-3d-accessor-utils.js.map +1 -0
  106. package/dist/esm/lib/classes/tile-3d-batch-table-hierarchy.js +171 -0
  107. package/dist/esm/lib/classes/tile-3d-batch-table-hierarchy.js.map +1 -0
  108. package/dist/esm/lib/classes/tile-3d-batch-table.js +231 -0
  109. package/dist/esm/lib/classes/tile-3d-batch-table.js.map +1 -0
  110. package/dist/esm/lib/classes/tile-3d-feature-table.js +70 -0
  111. package/dist/esm/lib/classes/tile-3d-feature-table.js.map +1 -0
  112. package/dist/esm/lib/constants.js +22 -0
  113. package/dist/esm/lib/constants.js.map +1 -0
  114. package/dist/esm/lib/encoders/encode-3d-tile-batched-model.js +40 -0
  115. package/dist/esm/lib/encoders/encode-3d-tile-batched-model.js.map +1 -0
  116. package/dist/esm/lib/encoders/encode-3d-tile-composite.js +21 -0
  117. package/dist/esm/lib/encoders/encode-3d-tile-composite.js.map +1 -0
  118. package/dist/esm/lib/encoders/encode-3d-tile-instanced-model.js +36 -0
  119. package/dist/esm/lib/encoders/encode-3d-tile-instanced-model.js.map +1 -0
  120. package/dist/esm/lib/encoders/encode-3d-tile-point-cloud.js +39 -0
  121. package/dist/esm/lib/encoders/encode-3d-tile-point-cloud.js.map +1 -0
  122. package/dist/esm/lib/encoders/encode-3d-tile.js +29 -0
  123. package/dist/esm/lib/encoders/encode-3d-tile.js.map +1 -0
  124. package/dist/esm/lib/encoders/helpers/encode-3d-tile-header.js +28 -0
  125. package/dist/esm/lib/encoders/helpers/encode-3d-tile-header.js.map +1 -0
  126. package/dist/esm/lib/ion/ion.js +70 -0
  127. package/dist/esm/lib/ion/ion.js.map +1 -0
  128. package/dist/esm/lib/parsers/helpers/normalize-3d-tile-colors.js +58 -0
  129. package/dist/esm/lib/parsers/helpers/normalize-3d-tile-colors.js.map +1 -0
  130. package/{src → dist/esm}/lib/parsers/helpers/normalize-3d-tile-normals.js +5 -10
  131. package/dist/esm/lib/parsers/helpers/normalize-3d-tile-normals.js.map +1 -0
  132. package/dist/esm/lib/parsers/helpers/normalize-3d-tile-positions.js +26 -0
  133. package/dist/esm/lib/parsers/helpers/normalize-3d-tile-positions.js.map +1 -0
  134. package/dist/esm/lib/parsers/helpers/parse-3d-implicit-tiles.js +241 -0
  135. package/dist/esm/lib/parsers/helpers/parse-3d-implicit-tiles.js.map +1 -0
  136. package/dist/esm/lib/parsers/helpers/parse-3d-tile-gltf-view.js +67 -0
  137. package/dist/esm/lib/parsers/helpers/parse-3d-tile-gltf-view.js.map +1 -0
  138. package/dist/esm/lib/parsers/helpers/parse-3d-tile-header.js +16 -0
  139. package/dist/esm/lib/parsers/helpers/parse-3d-tile-header.js.map +1 -0
  140. package/dist/esm/lib/parsers/helpers/parse-3d-tile-subtree.js +67 -0
  141. package/dist/esm/lib/parsers/helpers/parse-3d-tile-subtree.js.map +1 -0
  142. package/dist/esm/lib/parsers/helpers/parse-3d-tile-tables.js +80 -0
  143. package/dist/esm/lib/parsers/helpers/parse-3d-tile-tables.js.map +1 -0
  144. package/dist/esm/lib/parsers/helpers/parse-utils.js +20 -0
  145. package/dist/esm/lib/parsers/helpers/parse-utils.js.map +1 -0
  146. package/dist/esm/lib/parsers/parse-3d-tile-batched-model.js +25 -0
  147. package/dist/esm/lib/parsers/parse-3d-tile-batched-model.js.map +1 -0
  148. package/dist/esm/lib/parsers/parse-3d-tile-composite.js +15 -0
  149. package/dist/esm/lib/parsers/parse-3d-tile-composite.js.map +1 -0
  150. package/dist/esm/lib/parsers/parse-3d-tile-gltf.js +20 -0
  151. package/dist/esm/lib/parsers/parse-3d-tile-gltf.js.map +1 -0
  152. package/dist/esm/lib/parsers/parse-3d-tile-header.js +181 -0
  153. package/dist/esm/lib/parsers/parse-3d-tile-header.js.map +1 -0
  154. package/dist/esm/lib/parsers/parse-3d-tile-instanced-model.js +138 -0
  155. package/dist/esm/lib/parsers/parse-3d-tile-instanced-model.js.map +1 -0
  156. package/dist/esm/lib/parsers/parse-3d-tile-point-cloud.js +232 -0
  157. package/dist/esm/lib/parsers/parse-3d-tile-point-cloud.js.map +1 -0
  158. package/dist/esm/lib/parsers/parse-3d-tile.js +30 -0
  159. package/dist/esm/lib/parsers/parse-3d-tile.js.map +1 -0
  160. package/dist/esm/lib/utils/obb/s2-corners-to-obb.js +23 -0
  161. package/dist/esm/lib/utils/obb/s2-corners-to-obb.js.map +1 -0
  162. package/dist/esm/lib/utils/s2/converters/s2-to-boundary.js +40 -0
  163. package/dist/esm/lib/utils/s2/converters/s2-to-boundary.js.map +1 -0
  164. package/dist/esm/lib/utils/s2/converters/s2-to-obb-points.js +24 -0
  165. package/dist/esm/lib/utils/s2/converters/s2-to-obb-points.js.map +1 -0
  166. package/dist/esm/lib/utils/s2/converters/s2-to-region.js +42 -0
  167. package/dist/esm/lib/utils/s2/converters/s2-to-region.js.map +1 -0
  168. package/dist/esm/lib/utils/s2/index.js +7 -0
  169. package/dist/esm/lib/utils/s2/index.js.map +1 -0
  170. package/dist/esm/lib/utils/s2/s2-geometry-functions.js +12 -0
  171. package/dist/esm/lib/utils/s2/s2-geometry-functions.js.map +1 -0
  172. package/dist/esm/lib/utils/s2/s2-token-functions.js +32 -0
  173. package/dist/esm/lib/utils/s2/s2-token-functions.js.map +1 -0
  174. package/dist/esm/lib/utils/s2/s2geometry/s2-cell-utils.js +15 -0
  175. package/dist/esm/lib/utils/s2/s2geometry/s2-cell-utils.js.map +1 -0
  176. package/dist/esm/lib/utils/s2/s2geometry/s2-geometry.js +186 -0
  177. package/dist/esm/lib/utils/s2/s2geometry/s2-geometry.js.map +1 -0
  178. package/dist/esm/lib/utils/version.js +2 -0
  179. package/dist/esm/lib/utils/version.js.map +1 -0
  180. package/dist/esm/tile-3d-subtree-loader.js +14 -0
  181. package/dist/esm/tile-3d-subtree-loader.js.map +1 -0
  182. package/dist/esm/tile-3d-writer.js +19 -0
  183. package/dist/esm/tile-3d-writer.js.map +1 -0
  184. package/dist/esm/tiles-3d-loader.js +68 -0
  185. package/dist/esm/tiles-3d-loader.js.map +1 -0
  186. package/dist/esm/types.js +2 -0
  187. package/dist/esm/types.js.map +1 -0
  188. package/dist/index.d.ts +11 -0
  189. package/dist/index.d.ts.map +1 -0
  190. package/dist/index.js +26 -8
  191. package/dist/lib/classes/helpers/tile-3d-accessor-utils.d.ts +8 -0
  192. package/dist/lib/classes/helpers/tile-3d-accessor-utils.d.ts.map +1 -0
  193. package/dist/lib/classes/helpers/tile-3d-accessor-utils.js +106 -89
  194. package/dist/lib/classes/tile-3d-batch-table-hierarchy.d.ts +10 -0
  195. package/dist/lib/classes/tile-3d-batch-table-hierarchy.d.ts.map +1 -0
  196. package/dist/lib/classes/tile-3d-batch-table-hierarchy.js +184 -202
  197. package/dist/lib/classes/tile-3d-batch-table.d.ts +34 -0
  198. package/dist/lib/classes/tile-3d-batch-table.d.ts.map +1 -0
  199. package/dist/lib/classes/tile-3d-batch-table.js +223 -267
  200. package/dist/lib/classes/tile-3d-feature-table.d.ts +15 -0
  201. package/dist/lib/classes/tile-3d-feature-table.d.ts.map +1 -0
  202. package/dist/lib/classes/tile-3d-feature-table.js +64 -79
  203. package/dist/lib/constants.d.ts +22 -0
  204. package/dist/lib/constants.d.ts.map +1 -0
  205. package/dist/lib/constants.js +23 -18
  206. package/dist/lib/encoders/encode-3d-tile-batched-model.d.ts +2 -0
  207. package/dist/lib/encoders/encode-3d-tile-batched-model.d.ts.map +1 -0
  208. package/dist/lib/encoders/encode-3d-tile-batched-model.js +45 -45
  209. package/dist/lib/encoders/encode-3d-tile-composite.d.ts +2 -0
  210. package/dist/lib/encoders/encode-3d-tile-composite.d.ts.map +1 -0
  211. package/dist/lib/encoders/encode-3d-tile-composite.js +23 -24
  212. package/dist/lib/encoders/encode-3d-tile-instanced-model.d.ts +2 -0
  213. package/dist/lib/encoders/encode-3d-tile-instanced-model.d.ts.map +1 -0
  214. package/dist/lib/encoders/encode-3d-tile-instanced-model.js +37 -37
  215. package/dist/lib/encoders/encode-3d-tile-point-cloud.d.ts +2 -0
  216. package/dist/lib/encoders/encode-3d-tile-point-cloud.d.ts.map +1 -0
  217. package/dist/lib/encoders/encode-3d-tile-point-cloud.js +36 -38
  218. package/dist/lib/encoders/encode-3d-tile.d.ts +2 -0
  219. package/dist/lib/encoders/encode-3d-tile.d.ts.map +1 -0
  220. package/dist/lib/encoders/encode-3d-tile.js +30 -32
  221. package/dist/lib/encoders/helpers/encode-3d-tile-header.d.ts +3 -0
  222. package/dist/lib/encoders/helpers/encode-3d-tile-header.d.ts.map +1 -0
  223. package/dist/lib/encoders/helpers/encode-3d-tile-header.js +28 -29
  224. package/dist/lib/ion/ion.d.ts +4 -0
  225. package/dist/lib/ion/ion.d.ts.map +1 -0
  226. package/dist/lib/ion/ion.js +60 -69
  227. package/dist/lib/parsers/helpers/normalize-3d-tile-colors.d.ts +9 -0
  228. package/dist/lib/parsers/helpers/normalize-3d-tile-colors.d.ts.map +1 -0
  229. package/dist/lib/parsers/helpers/normalize-3d-tile-colors.js +60 -62
  230. package/dist/lib/parsers/helpers/normalize-3d-tile-normals.d.ts +7 -0
  231. package/dist/lib/parsers/helpers/normalize-3d-tile-normals.d.ts.map +1 -0
  232. package/dist/lib/parsers/helpers/normalize-3d-tile-normals.js +26 -26
  233. package/dist/lib/parsers/helpers/normalize-3d-tile-positions.d.ts +2 -0
  234. package/dist/lib/parsers/helpers/normalize-3d-tile-positions.d.ts.map +1 -0
  235. package/dist/lib/parsers/helpers/normalize-3d-tile-positions.js +39 -28
  236. package/dist/lib/parsers/helpers/parse-3d-implicit-tiles.d.ts +57 -0
  237. package/dist/lib/parsers/helpers/parse-3d-implicit-tiles.d.ts.map +1 -0
  238. package/dist/lib/parsers/helpers/parse-3d-implicit-tiles.js +266 -0
  239. package/dist/lib/parsers/helpers/parse-3d-tile-gltf-view.d.ts +10 -0
  240. package/dist/lib/parsers/helpers/parse-3d-tile-gltf-view.d.ts.map +1 -0
  241. package/dist/lib/parsers/helpers/parse-3d-tile-gltf-view.js +90 -63
  242. package/dist/lib/parsers/helpers/parse-3d-tile-header.d.ts +3 -0
  243. package/dist/lib/parsers/helpers/parse-3d-tile-header.d.ts.map +1 -0
  244. package/dist/lib/parsers/helpers/parse-3d-tile-header.js +26 -15
  245. package/dist/lib/parsers/helpers/parse-3d-tile-subtree.d.ts +10 -0
  246. package/dist/lib/parsers/helpers/parse-3d-tile-subtree.d.ts.map +1 -0
  247. package/dist/lib/parsers/helpers/parse-3d-tile-subtree.js +104 -0
  248. package/dist/lib/parsers/helpers/parse-3d-tile-tables.d.ts +5 -0
  249. package/dist/lib/parsers/helpers/parse-3d-tile-tables.d.ts.map +1 -0
  250. package/dist/lib/parsers/helpers/parse-3d-tile-tables.js +85 -81
  251. package/dist/lib/parsers/helpers/parse-utils.d.ts +4 -0
  252. package/dist/lib/parsers/helpers/parse-utils.d.ts.map +1 -0
  253. package/dist/lib/parsers/helpers/parse-utils.js +29 -16
  254. package/dist/lib/parsers/parse-3d-tile-batched-model.d.ts +5 -0
  255. package/dist/lib/parsers/parse-3d-tile-batched-model.d.ts.map +1 -0
  256. package/dist/lib/parsers/parse-3d-tile-batched-model.js +30 -26
  257. package/dist/lib/parsers/parse-3d-tile-composite.d.ts +8 -0
  258. package/dist/lib/parsers/parse-3d-tile-composite.d.ts.map +1 -0
  259. package/dist/lib/parsers/parse-3d-tile-composite.js +23 -16
  260. package/dist/lib/parsers/parse-3d-tile-gltf.d.ts +5 -0
  261. package/dist/lib/parsers/parse-3d-tile-gltf.d.ts.map +1 -0
  262. package/dist/lib/parsers/parse-3d-tile-gltf.js +28 -0
  263. package/dist/lib/parsers/parse-3d-tile-header.d.ts +20 -0
  264. package/dist/lib/parsers/parse-3d-tile-header.d.ts.map +1 -0
  265. package/dist/lib/parsers/parse-3d-tile-header.js +186 -71
  266. package/dist/lib/parsers/parse-3d-tile-instanced-model.d.ts +5 -0
  267. package/dist/lib/parsers/parse-3d-tile-instanced-model.d.ts.map +1 -0
  268. package/dist/lib/parsers/parse-3d-tile-instanced-model.js +165 -170
  269. package/dist/lib/parsers/parse-3d-tile-point-cloud.d.ts +6 -0
  270. package/dist/lib/parsers/parse-3d-tile-point-cloud.d.ts.map +1 -0
  271. package/dist/lib/parsers/parse-3d-tile-point-cloud.js +372 -184
  272. package/dist/lib/parsers/parse-3d-tile.d.ts +5 -0
  273. package/dist/lib/parsers/parse-3d-tile.d.ts.map +1 -0
  274. package/dist/lib/parsers/parse-3d-tile.js +32 -27
  275. package/dist/lib/utils/obb/s2-corners-to-obb.d.ts +15 -0
  276. package/dist/lib/utils/obb/s2-corners-to-obb.d.ts.map +1 -0
  277. package/dist/lib/utils/obb/s2-corners-to-obb.js +37 -0
  278. package/dist/lib/utils/s2/converters/s2-to-boundary.d.ts +9 -0
  279. package/dist/lib/utils/s2/converters/s2-to-boundary.d.ts.map +1 -0
  280. package/dist/lib/utils/s2/converters/s2-to-boundary.js +61 -0
  281. package/dist/lib/utils/s2/converters/s2-to-obb-points.d.ts +15 -0
  282. package/dist/lib/utils/s2/converters/s2-to-obb-points.d.ts.map +1 -0
  283. package/dist/lib/utils/s2/converters/s2-to-obb-points.js +36 -0
  284. package/dist/lib/utils/s2/converters/s2-to-region.d.ts +13 -0
  285. package/dist/lib/utils/s2/converters/s2-to-region.d.ts.map +1 -0
  286. package/dist/lib/utils/s2/converters/s2-to-region.js +59 -0
  287. package/dist/lib/utils/s2/index.d.ts +8 -0
  288. package/dist/lib/utils/s2/index.d.ts.map +1 -0
  289. package/dist/lib/utils/s2/index.js +23 -0
  290. package/dist/lib/utils/s2/s2-geometry-functions.d.ts +14 -0
  291. package/dist/lib/utils/s2/s2-geometry-functions.d.ts.map +1 -0
  292. package/dist/lib/utils/s2/s2-geometry-functions.js +29 -0
  293. package/dist/lib/utils/s2/s2-token-functions.d.ts +23 -0
  294. package/dist/lib/utils/s2/s2-token-functions.d.ts.map +1 -0
  295. package/dist/lib/utils/s2/s2-token-functions.js +68 -0
  296. package/dist/lib/utils/s2/s2geometry/s2-cell-utils.d.ts +14 -0
  297. package/dist/lib/utils/s2/s2geometry/s2-cell-utils.d.ts.map +1 -0
  298. package/dist/lib/utils/s2/s2geometry/s2-cell-utils.js +32 -0
  299. package/dist/lib/utils/s2/s2geometry/s2-geometry.d.ts +52 -0
  300. package/dist/lib/utils/s2/s2geometry/s2-geometry.d.ts.map +1 -0
  301. package/dist/lib/utils/s2/s2geometry/s2-geometry.js +260 -0
  302. package/dist/lib/utils/version.d.ts +2 -0
  303. package/dist/lib/utils/version.d.ts.map +1 -0
  304. package/dist/lib/utils/version.js +7 -2
  305. package/dist/tile-3d-subtree-loader.d.ts +7 -0
  306. package/dist/tile-3d-subtree-loader.d.ts.map +1 -0
  307. package/dist/tile-3d-subtree-loader.js +23 -0
  308. package/dist/tile-3d-writer.d.ts +6 -0
  309. package/dist/tile-3d-writer.d.ts.map +1 -0
  310. package/dist/tile-3d-writer.js +24 -17
  311. package/dist/tiles-3d-loader.d.ts +20 -0
  312. package/dist/tiles-3d-loader.d.ts.map +1 -0
  313. package/dist/tiles-3d-loader.js +69 -65
  314. package/dist/types.d.ts +335 -0
  315. package/dist/types.d.ts.map +1 -0
  316. package/dist/types.js +2 -2
  317. package/package.json +14 -13
  318. package/src/cesium-ion-loader.ts +1 -0
  319. package/src/index.ts +13 -1
  320. package/src/lib/classes/{tile-3d-batch-table.js → tile-3d-batch-table.ts} +14 -4
  321. package/src/lib/classes/{tile-3d-feature-table.js → tile-3d-feature-table.ts} +5 -2
  322. package/src/lib/{constants.js → constants.ts} +2 -1
  323. package/src/lib/parsers/helpers/{normalize-3d-tile-colors.js → normalize-3d-tile-colors.ts} +10 -4
  324. package/src/lib/parsers/helpers/normalize-3d-tile-normals.ts +35 -0
  325. package/src/lib/parsers/helpers/parse-3d-implicit-tiles.ts +396 -0
  326. package/src/lib/parsers/helpers/{parse-3d-tile-gltf-view.js → parse-3d-tile-gltf-view.ts} +40 -16
  327. package/src/lib/parsers/helpers/{parse-3d-tile-header.js → parse-3d-tile-header.ts} +7 -1
  328. package/src/lib/parsers/helpers/parse-3d-tile-subtree.ts +148 -0
  329. package/src/lib/parsers/helpers/{parse-3d-tile-tables.js → parse-3d-tile-tables.ts} +33 -12
  330. package/src/lib/parsers/{parse-3d-tile-batched-model.js → parse-3d-tile-batched-model.ts} +18 -3
  331. package/src/lib/parsers/{parse-3d-tile-composite.js → parse-3d-tile-composite.ts} +20 -8
  332. package/src/lib/parsers/parse-3d-tile-gltf.ts +33 -0
  333. package/src/lib/parsers/parse-3d-tile-header.ts +253 -0
  334. package/src/lib/parsers/{parse-3d-tile-instanced-model.js → parse-3d-tile-instanced-model.ts} +41 -30
  335. package/src/lib/parsers/{parse-3d-tile-point-cloud.js → parse-3d-tile-point-cloud.ts} +73 -14
  336. package/src/lib/parsers/{parse-3d-tile.js → parse-3d-tile.ts} +14 -1
  337. package/src/lib/utils/obb/s2-corners-to-obb.ts +51 -0
  338. package/src/lib/utils/s2/converters/s2-to-boundary.ts +67 -0
  339. package/src/lib/utils/s2/converters/s2-to-obb-points.ts +46 -0
  340. package/src/lib/utils/s2/converters/s2-to-region.ts +69 -0
  341. package/src/lib/utils/s2/index.ts +17 -0
  342. package/src/lib/utils/s2/s2-geometry-functions.ts +28 -0
  343. package/src/lib/utils/s2/s2-token-functions.ts +67 -0
  344. package/src/lib/utils/s2/s2geometry/s2-cell-utils.ts +33 -0
  345. package/src/lib/utils/s2/s2geometry/s2-geometry.ts +296 -0
  346. package/src/tile-3d-subtree-loader.ts +19 -0
  347. package/src/tiles-3d-loader.ts +68 -37
  348. package/src/types.ts +321 -13
  349. package/dist/bundle.js.map +0 -1
  350. package/dist/cesium-ion-loader.js.map +0 -1
  351. package/dist/index.js.map +0 -1
  352. package/dist/lib/classes/helpers/tile-3d-accessor-utils.js.map +0 -1
  353. package/dist/lib/classes/tile-3d-batch-table-hierarchy.js.map +0 -1
  354. package/dist/lib/classes/tile-3d-batch-table.js.map +0 -1
  355. package/dist/lib/classes/tile-3d-feature-table.js.map +0 -1
  356. package/dist/lib/constants.js.map +0 -1
  357. package/dist/lib/encoders/encode-3d-tile-batched-model.js.map +0 -1
  358. package/dist/lib/encoders/encode-3d-tile-composite.js.map +0 -1
  359. package/dist/lib/encoders/encode-3d-tile-instanced-model.js.map +0 -1
  360. package/dist/lib/encoders/encode-3d-tile-point-cloud.js.map +0 -1
  361. package/dist/lib/encoders/encode-3d-tile.js.map +0 -1
  362. package/dist/lib/encoders/helpers/encode-3d-tile-header.js.map +0 -1
  363. package/dist/lib/ion/ion.js.map +0 -1
  364. package/dist/lib/parsers/helpers/normalize-3d-tile-colors.js.map +0 -1
  365. package/dist/lib/parsers/helpers/normalize-3d-tile-normals.js.map +0 -1
  366. package/dist/lib/parsers/helpers/normalize-3d-tile-positions.js.map +0 -1
  367. package/dist/lib/parsers/helpers/parse-3d-tile-gltf-view.js.map +0 -1
  368. package/dist/lib/parsers/helpers/parse-3d-tile-header.js.map +0 -1
  369. package/dist/lib/parsers/helpers/parse-3d-tile-tables.js.map +0 -1
  370. package/dist/lib/parsers/helpers/parse-utils.js.map +0 -1
  371. package/dist/lib/parsers/parse-3d-tile-batched-model.js.map +0 -1
  372. package/dist/lib/parsers/parse-3d-tile-composite.js.map +0 -1
  373. package/dist/lib/parsers/parse-3d-tile-header.js.map +0 -1
  374. package/dist/lib/parsers/parse-3d-tile-instanced-model.js.map +0 -1
  375. package/dist/lib/parsers/parse-3d-tile-point-cloud.js.map +0 -1
  376. package/dist/lib/parsers/parse-3d-tile.js.map +0 -1
  377. package/dist/lib/utils/version.js.map +0 -1
  378. package/dist/tile-3d-writer.js.map +0 -1
  379. package/dist/tiles-3d-loader.js.map +0 -1
  380. package/dist/types.js.map +0 -1
  381. package/src/lib/parsers/parse-3d-tile-header.js +0 -69
  382. /package/src/lib/classes/helpers/{tile-3d-accessor-utils.js → tile-3d-accessor-utils.ts} +0 -0
  383. /package/src/lib/classes/{tile-3d-batch-table-hierarchy.js → tile-3d-batch-table-hierarchy.ts} +0 -0
  384. /package/src/lib/encoders/{encode-3d-tile-batched-model.js → encode-3d-tile-batched-model.ts} +0 -0
  385. /package/src/lib/encoders/{encode-3d-tile-composite.js → encode-3d-tile-composite.ts} +0 -0
  386. /package/src/lib/encoders/{encode-3d-tile-instanced-model.js → encode-3d-tile-instanced-model.ts} +0 -0
  387. /package/src/lib/encoders/{encode-3d-tile-point-cloud.js → encode-3d-tile-point-cloud.ts} +0 -0
  388. /package/src/lib/encoders/{encode-3d-tile.js → encode-3d-tile.ts} +0 -0
  389. /package/src/lib/encoders/helpers/{encode-3d-tile-header.js → encode-3d-tile-header.ts} +0 -0
  390. /package/src/lib/ion/{ion.js → ion.ts} +0 -0
  391. /package/src/lib/parsers/helpers/{normalize-3d-tile-positions.js → normalize-3d-tile-positions.ts} +0 -0
  392. /package/src/lib/parsers/helpers/{parse-utils.js → parse-utils.ts} +0 -0
  393. /package/src/lib/utils/{version.js → version.ts} +0 -0
@@ -1,89 +1,93 @@
1
- import { getStringFromArrayBuffer } from './parse-utils';
1
+ "use strict";
2
+ // This file is derived from the Cesium code base under Apache 2 license
3
+ // See LICENSE.md and https://github.com/AnalyticalGraphicsInc/cesium/blob/master/LICENSE.md
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.parse3DTileTablesSync = exports.parse3DTileTablesHeaderSync = void 0;
6
+ const parse_utils_1 = require("./parse-utils");
2
7
  const SIZEOF_UINT32 = 4;
3
- const DEPRECATION_WARNING = "b3dm tile in legacy format.";
4
- export function parse3DTileTablesHeaderSync(tile, arrayBuffer, byteOffset) {
5
- const view = new DataView(arrayBuffer);
6
- let batchLength;
7
- tile.header = tile.header || {};
8
- let featureTableJsonByteLength = view.getUint32(byteOffset, true);
9
- byteOffset += SIZEOF_UINT32;
10
- let featureTableBinaryByteLength = view.getUint32(byteOffset, true);
11
- byteOffset += SIZEOF_UINT32;
12
- let batchTableJsonByteLength = view.getUint32(byteOffset, true);
13
- byteOffset += SIZEOF_UINT32;
14
- let batchTableBinaryByteLength = view.getUint32(byteOffset, true);
15
- byteOffset += SIZEOF_UINT32;
16
-
17
- if (batchTableJsonByteLength >= 570425344) {
18
- byteOffset -= SIZEOF_UINT32 * 2;
19
- batchLength = featureTableJsonByteLength;
20
- batchTableJsonByteLength = featureTableBinaryByteLength;
21
- batchTableBinaryByteLength = 0;
22
- featureTableJsonByteLength = 0;
23
- featureTableBinaryByteLength = 0;
24
- console.warn(DEPRECATION_WARNING);
25
- } else if (batchTableBinaryByteLength >= 570425344) {
26
- byteOffset -= SIZEOF_UINT32;
27
- batchLength = batchTableJsonByteLength;
28
- batchTableJsonByteLength = featureTableJsonByteLength;
29
- batchTableBinaryByteLength = featureTableBinaryByteLength;
30
- featureTableJsonByteLength = 0;
31
- featureTableBinaryByteLength = 0;
32
- console.warn(DEPRECATION_WARNING);
33
- }
34
-
35
- tile.header.featureTableJsonByteLength = featureTableJsonByteLength;
36
- tile.header.featureTableBinaryByteLength = featureTableBinaryByteLength;
37
- tile.header.batchTableJsonByteLength = batchTableJsonByteLength;
38
- tile.header.batchTableBinaryByteLength = batchTableBinaryByteLength;
39
- tile.header.batchLength = batchLength;
40
- return byteOffset;
8
+ const DEPRECATION_WARNING = 'b3dm tile in legacy format.';
9
+ // eslint-disable-next-line max-statements
10
+ function parse3DTileTablesHeaderSync(tile, arrayBuffer, byteOffset) {
11
+ const view = new DataView(arrayBuffer);
12
+ let batchLength;
13
+ tile.header = tile.header || {};
14
+ let featureTableJsonByteLength = view.getUint32(byteOffset, true);
15
+ byteOffset += SIZEOF_UINT32;
16
+ let featureTableBinaryByteLength = view.getUint32(byteOffset, true);
17
+ byteOffset += SIZEOF_UINT32;
18
+ let batchTableJsonByteLength = view.getUint32(byteOffset, true);
19
+ byteOffset += SIZEOF_UINT32;
20
+ let batchTableBinaryByteLength = view.getUint32(byteOffset, true);
21
+ byteOffset += SIZEOF_UINT32;
22
+ // First legacy header format - [batchLength] [batchTableByteLength] ('batchTableJsonByteLength': JSON starts with a quotation mark or the glTF magic)
23
+ // Second legacy format - [batchTableJsonByteLength] [batchTableBinaryByteLength] [batchLength] (Second legacy format is similar as first but here we check 'batchTableBinaryByteLength' instead)
24
+ // Current header format - [featureTableJsonByteLength] [featureTableBinaryByteLength] [batchTableJsonByteLength] [batchTableBinaryByteLength]
25
+ // First byte will be 0x22 or 0x67. The minimum uint32 expected is 0x22000000 = 570425344 = 570MB.
26
+ if (batchTableJsonByteLength >= 570425344) {
27
+ byteOffset -= SIZEOF_UINT32 * 2;
28
+ batchLength = featureTableJsonByteLength;
29
+ batchTableJsonByteLength = featureTableBinaryByteLength;
30
+ batchTableBinaryByteLength = 0;
31
+ featureTableJsonByteLength = 0;
32
+ featureTableBinaryByteLength = 0;
33
+ console.warn(DEPRECATION_WARNING); // eslint-disable-line
34
+ }
35
+ else if (batchTableBinaryByteLength >= 570425344) {
36
+ byteOffset -= SIZEOF_UINT32;
37
+ batchLength = batchTableJsonByteLength;
38
+ batchTableJsonByteLength = featureTableJsonByteLength;
39
+ batchTableBinaryByteLength = featureTableBinaryByteLength;
40
+ featureTableJsonByteLength = 0;
41
+ featureTableBinaryByteLength = 0;
42
+ console.warn(DEPRECATION_WARNING); // eslint-disable-line
43
+ }
44
+ tile.header.featureTableJsonByteLength = featureTableJsonByteLength;
45
+ tile.header.featureTableBinaryByteLength = featureTableBinaryByteLength;
46
+ tile.header.batchTableJsonByteLength = batchTableJsonByteLength;
47
+ tile.header.batchTableBinaryByteLength = batchTableBinaryByteLength;
48
+ tile.header.batchLength = batchLength;
49
+ return byteOffset;
41
50
  }
42
- export function parse3DTileTablesSync(tile, arrayBuffer, byteOffset, options) {
43
- byteOffset = parse3DTileFeatureTable(tile, arrayBuffer, byteOffset, options);
44
- byteOffset = parse3DTileBatchTable(tile, arrayBuffer, byteOffset, options);
45
- return byteOffset;
51
+ exports.parse3DTileTablesHeaderSync = parse3DTileTablesHeaderSync;
52
+ function parse3DTileTablesSync(tile, arrayBuffer, byteOffset, options) {
53
+ byteOffset = parse3DTileFeatureTable(tile, arrayBuffer, byteOffset, options);
54
+ byteOffset = parse3DTileBatchTable(tile, arrayBuffer, byteOffset, options);
55
+ return byteOffset;
46
56
  }
47
-
57
+ exports.parse3DTileTablesSync = parse3DTileTablesSync;
48
58
  function parse3DTileFeatureTable(tile, arrayBuffer, byteOffset, options) {
49
- const {
50
- featureTableJsonByteLength,
51
- featureTableBinaryByteLength,
52
- batchLength
53
- } = tile.header;
54
- tile.featureTableJson = {
55
- BATCH_LENGTH: batchLength || 0
56
- };
57
-
58
- if (featureTableJsonByteLength > 0) {
59
- const featureTableString = getStringFromArrayBuffer(arrayBuffer, byteOffset, featureTableJsonByteLength);
60
- tile.featureTableJson = JSON.parse(featureTableString);
61
- }
62
-
63
- byteOffset += featureTableJsonByteLength;
64
- tile.featureTableBinary = new Uint8Array(arrayBuffer, byteOffset, featureTableBinaryByteLength);
65
- byteOffset += featureTableBinaryByteLength;
66
- return byteOffset;
59
+ const { featureTableJsonByteLength, featureTableBinaryByteLength, batchLength } = tile.header || {};
60
+ tile.featureTableJson = {
61
+ BATCH_LENGTH: batchLength || 0
62
+ };
63
+ if (featureTableJsonByteLength && featureTableJsonByteLength > 0) {
64
+ const featureTableString = (0, parse_utils_1.getStringFromArrayBuffer)(arrayBuffer, byteOffset, featureTableJsonByteLength);
65
+ tile.featureTableJson = JSON.parse(featureTableString);
66
+ }
67
+ byteOffset += featureTableJsonByteLength || 0;
68
+ tile.featureTableBinary = new Uint8Array(arrayBuffer, byteOffset, featureTableBinaryByteLength);
69
+ byteOffset += featureTableBinaryByteLength || 0;
70
+ /*
71
+ const featureTable = parseFeatureTable(featureTableJson, featureTableBinary);
72
+
73
+ const batchLength = featureTable.getGlobalProperty('BATCH_LENGTH');
74
+ featureTable.featuresLength = batchLength;
75
+ */
76
+ return byteOffset;
67
77
  }
68
-
69
78
  function parse3DTileBatchTable(tile, arrayBuffer, byteOffset, options) {
70
- const {
71
- batchTableJsonByteLength,
72
- batchTableBinaryByteLength
73
- } = tile.header;
74
-
75
- if (batchTableJsonByteLength > 0) {
76
- const batchTableString = getStringFromArrayBuffer(arrayBuffer, byteOffset, batchTableJsonByteLength);
77
- tile.batchTableJson = JSON.parse(batchTableString);
78
- byteOffset += batchTableJsonByteLength;
79
-
80
- if (batchTableBinaryByteLength > 0) {
81
- tile.batchTableBinary = new Uint8Array(arrayBuffer, byteOffset, batchTableBinaryByteLength);
82
- tile.batchTableBinary = new Uint8Array(tile.batchTableBinary);
83
- byteOffset += batchTableBinaryByteLength;
79
+ const { batchTableJsonByteLength, batchTableBinaryByteLength } = tile.header || {};
80
+ if (batchTableJsonByteLength && batchTableJsonByteLength > 0) {
81
+ const batchTableString = (0, parse_utils_1.getStringFromArrayBuffer)(arrayBuffer, byteOffset, batchTableJsonByteLength);
82
+ tile.batchTableJson = JSON.parse(batchTableString);
83
+ byteOffset += batchTableJsonByteLength;
84
+ if (batchTableBinaryByteLength && batchTableBinaryByteLength > 0) {
85
+ // Has a batch table binary
86
+ tile.batchTableBinary = new Uint8Array(arrayBuffer, byteOffset, batchTableBinaryByteLength);
87
+ // Copy the batchTableBinary section and let the underlying ArrayBuffer be freed
88
+ tile.batchTableBinary = new Uint8Array(tile.batchTableBinary);
89
+ byteOffset += batchTableBinaryByteLength;
90
+ }
84
91
  }
85
- }
86
-
87
- return byteOffset;
92
+ return byteOffset;
88
93
  }
89
- //# sourceMappingURL=parse-3d-tile-tables.js.map
@@ -0,0 +1,4 @@
1
+ export declare function getStringFromArrayBuffer(arrayBuffer: any, byteOffset: any, byteLength: any): string;
2
+ export declare function getStringFromTypedArray(typedArray: any): string;
3
+ export declare function getMagicString(arrayBuffer: any, byteOffset?: number): string;
4
+ //# sourceMappingURL=parse-utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parse-utils.d.ts","sourceRoot":"","sources":["../../../../src/lib/parsers/helpers/parse-utils.ts"],"names":[],"mappings":"AAMA,wBAAgB,wBAAwB,CAAC,WAAW,KAAA,EAAE,UAAU,KAAA,EAAE,UAAU,KAAA,UAM3E;AAGD,wBAAgB,uBAAuB,CAAC,UAAU,KAAA,UAKjD;AAED,wBAAgB,cAAc,CAAC,WAAW,KAAA,EAAE,UAAU,SAAI,UAOzD"}
@@ -1,19 +1,32 @@
1
- import { assert } from '@loaders.gl/loader-utils';
2
- export function getStringFromArrayBuffer(arrayBuffer, byteOffset, byteLength) {
3
- assert(arrayBuffer instanceof ArrayBuffer);
4
- const textDecoder = new TextDecoder('utf8');
5
- const typedArray = new Uint8Array(arrayBuffer, byteOffset, byteLength);
6
- const string = textDecoder.decode(typedArray);
7
- return string;
1
+ "use strict";
2
+ // This file is derived from the Cesium code base under Apache 2 license
3
+ // See LICENSE.md and https://github.com/AnalyticalGraphicsInc/cesium/blob/master/LICENSE.md
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.getMagicString = exports.getStringFromTypedArray = exports.getStringFromArrayBuffer = void 0;
6
+ const loader_utils_1 = require("@loaders.gl/loader-utils");
7
+ // Decode the JSON binary array into clear text
8
+ function getStringFromArrayBuffer(arrayBuffer, byteOffset, byteLength) {
9
+ (0, loader_utils_1.assert)(arrayBuffer instanceof ArrayBuffer);
10
+ const textDecoder = new TextDecoder('utf8');
11
+ const typedArray = new Uint8Array(arrayBuffer, byteOffset, byteLength);
12
+ const string = textDecoder.decode(typedArray);
13
+ return string;
8
14
  }
9
- export function getStringFromTypedArray(typedArray) {
10
- assert(ArrayBuffer.isView(typedArray));
11
- const textDecoder = new TextDecoder('utf8');
12
- const string = textDecoder.decode(typedArray);
13
- return string;
15
+ exports.getStringFromArrayBuffer = getStringFromArrayBuffer;
16
+ // Decode the JSON binary array into clear text
17
+ function getStringFromTypedArray(typedArray) {
18
+ (0, loader_utils_1.assert)(ArrayBuffer.isView(typedArray));
19
+ const textDecoder = new TextDecoder('utf8');
20
+ const string = textDecoder.decode(typedArray);
21
+ return string;
14
22
  }
15
- export function getMagicString(arrayBuffer, byteOffset = 0) {
16
- const dataView = new DataView(arrayBuffer);
17
- return "".concat(String.fromCharCode(dataView.getUint8(byteOffset + 0))).concat(String.fromCharCode(dataView.getUint8(byteOffset + 1))).concat(String.fromCharCode(dataView.getUint8(byteOffset + 2))).concat(String.fromCharCode(dataView.getUint8(byteOffset + 3)));
23
+ exports.getStringFromTypedArray = getStringFromTypedArray;
24
+ function getMagicString(arrayBuffer, byteOffset = 0) {
25
+ const dataView = new DataView(arrayBuffer);
26
+ return `\
27
+ ${String.fromCharCode(dataView.getUint8(byteOffset + 0))}\
28
+ ${String.fromCharCode(dataView.getUint8(byteOffset + 1))}\
29
+ ${String.fromCharCode(dataView.getUint8(byteOffset + 2))}\
30
+ ${String.fromCharCode(dataView.getUint8(byteOffset + 3))}`;
18
31
  }
19
- //# sourceMappingURL=parse-utils.js.map
32
+ exports.getMagicString = getMagicString;
@@ -0,0 +1,5 @@
1
+ import { Tiles3DTileContent } from '../../types';
2
+ import { Tiles3DLoaderOptions } from '../../tiles-3d-loader';
3
+ import { LoaderContext } from '@loaders.gl/loader-utils';
4
+ export declare function parseBatchedModel3DTile(tile: Tiles3DTileContent, arrayBuffer: ArrayBuffer, byteOffset: number, options?: Tiles3DLoaderOptions, context?: LoaderContext): Promise<number>;
5
+ //# sourceMappingURL=parse-3d-tile-batched-model.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parse-3d-tile-batched-model.d.ts","sourceRoot":"","sources":["../../../src/lib/parsers/parse-3d-tile-batched-model.ts"],"names":[],"mappings":"AAUA,OAAO,EAAC,kBAAkB,EAAC,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAC,oBAAoB,EAAC,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAC,aAAa,EAAC,MAAM,0BAA0B,CAAC;AAEvD,wBAAsB,uBAAuB,CAC3C,IAAI,EAAE,kBAAkB,EACxB,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE,oBAAoB,EAC9B,OAAO,CAAC,EAAE,aAAa,mBAWxB"}
@@ -1,29 +1,33 @@
1
- import { GL } from '@loaders.gl/math';
2
- import Tile3DFeatureTable from '../classes/tile-3d-feature-table';
3
- import { parse3DTileHeaderSync } from './helpers/parse-3d-tile-header';
4
- import { parse3DTileTablesHeaderSync, parse3DTileTablesSync } from './helpers/parse-3d-tile-tables';
5
- import { parse3DTileGLTFViewSync, extractGLTF, GLTF_FORMAT } from './helpers/parse-3d-tile-gltf-view';
6
- export async function parseBatchedModel3DTile(tile, arrayBuffer, byteOffset, options, context) {
7
- var _tile$gltf;
8
-
9
- byteOffset = parseBatchedModel(tile, arrayBuffer, byteOffset, options, context);
10
- await extractGLTF(tile, GLTF_FORMAT.EMBEDDED, options, context);
11
- const extensions = tile === null || tile === void 0 ? void 0 : (_tile$gltf = tile.gltf) === null || _tile$gltf === void 0 ? void 0 : _tile$gltf.extensions;
12
-
13
- if (extensions && extensions.CESIUM_RTC) {
14
- tile.rtcCenter = extensions.CESIUM_RTC.center;
15
- }
16
-
17
- return byteOffset;
1
+ "use strict";
2
+ // This file is derived from the Cesium code base under Apache 2 license
3
+ // See LICENSE.md and https://github.com/AnalyticalGraphicsInc/cesium/blob/master/LICENSE.md
4
+ var __importDefault = (this && this.__importDefault) || function (mod) {
5
+ return (mod && mod.__esModule) ? mod : { "default": mod };
6
+ };
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.parseBatchedModel3DTile = void 0;
9
+ const math_1 = require("@loaders.gl/math"); // math.gl/geometry;
10
+ const tile_3d_feature_table_1 = __importDefault(require("../classes/tile-3d-feature-table"));
11
+ // import Tile3DBatchTable from '../classes/tile-3d-batch-table';
12
+ const parse_3d_tile_header_1 = require("./helpers/parse-3d-tile-header");
13
+ const parse_3d_tile_tables_1 = require("./helpers/parse-3d-tile-tables");
14
+ const parse_3d_tile_gltf_view_1 = require("./helpers/parse-3d-tile-gltf-view");
15
+ async function parseBatchedModel3DTile(tile, arrayBuffer, byteOffset, options, context) {
16
+ byteOffset = parseBatchedModel(tile, arrayBuffer, byteOffset, options, context);
17
+ await (0, parse_3d_tile_gltf_view_1.extractGLTF)(tile, parse_3d_tile_gltf_view_1.GLTF_FORMAT.EMBEDDED, options, context);
18
+ const extensions = tile?.gltf?.extensions;
19
+ if (extensions && extensions.CESIUM_RTC) {
20
+ tile.rtcCenter = extensions.CESIUM_RTC.center;
21
+ }
22
+ return byteOffset;
18
23
  }
19
-
24
+ exports.parseBatchedModel3DTile = parseBatchedModel3DTile;
20
25
  function parseBatchedModel(tile, arrayBuffer, byteOffset, options, context) {
21
- byteOffset = parse3DTileHeaderSync(tile, arrayBuffer, byteOffset);
22
- byteOffset = parse3DTileTablesHeaderSync(tile, arrayBuffer, byteOffset);
23
- byteOffset = parse3DTileTablesSync(tile, arrayBuffer, byteOffset, options);
24
- byteOffset = parse3DTileGLTFViewSync(tile, arrayBuffer, byteOffset, options);
25
- const featureTable = new Tile3DFeatureTable(tile.featureTableJson, tile.featureTableBinary);
26
- tile.rtcCenter = featureTable.getGlobalProperty('RTC_CENTER', GL.FLOAT, 3);
27
- return byteOffset;
26
+ byteOffset = (0, parse_3d_tile_header_1.parse3DTileHeaderSync)(tile, arrayBuffer, byteOffset);
27
+ byteOffset = (0, parse_3d_tile_tables_1.parse3DTileTablesHeaderSync)(tile, arrayBuffer, byteOffset);
28
+ byteOffset = (0, parse_3d_tile_tables_1.parse3DTileTablesSync)(tile, arrayBuffer, byteOffset, options);
29
+ byteOffset = (0, parse_3d_tile_gltf_view_1.parse3DTileGLTFViewSync)(tile, arrayBuffer, byteOffset, options);
30
+ const featureTable = new tile_3d_feature_table_1.default(tile.featureTableJson, tile.featureTableBinary);
31
+ tile.rtcCenter = featureTable.getGlobalProperty('RTC_CENTER', math_1.GL.FLOAT, 3);
32
+ return byteOffset;
28
33
  }
29
- //# sourceMappingURL=parse-3d-tile-batched-model.js.map
@@ -0,0 +1,8 @@
1
+ import type { LoaderContext } from '@loaders.gl/loader-utils';
2
+ import type { Tiles3DLoaderOptions } from '../../tiles-3d-loader';
3
+ import { Tiles3DTileContent } from '../../types';
4
+ /** Resolve circulate dependency by passing in parsing function as argument */
5
+ type Parse3DTile = (arrayBuffer: ArrayBuffer, byteOffset: number, options: Tiles3DLoaderOptions | undefined, context: LoaderContext | undefined, subtile: any) => Promise<number>;
6
+ export declare function parseComposite3DTile(tile: Tiles3DTileContent, arrayBuffer: ArrayBuffer, byteOffset: number, options: Tiles3DLoaderOptions | undefined, context: LoaderContext | undefined, parse3DTile: Parse3DTile): Promise<number>;
7
+ export {};
8
+ //# sourceMappingURL=parse-3d-tile-composite.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parse-3d-tile-composite.d.ts","sourceRoot":"","sources":["../../../src/lib/parsers/parse-3d-tile-composite.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAC,oBAAoB,EAAC,MAAM,uBAAuB,CAAC;AAEhE,OAAO,EAAC,kBAAkB,EAAC,MAAM,aAAa,CAAC;AAE/C,8EAA8E;AAC9E,KAAK,WAAW,GAAG,CACjB,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,oBAAoB,GAAG,SAAS,EACzC,OAAO,EAAE,aAAa,GAAG,SAAS,EAClC,OAAO,KAAA,KACJ,OAAO,CAAC,MAAM,CAAC,CAAC;AAGrB,wBAAsB,oBAAoB,CACxC,IAAI,EAAE,kBAAkB,EACxB,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,oBAAoB,GAAG,SAAS,EACzC,OAAO,EAAE,aAAa,GAAG,SAAS,EAClC,WAAW,EAAE,WAAW,GACvB,OAAO,CAAC,MAAM,CAAC,CAmBjB"}
@@ -1,17 +1,24 @@
1
- import { parse3DTileHeaderSync } from './helpers/parse-3d-tile-header';
2
- export async function parseComposite3DTile(tile, arrayBuffer, byteOffset, options, context, parse3DTile) {
3
- byteOffset = parse3DTileHeaderSync(tile, arrayBuffer, byteOffset);
4
- const view = new DataView(arrayBuffer);
5
- tile.tilesLength = view.getUint32(byteOffset, true);
6
- byteOffset += 4;
7
- tile.tiles = [];
8
-
9
- while (tile.tiles.length < tile.tilesLength && tile.byteLength - byteOffset > 12) {
10
- const subtile = {};
11
- tile.tiles.push(subtile);
12
- byteOffset = await parse3DTile(arrayBuffer, byteOffset, options, context, subtile);
13
- }
14
-
15
- return byteOffset;
1
+ "use strict";
2
+ // This file is derived from the Cesium code base under Apache 2 license
3
+ // See LICENSE.md and https://github.com/AnalyticalGraphicsInc/cesium/blob/master/LICENSE.md
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.parseComposite3DTile = void 0;
6
+ const parse_3d_tile_header_1 = require("./helpers/parse-3d-tile-header");
7
+ // eslint-disable-next-line max-params
8
+ async function parseComposite3DTile(tile, arrayBuffer, byteOffset, options, context, parse3DTile) {
9
+ byteOffset = (0, parse_3d_tile_header_1.parse3DTileHeaderSync)(tile, arrayBuffer, byteOffset);
10
+ const view = new DataView(arrayBuffer);
11
+ // Extract number of tiles
12
+ tile.tilesLength = view.getUint32(byteOffset, true);
13
+ byteOffset += 4;
14
+ // extract each tile from the byte stream
15
+ tile.tiles = [];
16
+ while (tile.tiles.length < tile.tilesLength && (tile.byteLength || 0) - byteOffset > 12) {
17
+ const subtile = {};
18
+ tile.tiles.push(subtile);
19
+ byteOffset = await parse3DTile(arrayBuffer, byteOffset, options, context, subtile);
20
+ // TODO - do we need to add any padding in between tiles?
21
+ }
22
+ return byteOffset;
16
23
  }
17
- //# sourceMappingURL=parse-3d-tile-composite.js.map
24
+ exports.parseComposite3DTile = parseComposite3DTile;
@@ -0,0 +1,5 @@
1
+ import type { LoaderContext } from '@loaders.gl/loader-utils';
2
+ import type { Tiles3DLoaderOptions } from '../../tiles-3d-loader';
3
+ import { Tiles3DTileContent } from '../../types';
4
+ export declare function parseGltf3DTile(tile: Tiles3DTileContent, arrayBuffer: ArrayBuffer, options?: Tiles3DLoaderOptions, context?: LoaderContext): Promise<void>;
5
+ //# sourceMappingURL=parse-3d-tile-gltf.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parse-3d-tile-gltf.d.ts","sourceRoot":"","sources":["../../../src/lib/parsers/parse-3d-tile-gltf.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAC,oBAAoB,EAAC,MAAM,uBAAuB,CAAC;AAEhE,OAAO,EAAC,kBAAkB,EAAC,MAAM,aAAa,CAAC;AAE/C,wBAAsB,eAAe,CACnC,IAAI,EAAE,kBAAkB,EACxB,WAAW,EAAE,WAAW,EACxB,OAAO,CAAC,EAAE,oBAAoB,EAC9B,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC,IAAI,CAAC,CAsBf"}
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.parseGltf3DTile = void 0;
4
+ const gltf_1 = require("@loaders.gl/gltf");
5
+ async function parseGltf3DTile(tile, arrayBuffer, options, context) {
6
+ // Set flags
7
+ // glTF models need to be rotated from Y to Z up
8
+ // https://github.com/AnalyticalGraphicsInc/3d-tiles/tree/master/specification#y-up-to-z-up
9
+ tile.rotateYtoZ = true;
10
+ // Save gltf up axis
11
+ tile.gltfUpAxis =
12
+ options?.['3d-tiles'] && options['3d-tiles'].assetGltfUpAxis
13
+ ? options['3d-tiles'].assetGltfUpAxis
14
+ : 'Y';
15
+ if (options?.['3d-tiles']?.loadGLTF) {
16
+ if (!context) {
17
+ return;
18
+ }
19
+ const { parse } = context;
20
+ const gltfWithBuffers = await parse(arrayBuffer, gltf_1.GLTFLoader, options, context);
21
+ tile.gltf = (0, gltf_1.postProcessGLTF)(gltfWithBuffers);
22
+ tile.gpuMemoryUsageInBytes = (0, gltf_1._getMemoryUsageGLTF)(tile.gltf);
23
+ }
24
+ else {
25
+ tile.gltfArrayBuffer = arrayBuffer;
26
+ }
27
+ }
28
+ exports.parseGltf3DTile = parseGltf3DTile;
@@ -0,0 +1,20 @@
1
+ import type { Tiles3DLoaderOptions } from '../../tiles-3d-loader';
2
+ import type { LoaderOptions } from '@loaders.gl/loader-utils';
3
+ import { ImplicitTilingExensionData, Subtree, Tiles3DTileJSON, Tiles3DTileJSONPostprocessed, Tiles3DTilesetJSON } from '../../types';
4
+ export declare function normalizeTileData(tile: Tiles3DTileJSON | null, basePath: string): Tiles3DTileJSONPostprocessed | null;
5
+ export declare function normalizeTileHeaders(tileset: Tiles3DTilesetJSON, basePath: string, options: LoaderOptions): Promise<Tiles3DTileJSONPostprocessed | null>;
6
+ /**
7
+ * Do normalisation of implicit tile headers
8
+ * TODO Check if Tile3D class can be a return type here.
9
+ * @param tileset
10
+ */
11
+ export declare function normalizeImplicitTileHeaders(tile: Tiles3DTileJSON, tileset: Tiles3DTilesetJSON, basePath: string, implicitTilingExtension: ImplicitTilingExensionData, options: Tiles3DLoaderOptions): Promise<Tiles3DTileJSONPostprocessed | null>;
12
+ /**
13
+ * Do implicit data normalisation to create hierarchical tile structure
14
+ * @param tile
15
+ * @param rootSubtree
16
+ * @param options
17
+ * @returns
18
+ */
19
+ export declare function normalizeImplicitTileData(tile: Tiles3DTileJSON, basePath: string, rootSubtree: Subtree, options: any): Promise<Tiles3DTileJSONPostprocessed | null>;
20
+ //# sourceMappingURL=parse-3d-tile-header.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parse-3d-tile-header.d.ts","sourceRoot":"","sources":["../../../src/lib/parsers/parse-3d-tile-header.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,oBAAoB,EAAC,MAAM,uBAAuB,CAAC;AAChE,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,0BAA0B,CAAC;AAI5D,OAAO,EACL,0BAA0B,EAC1B,OAAO,EAEP,eAAe,EACf,4BAA4B,EAC5B,kBAAkB,EACnB,MAAM,aAAa,CAAC;AAqDrB,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,eAAe,GAAG,IAAI,EAC5B,QAAQ,EAAE,MAAM,GACf,4BAA4B,GAAG,IAAI,CAqBrC;AAGD,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,kBAAkB,EAC3B,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,4BAA4B,GAAG,IAAI,CAAC,CA+C9C;AAED;;;;GAIG;AACH,wBAAsB,4BAA4B,CAChD,IAAI,EAAE,eAAe,EACrB,OAAO,EAAE,kBAAkB,EAC3B,QAAQ,EAAE,MAAM,EAChB,uBAAuB,EAAE,0BAA0B,EACnD,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC,4BAA4B,GAAG,IAAI,CAAC,CAyC9C;AAED;;;;;;GAMG;AACH,wBAAsB,yBAAyB,CAC7C,IAAI,EAAE,eAAe,EACrB,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,OAAO,EACpB,OAAO,EAAE,GAAG,GACX,OAAO,CAAC,4BAA4B,GAAG,IAAI,CAAC,CA8B9C"}