@itwin/core-frontend 4.0.0-dev.4 → 4.0.0-dev.40

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 (606) hide show
  1. package/CHANGELOG.md +67 -37
  2. package/lib/cjs/AccuDraw.js +1 -1
  3. package/lib/cjs/AccuDraw.js.map +1 -1
  4. package/lib/cjs/AccuSnap.js +3 -3
  5. package/lib/cjs/AccuSnap.js.map +1 -1
  6. package/lib/cjs/BriefcaseConnection.js +9 -11
  7. package/lib/cjs/BriefcaseConnection.js.map +1 -1
  8. package/lib/cjs/DisplayStyleState.js +8 -12
  9. package/lib/cjs/DisplayStyleState.js.map +1 -1
  10. package/lib/cjs/DrawingViewState.js +4 -6
  11. package/lib/cjs/DrawingViewState.js.map +1 -1
  12. package/lib/cjs/ElementLocateManager.d.ts.map +1 -1
  13. package/lib/cjs/ElementLocateManager.js +2 -0
  14. package/lib/cjs/ElementLocateManager.js.map +1 -1
  15. package/lib/cjs/EnvironmentDecorations.js +2 -3
  16. package/lib/cjs/EnvironmentDecorations.js.map +1 -1
  17. package/lib/cjs/FlashSettings.js +3 -4
  18. package/lib/cjs/FlashSettings.js.map +1 -1
  19. package/lib/cjs/GeoServices.d.ts +57 -5
  20. package/lib/cjs/GeoServices.d.ts.map +1 -1
  21. package/lib/cjs/GeoServices.js +180 -155
  22. package/lib/cjs/GeoServices.js.map +1 -1
  23. package/lib/cjs/IModelApp.d.ts +1 -3
  24. package/lib/cjs/IModelApp.d.ts.map +1 -1
  25. package/lib/cjs/IModelApp.js +20 -24
  26. package/lib/cjs/IModelApp.js.map +1 -1
  27. package/lib/cjs/IModelConnection.d.ts +1 -1
  28. package/lib/cjs/IModelConnection.js +2 -2
  29. package/lib/cjs/IModelConnection.js.map +1 -1
  30. package/lib/cjs/IpcApp.js +1 -1
  31. package/lib/cjs/IpcApp.js.map +1 -1
  32. package/lib/cjs/LocalhostIpcApp.js +3 -4
  33. package/lib/cjs/LocalhostIpcApp.js.map +1 -1
  34. package/lib/cjs/ModelState.js +2 -3
  35. package/lib/cjs/ModelState.js.map +1 -1
  36. package/lib/cjs/NativeApp.d.ts +1 -1
  37. package/lib/cjs/NativeApp.js +4 -7
  38. package/lib/cjs/NativeApp.js.map +1 -1
  39. package/lib/cjs/NoRenderApp.d.ts +11 -4
  40. package/lib/cjs/NoRenderApp.d.ts.map +1 -1
  41. package/lib/cjs/NoRenderApp.js +14 -8
  42. package/lib/cjs/NoRenderApp.js.map +1 -1
  43. package/lib/cjs/PlanarClipMaskState.js +1 -1
  44. package/lib/cjs/PlanarClipMaskState.js.map +1 -1
  45. package/lib/cjs/RealityDataSourceContextShareImpl.js +2 -4
  46. package/lib/cjs/RealityDataSourceContextShareImpl.js.map +1 -1
  47. package/lib/cjs/SelectionSet.d.ts +0 -1
  48. package/lib/cjs/SelectionSet.d.ts.map +1 -1
  49. package/lib/cjs/SelectionSet.js +0 -1
  50. package/lib/cjs/SelectionSet.js.map +1 -1
  51. package/lib/cjs/SheetViewState.js +15 -23
  52. package/lib/cjs/SheetViewState.js.map +1 -1
  53. package/lib/cjs/Tiles.js +2 -2
  54. package/lib/cjs/Tiles.js.map +1 -1
  55. package/lib/cjs/ViewContext.js +1 -1
  56. package/lib/cjs/ViewContext.js.map +1 -1
  57. package/lib/cjs/ViewCreator2d.js +4 -5
  58. package/lib/cjs/ViewCreator2d.js.map +1 -1
  59. package/lib/cjs/ViewCreator3d.js +5 -5
  60. package/lib/cjs/ViewCreator3d.js.map +1 -1
  61. package/lib/cjs/ViewRect.d.ts +1 -1
  62. package/lib/cjs/ViewRect.d.ts.map +1 -1
  63. package/lib/cjs/ViewRect.js +1 -1
  64. package/lib/cjs/ViewRect.js.map +1 -1
  65. package/lib/cjs/ViewState.js +17 -24
  66. package/lib/cjs/ViewState.js.map +1 -1
  67. package/lib/cjs/Viewport.js +23 -33
  68. package/lib/cjs/Viewport.js.map +1 -1
  69. package/lib/cjs/extension/ExtensionImpl.js +1 -1
  70. package/lib/cjs/extension/ExtensionImpl.js.map +1 -1
  71. package/lib/cjs/quantity-formatting/BaseUnitFormattingSettingsProvider.js +2 -3
  72. package/lib/cjs/quantity-formatting/BaseUnitFormattingSettingsProvider.js.map +1 -1
  73. package/lib/cjs/quantity-formatting/QuantityFormatter.js +7 -9
  74. package/lib/cjs/quantity-formatting/QuantityFormatter.js.map +1 -1
  75. package/lib/cjs/render/FeatureSymbology.js +1 -2
  76. package/lib/cjs/render/FeatureSymbology.js.map +1 -1
  77. package/lib/cjs/render/GraphicBuilder.js +7 -9
  78. package/lib/cjs/render/GraphicBuilder.js.map +1 -1
  79. package/lib/cjs/render/MockRender.js +1 -2
  80. package/lib/cjs/render/MockRender.js.map +1 -1
  81. package/lib/cjs/render/ParticleCollectionBuilder.js +2 -3
  82. package/lib/cjs/render/ParticleCollectionBuilder.js.map +1 -1
  83. package/lib/cjs/render/RealityMeshParams.d.ts +2 -2
  84. package/lib/cjs/render/RealityMeshParams.d.ts.map +1 -1
  85. package/lib/cjs/render/RealityMeshParams.js +8 -11
  86. package/lib/cjs/render/RealityMeshParams.js.map +1 -1
  87. package/lib/cjs/render/RenderPlan.js +1 -1
  88. package/lib/cjs/render/RenderPlan.js.map +1 -1
  89. package/lib/cjs/render/RenderSystem.js +1 -2
  90. package/lib/cjs/render/RenderSystem.js.map +1 -1
  91. package/lib/cjs/render/VisibleFeature.js +2 -4
  92. package/lib/cjs/render/VisibleFeature.js.map +1 -1
  93. package/lib/cjs/render/primitives/AuxChannelTable.js +6 -9
  94. package/lib/cjs/render/primitives/AuxChannelTable.js.map +1 -1
  95. package/lib/cjs/render/primitives/EdgeParams.js +6 -7
  96. package/lib/cjs/render/primitives/EdgeParams.js.map +1 -1
  97. package/lib/cjs/render/primitives/PolylineParams.js +2 -3
  98. package/lib/cjs/render/primitives/PolylineParams.js.map +1 -1
  99. package/lib/cjs/render/primitives/VertexKey.js +1 -1
  100. package/lib/cjs/render/primitives/VertexKey.js.map +1 -1
  101. package/lib/cjs/render/primitives/VertexTable.js +1 -1
  102. package/lib/cjs/render/primitives/VertexTable.js.map +1 -1
  103. package/lib/cjs/render/primitives/VertexTableSplitter.js +6 -8
  104. package/lib/cjs/render/primitives/VertexTableSplitter.js.map +1 -1
  105. package/lib/cjs/render/primitives/geometry/GeometryAccumulator.js +9 -11
  106. package/lib/cjs/render/primitives/geometry/GeometryAccumulator.js.map +1 -1
  107. package/lib/cjs/render/primitives/geometry/GeometryListBuilder.js +3 -5
  108. package/lib/cjs/render/primitives/geometry/GeometryListBuilder.js.map +1 -1
  109. package/lib/cjs/render/primitives/mesh/MeshBuilder.js +1 -1
  110. package/lib/cjs/render/primitives/mesh/MeshBuilder.js.map +1 -1
  111. package/lib/cjs/render/primitives/mesh/MeshPrimitives.js +2 -3
  112. package/lib/cjs/render/primitives/mesh/MeshPrimitives.js.map +1 -1
  113. package/lib/cjs/render/webgl/BranchState.js +9 -10
  114. package/lib/cjs/render/webgl/BranchState.js.map +1 -1
  115. package/lib/cjs/render/webgl/EDL.js +17 -21
  116. package/lib/cjs/render/webgl/EDL.js.map +1 -1
  117. package/lib/cjs/render/webgl/FeatureOverrides.js +2 -2
  118. package/lib/cjs/render/webgl/FeatureOverrides.js.map +1 -1
  119. package/lib/cjs/render/webgl/Graphic.js +3 -5
  120. package/lib/cjs/render/webgl/Graphic.js.map +1 -1
  121. package/lib/cjs/render/webgl/IndexedEdgeGeometry.js +1 -1
  122. package/lib/cjs/render/webgl/IndexedEdgeGeometry.js.map +1 -1
  123. package/lib/cjs/render/webgl/InstancedGeometry.js +2 -3
  124. package/lib/cjs/render/webgl/InstancedGeometry.js.map +1 -1
  125. package/lib/cjs/render/webgl/Mesh.js +7 -10
  126. package/lib/cjs/render/webgl/Mesh.js.map +1 -1
  127. package/lib/cjs/render/webgl/MeshData.js +1 -2
  128. package/lib/cjs/render/webgl/MeshData.js.map +1 -1
  129. package/lib/cjs/render/webgl/PlanarClassifier.js +10 -15
  130. package/lib/cjs/render/webgl/PlanarClassifier.js.map +1 -1
  131. package/lib/cjs/render/webgl/RealityMesh.js +5 -8
  132. package/lib/cjs/render/webgl/RealityMesh.js.map +1 -1
  133. package/lib/cjs/render/webgl/RealityModelUniforms.js +3 -4
  134. package/lib/cjs/render/webgl/RealityModelUniforms.js.map +1 -1
  135. package/lib/cjs/render/webgl/RenderCommands.js +7 -8
  136. package/lib/cjs/render/webgl/RenderCommands.js.map +1 -1
  137. package/lib/cjs/render/webgl/SceneCompositor.js +7 -9
  138. package/lib/cjs/render/webgl/SceneCompositor.js.map +1 -1
  139. package/lib/cjs/render/webgl/ShaderBuilder.js +1 -2
  140. package/lib/cjs/render/webgl/ShaderBuilder.js.map +1 -1
  141. package/lib/cjs/render/webgl/SolarShadowMap.d.ts.map +1 -1
  142. package/lib/cjs/render/webgl/SolarShadowMap.js +1 -11
  143. package/lib/cjs/render/webgl/SolarShadowMap.js.map +1 -1
  144. package/lib/cjs/render/webgl/SurfaceGeometry.js +1 -1
  145. package/lib/cjs/render/webgl/SurfaceGeometry.js.map +1 -1
  146. package/lib/cjs/render/webgl/System.d.ts +0 -1
  147. package/lib/cjs/render/webgl/System.d.ts.map +1 -1
  148. package/lib/cjs/render/webgl/System.js +12 -17
  149. package/lib/cjs/render/webgl/System.js.map +1 -1
  150. package/lib/cjs/render/webgl/Target.js +9 -14
  151. package/lib/cjs/render/webgl/Target.js.map +1 -1
  152. package/lib/cjs/render/webgl/TargetGraphics.js +1 -2
  153. package/lib/cjs/render/webgl/TargetGraphics.js.map +1 -1
  154. package/lib/cjs/render/webgl/Texture.js +1 -2
  155. package/lib/cjs/render/webgl/Texture.js.map +1 -1
  156. package/lib/cjs/render/webgl/ThematicSensors.js +2 -4
  157. package/lib/cjs/render/webgl/ThematicSensors.js.map +1 -1
  158. package/lib/cjs/render/webgl/VisibleTileFeatures.js +1 -2
  159. package/lib/cjs/render/webgl/VisibleTileFeatures.js.map +1 -1
  160. package/lib/cjs/render/webgl/glsl/Animation.js +6 -9
  161. package/lib/cjs/render/webgl/glsl/Animation.js.map +1 -1
  162. package/lib/cjs/render/webgl/glsl/FeatureSymbology.js +1 -2
  163. package/lib/cjs/render/webgl/glsl/FeatureSymbology.js.map +1 -1
  164. package/lib/cjs/render/webgl/glsl/Instancing.js +4 -5
  165. package/lib/cjs/render/webgl/glsl/Instancing.js.map +1 -1
  166. package/lib/cjs/render/webgl/glsl/RealityMesh.js +2 -4
  167. package/lib/cjs/render/webgl/glsl/RealityMesh.js.map +1 -1
  168. package/lib/cjs/render/webgl/glsl/Surface.js +1 -2
  169. package/lib/cjs/render/webgl/glsl/Surface.js.map +1 -1
  170. package/lib/cjs/render/webgl/glsl/Thematic.js +1 -2
  171. package/lib/cjs/render/webgl/glsl/Thematic.js.map +1 -1
  172. package/lib/cjs/request/Request.d.ts.map +1 -1
  173. package/lib/cjs/request/Request.js.map +1 -1
  174. package/lib/cjs/tile/ClassifierTileTree.js +3 -3
  175. package/lib/cjs/tile/ClassifierTileTree.js.map +1 -1
  176. package/lib/cjs/tile/GltfReader.js +62 -76
  177. package/lib/cjs/tile/GltfReader.js.map +1 -1
  178. package/lib/cjs/tile/IModelTile.js +2 -3
  179. package/lib/cjs/tile/IModelTile.js.map +1 -1
  180. package/lib/cjs/tile/IModelTileRequestChannels.js +6 -11
  181. package/lib/cjs/tile/IModelTileRequestChannels.js.map +1 -1
  182. package/lib/cjs/tile/IModelTileTree.js +5 -9
  183. package/lib/cjs/tile/IModelTileTree.js.map +1 -1
  184. package/lib/cjs/tile/ImdlReader.js +13 -17
  185. package/lib/cjs/tile/ImdlReader.js.map +1 -1
  186. package/lib/cjs/tile/OrbitGtTileTree.js +2 -2
  187. package/lib/cjs/tile/OrbitGtTileTree.js.map +1 -1
  188. package/lib/cjs/tile/PntsReader.js +4 -5
  189. package/lib/cjs/tile/PntsReader.js.map +1 -1
  190. package/lib/cjs/tile/PrimaryTileTree.js +22 -32
  191. package/lib/cjs/tile/PrimaryTileTree.js.map +1 -1
  192. package/lib/cjs/tile/RealityModelTileTree.js +12 -19
  193. package/lib/cjs/tile/RealityModelTileTree.js.map +1 -1
  194. package/lib/cjs/tile/RealityTile.d.ts +1 -1
  195. package/lib/cjs/tile/RealityTile.js +4 -6
  196. package/lib/cjs/tile/RealityTile.js.map +1 -1
  197. package/lib/cjs/tile/RealityTileLoader.js +2 -2
  198. package/lib/cjs/tile/RealityTileLoader.js.map +1 -1
  199. package/lib/cjs/tile/RealityTileTree.d.ts +1 -1
  200. package/lib/cjs/tile/RealityTileTree.d.ts.map +1 -1
  201. package/lib/cjs/tile/RealityTileTree.js +2 -3
  202. package/lib/cjs/tile/RealityTileTree.js.map +1 -1
  203. package/lib/cjs/tile/ThreeDTileFormatInterpreter.js +3 -5
  204. package/lib/cjs/tile/ThreeDTileFormatInterpreter.js.map +1 -1
  205. package/lib/cjs/tile/Tile.js +1 -1
  206. package/lib/cjs/tile/Tile.js.map +1 -1
  207. package/lib/cjs/tile/TileAdmin.d.ts +5 -1
  208. package/lib/cjs/tile/TileAdmin.d.ts.map +1 -1
  209. package/lib/cjs/tile/TileAdmin.js +22 -27
  210. package/lib/cjs/tile/TileAdmin.js.map +1 -1
  211. package/lib/cjs/tile/TileDrawArgs.js +3 -6
  212. package/lib/cjs/tile/TileDrawArgs.js.map +1 -1
  213. package/lib/cjs/tile/TileRequest.d.ts.map +1 -1
  214. package/lib/cjs/tile/TileRequest.js +2 -1
  215. package/lib/cjs/tile/TileRequest.js.map +1 -1
  216. package/lib/cjs/tile/TileRequestChannel.d.ts +23 -1
  217. package/lib/cjs/tile/TileRequestChannel.d.ts.map +1 -1
  218. package/lib/cjs/tile/TileRequestChannel.js +28 -7
  219. package/lib/cjs/tile/TileRequestChannel.js.map +1 -1
  220. package/lib/cjs/tile/TileRequestChannels.js +1 -1
  221. package/lib/cjs/tile/TileRequestChannels.js.map +1 -1
  222. package/lib/cjs/tile/TileTree.js +2 -3
  223. package/lib/cjs/tile/TileTree.js.map +1 -1
  224. package/lib/cjs/tile/TiledGraphicsProvider.js +1 -1
  225. package/lib/cjs/tile/TiledGraphicsProvider.js.map +1 -1
  226. package/lib/cjs/tile/map/ArcGISTileMap.js +5 -6
  227. package/lib/cjs/tile/map/ArcGISTileMap.js.map +1 -1
  228. package/lib/cjs/tile/map/ArcGisUtilities.d.ts.map +1 -1
  229. package/lib/cjs/tile/map/ArcGisUtilities.js +6 -8
  230. package/lib/cjs/tile/map/ArcGisUtilities.js.map +1 -1
  231. package/lib/cjs/tile/map/EllipsoidTerrainProvider.d.ts +11 -3
  232. package/lib/cjs/tile/map/EllipsoidTerrainProvider.d.ts.map +1 -1
  233. package/lib/cjs/tile/map/EllipsoidTerrainProvider.js +17 -5
  234. package/lib/cjs/tile/map/EllipsoidTerrainProvider.js.map +1 -1
  235. package/lib/cjs/tile/map/ImageryProviders/ArcGISImageryProvider.js +4 -7
  236. package/lib/cjs/tile/map/ImageryProviders/ArcGISImageryProvider.js.map +1 -1
  237. package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts.map +1 -1
  238. package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js +6 -9
  239. package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js.map +1 -1
  240. package/lib/cjs/tile/map/ImageryProviders/BingImageryProvider.js +1 -2
  241. package/lib/cjs/tile/map/ImageryProviders/BingImageryProvider.js.map +1 -1
  242. package/lib/cjs/tile/map/ImageryProviders/WmsMapLayerImageryProvider.js +14 -19
  243. package/lib/cjs/tile/map/ImageryProviders/WmsMapLayerImageryProvider.js.map +1 -1
  244. package/lib/cjs/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.js +14 -20
  245. package/lib/cjs/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.js.map +1 -1
  246. package/lib/cjs/tile/map/ImageryTileTree.d.ts +2 -2
  247. package/lib/cjs/tile/map/ImageryTileTree.d.ts.map +1 -1
  248. package/lib/cjs/tile/map/ImageryTileTree.js +10 -5
  249. package/lib/cjs/tile/map/ImageryTileTree.js.map +1 -1
  250. package/lib/cjs/tile/map/MapCartoRectangle.d.ts +1 -1
  251. package/lib/cjs/tile/map/MapCartoRectangle.js +2 -2
  252. package/lib/cjs/tile/map/MapCartoRectangle.js.map +1 -1
  253. package/lib/cjs/tile/map/MapLayerFormatRegistry.js +5 -6
  254. package/lib/cjs/tile/map/MapLayerFormatRegistry.js.map +1 -1
  255. package/lib/cjs/tile/map/MapLayerImageryFormats.js +11 -14
  256. package/lib/cjs/tile/map/MapLayerImageryFormats.js.map +1 -1
  257. package/lib/cjs/tile/map/MapLayerImageryProvider.js +2 -3
  258. package/lib/cjs/tile/map/MapLayerImageryProvider.js.map +1 -1
  259. package/lib/cjs/tile/map/MapLayerSources.js +1 -1
  260. package/lib/cjs/tile/map/MapLayerSources.js.map +1 -1
  261. package/lib/cjs/tile/map/MapTile.d.ts +10 -2
  262. package/lib/cjs/tile/map/MapTile.d.ts.map +1 -1
  263. package/lib/cjs/tile/map/MapTile.js +34 -12
  264. package/lib/cjs/tile/map/MapTile.js.map +1 -1
  265. package/lib/cjs/tile/map/MapTileLoader.js +1 -1
  266. package/lib/cjs/tile/map/MapTileLoader.js.map +1 -1
  267. package/lib/cjs/tile/map/MapTileTree.d.ts +3 -2
  268. package/lib/cjs/tile/map/MapTileTree.d.ts.map +1 -1
  269. package/lib/cjs/tile/map/MapTileTree.js +24 -26
  270. package/lib/cjs/tile/map/MapTileTree.js.map +1 -1
  271. package/lib/cjs/tile/map/MapTiledGraphicsProvider.js +6 -7
  272. package/lib/cjs/tile/map/MapTiledGraphicsProvider.js.map +1 -1
  273. package/lib/cjs/tile/map/MapTilingScheme.d.ts +1 -1
  274. package/lib/cjs/tile/map/MapTilingScheme.js +1 -1
  275. package/lib/cjs/tile/map/MapTilingScheme.js.map +1 -1
  276. package/lib/cjs/tile/map/QuadId.d.ts +1 -1
  277. package/lib/cjs/tile/map/QuadId.js +1 -1
  278. package/lib/cjs/tile/map/QuadId.js.map +1 -1
  279. package/lib/cjs/tile/map/TerrainMeshProvider.d.ts +9 -4
  280. package/lib/cjs/tile/map/TerrainMeshProvider.d.ts.map +1 -1
  281. package/lib/cjs/tile/map/TerrainMeshProvider.js +6 -1
  282. package/lib/cjs/tile/map/TerrainMeshProvider.js.map +1 -1
  283. package/lib/cjs/tile/map/TerrainProvider.d.ts +2 -2
  284. package/lib/cjs/tile/map/TerrainProvider.js +1 -1
  285. package/lib/cjs/tile/map/TerrainProvider.js.map +1 -1
  286. package/lib/cjs/tile/map/WmsCapabilities.js +4 -5
  287. package/lib/cjs/tile/map/WmsCapabilities.js.map +1 -1
  288. package/lib/cjs/tile/map/WmtsCapabilities.js +17 -25
  289. package/lib/cjs/tile/map/WmtsCapabilities.js.map +1 -1
  290. package/lib/cjs/tools/ClipViewTool.js +1 -1
  291. package/lib/cjs/tools/ClipViewTool.js.map +1 -1
  292. package/lib/cjs/tools/MeasureTool.js +2 -4
  293. package/lib/cjs/tools/MeasureTool.js.map +1 -1
  294. package/lib/cjs/tools/PrimitiveTool.js +2 -3
  295. package/lib/cjs/tools/PrimitiveTool.js.map +1 -1
  296. package/lib/cjs/tools/SelectTool.js +1 -2
  297. package/lib/cjs/tools/SelectTool.js.map +1 -1
  298. package/lib/cjs/tools/Tool.js +2 -3
  299. package/lib/cjs/tools/Tool.js.map +1 -1
  300. package/lib/cjs/tools/ToolAdmin.js +2 -4
  301. package/lib/cjs/tools/ToolAdmin.js.map +1 -1
  302. package/lib/cjs/tools/ViewTool.js +3 -3
  303. package/lib/cjs/tools/ViewTool.js.map +1 -1
  304. package/lib/esm/AccuDraw.js +1 -1
  305. package/lib/esm/AccuDraw.js.map +1 -1
  306. package/lib/esm/AccuSnap.js +3 -3
  307. package/lib/esm/AccuSnap.js.map +1 -1
  308. package/lib/esm/BriefcaseConnection.js +9 -11
  309. package/lib/esm/BriefcaseConnection.js.map +1 -1
  310. package/lib/esm/DisplayStyleState.js +8 -12
  311. package/lib/esm/DisplayStyleState.js.map +1 -1
  312. package/lib/esm/DrawingViewState.js +4 -6
  313. package/lib/esm/DrawingViewState.js.map +1 -1
  314. package/lib/esm/ElementLocateManager.d.ts.map +1 -1
  315. package/lib/esm/ElementLocateManager.js +2 -0
  316. package/lib/esm/ElementLocateManager.js.map +1 -1
  317. package/lib/esm/EnvironmentDecorations.js +2 -3
  318. package/lib/esm/EnvironmentDecorations.js.map +1 -1
  319. package/lib/esm/FlashSettings.js +3 -4
  320. package/lib/esm/FlashSettings.js.map +1 -1
  321. package/lib/esm/GeoServices.d.ts +57 -5
  322. package/lib/esm/GeoServices.d.ts.map +1 -1
  323. package/lib/esm/GeoServices.js +178 -154
  324. package/lib/esm/GeoServices.js.map +1 -1
  325. package/lib/esm/IModelApp.d.ts +1 -3
  326. package/lib/esm/IModelApp.d.ts.map +1 -1
  327. package/lib/esm/IModelApp.js +20 -24
  328. package/lib/esm/IModelApp.js.map +1 -1
  329. package/lib/esm/IModelConnection.d.ts +1 -1
  330. package/lib/esm/IModelConnection.js +2 -2
  331. package/lib/esm/IModelConnection.js.map +1 -1
  332. package/lib/esm/IpcApp.js +1 -1
  333. package/lib/esm/IpcApp.js.map +1 -1
  334. package/lib/esm/LocalhostIpcApp.js +3 -4
  335. package/lib/esm/LocalhostIpcApp.js.map +1 -1
  336. package/lib/esm/ModelState.js +2 -3
  337. package/lib/esm/ModelState.js.map +1 -1
  338. package/lib/esm/NativeApp.d.ts +1 -1
  339. package/lib/esm/NativeApp.js +4 -7
  340. package/lib/esm/NativeApp.js.map +1 -1
  341. package/lib/esm/NoRenderApp.d.ts +11 -4
  342. package/lib/esm/NoRenderApp.d.ts.map +1 -1
  343. package/lib/esm/NoRenderApp.js +12 -6
  344. package/lib/esm/NoRenderApp.js.map +1 -1
  345. package/lib/esm/PlanarClipMaskState.js +1 -1
  346. package/lib/esm/PlanarClipMaskState.js.map +1 -1
  347. package/lib/esm/RealityDataSourceContextShareImpl.js +2 -4
  348. package/lib/esm/RealityDataSourceContextShareImpl.js.map +1 -1
  349. package/lib/esm/SelectionSet.d.ts +0 -1
  350. package/lib/esm/SelectionSet.d.ts.map +1 -1
  351. package/lib/esm/SelectionSet.js +0 -1
  352. package/lib/esm/SelectionSet.js.map +1 -1
  353. package/lib/esm/SheetViewState.js +15 -23
  354. package/lib/esm/SheetViewState.js.map +1 -1
  355. package/lib/esm/Tiles.js +2 -2
  356. package/lib/esm/Tiles.js.map +1 -1
  357. package/lib/esm/ViewContext.js +1 -1
  358. package/lib/esm/ViewContext.js.map +1 -1
  359. package/lib/esm/ViewCreator2d.js +4 -5
  360. package/lib/esm/ViewCreator2d.js.map +1 -1
  361. package/lib/esm/ViewCreator3d.js +5 -5
  362. package/lib/esm/ViewCreator3d.js.map +1 -1
  363. package/lib/esm/ViewRect.d.ts +1 -1
  364. package/lib/esm/ViewRect.d.ts.map +1 -1
  365. package/lib/esm/ViewRect.js +1 -1
  366. package/lib/esm/ViewRect.js.map +1 -1
  367. package/lib/esm/ViewState.js +17 -24
  368. package/lib/esm/ViewState.js.map +1 -1
  369. package/lib/esm/Viewport.js +23 -33
  370. package/lib/esm/Viewport.js.map +1 -1
  371. package/lib/esm/extension/ExtensionImpl.js +1 -1
  372. package/lib/esm/extension/ExtensionImpl.js.map +1 -1
  373. package/lib/esm/quantity-formatting/BaseUnitFormattingSettingsProvider.js +2 -3
  374. package/lib/esm/quantity-formatting/BaseUnitFormattingSettingsProvider.js.map +1 -1
  375. package/lib/esm/quantity-formatting/QuantityFormatter.js +7 -9
  376. package/lib/esm/quantity-formatting/QuantityFormatter.js.map +1 -1
  377. package/lib/esm/render/FeatureSymbology.js +1 -2
  378. package/lib/esm/render/FeatureSymbology.js.map +1 -1
  379. package/lib/esm/render/GraphicBuilder.js +7 -9
  380. package/lib/esm/render/GraphicBuilder.js.map +1 -1
  381. package/lib/esm/render/MockRender.js +1 -2
  382. package/lib/esm/render/MockRender.js.map +1 -1
  383. package/lib/esm/render/ParticleCollectionBuilder.js +2 -3
  384. package/lib/esm/render/ParticleCollectionBuilder.js.map +1 -1
  385. package/lib/esm/render/RealityMeshParams.d.ts +2 -2
  386. package/lib/esm/render/RealityMeshParams.d.ts.map +1 -1
  387. package/lib/esm/render/RealityMeshParams.js +8 -11
  388. package/lib/esm/render/RealityMeshParams.js.map +1 -1
  389. package/lib/esm/render/RenderPlan.js +1 -1
  390. package/lib/esm/render/RenderPlan.js.map +1 -1
  391. package/lib/esm/render/RenderSystem.js +1 -2
  392. package/lib/esm/render/RenderSystem.js.map +1 -1
  393. package/lib/esm/render/VisibleFeature.js +2 -4
  394. package/lib/esm/render/VisibleFeature.js.map +1 -1
  395. package/lib/esm/render/primitives/AuxChannelTable.js +6 -9
  396. package/lib/esm/render/primitives/AuxChannelTable.js.map +1 -1
  397. package/lib/esm/render/primitives/EdgeParams.js +6 -7
  398. package/lib/esm/render/primitives/EdgeParams.js.map +1 -1
  399. package/lib/esm/render/primitives/PolylineParams.js +2 -3
  400. package/lib/esm/render/primitives/PolylineParams.js.map +1 -1
  401. package/lib/esm/render/primitives/VertexKey.js +1 -1
  402. package/lib/esm/render/primitives/VertexKey.js.map +1 -1
  403. package/lib/esm/render/primitives/VertexTable.js +1 -1
  404. package/lib/esm/render/primitives/VertexTable.js.map +1 -1
  405. package/lib/esm/render/primitives/VertexTableSplitter.js +6 -8
  406. package/lib/esm/render/primitives/VertexTableSplitter.js.map +1 -1
  407. package/lib/esm/render/primitives/geometry/GeometryAccumulator.js +9 -11
  408. package/lib/esm/render/primitives/geometry/GeometryAccumulator.js.map +1 -1
  409. package/lib/esm/render/primitives/geometry/GeometryListBuilder.js +3 -5
  410. package/lib/esm/render/primitives/geometry/GeometryListBuilder.js.map +1 -1
  411. package/lib/esm/render/primitives/mesh/MeshBuilder.js +1 -1
  412. package/lib/esm/render/primitives/mesh/MeshBuilder.js.map +1 -1
  413. package/lib/esm/render/primitives/mesh/MeshPrimitives.js +2 -3
  414. package/lib/esm/render/primitives/mesh/MeshPrimitives.js.map +1 -1
  415. package/lib/esm/render/webgl/BranchState.js +9 -10
  416. package/lib/esm/render/webgl/BranchState.js.map +1 -1
  417. package/lib/esm/render/webgl/EDL.js +17 -21
  418. package/lib/esm/render/webgl/EDL.js.map +1 -1
  419. package/lib/esm/render/webgl/FeatureOverrides.js +2 -2
  420. package/lib/esm/render/webgl/FeatureOverrides.js.map +1 -1
  421. package/lib/esm/render/webgl/Graphic.js +3 -5
  422. package/lib/esm/render/webgl/Graphic.js.map +1 -1
  423. package/lib/esm/render/webgl/IndexedEdgeGeometry.js +1 -1
  424. package/lib/esm/render/webgl/IndexedEdgeGeometry.js.map +1 -1
  425. package/lib/esm/render/webgl/InstancedGeometry.js +2 -3
  426. package/lib/esm/render/webgl/InstancedGeometry.js.map +1 -1
  427. package/lib/esm/render/webgl/Mesh.js +7 -10
  428. package/lib/esm/render/webgl/Mesh.js.map +1 -1
  429. package/lib/esm/render/webgl/MeshData.js +1 -2
  430. package/lib/esm/render/webgl/MeshData.js.map +1 -1
  431. package/lib/esm/render/webgl/PlanarClassifier.js +10 -15
  432. package/lib/esm/render/webgl/PlanarClassifier.js.map +1 -1
  433. package/lib/esm/render/webgl/RealityMesh.js +5 -8
  434. package/lib/esm/render/webgl/RealityMesh.js.map +1 -1
  435. package/lib/esm/render/webgl/RealityModelUniforms.js +3 -4
  436. package/lib/esm/render/webgl/RealityModelUniforms.js.map +1 -1
  437. package/lib/esm/render/webgl/RenderCommands.js +7 -8
  438. package/lib/esm/render/webgl/RenderCommands.js.map +1 -1
  439. package/lib/esm/render/webgl/SceneCompositor.js +7 -9
  440. package/lib/esm/render/webgl/SceneCompositor.js.map +1 -1
  441. package/lib/esm/render/webgl/ShaderBuilder.js +1 -2
  442. package/lib/esm/render/webgl/ShaderBuilder.js.map +1 -1
  443. package/lib/esm/render/webgl/SolarShadowMap.d.ts.map +1 -1
  444. package/lib/esm/render/webgl/SolarShadowMap.js +1 -11
  445. package/lib/esm/render/webgl/SolarShadowMap.js.map +1 -1
  446. package/lib/esm/render/webgl/SurfaceGeometry.js +1 -1
  447. package/lib/esm/render/webgl/SurfaceGeometry.js.map +1 -1
  448. package/lib/esm/render/webgl/System.d.ts +0 -1
  449. package/lib/esm/render/webgl/System.d.ts.map +1 -1
  450. package/lib/esm/render/webgl/System.js +12 -17
  451. package/lib/esm/render/webgl/System.js.map +1 -1
  452. package/lib/esm/render/webgl/Target.js +9 -14
  453. package/lib/esm/render/webgl/Target.js.map +1 -1
  454. package/lib/esm/render/webgl/TargetGraphics.js +1 -2
  455. package/lib/esm/render/webgl/TargetGraphics.js.map +1 -1
  456. package/lib/esm/render/webgl/Texture.js +1 -2
  457. package/lib/esm/render/webgl/Texture.js.map +1 -1
  458. package/lib/esm/render/webgl/ThematicSensors.js +2 -4
  459. package/lib/esm/render/webgl/ThematicSensors.js.map +1 -1
  460. package/lib/esm/render/webgl/VisibleTileFeatures.js +1 -2
  461. package/lib/esm/render/webgl/VisibleTileFeatures.js.map +1 -1
  462. package/lib/esm/render/webgl/glsl/Animation.js +6 -9
  463. package/lib/esm/render/webgl/glsl/Animation.js.map +1 -1
  464. package/lib/esm/render/webgl/glsl/FeatureSymbology.js +1 -2
  465. package/lib/esm/render/webgl/glsl/FeatureSymbology.js.map +1 -1
  466. package/lib/esm/render/webgl/glsl/Instancing.js +4 -5
  467. package/lib/esm/render/webgl/glsl/Instancing.js.map +1 -1
  468. package/lib/esm/render/webgl/glsl/RealityMesh.js +2 -4
  469. package/lib/esm/render/webgl/glsl/RealityMesh.js.map +1 -1
  470. package/lib/esm/render/webgl/glsl/Surface.js +1 -2
  471. package/lib/esm/render/webgl/glsl/Surface.js.map +1 -1
  472. package/lib/esm/render/webgl/glsl/Thematic.js +1 -2
  473. package/lib/esm/render/webgl/glsl/Thematic.js.map +1 -1
  474. package/lib/esm/request/Request.d.ts.map +1 -1
  475. package/lib/esm/request/Request.js.map +1 -1
  476. package/lib/esm/tile/ClassifierTileTree.js +3 -3
  477. package/lib/esm/tile/ClassifierTileTree.js.map +1 -1
  478. package/lib/esm/tile/GltfReader.js +62 -76
  479. package/lib/esm/tile/GltfReader.js.map +1 -1
  480. package/lib/esm/tile/IModelTile.js +2 -3
  481. package/lib/esm/tile/IModelTile.js.map +1 -1
  482. package/lib/esm/tile/IModelTileRequestChannels.js +6 -11
  483. package/lib/esm/tile/IModelTileRequestChannels.js.map +1 -1
  484. package/lib/esm/tile/IModelTileTree.js +5 -9
  485. package/lib/esm/tile/IModelTileTree.js.map +1 -1
  486. package/lib/esm/tile/ImdlReader.js +13 -17
  487. package/lib/esm/tile/ImdlReader.js.map +1 -1
  488. package/lib/esm/tile/OrbitGtTileTree.js +2 -2
  489. package/lib/esm/tile/OrbitGtTileTree.js.map +1 -1
  490. package/lib/esm/tile/PntsReader.js +4 -5
  491. package/lib/esm/tile/PntsReader.js.map +1 -1
  492. package/lib/esm/tile/PrimaryTileTree.js +22 -32
  493. package/lib/esm/tile/PrimaryTileTree.js.map +1 -1
  494. package/lib/esm/tile/RealityModelTileTree.js +12 -19
  495. package/lib/esm/tile/RealityModelTileTree.js.map +1 -1
  496. package/lib/esm/tile/RealityTile.d.ts +1 -1
  497. package/lib/esm/tile/RealityTile.js +4 -6
  498. package/lib/esm/tile/RealityTile.js.map +1 -1
  499. package/lib/esm/tile/RealityTileLoader.js +2 -2
  500. package/lib/esm/tile/RealityTileLoader.js.map +1 -1
  501. package/lib/esm/tile/RealityTileTree.d.ts +1 -1
  502. package/lib/esm/tile/RealityTileTree.d.ts.map +1 -1
  503. package/lib/esm/tile/RealityTileTree.js +2 -3
  504. package/lib/esm/tile/RealityTileTree.js.map +1 -1
  505. package/lib/esm/tile/ThreeDTileFormatInterpreter.js +3 -5
  506. package/lib/esm/tile/ThreeDTileFormatInterpreter.js.map +1 -1
  507. package/lib/esm/tile/Tile.js +1 -1
  508. package/lib/esm/tile/Tile.js.map +1 -1
  509. package/lib/esm/tile/TileAdmin.d.ts +5 -1
  510. package/lib/esm/tile/TileAdmin.d.ts.map +1 -1
  511. package/lib/esm/tile/TileAdmin.js +22 -27
  512. package/lib/esm/tile/TileAdmin.js.map +1 -1
  513. package/lib/esm/tile/TileDrawArgs.js +3 -6
  514. package/lib/esm/tile/TileDrawArgs.js.map +1 -1
  515. package/lib/esm/tile/TileRequest.d.ts.map +1 -1
  516. package/lib/esm/tile/TileRequest.js +2 -1
  517. package/lib/esm/tile/TileRequest.js.map +1 -1
  518. package/lib/esm/tile/TileRequestChannel.d.ts +23 -1
  519. package/lib/esm/tile/TileRequestChannel.d.ts.map +1 -1
  520. package/lib/esm/tile/TileRequestChannel.js +28 -7
  521. package/lib/esm/tile/TileRequestChannel.js.map +1 -1
  522. package/lib/esm/tile/TileRequestChannels.js +1 -1
  523. package/lib/esm/tile/TileRequestChannels.js.map +1 -1
  524. package/lib/esm/tile/TileTree.js +2 -3
  525. package/lib/esm/tile/TileTree.js.map +1 -1
  526. package/lib/esm/tile/TiledGraphicsProvider.js +1 -1
  527. package/lib/esm/tile/TiledGraphicsProvider.js.map +1 -1
  528. package/lib/esm/tile/map/ArcGISTileMap.js +5 -6
  529. package/lib/esm/tile/map/ArcGISTileMap.js.map +1 -1
  530. package/lib/esm/tile/map/ArcGisUtilities.d.ts.map +1 -1
  531. package/lib/esm/tile/map/ArcGisUtilities.js +6 -8
  532. package/lib/esm/tile/map/ArcGisUtilities.js.map +1 -1
  533. package/lib/esm/tile/map/EllipsoidTerrainProvider.d.ts +11 -3
  534. package/lib/esm/tile/map/EllipsoidTerrainProvider.d.ts.map +1 -1
  535. package/lib/esm/tile/map/EllipsoidTerrainProvider.js +17 -5
  536. package/lib/esm/tile/map/EllipsoidTerrainProvider.js.map +1 -1
  537. package/lib/esm/tile/map/ImageryProviders/ArcGISImageryProvider.js +4 -7
  538. package/lib/esm/tile/map/ImageryProviders/ArcGISImageryProvider.js.map +1 -1
  539. package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts.map +1 -1
  540. package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js +6 -9
  541. package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js.map +1 -1
  542. package/lib/esm/tile/map/ImageryProviders/BingImageryProvider.js +1 -2
  543. package/lib/esm/tile/map/ImageryProviders/BingImageryProvider.js.map +1 -1
  544. package/lib/esm/tile/map/ImageryProviders/WmsMapLayerImageryProvider.js +14 -19
  545. package/lib/esm/tile/map/ImageryProviders/WmsMapLayerImageryProvider.js.map +1 -1
  546. package/lib/esm/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.js +14 -20
  547. package/lib/esm/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.js.map +1 -1
  548. package/lib/esm/tile/map/ImageryTileTree.d.ts +2 -2
  549. package/lib/esm/tile/map/ImageryTileTree.d.ts.map +1 -1
  550. package/lib/esm/tile/map/ImageryTileTree.js +10 -5
  551. package/lib/esm/tile/map/ImageryTileTree.js.map +1 -1
  552. package/lib/esm/tile/map/MapCartoRectangle.d.ts +1 -1
  553. package/lib/esm/tile/map/MapCartoRectangle.js +2 -2
  554. package/lib/esm/tile/map/MapCartoRectangle.js.map +1 -1
  555. package/lib/esm/tile/map/MapLayerFormatRegistry.js +5 -6
  556. package/lib/esm/tile/map/MapLayerFormatRegistry.js.map +1 -1
  557. package/lib/esm/tile/map/MapLayerImageryFormats.js +11 -14
  558. package/lib/esm/tile/map/MapLayerImageryFormats.js.map +1 -1
  559. package/lib/esm/tile/map/MapLayerImageryProvider.js +2 -3
  560. package/lib/esm/tile/map/MapLayerImageryProvider.js.map +1 -1
  561. package/lib/esm/tile/map/MapLayerSources.js +1 -1
  562. package/lib/esm/tile/map/MapLayerSources.js.map +1 -1
  563. package/lib/esm/tile/map/MapTile.d.ts +10 -2
  564. package/lib/esm/tile/map/MapTile.d.ts.map +1 -1
  565. package/lib/esm/tile/map/MapTile.js +34 -12
  566. package/lib/esm/tile/map/MapTile.js.map +1 -1
  567. package/lib/esm/tile/map/MapTileLoader.js +1 -1
  568. package/lib/esm/tile/map/MapTileLoader.js.map +1 -1
  569. package/lib/esm/tile/map/MapTileTree.d.ts +3 -2
  570. package/lib/esm/tile/map/MapTileTree.d.ts.map +1 -1
  571. package/lib/esm/tile/map/MapTileTree.js +24 -26
  572. package/lib/esm/tile/map/MapTileTree.js.map +1 -1
  573. package/lib/esm/tile/map/MapTiledGraphicsProvider.js +6 -7
  574. package/lib/esm/tile/map/MapTiledGraphicsProvider.js.map +1 -1
  575. package/lib/esm/tile/map/MapTilingScheme.d.ts +1 -1
  576. package/lib/esm/tile/map/MapTilingScheme.js +1 -1
  577. package/lib/esm/tile/map/MapTilingScheme.js.map +1 -1
  578. package/lib/esm/tile/map/QuadId.d.ts +1 -1
  579. package/lib/esm/tile/map/QuadId.js +1 -1
  580. package/lib/esm/tile/map/QuadId.js.map +1 -1
  581. package/lib/esm/tile/map/TerrainMeshProvider.d.ts +9 -4
  582. package/lib/esm/tile/map/TerrainMeshProvider.d.ts.map +1 -1
  583. package/lib/esm/tile/map/TerrainMeshProvider.js +6 -1
  584. package/lib/esm/tile/map/TerrainMeshProvider.js.map +1 -1
  585. package/lib/esm/tile/map/TerrainProvider.d.ts +2 -2
  586. package/lib/esm/tile/map/TerrainProvider.js +1 -1
  587. package/lib/esm/tile/map/TerrainProvider.js.map +1 -1
  588. package/lib/esm/tile/map/WmsCapabilities.js +4 -5
  589. package/lib/esm/tile/map/WmsCapabilities.js.map +1 -1
  590. package/lib/esm/tile/map/WmtsCapabilities.js +17 -25
  591. package/lib/esm/tile/map/WmtsCapabilities.js.map +1 -1
  592. package/lib/esm/tools/ClipViewTool.js +1 -1
  593. package/lib/esm/tools/ClipViewTool.js.map +1 -1
  594. package/lib/esm/tools/MeasureTool.js +2 -4
  595. package/lib/esm/tools/MeasureTool.js.map +1 -1
  596. package/lib/esm/tools/PrimitiveTool.js +2 -3
  597. package/lib/esm/tools/PrimitiveTool.js.map +1 -1
  598. package/lib/esm/tools/SelectTool.js +1 -2
  599. package/lib/esm/tools/SelectTool.js.map +1 -1
  600. package/lib/esm/tools/Tool.js +2 -3
  601. package/lib/esm/tools/Tool.js.map +1 -1
  602. package/lib/esm/tools/ToolAdmin.js +2 -4
  603. package/lib/esm/tools/ToolAdmin.js.map +1 -1
  604. package/lib/esm/tools/ViewTool.js +3 -3
  605. package/lib/esm/tools/ViewTool.js.map +1 -1
  606. package/package.json +24 -26
