@itwin/core-frontend 3.1.0-dev.8 → 3.2.0-dev.12

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 (795) hide show
  1. package/CHANGELOG.md +168 -35
  2. package/lib/cjs/AccuSnap.js +2 -2
  3. package/lib/cjs/AccuSnap.js.map +1 -1
  4. package/lib/cjs/ApproximateTerrainHeights.d.ts +1 -1
  5. package/lib/cjs/ApproximateTerrainHeights.d.ts.map +1 -1
  6. package/lib/cjs/ApproximateTerrainHeights.js +21 -9
  7. package/lib/cjs/ApproximateTerrainHeights.js.map +1 -1
  8. package/lib/cjs/ApproximateTerrainHeightsProps.d.ts +12 -0
  9. package/lib/cjs/ApproximateTerrainHeightsProps.d.ts.map +1 -0
  10. package/lib/cjs/ApproximateTerrainHeightsProps.js +13 -0
  11. package/lib/cjs/ApproximateTerrainHeightsProps.js.map +1 -0
  12. package/lib/cjs/CategorySelectorState.js +1 -1
  13. package/lib/cjs/CategorySelectorState.js.map +1 -1
  14. package/lib/cjs/DisplayStyleState.d.ts +4 -3
  15. package/lib/cjs/DisplayStyleState.d.ts.map +1 -1
  16. package/lib/cjs/DisplayStyleState.js +38 -12
  17. package/lib/cjs/DisplayStyleState.js.map +1 -1
  18. package/lib/cjs/DrawingViewState.d.ts.map +1 -1
  19. package/lib/cjs/DrawingViewState.js +6 -5
  20. package/lib/cjs/DrawingViewState.js.map +1 -1
  21. package/lib/cjs/FrontendLoggerCategory.d.ts +3 -1
  22. package/lib/cjs/FrontendLoggerCategory.d.ts.map +1 -1
  23. package/lib/cjs/FrontendLoggerCategory.js +2 -0
  24. package/lib/cjs/FrontendLoggerCategory.js.map +1 -1
  25. package/lib/cjs/HitDetail.js.map +1 -1
  26. package/lib/cjs/IModelApp.d.ts +10 -4
  27. package/lib/cjs/IModelApp.d.ts.map +1 -1
  28. package/lib/cjs/IModelApp.js +26 -13
  29. package/lib/cjs/IModelApp.js.map +1 -1
  30. package/lib/cjs/IModelConnection.d.ts +3 -2
  31. package/lib/cjs/IModelConnection.d.ts.map +1 -1
  32. package/lib/cjs/IModelConnection.js +6 -4
  33. package/lib/cjs/IModelConnection.js.map +1 -1
  34. package/lib/cjs/ImageUtil.d.ts.map +1 -1
  35. package/lib/cjs/ImageUtil.js +8 -14
  36. package/lib/cjs/ImageUtil.js.map +1 -1
  37. package/lib/cjs/LocalhostIpcApp.d.ts +2 -0
  38. package/lib/cjs/LocalhostIpcApp.d.ts.map +1 -1
  39. package/lib/cjs/LocalhostIpcApp.js +10 -4
  40. package/lib/cjs/LocalhostIpcApp.js.map +1 -1
  41. package/lib/cjs/RealityDataSource.d.ts +60 -14
  42. package/lib/cjs/RealityDataSource.d.ts.map +1 -1
  43. package/lib/cjs/RealityDataSource.js +36 -235
  44. package/lib/cjs/RealityDataSource.js.map +1 -1
  45. package/lib/cjs/RealityDataSourceCesiumIonAssetImpl.d.ts +67 -0
  46. package/lib/cjs/RealityDataSourceCesiumIonAssetImpl.d.ts.map +1 -0
  47. package/lib/cjs/RealityDataSourceCesiumIonAssetImpl.js +166 -0
  48. package/lib/cjs/RealityDataSourceCesiumIonAssetImpl.js.map +1 -0
  49. package/lib/cjs/RealityDataSourceContextShareImpl.d.ts +83 -0
  50. package/lib/cjs/RealityDataSourceContextShareImpl.d.ts.map +1 -0
  51. package/lib/cjs/RealityDataSourceContextShareImpl.js +234 -0
  52. package/lib/cjs/RealityDataSourceContextShareImpl.js.map +1 -0
  53. package/lib/cjs/RealityDataSourceTilesetUrlImpl.d.ts +65 -0
  54. package/lib/cjs/RealityDataSourceTilesetUrlImpl.d.ts.map +1 -0
  55. package/lib/cjs/RealityDataSourceTilesetUrlImpl.js +135 -0
  56. package/lib/cjs/RealityDataSourceTilesetUrlImpl.js.map +1 -0
  57. package/lib/cjs/SheetViewState.js +4 -0
  58. package/lib/cjs/SheetViewState.js.map +1 -1
  59. package/lib/cjs/ViewState.d.ts +8 -0
  60. package/lib/cjs/ViewState.d.ts.map +1 -1
  61. package/lib/cjs/ViewState.js +1 -1
  62. package/lib/cjs/ViewState.js.map +1 -1
  63. package/lib/cjs/Viewport.d.ts +30 -12
  64. package/lib/cjs/Viewport.d.ts.map +1 -1
  65. package/lib/cjs/Viewport.js +43 -1
  66. package/lib/cjs/Viewport.js.map +1 -1
  67. package/lib/cjs/core-frontend.d.ts +6 -4
  68. package/lib/cjs/core-frontend.d.ts.map +1 -1
  69. package/lib/cjs/core-frontend.js +6 -4
  70. package/lib/cjs/core-frontend.js.map +1 -1
  71. package/lib/cjs/extension/Extension.d.ts +48 -0
  72. package/lib/cjs/extension/Extension.d.ts.map +1 -0
  73. package/lib/cjs/extension/Extension.js +18 -0
  74. package/lib/cjs/extension/Extension.js.map +1 -0
  75. package/lib/cjs/extension/ExtensionAdmin.d.ts +64 -0
  76. package/lib/cjs/extension/ExtensionAdmin.d.ts.map +1 -0
  77. package/lib/cjs/extension/ExtensionAdmin.js +106 -0
  78. package/lib/cjs/extension/ExtensionAdmin.js.map +1 -0
  79. package/lib/cjs/extension/ExtensionHost.d.ts +23 -0
  80. package/lib/cjs/extension/ExtensionHost.d.ts.map +1 -0
  81. package/lib/cjs/extension/ExtensionHost.js +26 -0
  82. package/lib/cjs/extension/ExtensionHost.js.map +1 -0
  83. package/lib/cjs/extension/ExtensionImpl.d.ts +21 -0
  84. package/lib/cjs/extension/ExtensionImpl.d.ts.map +1 -0
  85. package/lib/cjs/extension/ExtensionImpl.js +45 -0
  86. package/lib/cjs/extension/ExtensionImpl.js.map +1 -0
  87. package/lib/cjs/extension/ExtensionLoader.d.ts +26 -0
  88. package/lib/cjs/extension/ExtensionLoader.d.ts.map +1 -0
  89. package/lib/cjs/extension/ExtensionLoader.js +10 -0
  90. package/lib/cjs/extension/ExtensionLoader.js.map +1 -0
  91. package/lib/cjs/extension/ExtensionRuntime.d.ts +5 -0
  92. package/lib/cjs/extension/ExtensionRuntime.d.ts.map +1 -0
  93. package/lib/cjs/extension/ExtensionRuntime.js +86 -0
  94. package/lib/cjs/extension/ExtensionRuntime.js.map +1 -0
  95. package/lib/cjs/extension/extensions.d.ts +19 -0
  96. package/lib/cjs/extension/extensions.d.ts.map +1 -0
  97. package/lib/cjs/extension/extensions.js +36 -0
  98. package/lib/cjs/extension/extensions.js.map +1 -0
  99. package/lib/cjs/quantity-formatting/BasicUnitsProvider.d.ts +2 -2
  100. package/lib/cjs/quantity-formatting/BasicUnitsProvider.d.ts.map +1 -1
  101. package/lib/cjs/quantity-formatting/BasicUnitsProvider.js +48 -44
  102. package/lib/cjs/quantity-formatting/BasicUnitsProvider.js.map +1 -1
  103. package/lib/cjs/quantity-formatting/QuantityFormatter.d.ts +90 -80
  104. package/lib/cjs/quantity-formatting/QuantityFormatter.d.ts.map +1 -1
  105. package/lib/cjs/quantity-formatting/QuantityFormatter.js +85 -45
  106. package/lib/cjs/quantity-formatting/QuantityFormatter.js.map +1 -1
  107. package/lib/cjs/quantity-formatting/QuantityTypesEditorSpecs.d.ts +54 -0
  108. package/lib/cjs/quantity-formatting/QuantityTypesEditorSpecs.d.ts.map +1 -0
  109. package/lib/cjs/quantity-formatting/QuantityTypesEditorSpecs.js +32 -0
  110. package/lib/cjs/quantity-formatting/QuantityTypesEditorSpecs.js.map +1 -0
  111. package/lib/cjs/quantity-formatting/UnitsData.d.ts +11 -0
  112. package/lib/cjs/quantity-formatting/UnitsData.d.ts.map +1 -0
  113. package/lib/cjs/quantity-formatting/UnitsData.js +59 -0
  114. package/lib/cjs/quantity-formatting/UnitsData.js.map +1 -0
  115. package/lib/cjs/render/GraphicBranch.d.ts +2 -0
  116. package/lib/cjs/render/GraphicBranch.d.ts.map +1 -1
  117. package/lib/cjs/render/GraphicBranch.js.map +1 -1
  118. package/lib/cjs/render/ParticleCollectionBuilder.d.ts.map +1 -1
  119. package/lib/cjs/render/ParticleCollectionBuilder.js +16 -9
  120. package/lib/cjs/render/ParticleCollectionBuilder.js.map +1 -1
  121. package/lib/cjs/render/RenderPlanarClassifier.d.ts +1 -1
  122. package/lib/cjs/render/RenderPlanarClassifier.d.ts.map +1 -1
  123. package/lib/cjs/render/RenderPlanarClassifier.js.map +1 -1
  124. package/lib/cjs/render/RenderSystem.d.ts +12 -7
  125. package/lib/cjs/render/RenderSystem.d.ts.map +1 -1
  126. package/lib/cjs/render/RenderSystem.js +27 -22
  127. package/lib/cjs/render/RenderSystem.js.map +1 -1
  128. package/lib/cjs/render/RenderTarget.d.ts +4 -4
  129. package/lib/cjs/render/RenderTarget.d.ts.map +1 -1
  130. package/lib/cjs/render/RenderTarget.js.map +1 -1
  131. package/lib/cjs/render/Scene.d.ts.map +1 -1
  132. package/lib/cjs/render/Scene.js.map +1 -1
  133. package/lib/cjs/render/primitives/EdgeParams.d.ts.map +1 -1
  134. package/lib/cjs/render/primitives/EdgeParams.js +3 -1
  135. package/lib/cjs/render/primitives/EdgeParams.js.map +1 -1
  136. package/lib/cjs/render/primitives/PolylineParams.d.ts.map +1 -1
  137. package/lib/cjs/render/primitives/PolylineParams.js +10 -5
  138. package/lib/cjs/render/primitives/PolylineParams.js.map +1 -1
  139. package/lib/cjs/render/primitives/VertexKey.d.ts +11 -8
  140. package/lib/cjs/render/primitives/VertexKey.d.ts.map +1 -1
  141. package/lib/cjs/render/primitives/VertexKey.js +24 -6
  142. package/lib/cjs/render/primitives/VertexKey.js.map +1 -1
  143. package/lib/cjs/render/primitives/VertexTable.d.ts +15 -2
  144. package/lib/cjs/render/primitives/VertexTable.d.ts.map +1 -1
  145. package/lib/cjs/render/primitives/VertexTable.js +273 -108
  146. package/lib/cjs/render/primitives/VertexTable.js.map +1 -1
  147. package/lib/cjs/render/primitives/geometry/GeometryAccumulator.d.ts.map +1 -1
  148. package/lib/cjs/render/primitives/geometry/GeometryAccumulator.js +22 -10
  149. package/lib/cjs/render/primitives/geometry/GeometryAccumulator.js.map +1 -1
  150. package/lib/cjs/render/primitives/mesh/MeshBuilder.d.ts +4 -6
  151. package/lib/cjs/render/primitives/mesh/MeshBuilder.d.ts.map +1 -1
  152. package/lib/cjs/render/primitives/mesh/MeshBuilder.js +16 -13
  153. package/lib/cjs/render/primitives/mesh/MeshBuilder.js.map +1 -1
  154. package/lib/cjs/render/primitives/mesh/MeshBuilderMap.d.ts.map +1 -1
  155. package/lib/cjs/render/primitives/mesh/MeshBuilderMap.js +12 -1
  156. package/lib/cjs/render/primitives/mesh/MeshBuilderMap.js.map +1 -1
  157. package/lib/cjs/render/primitives/mesh/MeshPrimitives.d.ts +45 -28
  158. package/lib/cjs/render/primitives/mesh/MeshPrimitives.d.ts.map +1 -1
  159. package/lib/cjs/render/primitives/mesh/MeshPrimitives.js +107 -146
  160. package/lib/cjs/render/primitives/mesh/MeshPrimitives.js.map +1 -1
  161. package/lib/cjs/render/primitives/mesh/RealityMeshPrimitive.d.ts +17 -2
  162. package/lib/cjs/render/primitives/mesh/RealityMeshPrimitive.d.ts.map +1 -1
  163. package/lib/cjs/render/primitives/mesh/RealityMeshPrimitive.js +39 -2
  164. package/lib/cjs/render/primitives/mesh/RealityMeshPrimitive.js.map +1 -1
  165. package/lib/cjs/render/webgl/BackgroundMapDrape.js +1 -1
  166. package/lib/cjs/render/webgl/BackgroundMapDrape.js.map +1 -1
  167. package/lib/cjs/render/webgl/BranchState.d.ts +2 -0
  168. package/lib/cjs/render/webgl/BranchState.d.ts.map +1 -1
  169. package/lib/cjs/render/webgl/BranchState.js +5 -3
  170. package/lib/cjs/render/webgl/BranchState.js.map +1 -1
  171. package/lib/cjs/render/webgl/CachedGeometry.d.ts +6 -0
  172. package/lib/cjs/render/webgl/CachedGeometry.d.ts.map +1 -1
  173. package/lib/cjs/render/webgl/CachedGeometry.js +6 -0
  174. package/lib/cjs/render/webgl/CachedGeometry.js.map +1 -1
  175. package/lib/cjs/render/webgl/DrawCommand.js +1 -1
  176. package/lib/cjs/render/webgl/DrawCommand.js.map +1 -1
  177. package/lib/cjs/render/webgl/Graphic.d.ts +5 -3
  178. package/lib/cjs/render/webgl/Graphic.d.ts.map +1 -1
  179. package/lib/cjs/render/webgl/Graphic.js +7 -2
  180. package/lib/cjs/render/webgl/Graphic.js.map +1 -1
  181. package/lib/cjs/render/webgl/PlanarClassifier.d.ts +4 -1
  182. package/lib/cjs/render/webgl/PlanarClassifier.d.ts.map +1 -1
  183. package/lib/cjs/render/webgl/PlanarClassifier.js +22 -9
  184. package/lib/cjs/render/webgl/PlanarClassifier.js.map +1 -1
  185. package/lib/cjs/render/webgl/PlanarTextureProjection.d.ts +2 -2
  186. package/lib/cjs/render/webgl/PlanarTextureProjection.d.ts.map +1 -1
  187. package/lib/cjs/render/webgl/PlanarTextureProjection.js +5 -3
  188. package/lib/cjs/render/webgl/PlanarTextureProjection.js.map +1 -1
  189. package/lib/cjs/render/webgl/RealityMesh.d.ts +32 -11
  190. package/lib/cjs/render/webgl/RealityMesh.d.ts.map +1 -1
  191. package/lib/cjs/render/webgl/RealityMesh.js +156 -52
  192. package/lib/cjs/render/webgl/RealityMesh.js.map +1 -1
  193. package/lib/cjs/render/webgl/RenderCommands.d.ts.map +1 -1
  194. package/lib/cjs/render/webgl/RenderCommands.js +4 -0
  195. package/lib/cjs/render/webgl/RenderCommands.js.map +1 -1
  196. package/lib/cjs/render/webgl/SceneCompositor.d.ts +3 -0
  197. package/lib/cjs/render/webgl/SceneCompositor.d.ts.map +1 -1
  198. package/lib/cjs/render/webgl/SceneCompositor.js +45 -19
  199. package/lib/cjs/render/webgl/SceneCompositor.js.map +1 -1
  200. package/lib/cjs/render/webgl/ShaderBuilder.d.ts +8 -7
  201. package/lib/cjs/render/webgl/ShaderBuilder.d.ts.map +1 -1
  202. package/lib/cjs/render/webgl/ShaderBuilder.js +12 -5
  203. package/lib/cjs/render/webgl/ShaderBuilder.js.map +1 -1
  204. package/lib/cjs/render/webgl/ShaderProgram.d.ts +1 -0
  205. package/lib/cjs/render/webgl/ShaderProgram.d.ts.map +1 -1
  206. package/lib/cjs/render/webgl/ShaderProgram.js +1 -0
  207. package/lib/cjs/render/webgl/ShaderProgram.js.map +1 -1
  208. package/lib/cjs/render/webgl/System.d.ts +9 -9
  209. package/lib/cjs/render/webgl/System.d.ts.map +1 -1
  210. package/lib/cjs/render/webgl/System.js +5 -5
  211. package/lib/cjs/render/webgl/System.js.map +1 -1
  212. package/lib/cjs/render/webgl/Target.d.ts.map +1 -1
  213. package/lib/cjs/render/webgl/Target.js.map +1 -1
  214. package/lib/cjs/render/webgl/VertexLUT.d.ts +2 -1
  215. package/lib/cjs/render/webgl/VertexLUT.d.ts.map +1 -1
  216. package/lib/cjs/render/webgl/VertexLUT.js +4 -3
  217. package/lib/cjs/render/webgl/VertexLUT.js.map +1 -1
  218. package/lib/cjs/render/webgl/glsl/Color.js +1 -1
  219. package/lib/cjs/render/webgl/glsl/Color.js.map +1 -1
  220. package/lib/cjs/render/webgl/glsl/Decode.d.ts +6 -0
  221. package/lib/cjs/render/webgl/glsl/Decode.d.ts.map +1 -1
  222. package/lib/cjs/render/webgl/glsl/Decode.js +18 -1
  223. package/lib/cjs/render/webgl/glsl/Decode.js.map +1 -1
  224. package/lib/cjs/render/webgl/glsl/Edge.d.ts.map +1 -1
  225. package/lib/cjs/render/webgl/glsl/Edge.js +15 -6
  226. package/lib/cjs/render/webgl/glsl/Edge.js.map +1 -1
  227. package/lib/cjs/render/webgl/glsl/PlanarClassification.js +1 -1
  228. package/lib/cjs/render/webgl/glsl/PlanarClassification.js.map +1 -1
  229. package/lib/cjs/render/webgl/glsl/PointString.d.ts.map +1 -1
  230. package/lib/cjs/render/webgl/glsl/PointString.js +1 -1
  231. package/lib/cjs/render/webgl/glsl/PointString.js.map +1 -1
  232. package/lib/cjs/render/webgl/glsl/Polyline.d.ts +2 -2
  233. package/lib/cjs/render/webgl/glsl/Polyline.d.ts.map +1 -1
  234. package/lib/cjs/render/webgl/glsl/Polyline.js +24 -9
  235. package/lib/cjs/render/webgl/glsl/Polyline.js.map +1 -1
  236. package/lib/cjs/render/webgl/glsl/RealityMesh.d.ts.map +1 -1
  237. package/lib/cjs/render/webgl/glsl/RealityMesh.js +102 -29
  238. package/lib/cjs/render/webgl/glsl/RealityMesh.js.map +1 -1
  239. package/lib/cjs/render/webgl/glsl/Surface.d.ts.map +1 -1
  240. package/lib/cjs/render/webgl/glsl/Surface.js +18 -19
  241. package/lib/cjs/render/webgl/glsl/Surface.js.map +1 -1
  242. package/lib/cjs/render/webgl/glsl/Thematic.d.ts.map +1 -1
  243. package/lib/cjs/render/webgl/glsl/Thematic.js +1 -6
  244. package/lib/cjs/render/webgl/glsl/Thematic.js.map +1 -1
  245. package/lib/cjs/render/webgl/glsl/Vertex.d.ts.map +1 -1
  246. package/lib/cjs/render/webgl/glsl/Vertex.js +31 -14
  247. package/lib/cjs/render/webgl/glsl/Vertex.js.map +1 -1
  248. package/lib/cjs/tile/ClassifierTileTree.d.ts +4 -2
  249. package/lib/cjs/tile/ClassifierTileTree.d.ts.map +1 -1
  250. package/lib/cjs/tile/ClassifierTileTree.js +31 -16
  251. package/lib/cjs/tile/ClassifierTileTree.js.map +1 -1
  252. package/lib/cjs/tile/GltfReader.d.ts +22 -3
  253. package/lib/cjs/tile/GltfReader.d.ts.map +1 -1
  254. package/lib/cjs/tile/GltfReader.js +231 -45
  255. package/lib/cjs/tile/GltfReader.js.map +1 -1
  256. package/lib/cjs/tile/OPCFormatInterpreter.d.ts +22 -0
  257. package/lib/cjs/tile/OPCFormatInterpreter.d.ts.map +1 -0
  258. package/lib/cjs/tile/OPCFormatInterpreter.js +92 -0
  259. package/lib/cjs/tile/OPCFormatInterpreter.js.map +1 -0
  260. package/lib/cjs/tile/PntsReader.d.ts +1 -1
  261. package/lib/cjs/tile/PntsReader.d.ts.map +1 -1
  262. package/lib/cjs/tile/PntsReader.js +170 -36
  263. package/lib/cjs/tile/PntsReader.js.map +1 -1
  264. package/lib/cjs/tile/PrimaryTileTree.d.ts +18 -2
  265. package/lib/cjs/tile/PrimaryTileTree.d.ts.map +1 -1
  266. package/lib/cjs/tile/PrimaryTileTree.js +53 -2
  267. package/lib/cjs/tile/PrimaryTileTree.js.map +1 -1
  268. package/lib/cjs/tile/RealityModelTileTree.d.ts +24 -3
  269. package/lib/cjs/tile/RealityModelTileTree.d.ts.map +1 -1
  270. package/lib/cjs/tile/RealityModelTileTree.js +36 -11
  271. package/lib/cjs/tile/RealityModelTileTree.js.map +1 -1
  272. package/lib/cjs/tile/RealityTile.d.ts +16 -2
  273. package/lib/cjs/tile/RealityTile.d.ts.map +1 -1
  274. package/lib/cjs/tile/RealityTile.js +32 -0
  275. package/lib/cjs/tile/RealityTile.js.map +1 -1
  276. package/lib/cjs/tile/RealityTileDrawArgs.d.ts +4 -1
  277. package/lib/cjs/tile/RealityTileDrawArgs.d.ts.map +1 -1
  278. package/lib/cjs/tile/RealityTileDrawArgs.js +3 -1
  279. package/lib/cjs/tile/RealityTileDrawArgs.js.map +1 -1
  280. package/lib/cjs/tile/RealityTileLoader.d.ts +7 -4
  281. package/lib/cjs/tile/RealityTileLoader.d.ts.map +1 -1
  282. package/lib/cjs/tile/RealityTileLoader.js +19 -5
  283. package/lib/cjs/tile/RealityTileLoader.js.map +1 -1
  284. package/lib/cjs/tile/RealityTileTree.d.ts +4 -1
  285. package/lib/cjs/tile/RealityTileTree.d.ts.map +1 -1
  286. package/lib/cjs/tile/RealityTileTree.js +11 -3
  287. package/lib/cjs/tile/RealityTileTree.js.map +1 -1
  288. package/lib/cjs/tile/ThreeDTileFormatInterpreter.d.ts +52 -0
  289. package/lib/cjs/tile/ThreeDTileFormatInterpreter.d.ts.map +1 -0
  290. package/lib/cjs/tile/ThreeDTileFormatInterpreter.js +179 -0
  291. package/lib/cjs/tile/ThreeDTileFormatInterpreter.js.map +1 -0
  292. package/lib/cjs/tile/TileDrawArgs.d.ts +2 -0
  293. package/lib/cjs/tile/TileDrawArgs.d.ts.map +1 -1
  294. package/lib/cjs/tile/TileDrawArgs.js +5 -0
  295. package/lib/cjs/tile/TileDrawArgs.js.map +1 -1
  296. package/lib/cjs/tile/TileGeometryCollector.d.ts +80 -0
  297. package/lib/cjs/tile/TileGeometryCollector.d.ts.map +1 -0
  298. package/lib/cjs/tile/TileGeometryCollector.js +71 -0
  299. package/lib/cjs/tile/TileGeometryCollector.js.map +1 -0
  300. package/lib/cjs/tile/TileTree.d.ts +7 -1
  301. package/lib/cjs/tile/TileTree.d.ts.map +1 -1
  302. package/lib/cjs/tile/TileTree.js +7 -0
  303. package/lib/cjs/tile/TileTree.js.map +1 -1
  304. package/lib/cjs/tile/TileTreeReference.d.ts +26 -1
  305. package/lib/cjs/tile/TileTreeReference.d.ts.map +1 -1
  306. package/lib/cjs/tile/TileTreeReference.js +40 -0
  307. package/lib/cjs/tile/TileTreeReference.js.map +1 -1
  308. package/lib/cjs/tile/internal.d.ts +4 -0
  309. package/lib/cjs/tile/internal.d.ts.map +1 -1
  310. package/lib/cjs/tile/internal.js +4 -0
  311. package/lib/cjs/tile/internal.js.map +1 -1
  312. package/lib/cjs/tile/map/ArcGisUtilities.d.ts.map +1 -1
  313. package/lib/cjs/tile/map/ArcGisUtilities.js +13 -0
  314. package/lib/cjs/tile/map/ArcGisUtilities.js.map +1 -1
  315. package/lib/cjs/tile/map/BingElevation.d.ts +2 -16
  316. package/lib/cjs/tile/map/BingElevation.d.ts.map +1 -1
  317. package/lib/cjs/tile/map/BingElevation.js +1 -63
  318. package/lib/cjs/tile/map/BingElevation.js.map +1 -1
  319. package/lib/cjs/tile/map/CesiumTerrainProvider.js +2 -2
  320. package/lib/cjs/tile/map/CesiumTerrainProvider.js.map +1 -1
  321. package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts +5 -3
  322. package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts.map +1 -1
  323. package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js +45 -12
  324. package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js.map +1 -1
  325. package/lib/cjs/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.d.ts +2 -2
  326. package/lib/cjs/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.d.ts.map +1 -1
  327. package/lib/cjs/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.js.map +1 -1
  328. package/lib/cjs/tile/map/ImageryProviders/BingImageryProvider.d.ts +2 -2
  329. package/lib/cjs/tile/map/ImageryProviders/BingImageryProvider.d.ts.map +1 -1
  330. package/lib/cjs/tile/map/ImageryProviders/BingImageryProvider.js.map +1 -1
  331. package/lib/cjs/tile/map/ImageryProviders/MapBoxLayerImageryProvider.d.ts +2 -2
  332. package/lib/cjs/tile/map/ImageryProviders/MapBoxLayerImageryProvider.d.ts.map +1 -1
  333. package/lib/cjs/tile/map/ImageryProviders/MapBoxLayerImageryProvider.js +4 -3
  334. package/lib/cjs/tile/map/ImageryProviders/MapBoxLayerImageryProvider.js.map +1 -1
  335. package/lib/cjs/tile/map/ImageryProviders/TileUrlImageryProvider.d.ts +2 -2
  336. package/lib/cjs/tile/map/ImageryProviders/TileUrlImageryProvider.d.ts.map +1 -1
  337. package/lib/cjs/tile/map/ImageryProviders/TileUrlImageryProvider.js.map +1 -1
  338. package/lib/cjs/tile/map/ImageryProviders/WmsMapLayerImageryProvider.d.ts +2 -2
  339. package/lib/cjs/tile/map/ImageryProviders/WmsMapLayerImageryProvider.d.ts.map +1 -1
  340. package/lib/cjs/tile/map/ImageryProviders/WmsMapLayerImageryProvider.js +1 -1
  341. package/lib/cjs/tile/map/ImageryProviders/WmsMapLayerImageryProvider.js.map +1 -1
  342. package/lib/cjs/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.d.ts +2 -2
  343. package/lib/cjs/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.d.ts.map +1 -1
  344. package/lib/cjs/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.js.map +1 -1
  345. package/lib/cjs/tile/map/ImageryTileTree.d.ts +2 -3
  346. package/lib/cjs/tile/map/ImageryTileTree.d.ts.map +1 -1
  347. package/lib/cjs/tile/map/ImageryTileTree.js +4 -3
  348. package/lib/cjs/tile/map/ImageryTileTree.js.map +1 -1
  349. package/lib/cjs/tile/map/MapFeatureInfo.d.ts +26 -0
  350. package/lib/cjs/tile/map/MapFeatureInfo.d.ts.map +1 -0
  351. package/lib/cjs/tile/map/MapFeatureInfo.js +19 -0
  352. package/lib/cjs/tile/map/MapFeatureInfo.js.map +1 -0
  353. package/lib/cjs/tile/map/MapLayerFormatRegistry.d.ts +4 -4
  354. package/lib/cjs/tile/map/MapLayerFormatRegistry.d.ts.map +1 -1
  355. package/lib/cjs/tile/map/MapLayerFormatRegistry.js.map +1 -1
  356. package/lib/cjs/tile/map/MapLayerImageryFormats.d.ts +3 -3
  357. package/lib/cjs/tile/map/MapLayerImageryFormats.d.ts.map +1 -1
  358. package/lib/cjs/tile/map/MapLayerImageryFormats.js.map +1 -1
  359. package/lib/cjs/tile/map/MapLayerImageryProvider.d.ts +5 -4
  360. package/lib/cjs/tile/map/MapLayerImageryProvider.d.ts.map +1 -1
  361. package/lib/cjs/tile/map/MapLayerImageryProvider.js +5 -1
  362. package/lib/cjs/tile/map/MapLayerImageryProvider.js.map +1 -1
  363. package/lib/cjs/tile/map/MapLayerSources.d.ts +2 -2
  364. package/lib/cjs/tile/map/MapLayerSources.d.ts.map +1 -1
  365. package/lib/cjs/tile/map/MapLayerSources.js +6 -4
  366. package/lib/cjs/tile/map/MapLayerSources.js.map +1 -1
  367. package/lib/cjs/tile/map/MapLayerTileTreeReference.d.ts +10 -2
  368. package/lib/cjs/tile/map/MapLayerTileTreeReference.d.ts.map +1 -1
  369. package/lib/cjs/tile/map/MapLayerTileTreeReference.js +26 -3
  370. package/lib/cjs/tile/map/MapLayerTileTreeReference.js.map +1 -1
  371. package/lib/cjs/tile/map/MapTile.d.ts +12 -10
  372. package/lib/cjs/tile/map/MapTile.d.ts.map +1 -1
  373. package/lib/cjs/tile/map/MapTile.js +60 -39
  374. package/lib/cjs/tile/map/MapTile.js.map +1 -1
  375. package/lib/cjs/tile/map/MapTileLoader.d.ts +2 -1
  376. package/lib/cjs/tile/map/MapTileLoader.d.ts.map +1 -1
  377. package/lib/cjs/tile/map/MapTileLoader.js +4 -1
  378. package/lib/cjs/tile/map/MapTileLoader.js.map +1 -1
  379. package/lib/cjs/tile/map/MapTileTree.d.ts +18 -8
  380. package/lib/cjs/tile/map/MapTileTree.d.ts.map +1 -1
  381. package/lib/cjs/tile/map/MapTileTree.js +148 -61
  382. package/lib/cjs/tile/map/MapTileTree.js.map +1 -1
  383. package/lib/cjs/tile/map/MapTiledGraphicsProvider.d.ts.map +1 -1
  384. package/lib/cjs/tile/map/MapTiledGraphicsProvider.js +1 -1
  385. package/lib/cjs/tile/map/MapTiledGraphicsProvider.js.map +1 -1
  386. package/lib/cjs/tools/ToolAdmin.d.ts +6 -8
  387. package/lib/cjs/tools/ToolAdmin.d.ts.map +1 -1
  388. package/lib/cjs/tools/ToolAdmin.js +8 -15
  389. package/lib/cjs/tools/ToolAdmin.js.map +1 -1
  390. package/lib/cjs/tools/ViewTool.d.ts +4 -4
  391. package/lib/cjs/tools/ViewTool.d.ts.map +1 -1
  392. package/lib/cjs/tools/ViewTool.js +1 -1
  393. package/lib/cjs/tools/ViewTool.js.map +1 -1
  394. package/lib/esm/AccuSnap.js +2 -2
  395. package/lib/esm/AccuSnap.js.map +1 -1
  396. package/lib/esm/ApproximateTerrainHeights.d.ts +1 -1
  397. package/lib/esm/ApproximateTerrainHeights.d.ts.map +1 -1
  398. package/lib/esm/ApproximateTerrainHeights.js +2 -9
  399. package/lib/esm/ApproximateTerrainHeights.js.map +1 -1
  400. package/lib/esm/ApproximateTerrainHeightsProps.d.ts +12 -0
  401. package/lib/esm/ApproximateTerrainHeightsProps.d.ts.map +1 -0
  402. package/lib/esm/ApproximateTerrainHeightsProps.js +10 -0
  403. package/lib/esm/ApproximateTerrainHeightsProps.js.map +1 -0
  404. package/lib/esm/CategorySelectorState.js +1 -1
  405. package/lib/esm/CategorySelectorState.js.map +1 -1
  406. package/lib/esm/DisplayStyleState.d.ts +4 -3
  407. package/lib/esm/DisplayStyleState.d.ts.map +1 -1
  408. package/lib/esm/DisplayStyleState.js +40 -14
  409. package/lib/esm/DisplayStyleState.js.map +1 -1
  410. package/lib/esm/DrawingViewState.d.ts.map +1 -1
  411. package/lib/esm/DrawingViewState.js +6 -5
  412. package/lib/esm/DrawingViewState.js.map +1 -1
  413. package/lib/esm/FrontendLoggerCategory.d.ts +3 -1
  414. package/lib/esm/FrontendLoggerCategory.d.ts.map +1 -1
  415. package/lib/esm/FrontendLoggerCategory.js +2 -0
  416. package/lib/esm/FrontendLoggerCategory.js.map +1 -1
  417. package/lib/esm/HitDetail.js.map +1 -1
  418. package/lib/esm/IModelApp.d.ts +10 -4
  419. package/lib/esm/IModelApp.d.ts.map +1 -1
  420. package/lib/esm/IModelApp.js +25 -12
  421. package/lib/esm/IModelApp.js.map +1 -1
  422. package/lib/esm/IModelConnection.d.ts +3 -2
  423. package/lib/esm/IModelConnection.d.ts.map +1 -1
  424. package/lib/esm/IModelConnection.js +7 -5
  425. package/lib/esm/IModelConnection.js.map +1 -1
  426. package/lib/esm/ImageUtil.d.ts.map +1 -1
  427. package/lib/esm/ImageUtil.js +8 -14
  428. package/lib/esm/ImageUtil.js.map +1 -1
  429. package/lib/esm/LocalhostIpcApp.d.ts +2 -0
  430. package/lib/esm/LocalhostIpcApp.d.ts.map +1 -1
  431. package/lib/esm/LocalhostIpcApp.js +10 -4
  432. package/lib/esm/LocalhostIpcApp.js.map +1 -1
  433. package/lib/esm/RealityDataSource.d.ts +60 -14
  434. package/lib/esm/RealityDataSource.d.ts.map +1 -1
  435. package/lib/esm/RealityDataSource.js +37 -237
  436. package/lib/esm/RealityDataSource.js.map +1 -1
  437. package/lib/esm/RealityDataSourceCesiumIonAssetImpl.d.ts +67 -0
  438. package/lib/esm/RealityDataSourceCesiumIonAssetImpl.d.ts.map +1 -0
  439. package/lib/esm/RealityDataSourceCesiumIonAssetImpl.js +162 -0
  440. package/lib/esm/RealityDataSourceCesiumIonAssetImpl.js.map +1 -0
  441. package/lib/esm/RealityDataSourceContextShareImpl.d.ts +83 -0
  442. package/lib/esm/RealityDataSourceContextShareImpl.d.ts.map +1 -0
  443. package/lib/esm/RealityDataSourceContextShareImpl.js +230 -0
  444. package/lib/esm/RealityDataSourceContextShareImpl.js.map +1 -0
  445. package/lib/esm/RealityDataSourceTilesetUrlImpl.d.ts +65 -0
  446. package/lib/esm/RealityDataSourceTilesetUrlImpl.d.ts.map +1 -0
  447. package/lib/esm/RealityDataSourceTilesetUrlImpl.js +131 -0
  448. package/lib/esm/RealityDataSourceTilesetUrlImpl.js.map +1 -0
  449. package/lib/esm/SheetViewState.js +4 -0
  450. package/lib/esm/SheetViewState.js.map +1 -1
  451. package/lib/esm/ViewState.d.ts +8 -0
  452. package/lib/esm/ViewState.d.ts.map +1 -1
  453. package/lib/esm/ViewState.js +1 -1
  454. package/lib/esm/ViewState.js.map +1 -1
  455. package/lib/esm/Viewport.d.ts +30 -12
  456. package/lib/esm/Viewport.d.ts.map +1 -1
  457. package/lib/esm/Viewport.js +43 -1
  458. package/lib/esm/Viewport.js.map +1 -1
  459. package/lib/esm/core-frontend.d.ts +6 -4
  460. package/lib/esm/core-frontend.d.ts.map +1 -1
  461. package/lib/esm/core-frontend.js +6 -4
  462. package/lib/esm/core-frontend.js.map +1 -1
  463. package/lib/esm/extension/Extension.d.ts +48 -0
  464. package/lib/esm/extension/Extension.d.ts.map +1 -0
  465. package/lib/esm/extension/Extension.js +15 -0
  466. package/lib/esm/extension/Extension.js.map +1 -0
  467. package/lib/esm/extension/ExtensionAdmin.d.ts +64 -0
  468. package/lib/esm/extension/ExtensionAdmin.d.ts.map +1 -0
  469. package/lib/esm/extension/ExtensionAdmin.js +102 -0
  470. package/lib/esm/extension/ExtensionAdmin.js.map +1 -0
  471. package/lib/esm/extension/ExtensionHost.d.ts +23 -0
  472. package/lib/esm/extension/ExtensionHost.d.ts.map +1 -0
  473. package/lib/esm/extension/ExtensionHost.js +22 -0
  474. package/lib/esm/extension/ExtensionHost.js.map +1 -0
  475. package/lib/esm/extension/ExtensionImpl.d.ts +21 -0
  476. package/lib/esm/extension/ExtensionImpl.d.ts.map +1 -0
  477. package/lib/esm/extension/ExtensionImpl.js +40 -0
  478. package/lib/esm/extension/ExtensionImpl.js.map +1 -0
  479. package/lib/esm/extension/ExtensionLoader.d.ts +26 -0
  480. package/lib/esm/extension/ExtensionLoader.d.ts.map +1 -0
  481. package/lib/esm/extension/ExtensionLoader.js +9 -0
  482. package/lib/esm/extension/ExtensionLoader.js.map +1 -0
  483. package/lib/esm/extension/ExtensionRuntime.d.ts +5 -0
  484. package/lib/esm/extension/ExtensionRuntime.d.ts.map +1 -0
  485. package/lib/esm/extension/ExtensionRuntime.js +84 -0
  486. package/lib/esm/extension/ExtensionRuntime.js.map +1 -0
  487. package/lib/esm/extension/extensions.d.ts +19 -0
  488. package/lib/esm/extension/extensions.d.ts.map +1 -0
  489. package/lib/esm/extension/extensions.js +24 -0
  490. package/lib/esm/extension/extensions.js.map +1 -0
  491. package/lib/esm/quantity-formatting/BasicUnitsProvider.d.ts +2 -2
  492. package/lib/esm/quantity-formatting/BasicUnitsProvider.d.ts.map +1 -1
  493. package/lib/esm/quantity-formatting/BasicUnitsProvider.js +48 -44
  494. package/lib/esm/quantity-formatting/BasicUnitsProvider.js.map +1 -1
  495. package/lib/esm/quantity-formatting/QuantityFormatter.d.ts +90 -80
  496. package/lib/esm/quantity-formatting/QuantityFormatter.d.ts.map +1 -1
  497. package/lib/esm/quantity-formatting/QuantityFormatter.js +85 -42
  498. package/lib/esm/quantity-formatting/QuantityFormatter.js.map +1 -1
  499. package/lib/esm/quantity-formatting/QuantityTypesEditorSpecs.d.ts +54 -0
  500. package/lib/esm/quantity-formatting/QuantityTypesEditorSpecs.d.ts.map +1 -0
  501. package/lib/esm/quantity-formatting/QuantityTypesEditorSpecs.js +26 -0
  502. package/lib/esm/quantity-formatting/QuantityTypesEditorSpecs.js.map +1 -0
  503. package/lib/esm/quantity-formatting/UnitsData.d.ts +11 -0
  504. package/lib/esm/quantity-formatting/UnitsData.d.ts.map +1 -0
  505. package/lib/esm/quantity-formatting/UnitsData.js +56 -0
  506. package/lib/esm/quantity-formatting/UnitsData.js.map +1 -0
  507. package/lib/esm/render/GraphicBranch.d.ts +2 -0
  508. package/lib/esm/render/GraphicBranch.d.ts.map +1 -1
  509. package/lib/esm/render/GraphicBranch.js.map +1 -1
  510. package/lib/esm/render/ParticleCollectionBuilder.d.ts.map +1 -1
  511. package/lib/esm/render/ParticleCollectionBuilder.js +17 -10
  512. package/lib/esm/render/ParticleCollectionBuilder.js.map +1 -1
  513. package/lib/esm/render/RenderPlanarClassifier.d.ts +1 -1
  514. package/lib/esm/render/RenderPlanarClassifier.d.ts.map +1 -1
  515. package/lib/esm/render/RenderPlanarClassifier.js.map +1 -1
  516. package/lib/esm/render/RenderSystem.d.ts +12 -7
  517. package/lib/esm/render/RenderSystem.d.ts.map +1 -1
  518. package/lib/esm/render/RenderSystem.js +25 -20
  519. package/lib/esm/render/RenderSystem.js.map +1 -1
  520. package/lib/esm/render/RenderTarget.d.ts +4 -4
  521. package/lib/esm/render/RenderTarget.d.ts.map +1 -1
  522. package/lib/esm/render/RenderTarget.js.map +1 -1
  523. package/lib/esm/render/Scene.d.ts.map +1 -1
  524. package/lib/esm/render/Scene.js.map +1 -1
  525. package/lib/esm/render/primitives/EdgeParams.d.ts.map +1 -1
  526. package/lib/esm/render/primitives/EdgeParams.js +3 -1
  527. package/lib/esm/render/primitives/EdgeParams.js.map +1 -1
  528. package/lib/esm/render/primitives/PolylineParams.d.ts.map +1 -1
  529. package/lib/esm/render/primitives/PolylineParams.js +11 -6
  530. package/lib/esm/render/primitives/PolylineParams.js.map +1 -1
  531. package/lib/esm/render/primitives/VertexKey.d.ts +11 -8
  532. package/lib/esm/render/primitives/VertexKey.d.ts.map +1 -1
  533. package/lib/esm/render/primitives/VertexKey.js +24 -6
  534. package/lib/esm/render/primitives/VertexKey.js.map +1 -1
  535. package/lib/esm/render/primitives/VertexTable.d.ts +15 -2
  536. package/lib/esm/render/primitives/VertexTable.d.ts.map +1 -1
  537. package/lib/esm/render/primitives/VertexTable.js +274 -109
  538. package/lib/esm/render/primitives/VertexTable.js.map +1 -1
  539. package/lib/esm/render/primitives/geometry/GeometryAccumulator.d.ts.map +1 -1
  540. package/lib/esm/render/primitives/geometry/GeometryAccumulator.js +23 -11
  541. package/lib/esm/render/primitives/geometry/GeometryAccumulator.js.map +1 -1
  542. package/lib/esm/render/primitives/mesh/MeshBuilder.d.ts +4 -6
  543. package/lib/esm/render/primitives/mesh/MeshBuilder.d.ts.map +1 -1
  544. package/lib/esm/render/primitives/mesh/MeshBuilder.js +17 -14
  545. package/lib/esm/render/primitives/mesh/MeshBuilder.js.map +1 -1
  546. package/lib/esm/render/primitives/mesh/MeshBuilderMap.d.ts.map +1 -1
  547. package/lib/esm/render/primitives/mesh/MeshBuilderMap.js +12 -1
  548. package/lib/esm/render/primitives/mesh/MeshBuilderMap.js.map +1 -1
  549. package/lib/esm/render/primitives/mesh/MeshPrimitives.d.ts +45 -28
  550. package/lib/esm/render/primitives/mesh/MeshPrimitives.d.ts.map +1 -1
  551. package/lib/esm/render/primitives/mesh/MeshPrimitives.js +108 -144
  552. package/lib/esm/render/primitives/mesh/MeshPrimitives.js.map +1 -1
  553. package/lib/esm/render/primitives/mesh/RealityMeshPrimitive.d.ts +17 -2
  554. package/lib/esm/render/primitives/mesh/RealityMeshPrimitive.d.ts.map +1 -1
  555. package/lib/esm/render/primitives/mesh/RealityMeshPrimitive.js +39 -2
  556. package/lib/esm/render/primitives/mesh/RealityMeshPrimitive.js.map +1 -1
  557. package/lib/esm/render/webgl/BackgroundMapDrape.js +1 -1
  558. package/lib/esm/render/webgl/BackgroundMapDrape.js.map +1 -1
  559. package/lib/esm/render/webgl/BranchState.d.ts +2 -0
  560. package/lib/esm/render/webgl/BranchState.d.ts.map +1 -1
  561. package/lib/esm/render/webgl/BranchState.js +5 -3
  562. package/lib/esm/render/webgl/BranchState.js.map +1 -1
  563. package/lib/esm/render/webgl/CachedGeometry.d.ts +6 -0
  564. package/lib/esm/render/webgl/CachedGeometry.d.ts.map +1 -1
  565. package/lib/esm/render/webgl/CachedGeometry.js +6 -0
  566. package/lib/esm/render/webgl/CachedGeometry.js.map +1 -1
  567. package/lib/esm/render/webgl/DrawCommand.js +1 -1
  568. package/lib/esm/render/webgl/DrawCommand.js.map +1 -1
  569. package/lib/esm/render/webgl/Graphic.d.ts +5 -3
  570. package/lib/esm/render/webgl/Graphic.d.ts.map +1 -1
  571. package/lib/esm/render/webgl/Graphic.js +7 -2
  572. package/lib/esm/render/webgl/Graphic.js.map +1 -1
  573. package/lib/esm/render/webgl/PlanarClassifier.d.ts +4 -1
  574. package/lib/esm/render/webgl/PlanarClassifier.d.ts.map +1 -1
  575. package/lib/esm/render/webgl/PlanarClassifier.js +22 -9
  576. package/lib/esm/render/webgl/PlanarClassifier.js.map +1 -1
  577. package/lib/esm/render/webgl/PlanarTextureProjection.d.ts +2 -2
  578. package/lib/esm/render/webgl/PlanarTextureProjection.d.ts.map +1 -1
  579. package/lib/esm/render/webgl/PlanarTextureProjection.js +5 -3
  580. package/lib/esm/render/webgl/PlanarTextureProjection.js.map +1 -1
  581. package/lib/esm/render/webgl/RealityMesh.d.ts +32 -11
  582. package/lib/esm/render/webgl/RealityMesh.d.ts.map +1 -1
  583. package/lib/esm/render/webgl/RealityMesh.js +156 -52
  584. package/lib/esm/render/webgl/RealityMesh.js.map +1 -1
  585. package/lib/esm/render/webgl/RenderCommands.d.ts.map +1 -1
  586. package/lib/esm/render/webgl/RenderCommands.js +4 -0
  587. package/lib/esm/render/webgl/RenderCommands.js.map +1 -1
  588. package/lib/esm/render/webgl/SceneCompositor.d.ts +3 -0
  589. package/lib/esm/render/webgl/SceneCompositor.d.ts.map +1 -1
  590. package/lib/esm/render/webgl/SceneCompositor.js +45 -19
  591. package/lib/esm/render/webgl/SceneCompositor.js.map +1 -1
  592. package/lib/esm/render/webgl/ShaderBuilder.d.ts +8 -7
  593. package/lib/esm/render/webgl/ShaderBuilder.d.ts.map +1 -1
  594. package/lib/esm/render/webgl/ShaderBuilder.js +12 -5
  595. package/lib/esm/render/webgl/ShaderBuilder.js.map +1 -1
  596. package/lib/esm/render/webgl/ShaderProgram.d.ts +1 -0
  597. package/lib/esm/render/webgl/ShaderProgram.d.ts.map +1 -1
  598. package/lib/esm/render/webgl/ShaderProgram.js +1 -0
  599. package/lib/esm/render/webgl/ShaderProgram.js.map +1 -1
  600. package/lib/esm/render/webgl/System.d.ts +9 -9
  601. package/lib/esm/render/webgl/System.d.ts.map +1 -1
  602. package/lib/esm/render/webgl/System.js +6 -6
  603. package/lib/esm/render/webgl/System.js.map +1 -1
  604. package/lib/esm/render/webgl/Target.d.ts.map +1 -1
  605. package/lib/esm/render/webgl/Target.js.map +1 -1
  606. package/lib/esm/render/webgl/VertexLUT.d.ts +2 -1
  607. package/lib/esm/render/webgl/VertexLUT.d.ts.map +1 -1
  608. package/lib/esm/render/webgl/VertexLUT.js +4 -3
  609. package/lib/esm/render/webgl/VertexLUT.js.map +1 -1
  610. package/lib/esm/render/webgl/glsl/Color.js +1 -1
  611. package/lib/esm/render/webgl/glsl/Color.js.map +1 -1
  612. package/lib/esm/render/webgl/glsl/Decode.d.ts +6 -0
  613. package/lib/esm/render/webgl/glsl/Decode.d.ts.map +1 -1
  614. package/lib/esm/render/webgl/glsl/Decode.js +17 -0
  615. package/lib/esm/render/webgl/glsl/Decode.js.map +1 -1
  616. package/lib/esm/render/webgl/glsl/Edge.d.ts.map +1 -1
  617. package/lib/esm/render/webgl/glsl/Edge.js +15 -6
  618. package/lib/esm/render/webgl/glsl/Edge.js.map +1 -1
  619. package/lib/esm/render/webgl/glsl/PlanarClassification.js +1 -1
  620. package/lib/esm/render/webgl/glsl/PlanarClassification.js.map +1 -1
  621. package/lib/esm/render/webgl/glsl/PointString.d.ts.map +1 -1
  622. package/lib/esm/render/webgl/glsl/PointString.js +1 -1
  623. package/lib/esm/render/webgl/glsl/PointString.js.map +1 -1
  624. package/lib/esm/render/webgl/glsl/Polyline.d.ts +2 -2
  625. package/lib/esm/render/webgl/glsl/Polyline.d.ts.map +1 -1
  626. package/lib/esm/render/webgl/glsl/Polyline.js +24 -9
  627. package/lib/esm/render/webgl/glsl/Polyline.js.map +1 -1
  628. package/lib/esm/render/webgl/glsl/RealityMesh.d.ts.map +1 -1
  629. package/lib/esm/render/webgl/glsl/RealityMesh.js +103 -30
  630. package/lib/esm/render/webgl/glsl/RealityMesh.js.map +1 -1
  631. package/lib/esm/render/webgl/glsl/Surface.d.ts.map +1 -1
  632. package/lib/esm/render/webgl/glsl/Surface.js +18 -19
  633. package/lib/esm/render/webgl/glsl/Surface.js.map +1 -1
  634. package/lib/esm/render/webgl/glsl/Thematic.d.ts.map +1 -1
  635. package/lib/esm/render/webgl/glsl/Thematic.js +1 -6
  636. package/lib/esm/render/webgl/glsl/Thematic.js.map +1 -1
  637. package/lib/esm/render/webgl/glsl/Vertex.d.ts.map +1 -1
  638. package/lib/esm/render/webgl/glsl/Vertex.js +32 -15
  639. package/lib/esm/render/webgl/glsl/Vertex.js.map +1 -1
  640. package/lib/esm/tile/ClassifierTileTree.d.ts +4 -2
  641. package/lib/esm/tile/ClassifierTileTree.d.ts.map +1 -1
  642. package/lib/esm/tile/ClassifierTileTree.js +32 -17
  643. package/lib/esm/tile/ClassifierTileTree.js.map +1 -1
  644. package/lib/esm/tile/GltfReader.d.ts +22 -3
  645. package/lib/esm/tile/GltfReader.d.ts.map +1 -1
  646. package/lib/esm/tile/GltfReader.js +215 -48
  647. package/lib/esm/tile/GltfReader.js.map +1 -1
  648. package/lib/esm/tile/OPCFormatInterpreter.d.ts +22 -0
  649. package/lib/esm/tile/OPCFormatInterpreter.d.ts.map +1 -0
  650. package/lib/esm/tile/OPCFormatInterpreter.js +88 -0
  651. package/lib/esm/tile/OPCFormatInterpreter.js.map +1 -0
  652. package/lib/esm/tile/PntsReader.d.ts +1 -1
  653. package/lib/esm/tile/PntsReader.d.ts.map +1 -1
  654. package/lib/esm/tile/PntsReader.js +154 -39
  655. package/lib/esm/tile/PntsReader.js.map +1 -1
  656. package/lib/esm/tile/PrimaryTileTree.d.ts +18 -2
  657. package/lib/esm/tile/PrimaryTileTree.d.ts.map +1 -1
  658. package/lib/esm/tile/PrimaryTileTree.js +51 -2
  659. package/lib/esm/tile/PrimaryTileTree.js.map +1 -1
  660. package/lib/esm/tile/RealityModelTileTree.d.ts +24 -3
  661. package/lib/esm/tile/RealityModelTileTree.d.ts.map +1 -1
  662. package/lib/esm/tile/RealityModelTileTree.js +36 -12
  663. package/lib/esm/tile/RealityModelTileTree.js.map +1 -1
  664. package/lib/esm/tile/RealityTile.d.ts +16 -2
  665. package/lib/esm/tile/RealityTile.d.ts.map +1 -1
  666. package/lib/esm/tile/RealityTile.js +32 -0
  667. package/lib/esm/tile/RealityTile.js.map +1 -1
  668. package/lib/esm/tile/RealityTileDrawArgs.d.ts +4 -1
  669. package/lib/esm/tile/RealityTileDrawArgs.d.ts.map +1 -1
  670. package/lib/esm/tile/RealityTileDrawArgs.js +3 -1
  671. package/lib/esm/tile/RealityTileDrawArgs.js.map +1 -1
  672. package/lib/esm/tile/RealityTileLoader.d.ts +7 -4
  673. package/lib/esm/tile/RealityTileLoader.d.ts.map +1 -1
  674. package/lib/esm/tile/RealityTileLoader.js +19 -5
  675. package/lib/esm/tile/RealityTileLoader.js.map +1 -1
  676. package/lib/esm/tile/RealityTileTree.d.ts +4 -1
  677. package/lib/esm/tile/RealityTileTree.d.ts.map +1 -1
  678. package/lib/esm/tile/RealityTileTree.js +13 -5
  679. package/lib/esm/tile/RealityTileTree.js.map +1 -1
  680. package/lib/esm/tile/ThreeDTileFormatInterpreter.d.ts +52 -0
  681. package/lib/esm/tile/ThreeDTileFormatInterpreter.d.ts.map +1 -0
  682. package/lib/esm/tile/ThreeDTileFormatInterpreter.js +175 -0
  683. package/lib/esm/tile/ThreeDTileFormatInterpreter.js.map +1 -0
  684. package/lib/esm/tile/TileDrawArgs.d.ts +2 -0
  685. package/lib/esm/tile/TileDrawArgs.d.ts.map +1 -1
  686. package/lib/esm/tile/TileDrawArgs.js +5 -0
  687. package/lib/esm/tile/TileDrawArgs.js.map +1 -1
  688. package/lib/esm/tile/TileGeometryCollector.d.ts +80 -0
  689. package/lib/esm/tile/TileGeometryCollector.d.ts.map +1 -0
  690. package/lib/esm/tile/TileGeometryCollector.js +67 -0
  691. package/lib/esm/tile/TileGeometryCollector.js.map +1 -0
  692. package/lib/esm/tile/TileTree.d.ts +7 -1
  693. package/lib/esm/tile/TileTree.d.ts.map +1 -1
  694. package/lib/esm/tile/TileTree.js +7 -0
  695. package/lib/esm/tile/TileTree.js.map +1 -1
  696. package/lib/esm/tile/TileTreeReference.d.ts +26 -1
  697. package/lib/esm/tile/TileTreeReference.d.ts.map +1 -1
  698. package/lib/esm/tile/TileTreeReference.js +42 -2
  699. package/lib/esm/tile/TileTreeReference.js.map +1 -1
  700. package/lib/esm/tile/internal.d.ts +4 -0
  701. package/lib/esm/tile/internal.d.ts.map +1 -1
  702. package/lib/esm/tile/internal.js +4 -0
  703. package/lib/esm/tile/internal.js.map +1 -1
  704. package/lib/esm/tile/map/ArcGisUtilities.d.ts.map +1 -1
  705. package/lib/esm/tile/map/ArcGisUtilities.js +13 -0
  706. package/lib/esm/tile/map/ArcGisUtilities.js.map +1 -1
  707. package/lib/esm/tile/map/BingElevation.d.ts +2 -16
  708. package/lib/esm/tile/map/BingElevation.d.ts.map +1 -1
  709. package/lib/esm/tile/map/BingElevation.js +1 -63
  710. package/lib/esm/tile/map/BingElevation.js.map +1 -1
  711. package/lib/esm/tile/map/CesiumTerrainProvider.js +2 -2
  712. package/lib/esm/tile/map/CesiumTerrainProvider.js.map +1 -1
  713. package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts +5 -3
  714. package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts.map +1 -1
  715. package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js +46 -13
  716. package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js.map +1 -1
  717. package/lib/esm/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.d.ts +2 -2
  718. package/lib/esm/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.d.ts.map +1 -1
  719. package/lib/esm/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.js.map +1 -1
  720. package/lib/esm/tile/map/ImageryProviders/BingImageryProvider.d.ts +2 -2
  721. package/lib/esm/tile/map/ImageryProviders/BingImageryProvider.d.ts.map +1 -1
  722. package/lib/esm/tile/map/ImageryProviders/BingImageryProvider.js.map +1 -1
  723. package/lib/esm/tile/map/ImageryProviders/MapBoxLayerImageryProvider.d.ts +2 -2
  724. package/lib/esm/tile/map/ImageryProviders/MapBoxLayerImageryProvider.d.ts.map +1 -1
  725. package/lib/esm/tile/map/ImageryProviders/MapBoxLayerImageryProvider.js +4 -3
  726. package/lib/esm/tile/map/ImageryProviders/MapBoxLayerImageryProvider.js.map +1 -1
  727. package/lib/esm/tile/map/ImageryProviders/TileUrlImageryProvider.d.ts +2 -2
  728. package/lib/esm/tile/map/ImageryProviders/TileUrlImageryProvider.d.ts.map +1 -1
  729. package/lib/esm/tile/map/ImageryProviders/TileUrlImageryProvider.js.map +1 -1
  730. package/lib/esm/tile/map/ImageryProviders/WmsMapLayerImageryProvider.d.ts +2 -2
  731. package/lib/esm/tile/map/ImageryProviders/WmsMapLayerImageryProvider.d.ts.map +1 -1
  732. package/lib/esm/tile/map/ImageryProviders/WmsMapLayerImageryProvider.js +1 -1
  733. package/lib/esm/tile/map/ImageryProviders/WmsMapLayerImageryProvider.js.map +1 -1
  734. package/lib/esm/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.d.ts +2 -2
  735. package/lib/esm/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.d.ts.map +1 -1
  736. package/lib/esm/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.js.map +1 -1
  737. package/lib/esm/tile/map/ImageryTileTree.d.ts +2 -3
  738. package/lib/esm/tile/map/ImageryTileTree.d.ts.map +1 -1
  739. package/lib/esm/tile/map/ImageryTileTree.js +4 -3
  740. package/lib/esm/tile/map/ImageryTileTree.js.map +1 -1
  741. package/lib/esm/tile/map/MapFeatureInfo.d.ts +26 -0
  742. package/lib/esm/tile/map/MapFeatureInfo.d.ts.map +1 -0
  743. package/lib/esm/tile/map/MapFeatureInfo.js +15 -0
  744. package/lib/esm/tile/map/MapFeatureInfo.js.map +1 -0
  745. package/lib/esm/tile/map/MapLayerFormatRegistry.d.ts +4 -4
  746. package/lib/esm/tile/map/MapLayerFormatRegistry.d.ts.map +1 -1
  747. package/lib/esm/tile/map/MapLayerFormatRegistry.js.map +1 -1
  748. package/lib/esm/tile/map/MapLayerImageryFormats.d.ts +3 -3
  749. package/lib/esm/tile/map/MapLayerImageryFormats.d.ts.map +1 -1
  750. package/lib/esm/tile/map/MapLayerImageryFormats.js.map +1 -1
  751. package/lib/esm/tile/map/MapLayerImageryProvider.d.ts +5 -4
  752. package/lib/esm/tile/map/MapLayerImageryProvider.d.ts.map +1 -1
  753. package/lib/esm/tile/map/MapLayerImageryProvider.js +5 -1
  754. package/lib/esm/tile/map/MapLayerImageryProvider.js.map +1 -1
  755. package/lib/esm/tile/map/MapLayerSources.d.ts +2 -2
  756. package/lib/esm/tile/map/MapLayerSources.d.ts.map +1 -1
  757. package/lib/esm/tile/map/MapLayerSources.js +6 -4
  758. package/lib/esm/tile/map/MapLayerSources.js.map +1 -1
  759. package/lib/esm/tile/map/MapLayerTileTreeReference.d.ts +10 -2
  760. package/lib/esm/tile/map/MapLayerTileTreeReference.d.ts.map +1 -1
  761. package/lib/esm/tile/map/MapLayerTileTreeReference.js +25 -3
  762. package/lib/esm/tile/map/MapLayerTileTreeReference.js.map +1 -1
  763. package/lib/esm/tile/map/MapTile.d.ts +12 -10
  764. package/lib/esm/tile/map/MapTile.d.ts.map +1 -1
  765. package/lib/esm/tile/map/MapTile.js +60 -39
  766. package/lib/esm/tile/map/MapTile.js.map +1 -1
  767. package/lib/esm/tile/map/MapTileLoader.d.ts +2 -1
  768. package/lib/esm/tile/map/MapTileLoader.d.ts.map +1 -1
  769. package/lib/esm/tile/map/MapTileLoader.js +4 -1
  770. package/lib/esm/tile/map/MapTileLoader.js.map +1 -1
  771. package/lib/esm/tile/map/MapTileTree.d.ts +18 -8
  772. package/lib/esm/tile/map/MapTileTree.d.ts.map +1 -1
  773. package/lib/esm/tile/map/MapTileTree.js +150 -63
  774. package/lib/esm/tile/map/MapTileTree.js.map +1 -1
  775. package/lib/esm/tile/map/MapTiledGraphicsProvider.d.ts.map +1 -1
  776. package/lib/esm/tile/map/MapTiledGraphicsProvider.js +2 -2
  777. package/lib/esm/tile/map/MapTiledGraphicsProvider.js.map +1 -1
  778. package/lib/esm/tools/ToolAdmin.d.ts +6 -8
  779. package/lib/esm/tools/ToolAdmin.d.ts.map +1 -1
  780. package/lib/esm/tools/ToolAdmin.js +9 -16
  781. package/lib/esm/tools/ToolAdmin.js.map +1 -1
  782. package/lib/esm/tools/ViewTool.d.ts +4 -4
  783. package/lib/esm/tools/ViewTool.d.ts.map +1 -1
  784. package/lib/esm/tools/ViewTool.js +1 -1
  785. package/lib/esm/tools/ViewTool.js.map +1 -1
  786. package/package.json +22 -20
  787. package/lib/cjs/tile/DracoDecoder.d.ts +0 -20
  788. package/lib/cjs/tile/DracoDecoder.d.ts.map +0 -1
  789. package/lib/cjs/tile/DracoDecoder.js +0 -169
  790. package/lib/cjs/tile/DracoDecoder.js.map +0 -1
  791. package/lib/esm/tile/DracoDecoder.d.ts +0 -20
  792. package/lib/esm/tile/DracoDecoder.d.ts.map +0 -1
  793. package/lib/esm/tile/DracoDecoder.js +0 -165
  794. package/lib/esm/tile/DracoDecoder.js.map +0 -1
  795. package/lib/public/assets/approximateTerrainHeights.json +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"MapTileLoader.js","sourceRoot":"","sources":["../../../../src/tile/map/MapTileLoader.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Tiles\r\n */\r\n\r\nimport { assert, Id64String } from \"@itwin/core-bentley\";\r\nimport { Range1d } from \"@itwin/core-geometry\";\r\nimport { Feature, FeatureTable } from \"@itwin/core-common\";\r\nimport { request } from \"../../request/Request\";\r\nimport { IModelConnection } from \"../../IModelConnection\";\r\nimport { IModelApp } from \"../../IModelApp\";\r\nimport { RenderSystem } from \"../../render/RenderSystem\";\r\nimport { MapCartoRectangle, MapTile, QuadId, RealityTile, RealityTileLoader, TerrainMeshProvider, TerrainTileContent, Tile, TileLoadPriority, TileRequest } from \"../internal\";\r\n\r\n/** Specialization of map tile loader that includes terrain geometry with map imagery draped on it.\r\n * @internal\r\n */\r\nexport class MapTileLoader extends RealityTileLoader {\r\n public get priority(): TileLoadPriority { return TileLoadPriority.Terrain; }\r\n public get clipLowResolutionTiles(): boolean { return true; }\r\n protected _applyLights = false;\r\n public readonly featureTable: FeatureTable;\r\n // public get heightRange(): Range1d | undefined { return this._heightRange; }\r\n protected readonly _heightRange: Range1d | undefined;\r\n public override get isContentUnbounded(): boolean { return true; }\r\n public isTileAvailable(quadId: QuadId) { return this.terrainProvider.isTileAvailable(quadId); }\r\n\r\n public constructor(protected _iModel: IModelConnection, protected _modelId: Id64String, protected _groundBias: number, private _terrainProvider: TerrainMeshProvider) {\r\n super();\r\n this.featureTable = new FeatureTable(0xffff, this._modelId);\r\n this.featureTable.insert(new Feature(this._modelId));\r\n }\r\n public getFeatureIndex(layerModelId: Id64String): number {\r\n return this.featureTable.insert(new Feature(layerModelId))!;\r\n }\r\n\r\n public get maxDepth(): number { return this._terrainProvider.maxDepth; }\r\n public get minDepth(): number { return 0; }\r\n public get terrainProvider(): TerrainMeshProvider { return this._terrainProvider; }\r\n\r\n public getRequestChannel(_tile: Tile) {\r\n // ###TODO use hostname from url - but so many layers to go through to get that...\r\n return IModelApp.tileAdmin.channels.getForHttp(\"itwinjs-imagery\");\r\n }\r\n\r\n public async requestTileContent(tile: Tile, _isCanceled: () => boolean): Promise<TileRequest.Response> {\r\n if (!this.terrainProvider.requiresLoadedContent)\r\n return new Uint8Array();\r\n\r\n const quadId = QuadId.createFromContentId(tile.contentId);\r\n const tileUrl = this._terrainProvider.constructUrl(quadId.row, quadId.column, quadId.level);\r\n const tileRequestOptions = this._terrainProvider.requestOptions;\r\n\r\n try {\r\n const response = await request(tileUrl, tileRequestOptions);\r\n if (response.status === 200)\r\n return new Uint8Array(response.body);\r\n\r\n return undefined;\r\n\r\n } catch (error) {\r\n return undefined;\r\n }\r\n }\r\n\r\n public override forceTileLoad(tile: Tile): boolean {\r\n return this._terrainProvider.forceTileLoad(tile);\r\n }\r\n public override async loadTileContent(tile: MapTile, data: TileRequest.ResponseData, system: RenderSystem, isCanceled?: () => boolean): Promise<TerrainTileContent> {\r\n if (undefined === isCanceled)\r\n isCanceled = () => !tile.isLoading;\r\n\r\n const quadId = QuadId.createFromContentId(tile.contentId);\r\n const mesh = await this._terrainProvider.getMesh(tile, data as Uint8Array);\r\n if (undefined === mesh)\r\n return {};\r\n if (isCanceled())\r\n return {};\r\n\r\n const projection = tile.getProjection(tile.heightRange);\r\n const terrainGeometry = system.createRealityMeshFromTerrain(mesh, projection.transformFromLocal);\r\n\r\n let unavailableChild = false;\r\n if (quadId.level < this.maxDepth) {\r\n const childIds = quadId.getChildIds();\r\n for (const childId of childIds) {\r\n if (!this._terrainProvider.isTileAvailable(childId)) {\r\n unavailableChild = true;\r\n break;\r\n }\r\n }\r\n }\r\n\r\n return {\r\n contentRange: projection.transformFromLocal.multiplyRange(projection.localRange),\r\n terrain: {\r\n mesh: unavailableChild ? mesh : undefined, // If a child is unavilable retain mesh for upsampling.,\r\n geometry: terrainGeometry,\r\n },\r\n };\r\n }\r\n\r\n public getChildHeightRange(quadId: QuadId, rectangle: MapCartoRectangle, parent: MapTile): Range1d | undefined {\r\n return this._terrainProvider.getChildHeightRange(quadId, rectangle, parent);\r\n }\r\n\r\n public async loadChildren(_tile: RealityTile): Promise<Tile[] | undefined> {\r\n assert(false); // children are generated synchronously in MapTile....\r\n return undefined;\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"MapTileLoader.js","sourceRoot":"","sources":["../../../../src/tile/map/MapTileLoader.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Tiles\r\n */\r\n\r\nimport { assert, Id64String } from \"@itwin/core-bentley\";\r\nimport { Polyface, Range1d } from \"@itwin/core-geometry\";\r\nimport { Feature, FeatureTable } from \"@itwin/core-common\";\r\nimport { request } from \"../../request/Request\";\r\nimport { IModelConnection } from \"../../IModelConnection\";\r\nimport { IModelApp } from \"../../IModelApp\";\r\nimport { RenderSystem } from \"../../render/RenderSystem\";\r\nimport { MapCartoRectangle, MapTile, QuadId, RealityTile, RealityTileLoader, TerrainMeshProvider, TerrainTileContent, Tile, TileLoadPriority, TileRequest } from \"../internal\";\r\n\r\n/** Specialization of map tile loader that includes terrain geometry with map imagery draped on it.\r\n * @internal\r\n */\r\nexport class MapTileLoader extends RealityTileLoader {\r\n public get priority(): TileLoadPriority { return TileLoadPriority.Terrain; }\r\n public get clipLowResolutionTiles(): boolean { return true; }\r\n protected _applyLights = false;\r\n public readonly featureTable: FeatureTable;\r\n // public get heightRange(): Range1d | undefined { return this._heightRange; }\r\n protected readonly _heightRange: Range1d | undefined;\r\n public override get isContentUnbounded(): boolean { return true; }\r\n public isTileAvailable(quadId: QuadId) { return this.terrainProvider.isTileAvailable(quadId); }\r\n\r\n public constructor(protected _iModel: IModelConnection, protected _modelId: Id64String, protected _groundBias: number, private _terrainProvider: TerrainMeshProvider) {\r\n super();\r\n this.featureTable = new FeatureTable(0xffff, this._modelId);\r\n this.featureTable.insert(new Feature(this._modelId));\r\n }\r\n public getFeatureIndex(layerModelId: Id64String): number {\r\n return this.featureTable.insert(new Feature(layerModelId))!;\r\n }\r\n\r\n public get maxDepth(): number { return this._terrainProvider.maxDepth; }\r\n public get minDepth(): number { return 0; }\r\n public get terrainProvider(): TerrainMeshProvider { return this._terrainProvider; }\r\n\r\n public getRequestChannel(_tile: Tile) {\r\n // ###TODO use hostname from url - but so many layers to go through to get that...\r\n return IModelApp.tileAdmin.channels.getForHttp(\"itwinjs-imagery\");\r\n }\r\n\r\n public async requestTileContent(tile: Tile, _isCanceled: () => boolean): Promise<TileRequest.Response> {\r\n if (!this.terrainProvider.requiresLoadedContent)\r\n return new Uint8Array();\r\n\r\n const quadId = QuadId.createFromContentId(tile.contentId);\r\n const tileUrl = this._terrainProvider.constructUrl(quadId.row, quadId.column, quadId.level);\r\n const tileRequestOptions = this._terrainProvider.requestOptions;\r\n\r\n try {\r\n const response = await request(tileUrl, tileRequestOptions);\r\n if (response.status === 200)\r\n return new Uint8Array(response.body);\r\n\r\n return undefined;\r\n\r\n } catch (error) {\r\n return undefined;\r\n }\r\n }\r\n\r\n public override forceTileLoad(tile: Tile): boolean {\r\n return this._terrainProvider.forceTileLoad(tile);\r\n }\r\n public override async loadTileContent(tile: MapTile, data: TileRequest.ResponseData, system: RenderSystem, isCanceled?: () => boolean): Promise<TerrainTileContent> {\r\n if (undefined === isCanceled)\r\n isCanceled = () => !tile.isLoading;\r\n\r\n const quadId = QuadId.createFromContentId(tile.contentId);\r\n const mesh = await this._terrainProvider.getMesh(tile, data as Uint8Array);\r\n if (undefined === mesh)\r\n return {};\r\n if (isCanceled())\r\n return {};\r\n\r\n const projection = tile.getProjection(tile.heightRange);\r\n const terrainGeometry = system.createRealityMeshFromTerrain(mesh, projection.transformFromLocal);\r\n\r\n let unavailableChild = false;\r\n if (quadId.level < this.maxDepth) {\r\n const childIds = quadId.getChildIds();\r\n for (const childId of childIds) {\r\n if (!this._terrainProvider.isTileAvailable(childId)) {\r\n unavailableChild = true;\r\n break;\r\n }\r\n }\r\n }\r\n\r\n return {\r\n contentRange: projection.transformFromLocal.multiplyRange(projection.localRange),\r\n terrain: {\r\n mesh: unavailableChild ? mesh : undefined, // If a child is unavilable retain mesh for upsampling.,\r\n renderGeometry: terrainGeometry,\r\n },\r\n };\r\n }\r\n\r\n public loadPolyfaces(): Polyface[] | undefined {\r\n assert (false, \"load polyFaces not implmented for map tiles\");\r\n }\r\n\r\n public getChildHeightRange(quadId: QuadId, rectangle: MapCartoRectangle, parent: MapTile): Range1d | undefined {\r\n return this._terrainProvider.getChildHeightRange(quadId, rectangle, parent);\r\n }\r\n\r\n public async loadChildren(_tile: RealityTile): Promise<Tile[] | undefined> {\r\n assert(false); // children are generated synchronously in MapTile....\r\n return undefined;\r\n }\r\n}\r\n"]}
