@itwin/core-frontend 3.1.0-dev.1 → 3.1.0-dev.14

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 (314) hide show
  1. package/lib/cjs/ApproximateTerrainHeights.d.ts +1 -1
  2. package/lib/cjs/ApproximateTerrainHeights.d.ts.map +1 -1
  3. package/lib/cjs/ApproximateTerrainHeights.js +21 -9
  4. package/lib/cjs/ApproximateTerrainHeights.js.map +1 -1
  5. package/lib/cjs/ApproximateTerrainHeightsProps.d.ts +12 -0
  6. package/lib/cjs/ApproximateTerrainHeightsProps.d.ts.map +1 -0
  7. package/lib/cjs/ApproximateTerrainHeightsProps.js +13 -0
  8. package/lib/cjs/ApproximateTerrainHeightsProps.js.map +1 -0
  9. package/lib/cjs/BriefcaseConnection.d.ts.map +1 -1
  10. package/lib/cjs/BriefcaseConnection.js +6 -5
  11. package/lib/cjs/BriefcaseConnection.js.map +1 -1
  12. package/lib/cjs/DisplayStyleState.d.ts +1 -0
  13. package/lib/cjs/DisplayStyleState.d.ts.map +1 -1
  14. package/lib/cjs/DisplayStyleState.js.map +1 -1
  15. package/lib/cjs/DrawingViewState.js +3 -3
  16. package/lib/cjs/DrawingViewState.js.map +1 -1
  17. package/lib/cjs/LocalhostIpcApp.d.ts +2 -0
  18. package/lib/cjs/LocalhostIpcApp.d.ts.map +1 -1
  19. package/lib/cjs/LocalhostIpcApp.js +10 -4
  20. package/lib/cjs/LocalhostIpcApp.js.map +1 -1
  21. package/lib/cjs/SheetViewState.js +3 -3
  22. package/lib/cjs/SheetViewState.js.map +1 -1
  23. package/lib/cjs/Viewport.d.ts +6 -3
  24. package/lib/cjs/Viewport.d.ts.map +1 -1
  25. package/lib/cjs/Viewport.js +16 -9
  26. package/lib/cjs/Viewport.js.map +1 -1
  27. package/lib/cjs/render/RenderSystem.d.ts +4 -3
  28. package/lib/cjs/render/RenderSystem.d.ts.map +1 -1
  29. package/lib/cjs/render/RenderSystem.js +3 -3
  30. package/lib/cjs/render/RenderSystem.js.map +1 -1
  31. package/lib/cjs/render/primitives/mesh/RealityMeshPrimitive.d.ts +2 -0
  32. package/lib/cjs/render/primitives/mesh/RealityMeshPrimitive.d.ts.map +1 -1
  33. package/lib/cjs/render/primitives/mesh/RealityMeshPrimitive.js +39 -2
  34. package/lib/cjs/render/primitives/mesh/RealityMeshPrimitive.js.map +1 -1
  35. package/lib/cjs/render/webgl/DrawCommand.js +1 -1
  36. package/lib/cjs/render/webgl/DrawCommand.js.map +1 -1
  37. package/lib/cjs/render/webgl/RealityMesh.d.ts +1 -0
  38. package/lib/cjs/render/webgl/RealityMesh.d.ts.map +1 -1
  39. package/lib/cjs/render/webgl/RealityMesh.js +1 -0
  40. package/lib/cjs/render/webgl/RealityMesh.js.map +1 -1
  41. package/lib/cjs/render/webgl/SceneCompositor.d.ts +3 -0
  42. package/lib/cjs/render/webgl/SceneCompositor.d.ts.map +1 -1
  43. package/lib/cjs/render/webgl/SceneCompositor.js +31 -6
  44. package/lib/cjs/render/webgl/SceneCompositor.js.map +1 -1
  45. package/lib/cjs/render/webgl/ShaderProgram.d.ts +1 -0
  46. package/lib/cjs/render/webgl/ShaderProgram.d.ts.map +1 -1
  47. package/lib/cjs/render/webgl/ShaderProgram.js +1 -0
  48. package/lib/cjs/render/webgl/ShaderProgram.js.map +1 -1
  49. package/lib/cjs/render/webgl/Texture.d.ts.map +1 -1
  50. package/lib/cjs/render/webgl/Texture.js +2 -2
  51. package/lib/cjs/render/webgl/Texture.js.map +1 -1
  52. package/lib/cjs/tile/DynamicIModelTile.d.ts.map +1 -1
  53. package/lib/cjs/tile/DynamicIModelTile.js +1 -1
  54. package/lib/cjs/tile/DynamicIModelTile.js.map +1 -1
  55. package/lib/cjs/tile/GltfReader.d.ts +6 -1
  56. package/lib/cjs/tile/GltfReader.d.ts.map +1 -1
  57. package/lib/cjs/tile/GltfReader.js +102 -27
  58. package/lib/cjs/tile/GltfReader.js.map +1 -1
  59. package/lib/cjs/tile/LRUTileList.d.ts +29 -29
  60. package/lib/cjs/tile/LRUTileList.d.ts.map +1 -1
  61. package/lib/cjs/tile/LRUTileList.js +50 -50
  62. package/lib/cjs/tile/LRUTileList.js.map +1 -1
  63. package/lib/cjs/tile/OrbitGtTileTree.js +1 -1
  64. package/lib/cjs/tile/OrbitGtTileTree.js.map +1 -1
  65. package/lib/cjs/tile/RealityModelTileTree.d.ts +24 -2
  66. package/lib/cjs/tile/RealityModelTileTree.d.ts.map +1 -1
  67. package/lib/cjs/tile/RealityModelTileTree.js +36 -11
  68. package/lib/cjs/tile/RealityModelTileTree.js.map +1 -1
  69. package/lib/cjs/tile/RealityTile.d.ts +17 -3
  70. package/lib/cjs/tile/RealityTile.d.ts.map +1 -1
  71. package/lib/cjs/tile/RealityTile.js +34 -2
  72. package/lib/cjs/tile/RealityTile.js.map +1 -1
  73. package/lib/cjs/tile/RealityTileLoader.d.ts +8 -5
  74. package/lib/cjs/tile/RealityTileLoader.d.ts.map +1 -1
  75. package/lib/cjs/tile/RealityTileLoader.js +19 -5
  76. package/lib/cjs/tile/RealityTileLoader.js.map +1 -1
  77. package/lib/cjs/tile/RealityTileTree.d.ts +3 -1
  78. package/lib/cjs/tile/RealityTileTree.d.ts.map +1 -1
  79. package/lib/cjs/tile/RealityTileTree.js +5 -1
  80. package/lib/cjs/tile/RealityTileTree.js.map +1 -1
  81. package/lib/cjs/tile/Tile.d.ts +5 -4
  82. package/lib/cjs/tile/Tile.d.ts.map +1 -1
  83. package/lib/cjs/tile/Tile.js +3 -2
  84. package/lib/cjs/tile/Tile.js.map +1 -1
  85. package/lib/cjs/tile/TileAdmin.d.ts +43 -45
  86. package/lib/cjs/tile/TileAdmin.d.ts.map +1 -1
  87. package/lib/cjs/tile/TileAdmin.js +104 -99
  88. package/lib/cjs/tile/TileAdmin.js.map +1 -1
  89. package/lib/cjs/tile/TileGeometryCollector.d.ts +80 -0
  90. package/lib/cjs/tile/TileGeometryCollector.d.ts.map +1 -0
  91. package/lib/cjs/tile/TileGeometryCollector.js +71 -0
  92. package/lib/cjs/tile/TileGeometryCollector.js.map +1 -0
  93. package/lib/cjs/tile/TileRequest.d.ts +12 -9
  94. package/lib/cjs/tile/TileRequest.d.ts.map +1 -1
  95. package/lib/cjs/tile/TileRequest.js +19 -11
  96. package/lib/cjs/tile/TileRequest.js.map +1 -1
  97. package/lib/cjs/tile/TileRequestChannel.js +3 -3
  98. package/lib/cjs/tile/TileRequestChannel.js.map +1 -1
  99. package/lib/cjs/tile/TileTree.d.ts +7 -1
  100. package/lib/cjs/tile/TileTree.d.ts.map +1 -1
  101. package/lib/cjs/tile/TileTree.js +8 -1
  102. package/lib/cjs/tile/TileTree.js.map +1 -1
  103. package/lib/cjs/tile/TileTreeReference.d.ts +23 -2
  104. package/lib/cjs/tile/TileTreeReference.d.ts.map +1 -1
  105. package/lib/cjs/tile/TileTreeReference.js +37 -1
  106. package/lib/cjs/tile/TileTreeReference.js.map +1 -1
  107. package/lib/cjs/tile/TileUsageMarker.d.ts +9 -9
  108. package/lib/cjs/tile/TileUsageMarker.d.ts.map +1 -1
  109. package/lib/cjs/tile/TileUsageMarker.js +9 -9
  110. package/lib/cjs/tile/TileUsageMarker.js.map +1 -1
  111. package/lib/cjs/tile/TileUser.d.ts +33 -0
  112. package/lib/cjs/tile/TileUser.d.ts.map +1 -0
  113. package/lib/cjs/tile/TileUser.js +28 -0
  114. package/lib/cjs/tile/TileUser.js.map +1 -0
  115. package/lib/cjs/tile/TileUserSet.d.ts +28 -0
  116. package/lib/cjs/tile/TileUserSet.d.ts.map +1 -0
  117. package/lib/cjs/tile/TileUserSet.js +123 -0
  118. package/lib/cjs/tile/TileUserSet.js.map +1 -0
  119. package/lib/cjs/tile/internal.d.ts +3 -0
  120. package/lib/cjs/tile/internal.d.ts.map +1 -1
  121. package/lib/cjs/tile/internal.js +3 -0
  122. package/lib/cjs/tile/internal.js.map +1 -1
  123. package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts +1 -2
  124. package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts.map +1 -1
  125. package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js +1 -1
  126. package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js.map +1 -1
  127. package/lib/cjs/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.d.ts +1 -2
  128. package/lib/cjs/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.d.ts.map +1 -1
  129. package/lib/cjs/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.js +1 -1
  130. package/lib/cjs/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.js.map +1 -1
  131. package/lib/cjs/tile/map/ImageryProviders/BingImageryProvider.js +1 -1
  132. package/lib/cjs/tile/map/ImageryProviders/BingImageryProvider.js.map +1 -1
  133. package/lib/cjs/tile/map/ImageryProviders/MapBoxLayerImageryProvider.d.ts +1 -2
  134. package/lib/cjs/tile/map/ImageryProviders/MapBoxLayerImageryProvider.d.ts.map +1 -1
  135. package/lib/cjs/tile/map/ImageryProviders/MapBoxLayerImageryProvider.js +1 -1
  136. package/lib/cjs/tile/map/ImageryProviders/MapBoxLayerImageryProvider.js.map +1 -1
  137. package/lib/cjs/tile/map/ImageryTileTree.d.ts +2 -2
  138. package/lib/cjs/tile/map/ImageryTileTree.d.ts.map +1 -1
  139. package/lib/cjs/tile/map/ImageryTileTree.js +1 -1
  140. package/lib/cjs/tile/map/ImageryTileTree.js.map +1 -1
  141. package/lib/cjs/tile/map/MapTile.d.ts +7 -6
  142. package/lib/cjs/tile/map/MapTile.d.ts.map +1 -1
  143. package/lib/cjs/tile/map/MapTile.js +47 -34
  144. package/lib/cjs/tile/map/MapTile.js.map +1 -1
  145. package/lib/cjs/tile/map/MapTileLoader.d.ts +2 -1
  146. package/lib/cjs/tile/map/MapTileLoader.d.ts.map +1 -1
  147. package/lib/cjs/tile/map/MapTileLoader.js +4 -1
  148. package/lib/cjs/tile/map/MapTileLoader.js.map +1 -1
  149. package/lib/cjs/tile/map/MapTileTree.d.ts +8 -5
  150. package/lib/cjs/tile/map/MapTileTree.d.ts.map +1 -1
  151. package/lib/cjs/tile/map/MapTileTree.js +25 -7
  152. package/lib/cjs/tile/map/MapTileTree.js.map +1 -1
  153. package/lib/esm/ApproximateTerrainHeights.d.ts +1 -1
  154. package/lib/esm/ApproximateTerrainHeights.d.ts.map +1 -1
  155. package/lib/esm/ApproximateTerrainHeights.js +2 -9
  156. package/lib/esm/ApproximateTerrainHeights.js.map +1 -1
  157. package/lib/esm/ApproximateTerrainHeightsProps.d.ts +12 -0
  158. package/lib/esm/ApproximateTerrainHeightsProps.d.ts.map +1 -0
  159. package/lib/esm/ApproximateTerrainHeightsProps.js +10 -0
  160. package/lib/esm/ApproximateTerrainHeightsProps.js.map +1 -0
  161. package/lib/esm/BriefcaseConnection.d.ts.map +1 -1
  162. package/lib/esm/BriefcaseConnection.js +6 -5
  163. package/lib/esm/BriefcaseConnection.js.map +1 -1
  164. package/lib/esm/DisplayStyleState.d.ts +1 -0
  165. package/lib/esm/DisplayStyleState.d.ts.map +1 -1
  166. package/lib/esm/DisplayStyleState.js.map +1 -1
  167. package/lib/esm/DrawingViewState.js +3 -3
  168. package/lib/esm/DrawingViewState.js.map +1 -1
  169. package/lib/esm/LocalhostIpcApp.d.ts +2 -0
  170. package/lib/esm/LocalhostIpcApp.d.ts.map +1 -1
  171. package/lib/esm/LocalhostIpcApp.js +10 -4
  172. package/lib/esm/LocalhostIpcApp.js.map +1 -1
  173. package/lib/esm/SheetViewState.js +3 -3
  174. package/lib/esm/SheetViewState.js.map +1 -1
  175. package/lib/esm/Viewport.d.ts +6 -3
  176. package/lib/esm/Viewport.d.ts.map +1 -1
  177. package/lib/esm/Viewport.js +17 -10
  178. package/lib/esm/Viewport.js.map +1 -1
  179. package/lib/esm/render/RenderSystem.d.ts +4 -3
  180. package/lib/esm/render/RenderSystem.d.ts.map +1 -1
  181. package/lib/esm/render/RenderSystem.js +1 -1
  182. package/lib/esm/render/RenderSystem.js.map +1 -1
  183. package/lib/esm/render/primitives/mesh/RealityMeshPrimitive.d.ts +2 -0
  184. package/lib/esm/render/primitives/mesh/RealityMeshPrimitive.d.ts.map +1 -1
  185. package/lib/esm/render/primitives/mesh/RealityMeshPrimitive.js +39 -2
  186. package/lib/esm/render/primitives/mesh/RealityMeshPrimitive.js.map +1 -1
  187. package/lib/esm/render/webgl/DrawCommand.js +1 -1
  188. package/lib/esm/render/webgl/DrawCommand.js.map +1 -1
  189. package/lib/esm/render/webgl/RealityMesh.d.ts +1 -0
  190. package/lib/esm/render/webgl/RealityMesh.d.ts.map +1 -1
  191. package/lib/esm/render/webgl/RealityMesh.js +1 -0
  192. package/lib/esm/render/webgl/RealityMesh.js.map +1 -1
  193. package/lib/esm/render/webgl/SceneCompositor.d.ts +3 -0
  194. package/lib/esm/render/webgl/SceneCompositor.d.ts.map +1 -1
  195. package/lib/esm/render/webgl/SceneCompositor.js +31 -6
  196. package/lib/esm/render/webgl/SceneCompositor.js.map +1 -1
  197. package/lib/esm/render/webgl/ShaderProgram.d.ts +1 -0
  198. package/lib/esm/render/webgl/ShaderProgram.d.ts.map +1 -1
  199. package/lib/esm/render/webgl/ShaderProgram.js +1 -0
  200. package/lib/esm/render/webgl/ShaderProgram.js.map +1 -1
  201. package/lib/esm/render/webgl/Texture.d.ts.map +1 -1
  202. package/lib/esm/render/webgl/Texture.js +2 -2
  203. package/lib/esm/render/webgl/Texture.js.map +1 -1
  204. package/lib/esm/tile/DynamicIModelTile.d.ts.map +1 -1
  205. package/lib/esm/tile/DynamicIModelTile.js +1 -1
  206. package/lib/esm/tile/DynamicIModelTile.js.map +1 -1
  207. package/lib/esm/tile/GltfReader.d.ts +6 -1
  208. package/lib/esm/tile/GltfReader.d.ts.map +1 -1
  209. package/lib/esm/tile/GltfReader.js +103 -28
  210. package/lib/esm/tile/GltfReader.js.map +1 -1
  211. package/lib/esm/tile/LRUTileList.d.ts +29 -29
  212. package/lib/esm/tile/LRUTileList.d.ts.map +1 -1
  213. package/lib/esm/tile/LRUTileList.js +47 -47
  214. package/lib/esm/tile/LRUTileList.js.map +1 -1
  215. package/lib/esm/tile/OrbitGtTileTree.js +1 -1
  216. package/lib/esm/tile/OrbitGtTileTree.js.map +1 -1
  217. package/lib/esm/tile/RealityModelTileTree.d.ts +24 -2
  218. package/lib/esm/tile/RealityModelTileTree.d.ts.map +1 -1
  219. package/lib/esm/tile/RealityModelTileTree.js +36 -12
  220. package/lib/esm/tile/RealityModelTileTree.js.map +1 -1
  221. package/lib/esm/tile/RealityTile.d.ts +17 -3
  222. package/lib/esm/tile/RealityTile.d.ts.map +1 -1
  223. package/lib/esm/tile/RealityTile.js +34 -2
  224. package/lib/esm/tile/RealityTile.js.map +1 -1
  225. package/lib/esm/tile/RealityTileLoader.d.ts +8 -5
  226. package/lib/esm/tile/RealityTileLoader.d.ts.map +1 -1
  227. package/lib/esm/tile/RealityTileLoader.js +19 -5
  228. package/lib/esm/tile/RealityTileLoader.js.map +1 -1
  229. package/lib/esm/tile/RealityTileTree.d.ts +3 -1
  230. package/lib/esm/tile/RealityTileTree.d.ts.map +1 -1
  231. package/lib/esm/tile/RealityTileTree.js +7 -3
  232. package/lib/esm/tile/RealityTileTree.js.map +1 -1
  233. package/lib/esm/tile/Tile.d.ts +5 -4
  234. package/lib/esm/tile/Tile.d.ts.map +1 -1
  235. package/lib/esm/tile/Tile.js +3 -2
  236. package/lib/esm/tile/Tile.js.map +1 -1
  237. package/lib/esm/tile/TileAdmin.d.ts +43 -45
  238. package/lib/esm/tile/TileAdmin.d.ts.map +1 -1
  239. package/lib/esm/tile/TileAdmin.js +105 -100
  240. package/lib/esm/tile/TileAdmin.js.map +1 -1
  241. package/lib/esm/tile/TileGeometryCollector.d.ts +80 -0
  242. package/lib/esm/tile/TileGeometryCollector.d.ts.map +1 -0
  243. package/lib/esm/tile/TileGeometryCollector.js +67 -0
  244. package/lib/esm/tile/TileGeometryCollector.js.map +1 -0
  245. package/lib/esm/tile/TileRequest.d.ts +12 -9
  246. package/lib/esm/tile/TileRequest.d.ts.map +1 -1
  247. package/lib/esm/tile/TileRequest.js +19 -11
  248. package/lib/esm/tile/TileRequest.js.map +1 -1
  249. package/lib/esm/tile/TileRequestChannel.js +3 -3
  250. package/lib/esm/tile/TileRequestChannel.js.map +1 -1
  251. package/lib/esm/tile/TileTree.d.ts +7 -1
  252. package/lib/esm/tile/TileTree.d.ts.map +1 -1
  253. package/lib/esm/tile/TileTree.js +8 -1
  254. package/lib/esm/tile/TileTree.js.map +1 -1
  255. package/lib/esm/tile/TileTreeReference.d.ts +23 -2
  256. package/lib/esm/tile/TileTreeReference.d.ts.map +1 -1
  257. package/lib/esm/tile/TileTreeReference.js +39 -3
  258. package/lib/esm/tile/TileTreeReference.js.map +1 -1
  259. package/lib/esm/tile/TileUsageMarker.d.ts +9 -9
  260. package/lib/esm/tile/TileUsageMarker.d.ts.map +1 -1
  261. package/lib/esm/tile/TileUsageMarker.js +9 -9
  262. package/lib/esm/tile/TileUsageMarker.js.map +1 -1
  263. package/lib/esm/tile/TileUser.d.ts +33 -0
  264. package/lib/esm/tile/TileUser.d.ts.map +1 -0
  265. package/lib/esm/tile/TileUser.js +25 -0
  266. package/lib/esm/tile/TileUser.js.map +1 -0
  267. package/lib/esm/tile/TileUserSet.d.ts +28 -0
  268. package/lib/esm/tile/TileUserSet.d.ts.map +1 -0
  269. package/lib/esm/tile/TileUserSet.js +118 -0
  270. package/lib/esm/tile/TileUserSet.js.map +1 -0
  271. package/lib/esm/tile/internal.d.ts +3 -0
  272. package/lib/esm/tile/internal.d.ts.map +1 -1
  273. package/lib/esm/tile/internal.js +3 -0
  274. package/lib/esm/tile/internal.js.map +1 -1
  275. package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts +1 -2
  276. package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts.map +1 -1
  277. package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js +1 -1
  278. package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js.map +1 -1
  279. package/lib/esm/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.d.ts +1 -2
  280. package/lib/esm/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.d.ts.map +1 -1
  281. package/lib/esm/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.js +1 -1
  282. package/lib/esm/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.js.map +1 -1
  283. package/lib/esm/tile/map/ImageryProviders/BingImageryProvider.js +1 -1
  284. package/lib/esm/tile/map/ImageryProviders/BingImageryProvider.js.map +1 -1
  285. package/lib/esm/tile/map/ImageryProviders/MapBoxLayerImageryProvider.d.ts +1 -2
  286. package/lib/esm/tile/map/ImageryProviders/MapBoxLayerImageryProvider.d.ts.map +1 -1
  287. package/lib/esm/tile/map/ImageryProviders/MapBoxLayerImageryProvider.js +1 -1
  288. package/lib/esm/tile/map/ImageryProviders/MapBoxLayerImageryProvider.js.map +1 -1
  289. package/lib/esm/tile/map/ImageryTileTree.d.ts +2 -2
  290. package/lib/esm/tile/map/ImageryTileTree.d.ts.map +1 -1
  291. package/lib/esm/tile/map/ImageryTileTree.js +1 -1
  292. package/lib/esm/tile/map/ImageryTileTree.js.map +1 -1
  293. package/lib/esm/tile/map/MapTile.d.ts +7 -6
  294. package/lib/esm/tile/map/MapTile.d.ts.map +1 -1
  295. package/lib/esm/tile/map/MapTile.js +47 -34
  296. package/lib/esm/tile/map/MapTile.js.map +1 -1
  297. package/lib/esm/tile/map/MapTileLoader.d.ts +2 -1
  298. package/lib/esm/tile/map/MapTileLoader.d.ts.map +1 -1
  299. package/lib/esm/tile/map/MapTileLoader.js +4 -1
  300. package/lib/esm/tile/map/MapTileLoader.js.map +1 -1
  301. package/lib/esm/tile/map/MapTileTree.d.ts +8 -5
  302. package/lib/esm/tile/map/MapTileTree.d.ts.map +1 -1
  303. package/lib/esm/tile/map/MapTileTree.js +26 -8
  304. package/lib/esm/tile/map/MapTileTree.js.map +1 -1
  305. package/package.json +20 -20
  306. package/lib/cjs/ViewportSet.d.ts +0 -28
  307. package/lib/cjs/ViewportSet.d.ts.map +0 -1
  308. package/lib/cjs/ViewportSet.js +0 -126
  309. package/lib/cjs/ViewportSet.js.map +0 -1
  310. package/lib/esm/ViewportSet.d.ts +0 -28
  311. package/lib/esm/ViewportSet.d.ts.map +0 -1
  312. package/lib/esm/ViewportSet.js +0 -121
  313. package/lib/esm/ViewportSet.js.map +0 -1
  314. package/lib/public/assets/approximateTerrainHeights.json +0 -1