@@ -1 +1 @@
1
- {"version":3,"file":"ViewRect.js","sourceRoot":"","sources":["../../src/ViewRect.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 { LowAndHighXY, XAndY } from \"@itwin/core-geometry\";\r\n\r\n/** A rectangle in unsigned integer view coordinates with (0,0) corresponding to the top-left corner of the view.\r\n * Increasing **x** moves from left to right, and increasing **y** moves from top to bottom.\r\n * [[left]], [[top]], [[right]], and [[bottom]] are required to be non-negative integers; any negative inputs are treated as\r\n * zero and any non-integer inputs are rounded down to the nearest integer.\r\n * @public\r\n * @extensions\r\n */\r\nexport class ViewRect {\r\n private _left!: number;\r\n private _top!: number;\r\n private _right!: number;\r\n private _bottom!: number;\r\n\r\n private _set(key: \"_left\" | \"_right\" | \"_top\" | \"_bottom\", value: number): void {\r\n this[key] = Math.max(0, Math.floor(value));\r\n }\r\n\r\n /** Construct a new ViewRect. */\r\n public constructor(left = 0, top = 0, right = 0, bottom = 0) { this.init(left, top, right, bottom); }\r\n /** The leftmost side of this ViewRect. */\r\n public get left(): number { return this._left; }\r\n public set left(val: number) { this._set(\"_left\", val); }\r\n /** The topmost side of this ViewRect. */\r\n public get top(): number { return this._top; }\r\n public set top(val: number) { this._set(\"_top\", val); }\r\n /** The rightmost side of this ViewRect. */\r\n public get right(): number { return this._right; }\r\n public set right(val: number) { this._set(\"_right\", val); }\r\n /** The bottommost side of this ViewRect. */\r\n public get bottom(): number { return this._bottom; }\r\n public set bottom(val: number) { this._set(\"_bottom\", val); }\r\n /** True if this ViewRect has an area > 0. */\r\n public get isNull(): boolean { return this.right <= this.left || this.bottom <= this.top; }\r\n /** True if `!isNull` */\r\n public get isValid(): boolean { return !this.isNull; }\r\n /** The width (right-left) of this ViewRect. */\r\n public get width() { return this.right - this.left; }\r\n public set width(width: number) { this.right = this.left + width; }\r\n /** The height (bottom-top) of this ViewRect. */\r\n public get height() { return this.bottom - this.top; }\r\n public set height(height: number) { this.bottom = this.top + height; }\r\n /** The aspect ratio (width/height) of this ViewRect. */\r\n public get aspect() { return this.isNull ? 1.0 : this.width / this.height; }\r\n /** The area (width*height) of this ViewRect. */\r\n public get area() { return this.isNull ? 0 : this.width * this.height; }\r\n /** Initialize this ViewRect from its left/top/right/bottom parameters. */\r\n public init(left: number, top: number, right: number, bottom: number) {\r\n this.left = left;\r\n this.bottom = bottom, this.right = right;\r\n this.top = top;\r\n }\r\n\r\n /** Initialize this ViewRect from two points.\r\n * @param topLeft The top-left corner.\r\n * @param bottomRight The bottom-right corner.\r\n */\r\n public initFromPoints(topLeft: XAndY, bottomRight: XAndY): void { this.init(topLeft.x, topLeft.y, bottomRight.x, bottomRight.y); }\r\n /** Initialize this ViewRect from a range.\r\n * @param input The Range to use. `input.low` defines the top-left and `input.high` defines the bottom-right.\r\n */\r\n public initFromRange(input: LowAndHighXY): void { this.initFromPoints(input.low, input.high); }\r\n /** Return true is this ViewRect is exactly equal to another ViewRect.\r\n * @param other The other ViewRect to compare\r\n */\r\n public equals(other: ViewRect): boolean { return this.left === other.left && this.right === other.right && this.bottom === other.bottom && this.top === other.top; }\r\n /** Initialize this ViewRect from another ViewRect. */\r\n public setFrom(other: ViewRect): void { this.init(other.left, other.top, other.right, other.bottom); }\r\n /** Duplicate this ViewRect.\r\n * @param result Optional ViewRect for result. If undefined, a new ViewRect is created.\r\n */\r\n public clone(result?: ViewRect): ViewRect {\r\n if (undefined !== result) {\r\n result.setFrom(this);\r\n return result;\r\n }\r\n return new ViewRect(this.left, this.top, this.right, this.bottom);\r\n }\r\n public extend(other: ViewRect) {\r\n if (this.left > other.left)\r\n this.left = other.left;\r\n if (this.top > other.top)\r\n this.top = other.top;\r\n if (this.right < other.right)\r\n this.right = other.right;\r\n if (this.bottom < other.bottom)\r\n this.bottom = other.bottom;\r\n }\r\n\r\n /** Inset this ViewRect by values in the x and y directions. Positive values make the ViewRect smaller, and negative values will make it larger.\r\n * @param deltaX The distance to inset the ViewRect in the x direction.\r\n * @param deltaY The distance to inset the ViewRect in the y direction.\r\n */\r\n public inset(deltaX: number, deltaY: number): void {\r\n deltaX = Math.floor(deltaX);\r\n deltaY = Math.floor(deltaY);\r\n if (this.width - 2 * deltaX <= 0 || this.height - 2 * deltaY <= 0) {\r\n this.init(0, 0, 0, 0);\r\n return;\r\n }\r\n this._left += deltaX;\r\n this._right -= deltaX;\r\n this._top += deltaY;\r\n this._bottom -= deltaY;\r\n }\r\n\r\n /** Inset this ViewRect by the same value in all directions.\r\n * @param offset The distance to inset this ViewRect. Positive values will make this ViewRect smaller and negative values will make it larger.\r\n * @note The inset operation can cause a previously valid ViewRect to become invalid.\r\n */\r\n public insetUniform(offset: number): void { this.inset(offset, offset); }\r\n\r\n /** Scale this ViewRect about its center by the supplied scale factors. */\r\n public scaleAboutCenter(xScale: number, yScale: number): void {\r\n const w = this.width;\r\n const h = this.height;\r\n const xDelta = (w - (w * xScale)) * 0.5;\r\n const yDelta = (h - (h * yScale)) * 0.5;\r\n this.inset(xDelta, yDelta);\r\n }\r\n\r\n /** Inset this ViewRect by a percentage of its current width.\r\n * @param percent The percentage of this ViewRect's width to inset in all directions.\r\n * @note The ViewRect will become smaller (or larger, if percent is negative) by `percent * width * 2` in each direction, since each side is moved by that distance.\r\n * @see [[inset]]\r\n */\r\n public insetByPercent(percent: number): void { this.insetUniform(this.width * percent); }\r\n\r\n /** Determine if this ViewRect is entirely contained within the bounds of another ViewRect. */\r\n public isContained(other: ViewRect): boolean { return this.left >= other.left && this.right <= other.right && this.bottom <= other.bottom && this.top >= other.top; }\r\n\r\n /** Return true if the supplied point is contained in this ViewRect.\r\n * @param point The point to test.\r\n * @note if the point is exactly on the left or top edges, this method returns true. If the point is exactly on the right or bottom edge, it returns false.\r\n */\r\n public containsPoint(point: XAndY): boolean { return point.x >= this.left && point.x < this.right && point.y >= this.top && point.y < this.bottom; }\r\n\r\n /** Determine whether this ViewRect overlaps another. */\r\n public overlaps(other: ViewRect): boolean { return this.left <= other.right && this.top <= other.bottom && this.right >= other.left && this.bottom >= other.top; }\r\n\r\n /** Return a ViewRect that is the overlap (intersection) of this ViewRect and another ViewRect.\r\n * If the two ViewRects are equal, their value is the result. Otherwise, the result will always be smaller than either of them.\r\n */\r\n public computeOverlap(other: ViewRect, out?: ViewRect): ViewRect | undefined {\r\n const maxOrgX = Math.max(this.left, other.left);\r\n const maxOrgY = Math.max(this.top, other.top);\r\n const minCrnX = Math.min(this.right, other.right);\r\n const minCrnY = Math.min(this.bottom, other.bottom);\r\n\r\n if (maxOrgX > minCrnX || maxOrgY > minCrnY)\r\n return undefined;\r\n\r\n const result = undefined !== out ? out : new ViewRect();\r\n result.left = maxOrgX;\r\n result.right = minCrnX;\r\n result.top = maxOrgY;\r\n result.bottom = minCrnY;\r\n return result;\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"ViewRect.js","sourceRoot":"","sources":["../../src/ViewRect.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 { LowAndHighXY, XAndY } from \"@itwin/core-geometry\";\r\n\r\n/** A rectangle in unsigned integer view coordinates with (0,0) corresponding to the top-left corner of the view.\r\n * Increasing **x** moves from left to right, and increasing **y** moves from top to bottom.\r\n * [[left]], [[top]], [[right]], and [[bottom]] are required to be non-negative integers; any negative inputs are treated as\r\n * zero and any non-integer inputs are rounded down to the nearest integer.\r\n * @public\r\n * @extensions\r\n */\r\nexport class ViewRect {\r\n private _left!: number;\r\n private _top!: number;\r\n private _right!: number;\r\n private _bottom!: number;\r\n\r\n private _set(key: \"_left\" | \"_right\" | \"_top\" | \"_bottom\", value: number): void {\r\n this[key] = Math.max(0, Math.floor(value));\r\n }\r\n\r\n /** Construct a new ViewRect. */\r\n public constructor(left = 0, top = 0, right = 0, bottom = 0) { this.init(left, top, right, bottom); }\r\n /** The leftmost side of this ViewRect. */\r\n public get left(): number { return this._left; }\r\n public set left(val: number) { this._set(\"_left\", val); }\r\n /** The topmost side of this ViewRect. */\r\n public get top(): number { return this._top; }\r\n public set top(val: number) { this._set(\"_top\", val); }\r\n /** The rightmost side of this ViewRect. */\r\n public get right(): number { return this._right; }\r\n public set right(val: number) { this._set(\"_right\", val); }\r\n /** The bottommost side of this ViewRect. */\r\n public get bottom(): number { return this._bottom; }\r\n public set bottom(val: number) { this._set(\"_bottom\", val); }\r\n /** True if this ViewRect has an area <= 0. */\r\n public get isNull(): boolean { return this.right <= this.left || this.bottom <= this.top; }\r\n /** True if `!isNull` */\r\n public get isValid(): boolean { return !this.isNull; }\r\n /** The width (right-left) of this ViewRect. */\r\n public get width() { return this.right - this.left; }\r\n public set width(width: number) { this.right = this.left + width; }\r\n /** The height (bottom-top) of this ViewRect. */\r\n public get height() { return this.bottom - this.top; }\r\n public set height(height: number) { this.bottom = this.top + height; }\r\n /** The aspect ratio (width/height) of this ViewRect. */\r\n public get aspect() { return this.isNull ? 1.0 : this.width / this.height; }\r\n /** The area (width*height) of this ViewRect. */\r\n public get area() { return this.isNull ? 0 : this.width * this.height; }\r\n /** Initialize this ViewRect from its left/top/right/bottom parameters. */\r\n public init(left: number, top: number, right: number, bottom: number) {\r\n this.left = left;\r\n this.bottom = bottom, this.right = right;\r\n this.top = top;\r\n }\r\n\r\n /** Initialize this ViewRect from two points.\r\n * @param topLeft The top-left corner.\r\n * @param bottomRight The bottom-right corner.\r\n */\r\n public initFromPoints(topLeft: XAndY, bottomRight: XAndY): void { this.init(topLeft.x, topLeft.y, bottomRight.x, bottomRight.y); }\r\n /** Initialize this ViewRect from a range.\r\n * @param input The Range to use. `input.low` defines the top-left and `input.high` defines the bottom-right.\r\n */\r\n public initFromRange(input: LowAndHighXY): void { this.initFromPoints(input.low, input.high); }\r\n /** Return true is this ViewRect is exactly equal to another ViewRect.\r\n * @param other The other ViewRect to compare\r\n */\r\n public equals(other: ViewRect): boolean { return this.left === other.left && this.right === other.right && this.bottom === other.bottom && this.top === other.top; }\r\n /** Initialize this ViewRect from another ViewRect. */\r\n public setFrom(other: ViewRect): void { this.init(other.left, other.top, other.right, other.bottom); }\r\n /** Duplicate this ViewRect.\r\n * @param result Optional ViewRect for result. If undefined, a new ViewRect is created.\r\n */\r\n public clone(result?: ViewRect): ViewRect {\r\n if (undefined !== result) {\r\n result.setFrom(this);\r\n return result;\r\n }\r\n return new ViewRect(this.left, this.top, this.right, this.bottom);\r\n }\r\n public extend(other: ViewRect) {\r\n if (this.left > other.left)\r\n this.left = other.left;\r\n if (this.top > other.top)\r\n this.top = other.top;\r\n if (this.right < other.right)\r\n this.right = other.right;\r\n if (this.bottom < other.bottom)\r\n this.bottom = other.bottom;\r\n }\r\n\r\n /** Inset this ViewRect by values in the x and y directions. Positive values make the ViewRect smaller, and negative values will make it larger.\r\n * @param deltaX The distance to inset the ViewRect in the x direction.\r\n * @param deltaY The distance to inset the ViewRect in the y direction.\r\n */\r\n public inset(deltaX: number, deltaY: number): void {\r\n deltaX = Math.floor(deltaX);\r\n deltaY = Math.floor(deltaY);\r\n if (this.width - 2 * deltaX <= 0 || this.height - 2 * deltaY <= 0) {\r\n this.init(0, 0, 0, 0);\r\n return;\r\n }\r\n this._left += deltaX;\r\n this._right -= deltaX;\r\n this._top += deltaY;\r\n this._bottom -= deltaY;\r\n }\r\n\r\n /** Inset this ViewRect by the same value in all directions.\r\n * @param offset The distance to inset this ViewRect. Positive values will make this ViewRect smaller and negative values will make it larger.\r\n * @note The inset operation can cause a previously valid ViewRect to become invalid.\r\n */\r\n public insetUniform(offset: number): void { this.inset(offset, offset); }\r\n\r\n /** Scale this ViewRect about its center by the supplied scale factors. */\r\n public scaleAboutCenter(xScale: number, yScale: number): void {\r\n const w = this.width;\r\n const h = this.height;\r\n const xDelta = (w - (w * xScale)) * 0.5;\r\n const yDelta = (h - (h * yScale)) * 0.5;\r\n this.inset(xDelta, yDelta);\r\n }\r\n\r\n /** Inset this ViewRect by a percentage of its current width.\r\n * @param percent The percentage of this ViewRect's width to inset in all directions.\r\n * @note The ViewRect will become smaller (or larger, if percent is negative) by `percent * width * 2` in each direction, since each side is moved by that distance.\r\n * @see [[inset]]\r\n */\r\n public insetByPercent(percent: number): void { this.insetUniform(this.width * percent); }\r\n\r\n /** Determine if this ViewRect is entirely contained within the bounds of another ViewRect. */\r\n public isContained(other: ViewRect): boolean { return this.left >= other.left && this.right <= other.right && this.bottom <= other.bottom && this.top >= other.top; }\r\n\r\n /** Return true if the supplied point is contained in this ViewRect.\r\n * @param point The point to test.\r\n * @note if the point is exactly on the left or top edges, this method returns true. If the point is exactly on the right or bottom edge, it returns false.\r\n */\r\n public containsPoint(point: XAndY): boolean { return point.x >= this.left && point.x < this.right && point.y >= this.top && point.y < this.bottom; }\r\n\r\n /** Determine whether this ViewRect overlaps another. */\r\n public overlaps(other: ViewRect): boolean { return this.left <= other.right && this.top <= other.bottom && this.right >= other.left && this.bottom >= other.top; }\r\n\r\n /** Return a ViewRect that is the overlap (intersection) of this ViewRect and another ViewRect.\r\n * If the two ViewRects are equal, their value is the result. Otherwise, the result will always be smaller than either of them.\r\n */\r\n public computeOverlap(other: ViewRect, out?: ViewRect): ViewRect | undefined {\r\n const maxOrgX = Math.max(this.left, other.left);\r\n const maxOrgY = Math.max(this.top, other.top);\r\n const minCrnX = Math.min(this.right, other.right);\r\n const minCrnY = Math.min(this.bottom, other.bottom);\r\n\r\n if (maxOrgX > minCrnX || maxOrgY > minCrnY)\r\n return undefined;\r\n\r\n const result = undefined !== out ? out : new ViewRect();\r\n result.left = maxOrgX;\r\n result.right = minCrnX;\r\n result.top = maxOrgY;\r\n result.bottom = minCrnY;\r\n return result;\r\n }\r\n}\r\n"]}
@@ -539,7 +539,7 @@ class ViewState extends EntityState_1.ElementState {
539
539
  }