@@ -2,15 +2,16 @@
2
2
  * @module Tiles
3
3
  */
4
4
  import { Id64String } from "@itwin/core-bentley";
5
- import { Ellipsoid, EllipsoidPatch, Point3d, Range1d, Range3d, Ray3d, Transform, Vector3d } from "@itwin/core-geometry";
6
5
  import { BackgroundMapSettings, BaseLayerSettings, ColorDef, GlobeMode, MapLayerSettings, TerrainProviderName } from "@itwin/core-common";
6
+ import { Ellipsoid, EllipsoidPatch, Point3d, Range1d, Range3d, Ray3d, Transform, Vector3d } from "@itwin/core-geometry";
7
7
  import { TerrainDisplayOverrides } from "../../DisplayStyleState";
8
8
  import { HitDetail } from "../../HitDetail";
9
9
  import { IModelConnection } from "../../IModelConnection";
10
10
  import { FeatureSymbology } from "../../render/FeatureSymbology";
11
+ import { RenderPlanarClassifier } from "../../render/RenderPlanarClassifier";
11
12
  import { SceneContext } from "../../ViewContext";
12
13
  import { ScreenViewport } from "../../Viewport";
13
- import { DisclosedTileTreeSet, ImageryMapLayerTreeReference, ImageryMapTileTree, MapCartoRectangle, MapTile, MapTileLoader, MapTilingScheme, QuadId, RealityTileTree, RealityTileTreeParams, Tile, TileDrawArgs, TileParams, TileTree, TileTreeOwner, TileTreeReference } from "../internal";
14
+ import { DisclosedTileTreeSet, GeometryTileTreeReference, ImageryMapLayerTreeReference, ImageryMapTileTree, MapCartoRectangle, MapLayerFeatureInfo, MapLayerTileTreeReference, MapTile, MapTileLoader, MapTilingScheme, ModelMapLayerTileTreeReference, QuadId, RealityTile, RealityTileTree, RealityTileTreeParams, Tile, TileDrawArgs, TileParams, TileTree, TileTreeOwner, TileTreeReference } from "../internal";
14
15
  /** @internal */