@@ -10,7 +10,7 @@ import { QuadId } from "./tile/internal";
10
10
  export declare class ApproximateTerrainHeights {
11
11
  static readonly maxLevel = 6;
12
12
  readonly globalHeightRange: Range1d;
13
- private _terrainHeights;
13
+ private _terrainHeights?;
14
14
  private readonly _scratchCorners;
15
15
  private readonly _tilingScheme;
16
16
  private readonly _scratchTileXY;
@@ -1 +1 @@
1
- {"version":3,"file":"ApproximateTerrainHeights.d.ts","sourceRoot":"","sources":["../../src/ApproximateTerrainHeights.ts"],"names":[],"mappings":"AAIA;;GAEG;AAGH,OAAO,EAAW,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAGjE,OAAO,EAA0B,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAKjE;;;GAGG;AACH,qBAAa,yBAAyB;IACpC,gBAAuB,QAAQ,KAAK;IACpC,SAAgB,iBAAiB,UAAiC;IAClE,OAAO,CAAC,eAAe,CAAM;IAC7B,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAgH;IAChJ,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA0C;IACxE,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAwB;IAEvD,WAAkB,QAAQ,IAAI,yBAAyB,CAKtD;IAED;;;OAGG;IACU,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAUjC,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO;IAsB7D,wBAAwB,CAAC,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO;IAmB9E,OAAO,CAAC,eAAe;CA0CxB"}
1
+ {"version":3,"file":"ApproximateTerrainHeights.d.ts","sourceRoot":"","sources":["../../src/ApproximateTerrainHeights.ts"],"names":[],"mappings":"AAIA;;GAEG;AAGH,OAAO,EAAW,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAEjE,OAAO,EAA0B,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAKjE;;;GAGG;AACH,qBAAa,yBAAyB;IACpC,gBAAuB,QAAQ,KAAK;IACpC,SAAgB,iBAAiB,UAAiC;IAClE,OAAO,CAAC,eAAe,CAAC,CAAiC;IACzD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAgH;IAChJ,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA0C;IACxE,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAwB;IAEvD,WAAkB,QAAQ,IAAI,yBAAyB,CAKtD;IAED;;;OAGG;IACU,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAKjC,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO;IAsB7D,wBAAwB,CAAC,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO;IAmB9E,OAAO,CAAC,eAAe;CA0CxB"}
@@ -6,14 +6,31 @@
6
6
  /** @packageDocumentation
7
7
  * @module Views
8
8
  */
9
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
12
+ }) : (function(o, m, k, k2) {
13
+ if (k2 === undefined) k2 = k;
14
+ o[k2] = m[k];
15
+ }));
16
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
17
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
18
+ }) : function(o, v) {
19
+ o["default"] = v;
20
+ });
21
+ var __importStar = (this && this.__importStar) || function (mod) {
22
+ if (mod && mod.__esModule) return mod;
23
+ var result = {};
24
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
25
+ __setModuleDefault(result, mod);
26
+ return result;
27
+ };
9
28
  Object.defineProperty(exports, "__esModule", { value: true });