540
540
  if (!delta.isAlmostEqual(origDelta))
541
541
  origin.addScaledInPlace(rot.multiplyTransposeVector(delta.vectorTo(origDelta, origDelta)), .5);
542
- return (status !== ViewStatus_1.ViewStatus.Success && (opts === null || opts === void 0 ? void 0 : opts.onExtentsError)) ? opts.onExtentsError(status) : status;
542
+ return (status !== ViewStatus_1.ViewStatus.Success && opts?.onExtentsError) ? opts.onExtentsError(status) : status;
543
543
  }
544
544
  /** Adjust the aspect ratio of this ViewState so it matches the supplied value. The adjustment is accomplished by increasing one dimension
545
545
  * and leaving the other unchanged, depending on the ratio of this ViewState's current aspect ratio to the supplied one. This means the result
@@ -697,7 +697,6 @@ class ViewState extends EntityState_1.ElementState {
697
697
  * @see lookAtVolume
698
698
  */
699
699
  lookAtViewAlignedVolume(volume, aspect, options) {
700
- var _a, _b, _c, _d;
701
700
  if (volume.isNull) // make sure volume is valid
702
701
  return;
703
702
  const viewRot = this.getRotation();
@@ -713,17 +712,17 @@ class ViewState extends EntityState_1.ElementState {
713
712
  // That generally causes the view to be too large (objects in it are too small), since we can't tell whether the objects are at
714
713
  // the front or back of the view. For this reason, don't attempt to add any "margin" to camera views.
715
714
  }
716
- else if (undefined !== (options === null || options === void 0 ? void 0 : options.paddingPercent)) {
715
+ else if (undefined !== options?.paddingPercent) {
717
716
  let left, right, top, bottom;
718
717
  const padding = options.paddingPercent;
719
718
  if (typeof padding === "number") {
720
719
  left = right = top = bottom = padding;
721
720
  }
722
721
  else {
723
- left = (_a = padding.left) !== null && _a !== void 0 ? _a : 0;
724
- right = (_b = padding.right) !== null && _b !== void 0 ? _b : 0;
725
- top = (_c = padding.top) !== null && _c !== void 0 ? _c : 0;
726
- bottom = (_d = padding.bottom) !== null && _d !== void 0 ? _d : 0;
722
+ left = padding.left ?? 0;
723
+ right = padding.right ?? 0;
724
+ top = padding.top ?? 0;
725
+ bottom = padding.bottom ?? 0;
727
726
  }
728
727
  const width = newDelta.x;
729
728
  const height = newDelta.y;
@@ -732,7 +731,7 @@ class ViewState extends EntityState_1.ElementState {
732
731
  newOrigin.y -= bottom * height;
733
732
  newDelta.y += (top + bottom) * height;
734
733
  }
735
- else if (options === null || options === void 0 ? void 0 : options.marginPercent) {
734
+ else if (options?.marginPercent) {
736
735
  // compute how much space we'll need for both of X and Y margins in root coordinates
737
736
  const margin = options.marginPercent;
738
737
  const wPercent = margin.left + margin.right;
@@ -818,7 +817,7 @@ class ViewState extends EntityState_1.ElementState {
818
817
  // Non-spatial views view exactly one model. If they view the same model, they share a coordinate system.
819
818
  let allowView = false;
820
819
  this.forEachModel((model) => {
821
- allowView || (allowView = other.viewsModel(model.id));
820
+ allowView ||= other.viewsModel(model.id);
822
821
  });
823
822
  return allowView;
824
823
  }
@@ -856,7 +855,6 @@ class ViewState extends EntityState_1.ElementState {
856
855
  * Y vector towards true north, X parallel to the equator and Z perpendicular to the ellipsoid surface
857
856
  */
858
857
  getGlobeRotation() {
859
- var _a;
860
858
  if (!this.iModel.isGeoLocated || this.globeMode !== core_common_1.GlobeMode.Ellipsoid || this.getIsViewingProject())
861
859
  return undefined;
862
860
  const backgroundMapGeometry = this.displayStyle.getBackgroundMapGeometry();
@@ -877,7 +875,7 @@ class ViewState extends EntityState_1.ElementState {
877
875
  }
878
876
  const angles = intersectAngles[minIndex];
879
877
  const pointAndDeriv = earthEllipsoid.radiansToPointAndDerivatives(angles.longitudeRadians, angles.latitudeRadians, false);
880
- return (_a = core_geometry_1.Matrix3d.createRigidFromColumns(pointAndDeriv.vectorU, pointAndDeriv.vectorV, core_geometry_1.AxisOrder.XYZ)) === null || _a === void 0 ? void 0 : _a.transpose();
878
+ return core_geometry_1.Matrix3d.createRigidFromColumns(pointAndDeriv.vectorU, pointAndDeriv.vectorV, core_geometry_1.AxisOrder.XYZ)?.transpose();
881
879
  }
882
880
  /** A value that represents the global scope of the view -- a value greater than one indicates that the scope of this view is global (viewing most of Earth). */
883
881
  get globalScopeFactor() {
@@ -920,17 +918,16 @@ class ViewState extends EntityState_1.ElementState {
920
918
  * @beta
921
919
  */
922
920
  computeDisplayTransform(args) {
923
- var _a, _b, _c;
924
921
  const elevation = this.getModelElevation(args.modelId);
925
- const modelTransform = (_a = this.modelDisplayTransformProvider) === null || _a === void 0 ? void 0 : _a.getModelDisplayTransform(args.modelId);
922
+ const modelTransform = this.modelDisplayTransformProvider?.getModelDisplayTransform(args.modelId);
926
923
  // NB: A ModelTimeline can apply a transform to all elements in the model, but no code exists which actually applies that at display time.
927
924
  // So for now we continue to only consider the ElementTimeline transform.
928
925
  let scriptTransform;
929
926
  if (this.scheduleScript && args.elementId) {
930
927
  const idPair = core_bentley_1.Id64.getUint32Pair(args.elementId);
931
928
  const modelTimeline = this.scheduleScript.find(args.modelId);
932
- const elementTimeline = modelTimeline === null || modelTimeline === void 0 ? void 0 : modelTimeline.getTimelineForElement(idPair.lower, idPair.upper);
933
- scriptTransform = elementTimeline === null || elementTimeline === void 0 ? void 0 : elementTimeline.getAnimationTransform((_c = (_b = args.timePoint) !== null && _b !== void 0 ? _b : this.displayStyle.settings.timePoint) !== null && _c !== void 0 ? _c : 0);
929
+ const elementTimeline = modelTimeline?.getTimelineForElement(idPair.lower, idPair.upper);
930
+ scriptTransform = elementTimeline?.getAnimationTransform(args.timePoint ?? this.displayStyle.settings.timePoint ?? 0);
934
931
  }
935
932
  if (0 === elevation && !modelTransform && !scriptTransform)
936
933
  return undefined;
@@ -1311,7 +1308,6 @@ class ViewState3d extends ViewState {
1311
1308
  * adjusted when the [[Viewport]] is synchronized from this view.
1312
1309
  */
1313
1310
  lookAt(args) {
1314
- var _a, _b, _c;
1315
1311
  if (args.lensAngle) {
1316
1312
  const lensAngle = args.lensAngle;
1317
1313
  const eyePoint = core_geometry_1.Vector3d.createFrom(args.eyePoint);
@@ -1321,7 +1317,7 @@ class ViewState3d extends ViewState {
1321
1317
  if (lensAngle.radians < .0001 || lensAngle.radians > Math.PI)
1322
1318
  return ViewStatus_1.ViewStatus.InvalidLens;
1323
1319
  const width = 2.0 * Math.tan(lensAngle.radians / 2.0) * focus;
1324
- const newExtents = core_geometry_1.Vector2d.createFrom((_a = args.newExtents) !== null && _a !== void 0 ? _a : this.extents);
1320
+ const newExtents = core_geometry_1.Vector2d.createFrom(args.newExtents ?? this.extents);
1325
1321
  newExtents.scale(width / newExtents.x, newExtents);
1326
1322
  args = { ...args, newExtents };
1327
1323
  }
@@ -1346,7 +1342,7 @@ class ViewState3d extends ViewState {
1346
1342
  }
1347
1343
  const minFrontDist = this.minimumFrontDistance();
1348
1344
  if (focusDist <= minFrontDist) { // eye and target are too close together
1349
- (_c = (_b = args.opts) === null || _b === void 0 ? void 0 : _b.onExtentsError) === null || _c === void 0 ? void 0 : _c.call(_b, ViewStatus_1.ViewStatus.InvalidTargetPoint);
1345
+ args.opts?.onExtentsError?.(ViewStatus_1.ViewStatus.InvalidTargetPoint);
1350
1346
  return ViewStatus_1.ViewStatus.InvalidTargetPoint;
1351
1347
  }
1352
1348
  const xVec = new core_geometry_1.Vector3d();
@@ -1467,12 +1463,11 @@ class ViewState3d extends ViewState {
1467
1463
  * @returns Status indicating whether the camera was successfully positioned. See values at [[ViewStatus]] for possible errors.
1468
1464
  */
1469
1465
  moveCameraGlobal(fromPoint, toPoint) {
1470
- var _a;
1471
1466
  if (!this.iModel.ecefLocation)
1472
1467
  return ViewStatus_1.ViewStatus.NotGeolocated;
1473
1468
  if (this.globeMode !== core_common_1.GlobeMode.Ellipsoid)
1474
1469
  return ViewStatus_1.ViewStatus.NotEllipsoidGlobeMode;
1475
- const earthCenter = (_a = this.iModel.ecefLocation) === null || _a === void 0 ? void 0 : _a.earthCenter;
1470
+ const earthCenter = this.iModel.ecefLocation?.earthCenter;
1476
1471
  const rMatrix = core_geometry_1.Matrix3d.createRotationVectorToVector(core_geometry_1.Vector3d.createStartEnd(earthCenter, toPoint), core_geometry_1.Vector3d.createStartEnd(earthCenter, fromPoint));
1477
1472
  if (!rMatrix)
1478
1473
  return ViewStatus_1.ViewStatus.DegenerateGeometry;
@@ -1663,7 +1658,6 @@ class ViewState3d extends ViewState {
1663
1658
  * @public
1664
1659
  */
1665
1660
  alignToGlobe(target, transition) {
1666
- var _a;
1667
1661
  if (!this.iModel.ecefLocation)
1668
1662
  return ViewStatus_1.ViewStatus.NotGeolocated;
1669
1663
  if (this.globeMode !== core_common_1.GlobeMode.Ellipsoid)
@@ -1671,7 +1665,7 @@ class ViewState3d extends ViewState {
1671
1665
  const globalTransition = this.globalViewTransition();
1672
1666
  if (globalTransition <= 0)
1673
1667
  return ViewStatus_1.ViewStatus.HeightBelowTransition;
1674
- const earthCenter = (_a = this.iModel.ecefLocation) === null || _a === void 0 ? void 0 : _a.earthCenter;
1668
+ const earthCenter = this.iModel.ecefLocation?.earthCenter;
1675
1669
  const viewCenter = this.getCenter();
1676
1670
  const viewZ = this.getRotation().rowZ();
1677
1671
  const eye = this.isCameraOn ? this.camera.eye : viewCenter.plusScaled(viewZ, core_geometry_1.Constant.diameterOfEarth);
@@ -1700,8 +1694,7 @@ class ViewState3d extends ViewState {
1700
1694
  attachToViewport(args) {
1701
1695
  super.attachToViewport(args);
1702
1696
  const removeListener = this.displayStyle.settings.onEnvironmentChanged.addListener((env) => {
1703
- var _a;
1704
- (_a = this._environmentDecorations) === null || _a === void 0 ? void 0 : _a.setEnvironment(env);
1697
+ this._environmentDecorations?.setEnvironment(env);
1705
1698
  });
1706
1699
  this._environmentDecorations = new EnvironmentDecorations_1.EnvironmentDecorations(this, () => args.invalidateDecorations(), () => removeListener());
1707
1700
  }