15
16
  export declare class MapTileTree extends RealityTileTree {
16
17
  ecefToDb: Transform;
@@ -30,16 +31,21 @@ export declare class MapTileTree extends RealityTileTree {
30
31
  baseColor?: ColorDef;
31
32
  baseTransparent: boolean;
32
33
  mapTransparent: boolean;
34
+ produceGeometry?: boolean;
33
35
  constructor(params: RealityTileTreeParams, ecefToDb: Transform, bimElevationBias: number, geodeticOffset: number, sourceTilingScheme: MapTilingScheme, id: MapTreeId, applyTerrain: boolean);
34
36
  get parentsAndChildrenExclusive(): boolean;
35
37
  tileFromQuadId(quadId: QuadId): MapTile | undefined;
36
38
  imageryTrees: ImageryMapTileTree[];
37
39
  private _layerSettings;
38
- addImageryLayer(tree: ImageryMapTileTree, settings: MapLayerSettings): void;
39
- clearImageryLayers(): void;
40
+ private _modelIdToIndex;
41
+ layerClassifiers: Map<number, RenderPlanarClassifier>;
42
+ addImageryLayer(tree: ImageryMapTileTree, settings: MapLayerSettings, index: number): void;
43
+ addModelLayer(layerTreeRef: ModelMapLayerTileTreeReference, context: SceneContext): void;
44
+ protected collectClassifierGraphics(args: TileDrawArgs, selectedTiles: RealityTile[]): void;
45
+ clearImageryTreesAndClassifiers(): void;
40
46
  get isTransparent(): boolean;
41
47
  get maxDepth(): number;
42
- createPlanarChild(params: TileParams, quadId: QuadId, corners: Point3d[], normal: Vector3d, rectangle: MapCartoRectangle, chordHeight: number, heightRange?: Range1d): MapTile;
48
+ createPlanarChild(params: TileParams, quadId: QuadId, corners: Point3d[], normal: Vector3d, rectangle: MapCartoRectangle, chordHeight: number, heightRange?: Range1d): MapTile | undefined;
43
49
  createGlobeChild(params: TileParams, quadId: QuadId, _rangeCorners: Point3d[], rectangle: MapCartoRectangle, ellipsoidPatch: EllipsoidPatch, heightRange?: Range1d): MapTile;
44
50
  getChildHeightRange(quadId: QuadId, rectangle: MapCartoRectangle, parent: MapTile): Range1d | undefined;
45
51
  clearLayers(): void;
@@ -80,6 +86,7 @@ interface MapTreeId {
80
86
  baseTransparent: boolean;
81
87
  mapTransparent: boolean;
82
88
  maskModelIds?: string;
89
+ produceGeometry?: boolean;
83
90
  }
84
91
  /** @internal */
85
92
  declare type CheckTerrainDisplayOverride = () => TerrainDisplayOverrides | undefined;
@@ -97,7 +104,7 @@ export declare class MapTileTreeReference extends TileTreeReference {
97
104
  private readonly _iModel;
98
105
  private _baseImageryLayerIncluded;
99
106
  private _baseColor?;
100
- private readonly _imageryTrees;
107
+ private readonly _layerTrees;
101
108
  private _baseTransparent;
102
109
  private _symbologyOverrides;
103
110
  private _planarClipMask?;
@@ -105,6 +112,7 @@ export declare class MapTileTreeReference extends TileTreeReference {
105
112
  get isGlobal(): boolean;
106
113
  get baseColor(): ColorDef | undefined;
107
114
  get planarclipMaskPriority(): number;
115
+ protected _createGeometryTreeReference(): GeometryTileTreeReference | undefined;
108
116
  /** Terrain tiles do not contribute to the range used by "fit view". */
109
117
  unionFitRange(_range: Range3d): void;
110
118
  get settings(): BackgroundMapSettings;
@@ -117,8 +125,8 @@ export declare class MapTileTreeReference extends TileTreeReference {
117
125
  protected get _isLoadingComplete(): boolean;
118
126
  get useDepthBuffer(): boolean;
119
127
  get treeOwner(): TileTreeOwner;
120
- getLayerImageryTreeRef(index: number): ImageryMapLayerTreeReference | undefined;
121
- initializeImagery(): boolean;
128
+ getLayerImageryTreeRef(index: number): MapLayerTileTreeReference | undefined;
129
+ initializeLayers(context: SceneContext): boolean;
122
130
  /** Adds this reference's graphics to the scene. By default this invokes [[TileTree.drawScene]] on the referenced TileTree, if it is loaded. */
123
131
  addToScene(context: SceneContext): void;
124
132
  createDrawArgs(context: SceneContext): TileDrawArgs | undefined;
@@ -127,7 +135,9 @@ export declare class MapTileTreeReference extends TileTreeReference {
127
135
  discloseTileTrees(trees: DisclosedTileTreeSet): void;
128
136
  imageryTreeFromTreeModelIds(mapTreeModelId: Id64String, layerTreeModelId: Id64String): ImageryMapLayerTreeReference | undefined;
129
137
  layerFromTreeModelIds(mapTreeModelId: Id64String, layerTreeModelId: Id64String): MapLayerSettings | undefined;
138
+ private forEachImageryTileHit;
130
139
  getToolTip(hit: HitDetail): Promise<HTMLElement | string | undefined>;
140
+ getMapFeatureInfo(hit: HitDetail): Promise<MapLayerFeatureInfo[] | undefined>;
131
141
  /** Add logo cards to logo div. */
132
142
  addLogoCards(cards: HTMLTableElement, vp: ScreenViewport): void;
133
143
  }
@@ -1 +1 @@
1
- {"version":3,"file":"MapTileTree.d.ts","sourceRoot":"","sources":["../../../../src/tile/map/MapTileTree.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MapTileTree.d.ts","sourceRoot":"","sources":["../../../../src/tile/map/MapTileTree.ts"],"names":[],"mappings":"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"}
@@ -9,10 +9,9 @@
9
9
  Object.defineProperty(exports, "__esModule", { value: true });
10
10
  exports.getGcsConverterAvailable = exports.MapTileTreeReference = exports.MapTileTree = void 0;
11
11
  const core_bentley_1 = require("@itwin/core-bentley");
12
- const core_geometry_1 = require("@itwin/core-geometry");
13
12
  const core_common_1 = require("@itwin/core-common");
13
+ const core_geometry_1 = require("@itwin/core-geometry");
14
14
  const ApproximateTerrainHeights_1 = require("../../ApproximateTerrainHeights");
15
- const IModelApp_1 = require("../../IModelApp");
16
15
  const PlanarClipMaskState_1 = require("../../PlanarClipMaskState");
17
16
  const FeatureSymbology_1 = require("../../render/FeatureSymbology");
18
17
  const internal_1 = require("../internal");
@@ -30,6 +29,8 @@ class MapTileTree extends internal_1.RealityTileTree {
30
29
  this.sourceTilingScheme = sourceTilingScheme;
31
30
  this.imageryTrees = [];
32
31
  this._layerSettings = new Map();
32
+ this._modelIdToIndex = new Map();
33
+ this.layerClassifiers = new Map();
33
34
  this._mercatorTilingScheme = new internal_1.WebMercatorTilingScheme();
34
35
  this._mercatorFractionToDb = this._mercatorTilingScheme.computeMercatorFractionToDb(ecefToDb, bimElevationBias, params.iModel, applyTerrain);
35
36
  const quadId = new internal_1.QuadId(sourceTilingScheme.rootLevel, 0, 0);
@@ -47,6 +48,7 @@ class MapTileTree extends internal_1.RealityTileTree {
47
48
  if (applyTerrain) {
48
49
  this.minEarthEllipsoid = core_geometry_1.Ellipsoid.createCenterMatrixRadii(this.globeOrigin, this.ecefToDb.matrix, core_geometry_1.Constant.earthRadiusWGS84.equator + globalHeightRange.low, core_geometry_1.Constant.earthRadiusWGS84.equator + globalHeightRange.low, core_geometry_1.Constant.earthRadiusWGS84.polar + globalHeightRange.low);
49
50
  this.maxEarthEllipsoid = core_geometry_1.Ellipsoid.createCenterMatrixRadii(this.globeOrigin, this.ecefToDb.matrix, core_geometry_1.Constant.earthRadiusWGS84.equator + globalHeightRange.high, core_geometry_1.Constant.earthRadiusWGS84.equator + globalHeightRange.high, core_geometry_1.Constant.earthRadiusWGS84.polar + globalHeightRange.high);
51
+ this.produceGeometry = id.produceGeometry;
50
52
  }
51
53
  else {
52
54
  this.minEarthEllipsoid = this.earthEllipsoid;
@@ -69,19 +71,28 @@ class MapTileTree extends internal_1.RealityTileTree {
69
71
  tileFromQuadId(quadId) {
70
72
  return this._rootTile.tileFromQuadId(quadId);
71
73
  }
72
- addImageryLayer(tree, settings) {
73
- const maxLayers = IModelApp_1.IModelApp.renderSystem.maxRealityImageryLayers;
74
- if (this.imageryTrees.length < maxLayers) {
75
- this.imageryTrees.push(tree);
76
- this._layerSettings.set(tree.modelId, settings);
77
- }
78
- else {
79
- // TBD -- Notify user that layers is being ignored?
80
- }
74
+ addImageryLayer(tree, settings, index) {
75
+ this.imageryTrees.push(tree);
76
+ this._layerSettings.set(tree.modelId, settings);
77
+ this._modelIdToIndex.set(tree.modelId, index);
78
+ }
79
+ addModelLayer(layerTreeRef, context) {
80
+ const classifier = context.addPlanarClassifier(`MapLayer ${this.modelId}-${layerTreeRef.layerIndex}`, layerTreeRef);
81
+ if (classifier)
82
+ this.layerClassifiers.set(layerTreeRef.layerIndex, classifier);
81
83
  }
82
- clearImageryLayers() {
84
+ collectClassifierGraphics(args, selectedTiles) {
85
+ super.collectClassifierGraphics(args, selectedTiles);
86
+ this.layerClassifiers.forEach((layerClassifier) => {
87
+ if (!(args instanceof internal_1.GraphicsCollectorDrawArgs))
88
+ layerClassifier.collectGraphics(args.context, { modelId: this.modelId, tiles: selectedTiles, location: args.location, isPointCloud: this.isPointCloud });
89
+ });
90
+ }
91
+ clearImageryTreesAndClassifiers() {
83
92
  this.imageryTrees.length = 0;
84
93
  this._layerSettings.clear();
94
+ this._modelIdToIndex.clear();
95
+ this.layerClassifiers.clear();
85
96
  }
86
97
  get isTransparent() {
87
98
  return this.mapTransparent || this.baseTransparent;
@@ -93,9 +104,12 @@ class MapTileTree extends internal_1.RealityTileTree {
93
104
  return maxDepth;
94
105
  }
95
106
  createPlanarChild(params, quadId, corners, normal, rectangle, chordHeight, heightRange) {
107
+ const childAvailable = this.mapLoader.isTileAvailable(quadId);
108
+ if (!childAvailable && this.produceGeometry)
109
+ return undefined;
96
110
  const patch = new internal_1.PlanarTilePatch(corners, normal, chordHeight);
97
111
  const cornerNormals = this.getCornerRays(rectangle);
98
- const ctor = this.mapLoader.isTileAvailable(quadId) ? internal_1.MapTile : internal_1.UpsampledMapTile;
112
+ const ctor = childAvailable ? internal_1.MapTile : internal_1.UpsampledMapTile;
99
113
  return new ctor(params, this, quadId, patch, rectangle, heightRange, cornerNormals);
100
114
  }
101
115
  createGlobeChild(params, quadId, _rangeCorners, rectangle, ellipsoidPatch, heightRange) {
@@ -270,10 +284,8 @@ class MapTileTree extends internal_1.RealityTileTree {
270
284
  return this.sourceTilingScheme.tileXYToRectangle(quadId.column, quadId.row, quadId.level);
271
285
  }
272
286
  getLayerIndex(imageryTreeId) {
273
- for (let index = 0; index < this.imageryTrees.length; index++)
274
- if (imageryTreeId === this.imageryTrees[index].modelId)
275
- return index;
276
- return -1;
287
+ const index = this._modelIdToIndex.get(imageryTreeId);
288
+ return index === undefined ? -1 : index;
277
289
  }
278
290
  getLayerTransparency(imageryTreeId) {
279
291
  const layerSettings = this._layerSettings.get(imageryTreeId);
@@ -335,8 +347,11 @@ class MapTreeSupplier {
335
347
  cmp = (0, core_bentley_1.compareNumbers)(lhs.terrainHeightOrigin, rhs.terrainHeightOrigin);
336
348
  if (0 === cmp) {
337
349
  cmp = (0, core_bentley_1.compareNumbers)(lhs.terrainHeightOriginMode, rhs.terrainHeightOriginMode);
338
- if (0 === cmp)
350
+ if (0 === cmp) {
339
351
  cmp = (0, core_bentley_1.compareNumbers)(lhs.terrainExaggeration, rhs.terrainExaggeration);
352
+ if (0 === cmp)
353
+ cmp = (0, core_bentley_1.compareBooleansOrUndefined)(lhs.produceGeometry, rhs.produceGeometry);
354
+ }
340
355
  }
341
356
  }
342
357
  }
@@ -404,7 +419,7 @@ const mapTreeSupplier = new MapTreeSupplier();
404
419
  */
405
420
  class MapTileTreeReference extends internal_1.TileTreeReference {
406
421
  constructor(settings, _baseLayerSettings, _layerSettings, iModel, tileUserId, isOverlay, _isDrape, _overrideTerrainDisplay) {
407
- var _a;
422
+ var _a, _b;
408
423
  super();
409
424
  this._baseLayerSettings = _baseLayerSettings;
410
425
  this._layerSettings = _layerSettings;
@@ -412,7 +427,7 @@ class MapTileTreeReference extends internal_1.TileTreeReference {
412
427
  this._isDrape = _isDrape;
413
428
  this._overrideTerrainDisplay = _overrideTerrainDisplay;
414
429
  this._baseImageryLayerIncluded = false;
415
- this._imageryTrees = new Array();
430
+ this._layerTrees = new Array();
416
431
  this._baseTransparent = false;
417
432
  this._tileUserId = tileUserId;
418
433
  this._settings = settings;
@@ -420,7 +435,7 @@ class MapTileTreeReference extends internal_1.TileTreeReference {
420
435
  let tree;
421
436
  if (!isOverlay && this._baseLayerSettings !== undefined) {
422
437
  if (this._baseLayerSettings instanceof core_common_1.MapLayerSettings) {
423
- tree = IModelApp_1.IModelApp.mapLayerFormatRegistry.createImageryMapLayerTree(this._baseLayerSettings, 0, iModel);
438
+ tree = (0, internal_1.createMapLayerTreeReference)(this._baseLayerSettings, 0, iModel);
424
439
  this._baseTransparent = this._baseLayerSettings.transparency > 0;
425
440
  }
426
441
  else {
@@ -429,16 +444,25 @@ class MapTileTreeReference extends internal_1.TileTreeReference {
429
444
  }
430
445
  }
431
446
  if (this._baseImageryLayerIncluded = (undefined !== tree))
432
- this._imageryTrees.push(tree);
447
+ this._layerTrees.push(tree);
433
448
  for (let i = 0; i < this._layerSettings.length; i++)
434
- if (undefined !== (tree = IModelApp_1.IModelApp.mapLayerFormatRegistry.createImageryMapLayerTree(this._layerSettings[i], i + 1, iModel)))
435
- this._imageryTrees.push(tree);
449
+ if (undefined !== (tree = (0, internal_1.createMapLayerTreeReference)(this._layerSettings[i], i + 1, iModel)))
450
+ this._layerTrees.push(tree);
436
451
  if (this._settings.planarClipMask && this._settings.planarClipMask.isValid)
437
452
  this._planarClipMask = PlanarClipMaskState_1.PlanarClipMaskState.create(this._settings.planarClipMask);
453
+ if (this._overrideTerrainDisplay && ((_b = this._overrideTerrainDisplay()) === null || _b === void 0 ? void 0 : _b.produceGeometry))
454
+ this.collectTileGeometry = (collector) => this._collectTileGeometry(collector);
438
455
  }
439
456
  get isGlobal() { return true; }
440
457
  get baseColor() { return this._baseColor; }
441
458
  get planarclipMaskPriority() { return core_common_1.PlanarClipMaskPriority.BackgroundMap; }
459
+ _createGeometryTreeReference() {
460
+ if (!this._settings.applyTerrain || this._isDrape)
461
+ return undefined; // Don't bother generating non-terrain (flat) geometry.
462
+ const ref = new MapTileTreeReference(this._settings, undefined, [], this._iModel, this._tileUserId, false, false, () => { return { produceGeometry: true }; });
463
+ (0, core_bentley_1.assert)(undefined !== ref.collectTileGeometry);
464
+ return ref;
465
+ }
442
466
  /** Terrain tiles do not contribute to the range used by "fit view". */
443
467
  unionFitRange(_range) { }
444
468
  get settings() { return this._settings; }
@@ -451,7 +475,7 @@ class MapTileTreeReference extends internal_1.TileTreeReference {
451
475
  let tree;
452
476
  this._baseLayerSettings = baseLayerSettings;
453
477
  if (baseLayerSettings instanceof core_common_1.MapLayerSettings) {
454
- tree = IModelApp_1.IModelApp.mapLayerFormatRegistry.createImageryMapLayerTree(baseLayerSettings, 0, this._iModel);
478
+ tree = (0, internal_1.createMapLayerTreeReference)(baseLayerSettings, 0, this._iModel);
455
479
  this._baseColor = undefined;
456
480
  this._baseTransparent = baseLayerSettings.transparency > 0;
457
481
  }
@@ -461,13 +485,13 @@ class MapTileTreeReference extends internal_1.TileTreeReference {
461
485
  }
462
486
  if (tree) {
463
487
  if (this._baseImageryLayerIncluded)
464
- this._imageryTrees[0] = tree;
488
+ this._layerTrees[0] = tree;
465
489
  else
466
- this._imageryTrees.splice(0, 0, tree);
490
+ this._layerTrees.splice(0, 0, tree);
467
491
  }
468
492
  else {
469
493
  if (this._baseImageryLayerIncluded)
470
- this._imageryTrees.shift();
494
+ this._layerTrees.shift();
471
495
  }
472
496
  this._baseImageryLayerIncluded = tree !== undefined;
473
497
  this.clearLayers();
@@ -478,11 +502,11 @@ class MapTileTreeReference extends internal_1.TileTreeReference {
478
502
  setLayerSettings(layerSettings) {
479
503
  this._layerSettings = layerSettings;
480
504
  const baseLayerIndex = this._baseImageryLayerIncluded ? 1 : 0;
481
- this._imageryTrees.length = Math.min(layerSettings.length + baseLayerIndex, this._imageryTrees.length); // Truncate if number of layers reduced.
505
+ this._layerTrees.length = Math.min(layerSettings.length + baseLayerIndex, this._layerTrees.length); // Truncate if number of layers reduced.
482
506
  for (let i = 0; i < layerSettings.length; i++) {
483
507
  const treeIndex = i + baseLayerIndex;
484
- if (treeIndex >= this._imageryTrees.length || !this._imageryTrees[treeIndex].layerSettings.displayMatches(layerSettings[i]))
485
- this._imageryTrees[treeIndex] = IModelApp_1.IModelApp.mapLayerFormatRegistry.createImageryMapLayerTree(layerSettings[i], treeIndex, this._iModel);
508
+ if (treeIndex >= this._layerTrees.length || !this._layerTrees[treeIndex].layerSettings.displayMatches(layerSettings[i]))
509
+ this._layerTrees[treeIndex] = (0, internal_1.createMapLayerTreeReference)(layerSettings[i], treeIndex, this._iModel);
486
510
  }
487
511
  this.clearLayers();
488
512
  }
@@ -496,7 +520,7 @@ class MapTileTreeReference extends internal_1.TileTreeReference {
496
520
  }
497
521
  get _isLoadingComplete() {
498
522
  // Wait until drape tree is fully loaded too.
499
- for (const drapeTree of this._imageryTrees)
523
+ for (const drapeTree of this._layerTrees)
500
524
  if (!drapeTree.isLoadingComplete)
501
525
  return false;
502
526
  return super._isLoadingComplete;
@@ -529,12 +553,14 @@ class MapTileTreeReference extends internal_1.TileTreeReference {
529
553
  baseTransparent: this._baseTransparent,
530
554
  mapTransparent: this.settings.transparency > 0,
531
555
  maskModelIds: (_b = this._planarClipMask) === null || _b === void 0 ? void 0 : _b.settings.compressedModelIds,
556
+ produceGeometry: false,
532
557
  };
533
558
  if (undefined !== this._overrideTerrainDisplay) {
534
559
  const ovr = this._overrideTerrainDisplay();
535
560
  if (undefined !== ovr) {
536
561
  id.wantSkirts = (_c = ovr.wantSkirts) !== null && _c !== void 0 ? _c : id.wantSkirts;
537
562
  id.wantNormals = (_d = ovr.wantNormals) !== null && _d !== void 0 ? _d : id.wantNormals;
563
+ id.produceGeometry = ovr.produceGeometry === true;
538
564
  }
539
565
  }
540
566
  return this._iModel.tiles.getTileTreeOwner(id, mapTreeSupplier);
@@ -542,30 +568,33 @@ class MapTileTreeReference extends internal_1.TileTreeReference {
542
568
  getLayerImageryTreeRef(index) {
543
569
  const baseLayerIndex = this._baseImageryLayerIncluded ? 1 : 0;
544
570
  const treeIndex = index + baseLayerIndex;
545
- return index < 0 || treeIndex >= this._imageryTrees.length ? undefined : this._imageryTrees[treeIndex];
571
+ return index < 0 || treeIndex >= this._layerTrees.length ? undefined : this._layerTrees[treeIndex];
546
572
  }
547
- initializeImagery() {
573
+ initializeLayers(context) {
548
574
  const tree = this.treeOwner.load();
549
575
  if (undefined === tree)
550
576
  return false; // Not loaded yet.
551
577
  tree.imageryTrees.length = 0;
552
- if (0 === this._imageryTrees.length)
578
+ if (0 === this._layerTrees.length)
553
579
  return !this.isOverlay;
554
- let treeIndex = this._imageryTrees.length - 1;
580
+ let treeIndex = this._layerTrees.length - 1;
555
581
  // Start displaying at the highest completely opaque layer...
556
582
  for (; treeIndex >= 1; treeIndex--) {
557
- const imageryTreeRef = this._imageryTrees[treeIndex];
558
- const layerSettings = imageryTreeRef.layerSettings;
559
- if (layerSettings.visible && !imageryTreeRef.layerSettings.allSubLayersInvisible && !layerSettings.transparentBackground && 0 === layerSettings.transparency)
583
+ const layerTreeRef = this._layerTrees[treeIndex];
584
+ if (layerTreeRef.isOpaque)
560
585
  break; // This layer is completely opaque and will obscure all others so ignore lower ones.
561
586
  }
562
- for (; treeIndex < this._imageryTrees.length; treeIndex++) {
563
- const imageryTreeRef = this._imageryTrees[treeIndex];
564
- if (internal_1.TileTreeLoadStatus.NotFound !== imageryTreeRef.treeOwner.loadStatus && imageryTreeRef.layerSettings.visible && !imageryTreeRef.layerSettings.allSubLayersInvisible) {
565
- const imageryTree = imageryTreeRef.treeOwner.load();
566
- if (undefined === imageryTree)
587
+ for (; treeIndex < this._layerTrees.length; treeIndex++) {
588
+ const layerTreeRef = this._layerTrees[treeIndex];
589
+ if (internal_1.TileTreeLoadStatus.NotFound !== layerTreeRef.treeOwner.loadStatus && layerTreeRef.layerSettings.visible && !layerTreeRef.layerSettings.allSubLayersInvisible) {
590
+ const layerTree = layerTreeRef.treeOwner.load();
591
+ if (undefined === layerTree)
567
592
  return false; // Not loaded yet.
568
- tree.addImageryLayer(imageryTree, imageryTreeRef.layerSettings);
593
+ if (layerTree instanceof internal_1.ImageryMapTileTree) {
594
+ tree.addImageryLayer(layerTree, layerTreeRef.layerSettings, treeIndex);
595
+ }
596
+ else if (layerTreeRef instanceof internal_1.ModelMapLayerTileTreeReference)
597
+ tree.addModelLayer(layerTreeRef, context);
569
598
  }
570
599
  }
571
600
  return true;
@@ -575,7 +604,7 @@ class MapTileTreeReference extends internal_1.TileTreeReference {
575
604
  if (!context.viewFlags.backgroundMap)
576
605
  return;
577
606
  const tree = this.treeOwner.load();
578
- if (undefined === tree || !this.initializeImagery())
607
+ if (undefined === tree || !this.initializeLayers(context))
579
608
  return; // Not loaded yet.
580
609
  if (this._planarClipMask && this._planarClipMask.settings.isValid)
581
610
  context.addPlanarClassifier(tree.modelId, undefined, this._planarClipMask);
@@ -591,13 +620,14 @@ class MapTileTreeReference extends internal_1.TileTreeReference {
591
620
  const args = this.createDrawArgs(context);
592
621
  if (undefined !== args)
593
622
  tree.draw(args);
594
- tree.clearImageryLayers();
623
+ tree.clearImageryTreesAndClassifiers();
595
624
  }
596
625
  createDrawArgs(context) {
597
626
  const args = super.createDrawArgs(context);
598
627
  if (undefined === args)
599
628
  return undefined;
600
- return new internal_1.RealityTileDrawArgs(args, args.worldToViewMap, args.frustumPlanes);
629
+ const tree = this.treeOwner.load();
630
+ return new internal_1.RealityTileDrawArgs(args, args.worldToViewMap, args.frustumPlanes, undefined, tree === null || tree === void 0 ? void 0 : tree.layerClassifiers);
601
631
  }
602
632
  getViewFlagOverrides(_tree) {
603
633
  return createViewFlagOverrides(false, this._settings.applyTerrain ? undefined : false);
@@ -607,7 +637,7 @@ class MapTileTreeReference extends internal_1.TileTreeReference {
607
637
  }
608
638
  discloseTileTrees(trees) {
609
639
  super.discloseTileTrees(trees);
610
- this._imageryTrees.forEach((imageryTree) => trees.disclose(imageryTree));
640
+ this._layerTrees.forEach((imageryTree) => trees.disclose(imageryTree));
611
641
  if (this._planarClipMask)
612
642
  this._planarClipMask.discloseTileTrees(trees);
613
643
  }
@@ -615,7 +645,7 @@ class MapTileTreeReference extends internal_1.TileTreeReference {
615
645
  const tree = this.treeOwner.tileTree;
616
646
  if (undefined === tree || tree.modelId !== mapTreeModelId)
617
647
  return undefined;
618
- for (const imageryTree of this._imageryTrees)
648
+ for (const imageryTree of this._layerTrees)
619
649
  if (imageryTree.treeOwner.tileTree && imageryTree.treeOwner.tileTree.modelId === layerTreeModelId)
620
650
  return imageryTree;
621
651
  return undefined;
@@ -624,16 +654,24 @@ class MapTileTreeReference extends internal_1.TileTreeReference {
624
654
  const imageryTree = this.imageryTreeFromTreeModelIds(mapTreeModelId, layerTreeModelId);
625
655
  return imageryTree === undefined ? imageryTree : imageryTree.layerSettings;
626
656
  }
627
- async getToolTip(hit) {
657
+ // Utility method that execute the provided function for every *imagery* tiles under a given HotDetail object.
658
+ async forEachImageryTileHit(hit, func) {
628
659
  const tree = this.treeOwner.tileTree;
629
- // eslint-disable-next-line @typescript-eslint/unbound-method
630
660
  if (undefined === tree || hit.iModel !== tree.iModel || tree.modelId !== hit.modelId || !hit.viewport || !hit.viewport.view.is3d)
631
661
  return undefined;
632
662
  const backgroundMapGeometry = hit.viewport.displayStyle.getBackgroundMapGeometry();
633
663
  if (undefined === backgroundMapGeometry)
634
664
  return undefined;
635
665
  const worldPoint = hit.hitPoint.clone();
636
- const cartoGraphic = await backgroundMapGeometry.dbToCartographicFromGcs(worldPoint);
666
+ let cartoGraphic;
667
+ try {
668
+ cartoGraphic = await backgroundMapGeometry.dbToCartographicFromGcs(worldPoint);
669
+ }
670
+ catch {
671
+ }
672
+ if (!cartoGraphic) {
673
+ return undefined;
674
+ }
637
675
  const strings = [];
638
676
  const imageryTreeRef = this.imageryTreeFromTreeModelIds(hit.modelId, hit.sourceId);
639
677
  if (imageryTreeRef !== undefined) {
@@ -645,23 +683,72 @@ class MapTileTreeReference extends internal_1.TileTreeReference {
645
683
  const imageryTree = imageryTreeRef.treeOwner.tileTree;
646
684
  if (imageryTree) {
647
685
  for (const imageryTile of terrainTile.imageryTiles) {
648
- if (imageryTree === imageryTile.imageryTree && imageryTile.rectangle.containsCartographic(cartoGraphic))
649
- await imageryTree.imageryLoader.getToolTip(strings, imageryTile.quadId, cartoGraphic, imageryTree);
686
+ if (imageryTree === imageryTile.imageryTree && imageryTile.rectangle.containsCartographic(cartoGraphic)) {
687
+ try {
688
+ await func(imageryTreeRef, imageryTile.quadId, cartoGraphic, imageryTree);
689
+ }
690
+ catch {
691
+ // continue iterating even though we got a failure.
692
+ }
693
+ }
650
694
  }
651
695
  }
652
696
  }
653
697
  }
654
698
  }
655
- strings.push(`Latitude: ${cartoGraphic.latitudeDegrees.toFixed(4)}`);
656
- strings.push(`Longitude: ${cartoGraphic.longitudeDegrees.toFixed(4)}`);
657
- if (this.settings.applyTerrain) {
658
- const geodeticHeight = (cartoGraphic.height - tree.bimElevationBias) / tree.terrainExaggeration;
659
- strings.push(`Height (Meters) Geodetic: ${geodeticHeight.toFixed(1)} Sea Level: ${(geodeticHeight - tree.geodeticOffset).toFixed(1)}`);
699
+ }
700
+ async getToolTip(hit) {
701
+ const tree = this.treeOwner.tileTree;
702
+ if (tree.modelId !== hit.modelId)
703
+ return undefined;
704
+ let carto;
705
+ const strings = [];
706
+ const getTooltipFunc = async (imageryTreeRef, quadId, cartoGraphic, imageryTree) => {
707
+ strings.push(`Imagery Layer: ${imageryTreeRef.layerSettings.name}`);
708
+ carto = cartoGraphic;
709
+ await imageryTree.imageryLoader.getToolTip(strings, quadId, cartoGraphic, imageryTree);
710
+ };
711
+ try {
712
+ await this.forEachImageryTileHit(hit, getTooltipFunc);
713
+ }
714
+ catch {
715
+ // No results added
716
+ }
717
+ if (carto) {
718
+ strings.push(`Latitude: ${carto.latitudeDegrees.toFixed(4)}`);
719
+ strings.push(`Longitude: ${carto.longitudeDegrees.toFixed(4)}`);
720
+ if (this.settings.applyTerrain && tree.terrainExaggeration !== 0.0) {
721
+ const geodeticHeight = (carto.height - tree.bimElevationBias) / tree.terrainExaggeration;
722
+ strings.push(`Height (Meters) Geodetic: ${geodeticHeight.toFixed(1)} Sea Level: ${(geodeticHeight - tree.geodeticOffset).toFixed(1)}`);
723
+ }
660
724
  }
661
725
  const div = document.createElement("div");
662
726
  div.innerHTML = strings.join("<br>");
663
727
  return div;
664
728
  }
729
+ async getMapFeatureInfo(hit) {
730
+ const tree = this.treeOwner.tileTree;
731
+ if (undefined === tree || hit.iModel !== tree.iModel || tree.modelId !== hit.modelId || !hit.viewport || !hit.viewport.view.is3d)
732
+ return undefined;
733
+ const info = [];
734
+ const imageryTreeRef = this.imageryTreeFromTreeModelIds(hit.modelId, hit.sourceId);
735
+ if (imageryTreeRef !== undefined) {
736
+ const getFeatureInfoFunc = async (_imageryTreeRef, quadId, cartoGraphic, imageryTree) => {
737
+ try {
738
+ await imageryTree.imageryLoader.getMapFeatureInfo(info, quadId, cartoGraphic, imageryTree);
739
+ }
740
+ catch {
741
+ }
742
+ };
743
+ try {
744
+ await this.forEachImageryTileHit(hit, getFeatureInfoFunc);
745
+ }
746
+ catch {
747
+ // No results added
748
+ }
749
+ }
750
+ return info;
751
+ }
665
752
  /** Add logo cards to logo div. */
666
753
  addLogoCards(cards, vp) {
667
754
  const tree = this.treeOwner.tileTree;
@@ -669,7 +756,7 @@ class MapTileTreeReference extends internal_1.TileTreeReference {
669
756
  if (tree) {
670
757
  if (undefined !== (logo = tree.mapLoader.terrainProvider.getLogo()))
671
758
  cards.appendChild(logo);
672
- for (const imageryTreeRef of this._imageryTrees) {
759
+ for (const imageryTreeRef of this._layerTrees) {
673
760
  if (imageryTreeRef.layerSettings.visible) {
674
761
  const imageryTree = imageryTreeRef.treeOwner.tileTree;
675
762
  if (imageryTree && (undefined !== (logo = imageryTree.getLogo(vp))))