10
29
  exports.ApproximateTerrainHeights = void 0;
11
30
  const core_bentley_1 = require("@itwin/core-bentley");
12
31
  const core_geometry_1 = require("@itwin/core-geometry");
13
32
  const core_common_1 = require("@itwin/core-common");
14
- const Request_1 = require("./request/Request");
15
33
  const internal_1 = require("./tile/internal");
16
- const IModelApp_1 = require("./IModelApp");
17
34
  let instance;
18
35
  /**
19
36
  * A collection of functions for approximating terrain height
@@ -36,13 +53,8 @@ class ApproximateTerrainHeights {
36
53
  * @return {Promise}
37
54
  */
38
55
  async initialize() {
39
- if (undefined === this._terrainHeights) {
40
- const data = await (0, Request_1.request)(`${IModelApp_1.IModelApp.publicPath}assets/approximateTerrainHeights.json`, {
41
- method: "GET",
42
- responseType: "json",
43
- });
44
- this._terrainHeights = data.body;
45
- }
56
+ if (!this._terrainHeights)
57
+ this._terrainHeights = (await Promise.resolve().then(() => __importStar(require("./ApproximateTerrainHeightsProps")))).props;
46
58
  }
47
59
  getTileHeightRange(quadId, result) {
48
60
  result = core_geometry_1.Range1d.createFrom(this.globalHeightRange, result);
@@ -1 +1 @@
1
- {"version":3,"file":"ApproximateTerrainHeights.js","sourceRoot":"","sources":["../../src/ApproximateTerrainHeights.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 Views\r\n */\r\n\r\nimport { assert } from \"@itwin/core-bentley\";\r\nimport { Point2d, Range1d, Range2d } from \"@itwin/core-geometry\";\r\nimport { Cartographic } from \"@itwin/core-common\";\r\nimport { request } from \"./request/Request\";\r\nimport { GeographicTilingScheme, QuadId } from \"./tile/internal\";\r\nimport { IModelApp } from \"./IModelApp\";\r\n\r\nlet instance: ApproximateTerrainHeights | undefined;\r\n\r\n/**\r\n * A collection of functions for approximating terrain height\r\n * @internal\r\n */\r\nexport class ApproximateTerrainHeights {\r\n public static readonly maxLevel = 6;\r\n public readonly globalHeightRange = Range1d.createXX(-400, 90000); // Dead Sea to Mount Everest.\r\n private _terrainHeights: any;\r\n private readonly _scratchCorners = [Cartographic.createZero(), Cartographic.createZero(), Cartographic.createZero(), Cartographic.createZero()];\r\n private readonly _tilingScheme = new GeographicTilingScheme(2, 1, true); // Y at top... ?\r\n private readonly _scratchTileXY = Point2d.createZero();\r\n\r\n public static get instance(): ApproximateTerrainHeights {\r\n if (undefined === instance)\r\n instance = new ApproximateTerrainHeights();\r\n\r\n return instance;\r\n }\r\n\r\n /**\r\n * Initializes the minimum and maximum terrain heights.\r\n * @return {Promise}\r\n */\r\n public async initialize(): Promise<void> {\r\n if (undefined === this._terrainHeights) {\r\n const data = await request(`${IModelApp.publicPath}assets/approximateTerrainHeights.json`, {\r\n method: \"GET\",\r\n responseType: \"json\",\r\n });\r\n this._terrainHeights = data.body;\r\n }\r\n }\r\n\r\n public getTileHeightRange(quadId: QuadId, result?: Range1d): Range1d {\r\n result = Range1d.createFrom(this.globalHeightRange, result);\r\n if (undefined === this._terrainHeights)\r\n return result; // Not initialized.\r\n\r\n let level = quadId.level, column = quadId.column, row = quadId.row;\r\n if (level > 6) {\r\n column = column >> (level - 6);\r\n row = row >> quadId.row >> ((level - 6));\r\n level = 6;\r\n }\r\n\r\n const key = `${level}-${column}-${row}`;\r\n const heights = this._terrainHeights[key];\r\n assert(undefined !== heights);\r\n\r\n result.low = heights[0];\r\n result.high = heights[1];\r\n\r\n return result;\r\n }\r\n\r\n public getMinimumMaximumHeights(rectangle: Range2d, result?: Range1d): Range1d {\r\n result = Range1d.createFrom(this.globalHeightRange, result);\r\n if (undefined === this._terrainHeights)\r\n return result; // Not initialized.\r\n\r\n const xyLevel = this._getTileXYLevel(rectangle);\r\n if (undefined !== xyLevel) {\r\n const key = `${xyLevel.level}-${xyLevel.x}-${xyLevel.y}`;\r\n const heights = this._terrainHeights[key];\r\n assert(undefined !== heights);\r\n if (undefined !== heights) {\r\n result.low = heights[0];\r\n result.high = heights[1];\r\n }\r\n }\r\n\r\n return result;\r\n }\r\n\r\n private _getTileXYLevel(rectangle: Range2d): { x: number, y: number, level: number } | undefined {\r\n Cartographic.fromRadians({ longitude: rectangle.low.x, latitude: rectangle.high.y, height: 0.0 }, this._scratchCorners[0]);\r\n Cartographic.fromRadians({ longitude: rectangle.high.x, latitude: rectangle.high.y, height: 0.0 }, this._scratchCorners[1]);\r\n Cartographic.fromRadians({ longitude: rectangle.low.x, latitude: rectangle.low.y, height: 0.0 }, this._scratchCorners[2]);\r\n Cartographic.fromRadians({ longitude: rectangle.high.x, latitude: rectangle.low.y, height: 0.0 }, this._scratchCorners[3]);\r\n\r\n // Determine which tile the bounding rectangle is in\r\n let lastLevelX = 0, lastLevelY = 0;\r\n let currentX = 0, currentY = 0;\r\n const maxLevel = ApproximateTerrainHeights.maxLevel;\r\n let i;\r\n for (i = 0; i <= maxLevel; ++i) {\r\n let failed = false;\r\n for (let j = 0; j < 4; ++j) {\r\n const corner = this._scratchCorners[j];\r\n this._tilingScheme.cartographicToTileXY(corner, i, this._scratchTileXY);\r\n if (j === 0) {\r\n currentX = this._scratchTileXY.x;\r\n currentY = this._scratchTileXY.y;\r\n } else if (currentX !== this._scratchTileXY.x || currentY !== this._scratchTileXY.y) {\r\n failed = true;\r\n break;\r\n }\r\n }\r\n\r\n if (failed)\r\n break;\r\n\r\n lastLevelX = currentX;\r\n lastLevelY = currentY;\r\n }\r\n\r\n if (i === 0) {\r\n return undefined;\r\n }\r\n\r\n return {\r\n x: lastLevelX,\r\n y: lastLevelY,\r\n level: (i > maxLevel) ? maxLevel : (i - 1),\r\n };\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"ApproximateTerrainHeights.js","sourceRoot":"","sources":["../../src/ApproximateTerrainHeights.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 Views\r\n */\r\n\r\nimport { assert } from \"@itwin/core-bentley\";\r\nimport { Point2d, Range1d, Range2d } from \"@itwin/core-geometry\";\r\nimport { Cartographic } from \"@itwin/core-common\";\r\nimport { GeographicTilingScheme, QuadId } from \"./tile/internal\";\r\nimport type { ApproximateTerrainHeightsProps } from \"./ApproximateTerrainHeightsProps\";\r\n\r\nlet instance: ApproximateTerrainHeights | undefined;\r\n\r\n/**\r\n * A collection of functions for approximating terrain height\r\n * @internal\r\n */\r\nexport class ApproximateTerrainHeights {\r\n public static readonly maxLevel = 6;\r\n public readonly globalHeightRange = Range1d.createXX(-400, 90000); // Dead Sea to Mount Everest.\r\n private _terrainHeights?: ApproximateTerrainHeightsProps;\r\n private readonly _scratchCorners = [Cartographic.createZero(), Cartographic.createZero(), Cartographic.createZero(), Cartographic.createZero()];\r\n private readonly _tilingScheme = new GeographicTilingScheme(2, 1, true); // Y at top... ?\r\n private readonly _scratchTileXY = Point2d.createZero();\r\n\r\n public static get instance(): ApproximateTerrainHeights {\r\n if (undefined === instance)\r\n instance = new ApproximateTerrainHeights();\r\n\r\n return instance;\r\n }\r\n\r\n /**\r\n * Initializes the minimum and maximum terrain heights.\r\n * @return {Promise}\r\n */\r\n public async initialize(): Promise<void> {\r\n if (!this._terrainHeights)\r\n this._terrainHeights = (await import(\"./ApproximateTerrainHeightsProps\")).props;\r\n }\r\n\r\n public getTileHeightRange(quadId: QuadId, result?: Range1d): Range1d {\r\n result = Range1d.createFrom(this.globalHeightRange, result);\r\n if (undefined === this._terrainHeights)\r\n return result; // Not initialized.\r\n\r\n let level = quadId.level, column = quadId.column, row = quadId.row;\r\n if (level > 6) {\r\n column = column >> (level - 6);\r\n row = row >> quadId.row >> ((level - 6));\r\n level = 6;\r\n }\r\n\r\n const key = `${level}-${column}-${row}`;\r\n const heights = this._terrainHeights[key];\r\n assert(undefined !== heights);\r\n\r\n result.low = heights[0];\r\n result.high = heights[1];\r\n\r\n return result;\r\n }\r\n\r\n public getMinimumMaximumHeights(rectangle: Range2d, result?: Range1d): Range1d {\r\n result = Range1d.createFrom(this.globalHeightRange, result);\r\n if (undefined === this._terrainHeights)\r\n return result; // Not initialized.\r\n\r\n const xyLevel = this._getTileXYLevel(rectangle);\r\n if (undefined !== xyLevel) {\r\n const key = `${xyLevel.level}-${xyLevel.x}-${xyLevel.y}`;\r\n const heights = this._terrainHeights[key];\r\n assert(undefined !== heights);\r\n if (undefined !== heights) {\r\n result.low = heights[0];\r\n result.high = heights[1];\r\n }\r\n }\r\n\r\n return result;\r\n }\r\n\r\n private _getTileXYLevel(rectangle: Range2d): { x: number, y: number, level: number } | undefined {\r\n Cartographic.fromRadians({ longitude: rectangle.low.x, latitude: rectangle.high.y, height: 0.0 }, this._scratchCorners[0]);\r\n Cartographic.fromRadians({ longitude: rectangle.high.x, latitude: rectangle.high.y, height: 0.0 }, this._scratchCorners[1]);\r\n Cartographic.fromRadians({ longitude: rectangle.low.x, latitude: rectangle.low.y, height: 0.0 }, this._scratchCorners[2]);\r\n Cartographic.fromRadians({ longitude: rectangle.high.x, latitude: rectangle.low.y, height: 0.0 }, this._scratchCorners[3]);\r\n\r\n // Determine which tile the bounding rectangle is in\r\n let lastLevelX = 0, lastLevelY = 0;\r\n let currentX = 0, currentY = 0;\r\n const maxLevel = ApproximateTerrainHeights.maxLevel;\r\n let i;\r\n for (i = 0; i <= maxLevel; ++i) {\r\n let failed = false;\r\n for (let j = 0; j < 4; ++j) {\r\n const corner = this._scratchCorners[j];\r\n this._tilingScheme.cartographicToTileXY(corner, i, this._scratchTileXY);\r\n if (j === 0) {\r\n currentX = this._scratchTileXY.x;\r\n currentY = this._scratchTileXY.y;\r\n } else if (currentX !== this._scratchTileXY.x || currentY !== this._scratchTileXY.y) {\r\n failed = true;\r\n break;\r\n }\r\n }\r\n\r\n if (failed)\r\n break;\r\n\r\n lastLevelX = currentX;\r\n lastLevelY = currentY;\r\n }\r\n\r\n if (i === 0) {\r\n return undefined;\r\n }\r\n\r\n return {\r\n x: lastLevelX,\r\n y: lastLevelY,\r\n level: (i > maxLevel) ? maxLevel : (i - 1),\r\n };\r\n }\r\n}\r\n"]}
@@ -0,0 +1,12 @@
1
+ /** @packageDocumentation
2
+ * @module Views
3
+ */
4
+ /** @internal */
5
+ export declare type TerrainHeightRangeProps = [number, number];
6
+ /** @internal */
7
+ export interface ApproximateTerrainHeightsProps {
8
+ [key: string]: TerrainHeightRangeProps | undefined;
9
+ }
10
+ /** @internal */
11
+ export declare const props: ApproximateTerrainHeightsProps;
12
+ //# sourceMappingURL=ApproximateTerrainHeightsProps.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ApproximateTerrainHeightsProps.d.ts","sourceRoot":"","sources":["../../src/ApproximateTerrainHeightsProps.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,gBAAgB;AAChB,oBAAY,uBAAuB,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAEvD,gBAAgB;AAChB,MAAM,WAAW,8BAA8B;IAC7C,CAAC,GAAG,EAAE,MAAM,GAAG,uBAAuB,GAAG,SAAS,CAAC;CACpD;AAED,gBAAgB;AAChB,eAAO,MAAM,KAAK,EAAE,8BAA6s3Q,CAAC"}