@itwin/core-frontend 3.2.0-dev.9 → 3.3.0-dev.2

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 (1218) hide show
  1. package/CHANGELOG.md +55 -1
  2. package/lib/cjs/AccuDraw.d.ts +2 -0
  3. package/lib/cjs/AccuDraw.d.ts.map +1 -1
  4. package/lib/cjs/AccuDraw.js +2 -0
  5. package/lib/cjs/AccuDraw.js.map +1 -1
  6. package/lib/cjs/AccuSnap.d.ts +1 -0
  7. package/lib/cjs/AccuSnap.d.ts.map +1 -1
  8. package/lib/cjs/AccuSnap.js +1 -0
  9. package/lib/cjs/AccuSnap.js.map +1 -1
  10. package/lib/cjs/ApproximateTerrainHeights.d.ts.map +1 -1
  11. package/lib/cjs/ApproximateTerrainHeights.js +4 -2
  12. package/lib/cjs/ApproximateTerrainHeights.js.map +1 -1
  13. package/lib/cjs/ApproximateTerrainHeightsProps.d.ts +1 -1
  14. package/lib/cjs/ApproximateTerrainHeightsProps.d.ts.map +1 -1
  15. package/lib/cjs/ApproximateTerrainHeightsProps.js +2 -2
  16. package/lib/cjs/ApproximateTerrainHeightsProps.js.map +1 -1
  17. package/lib/cjs/AuxCoordSys.d.ts +12 -2
  18. package/lib/cjs/AuxCoordSys.d.ts.map +1 -1
  19. package/lib/cjs/AuxCoordSys.js +12 -2
  20. package/lib/cjs/AuxCoordSys.js.map +1 -1
  21. package/lib/cjs/BingLocation.d.ts +1 -0
  22. package/lib/cjs/BingLocation.d.ts.map +1 -1
  23. package/lib/cjs/BingLocation.js +1 -0
  24. package/lib/cjs/BingLocation.js.map +1 -1
  25. package/lib/cjs/BriefcaseConnection.d.ts +35 -1
  26. package/lib/cjs/BriefcaseConnection.d.ts.map +1 -1
  27. package/lib/cjs/BriefcaseConnection.js +52 -1
  28. package/lib/cjs/BriefcaseConnection.js.map +1 -1
  29. package/lib/cjs/CategorySelectorState.d.ts +1 -0
  30. package/lib/cjs/CategorySelectorState.d.ts.map +1 -1
  31. package/lib/cjs/CategorySelectorState.js +1 -0
  32. package/lib/cjs/CategorySelectorState.js.map +1 -1
  33. package/lib/cjs/ChangeFlags.d.ts +1 -0
  34. package/lib/cjs/ChangeFlags.d.ts.map +1 -1
  35. package/lib/cjs/ChangeFlags.js +1 -0
  36. package/lib/cjs/ChangeFlags.js.map +1 -1
  37. package/lib/cjs/ContextRealityModelState.d.ts +1 -0
  38. package/lib/cjs/ContextRealityModelState.d.ts.map +1 -1
  39. package/lib/cjs/ContextRealityModelState.js +1 -0
  40. package/lib/cjs/ContextRealityModelState.js.map +1 -1
  41. package/lib/cjs/CoordSystem.d.ts +1 -0
  42. package/lib/cjs/CoordSystem.d.ts.map +1 -1
  43. package/lib/cjs/CoordSystem.js +1 -0
  44. package/lib/cjs/CoordSystem.js.map +1 -1
  45. package/lib/cjs/DisplayStyleState.d.ts +4 -0
  46. package/lib/cjs/DisplayStyleState.d.ts.map +1 -1
  47. package/lib/cjs/DisplayStyleState.js +9 -4
  48. package/lib/cjs/DisplayStyleState.js.map +1 -1
  49. package/lib/cjs/DrawingViewState.d.ts +5 -2
  50. package/lib/cjs/DrawingViewState.d.ts.map +1 -1
  51. package/lib/cjs/DrawingViewState.js +34 -3
  52. package/lib/cjs/DrawingViewState.js.map +1 -1
  53. package/lib/cjs/ElementLocateManager.d.ts +23 -5
  54. package/lib/cjs/ElementLocateManager.d.ts.map +1 -1
  55. package/lib/cjs/ElementLocateManager.js +19 -4
  56. package/lib/cjs/ElementLocateManager.js.map +1 -1
  57. package/lib/cjs/EmphasizeElements.d.ts +1 -0
  58. package/lib/cjs/EmphasizeElements.d.ts.map +1 -1
  59. package/lib/cjs/EmphasizeElements.js +1 -0
  60. package/lib/cjs/EmphasizeElements.js.map +1 -1
  61. package/lib/cjs/EntityState.d.ts +2 -0
  62. package/lib/cjs/EntityState.d.ts.map +1 -1
  63. package/lib/cjs/EntityState.js +2 -0
  64. package/lib/cjs/EntityState.js.map +1 -1
  65. package/lib/cjs/FeatureOverrideProvider.d.ts +1 -0
  66. package/lib/cjs/FeatureOverrideProvider.d.ts.map +1 -1
  67. package/lib/cjs/FeatureOverrideProvider.js.map +1 -1
  68. package/lib/cjs/FlashSettings.d.ts +3 -0
  69. package/lib/cjs/FlashSettings.d.ts.map +1 -1
  70. package/lib/cjs/FlashSettings.js +2 -0
  71. package/lib/cjs/FlashSettings.js.map +1 -1
  72. package/lib/cjs/FrontendHubAccess.d.ts +4 -1
  73. package/lib/cjs/FrontendHubAccess.d.ts.map +1 -1
  74. package/lib/cjs/FrontendHubAccess.js.map +1 -1
  75. package/lib/cjs/FrontendLoggerCategory.d.ts +6 -1
  76. package/lib/cjs/FrontendLoggerCategory.d.ts.map +1 -1
  77. package/lib/cjs/FrontendLoggerCategory.js +5 -0
  78. package/lib/cjs/FrontendLoggerCategory.js.map +1 -1
  79. package/lib/cjs/FrustumAnimator.d.ts +2 -0
  80. package/lib/cjs/FrustumAnimator.d.ts.map +1 -1
  81. package/lib/cjs/FrustumAnimator.js +2 -0
  82. package/lib/cjs/FrustumAnimator.js.map +1 -1
  83. package/lib/cjs/FuzzySearch.d.ts +1 -0
  84. package/lib/cjs/FuzzySearch.d.ts.map +1 -1
  85. package/lib/cjs/FuzzySearch.js.map +1 -1
  86. package/lib/cjs/GlobeAnimator.d.ts +1 -0
  87. package/lib/cjs/GlobeAnimator.d.ts.map +1 -1
  88. package/lib/cjs/GlobeAnimator.js +1 -0
  89. package/lib/cjs/GlobeAnimator.js.map +1 -1
  90. package/lib/cjs/HitDetail.d.ts +26 -5
  91. package/lib/cjs/HitDetail.d.ts.map +1 -1
  92. package/lib/cjs/HitDetail.js +26 -5
  93. package/lib/cjs/HitDetail.js.map +1 -1
  94. package/lib/cjs/IModelApp.d.ts +9 -0
  95. package/lib/cjs/IModelApp.d.ts.map +1 -1
  96. package/lib/cjs/IModelApp.js +38 -23
  97. package/lib/cjs/IModelApp.js.map +1 -1
  98. package/lib/cjs/IModelConnection.d.ts +11 -2
  99. package/lib/cjs/IModelConnection.d.ts.map +1 -1
  100. package/lib/cjs/IModelConnection.js +23 -2
  101. package/lib/cjs/IModelConnection.js.map +1 -1
  102. package/lib/cjs/ImageUtil.d.ts +15 -2
  103. package/lib/cjs/ImageUtil.d.ts.map +1 -1
  104. package/lib/cjs/ImageUtil.js +19 -4
  105. package/lib/cjs/ImageUtil.js.map +1 -1
  106. package/lib/cjs/IpcApp.d.ts +1 -0
  107. package/lib/cjs/IpcApp.d.ts.map +1 -1
  108. package/lib/cjs/IpcApp.js +1 -0
  109. package/lib/cjs/IpcApp.js.map +1 -1
  110. package/lib/cjs/MarginPercent.d.ts +1 -0
  111. package/lib/cjs/MarginPercent.d.ts.map +1 -1
  112. package/lib/cjs/MarginPercent.js +1 -0
  113. package/lib/cjs/MarginPercent.js.map +1 -1
  114. package/lib/cjs/Marker.d.ts +16 -3
  115. package/lib/cjs/Marker.d.ts.map +1 -1
  116. package/lib/cjs/Marker.js +3 -0
  117. package/lib/cjs/Marker.js.map +1 -1
  118. package/lib/cjs/ModelSelectorState.d.ts +1 -0
  119. package/lib/cjs/ModelSelectorState.d.ts.map +1 -1
  120. package/lib/cjs/ModelSelectorState.js +1 -0
  121. package/lib/cjs/ModelSelectorState.js.map +1 -1
  122. package/lib/cjs/ModelState.d.ts +10 -0
  123. package/lib/cjs/ModelState.d.ts.map +1 -1
  124. package/lib/cjs/ModelState.js +10 -0
  125. package/lib/cjs/ModelState.js.map +1 -1
  126. package/lib/cjs/NotificationManager.d.ts +11 -0
  127. package/lib/cjs/NotificationManager.d.ts.map +1 -1
  128. package/lib/cjs/NotificationManager.js +10 -0
  129. package/lib/cjs/NotificationManager.js.map +1 -1
  130. package/lib/cjs/PerModelCategoryVisibility.d.ts +1 -0
  131. package/lib/cjs/PerModelCategoryVisibility.d.ts.map +1 -1
  132. package/lib/cjs/PerModelCategoryVisibility.js +1 -0
  133. package/lib/cjs/PerModelCategoryVisibility.js.map +1 -1
  134. package/lib/cjs/SelectionSet.d.ts +7 -0
  135. package/lib/cjs/SelectionSet.d.ts.map +1 -1
  136. package/lib/cjs/SelectionSet.js +3 -0
  137. package/lib/cjs/SelectionSet.js.map +1 -1
  138. package/lib/cjs/SheetViewState.d.ts +6 -5
  139. package/lib/cjs/SheetViewState.d.ts.map +1 -1
  140. package/lib/cjs/SheetViewState.js +58 -6
  141. package/lib/cjs/SheetViewState.js.map +1 -1
  142. package/lib/cjs/SpatialViewState.d.ts +7 -2
  143. package/lib/cjs/SpatialViewState.d.ts.map +1 -1
  144. package/lib/cjs/SpatialViewState.js +17 -3
  145. package/lib/cjs/SpatialViewState.js.map +1 -1
  146. package/lib/cjs/Sprites.d.ts +3 -0
  147. package/lib/cjs/Sprites.d.ts.map +1 -1
  148. package/lib/cjs/Sprites.js +3 -0
  149. package/lib/cjs/Sprites.js.map +1 -1
  150. package/lib/cjs/StandardView.d.ts +1 -0
  151. package/lib/cjs/StandardView.d.ts.map +1 -1
  152. package/lib/cjs/StandardView.js +1 -0
  153. package/lib/cjs/StandardView.js.map +1 -1
  154. package/lib/cjs/SubCategoriesCache.d.ts +14 -7
  155. package/lib/cjs/SubCategoriesCache.d.ts.map +1 -1
  156. package/lib/cjs/SubCategoriesCache.js +36 -8
  157. package/lib/cjs/SubCategoriesCache.js.map +1 -1
  158. package/lib/cjs/TentativePoint.d.ts +4 -1
  159. package/lib/cjs/TentativePoint.d.ts.map +1 -1
  160. package/lib/cjs/TentativePoint.js +4 -1
  161. package/lib/cjs/TentativePoint.js.map +1 -1
  162. package/lib/cjs/Tiles.d.ts +1 -0
  163. package/lib/cjs/Tiles.d.ts.map +1 -1
  164. package/lib/cjs/Tiles.js +1 -0
  165. package/lib/cjs/Tiles.js.map +1 -1
  166. package/lib/cjs/ViewAnimation.d.ts +6 -0
  167. package/lib/cjs/ViewAnimation.d.ts.map +1 -1
  168. package/lib/cjs/ViewAnimation.js.map +1 -1
  169. package/lib/cjs/ViewCreator2d.d.ts +2 -0
  170. package/lib/cjs/ViewCreator2d.d.ts.map +1 -1
  171. package/lib/cjs/ViewCreator2d.js +1 -0
  172. package/lib/cjs/ViewCreator2d.js.map +1 -1
  173. package/lib/cjs/ViewCreator3d.d.ts +2 -8
  174. package/lib/cjs/ViewCreator3d.d.ts.map +1 -1
  175. package/lib/cjs/ViewCreator3d.js +12 -38
  176. package/lib/cjs/ViewCreator3d.js.map +1 -1
  177. package/lib/cjs/ViewGlobalLocation.d.ts +3 -0
  178. package/lib/cjs/ViewGlobalLocation.d.ts.map +1 -1
  179. package/lib/cjs/ViewGlobalLocation.js +1 -0
  180. package/lib/cjs/ViewGlobalLocation.js.map +1 -1
  181. package/lib/cjs/ViewManager.d.ts +3 -0
  182. package/lib/cjs/ViewManager.d.ts.map +1 -1
  183. package/lib/cjs/ViewManager.js +2 -0
  184. package/lib/cjs/ViewManager.js.map +1 -1
  185. package/lib/cjs/ViewPose.d.ts +1 -0
  186. package/lib/cjs/ViewPose.d.ts.map +1 -1
  187. package/lib/cjs/ViewPose.js +1 -0
  188. package/lib/cjs/ViewPose.js.map +1 -1
  189. package/lib/cjs/ViewRect.d.ts +1 -0
  190. package/lib/cjs/ViewRect.d.ts.map +1 -1
  191. package/lib/cjs/ViewRect.js +1 -0
  192. package/lib/cjs/ViewRect.js.map +1 -1
  193. package/lib/cjs/ViewState.d.ts +17 -2
  194. package/lib/cjs/ViewState.d.ts.map +1 -1
  195. package/lib/cjs/ViewState.js +40 -9
  196. package/lib/cjs/ViewState.js.map +1 -1
  197. package/lib/cjs/ViewStatus.d.ts +1 -0
  198. package/lib/cjs/ViewStatus.d.ts.map +1 -1
  199. package/lib/cjs/ViewStatus.js +1 -0
  200. package/lib/cjs/ViewStatus.js.map +1 -1
  201. package/lib/cjs/ViewingSpace.d.ts +1 -0
  202. package/lib/cjs/ViewingSpace.d.ts.map +1 -1
  203. package/lib/cjs/ViewingSpace.js +1 -0
  204. package/lib/cjs/ViewingSpace.js.map +1 -1
  205. package/lib/cjs/Viewport.d.ts +6 -2
  206. package/lib/cjs/Viewport.d.ts.map +1 -1
  207. package/lib/cjs/Viewport.js +12 -4
  208. package/lib/cjs/Viewport.js.map +1 -1
  209. package/lib/cjs/ViewportSync.d.ts +119 -0
  210. package/lib/cjs/ViewportSync.d.ts.map +1 -0
  211. package/lib/cjs/ViewportSync.js +187 -0
  212. package/lib/cjs/ViewportSync.js.map +1 -0
  213. package/lib/cjs/core-frontend.d.ts +10 -6
  214. package/lib/cjs/core-frontend.d.ts.map +1 -1
  215. package/lib/cjs/core-frontend.js +11 -6
  216. package/lib/cjs/core-frontend.js.map +1 -1
  217. package/lib/cjs/extension/Extension.d.ts +24 -15
  218. package/lib/cjs/extension/Extension.d.ts.map +1 -1
  219. package/lib/cjs/extension/Extension.js +0 -8
  220. package/lib/cjs/extension/Extension.js.map +1 -1
  221. package/lib/cjs/extension/ExtensionAdmin.d.ts +21 -44
  222. package/lib/cjs/extension/ExtensionAdmin.d.ts.map +1 -1
  223. package/lib/cjs/extension/ExtensionAdmin.js +55 -64
  224. package/lib/cjs/extension/ExtensionAdmin.js.map +1 -1
  225. package/lib/cjs/extension/ExtensionRuntime.js +231 -59
  226. package/lib/cjs/extension/ExtensionRuntime.js.map +1 -1
  227. package/lib/cjs/extension/providers/ExtensionLoadScript.d.ts +10 -0
  228. package/lib/cjs/extension/providers/ExtensionLoadScript.d.ts.map +1 -0
  229. package/lib/cjs/extension/providers/ExtensionLoadScript.js +55 -0
  230. package/lib/cjs/extension/providers/ExtensionLoadScript.js.map +1 -0
  231. package/lib/cjs/extension/providers/ExtensionServiceClient.d.ts +52 -0
  232. package/lib/cjs/extension/providers/ExtensionServiceClient.d.ts.map +1 -0
  233. package/lib/cjs/extension/providers/ExtensionServiceClient.js +131 -0
  234. package/lib/cjs/extension/providers/ExtensionServiceClient.js.map +1 -0
  235. package/lib/cjs/extension/providers/LocalExtensionProvider.d.ts +26 -0
  236. package/lib/cjs/extension/providers/LocalExtensionProvider.d.ts.map +1 -0
  237. package/lib/cjs/extension/providers/LocalExtensionProvider.js +24 -0
  238. package/lib/cjs/extension/providers/LocalExtensionProvider.js.map +1 -0
  239. package/lib/cjs/extension/providers/RemoteExtensionProvider.d.ts +36 -0
  240. package/lib/cjs/extension/providers/RemoteExtensionProvider.d.ts.map +1 -0
  241. package/lib/cjs/extension/providers/RemoteExtensionProvider.js +53 -0
  242. package/lib/cjs/extension/providers/RemoteExtensionProvider.js.map +1 -0
  243. package/lib/cjs/extension/providers/ServiceExtensionProvider.d.ts +37 -0
  244. package/lib/cjs/extension/providers/ServiceExtensionProvider.d.ts.map +1 -0
  245. package/lib/cjs/extension/providers/ServiceExtensionProvider.js +84 -0
  246. package/lib/cjs/extension/providers/ServiceExtensionProvider.js.map +1 -0
  247. package/lib/cjs/quantity-formatting/QuantityFormatter.d.ts.map +1 -1
  248. package/lib/cjs/quantity-formatting/QuantityFormatter.js +2 -1
  249. package/lib/cjs/quantity-formatting/QuantityFormatter.js.map +1 -1
  250. package/lib/cjs/render/CanvasDecoration.d.ts +2 -0
  251. package/lib/cjs/render/CanvasDecoration.d.ts.map +1 -1
  252. package/lib/cjs/render/CanvasDecoration.js.map +1 -1
  253. package/lib/cjs/render/Decorations.d.ts +1 -0
  254. package/lib/cjs/render/Decorations.d.ts.map +1 -1
  255. package/lib/cjs/render/Decorations.js +1 -0
  256. package/lib/cjs/render/Decorations.js.map +1 -1
  257. package/lib/cjs/render/FeatureSymbology.d.ts +1 -0
  258. package/lib/cjs/render/FeatureSymbology.d.ts.map +1 -1
  259. package/lib/cjs/render/FeatureSymbology.js +1 -0
  260. package/lib/cjs/render/FeatureSymbology.js.map +1 -1
  261. package/lib/cjs/render/GraphicBranch.d.ts +2 -0
  262. package/lib/cjs/render/GraphicBranch.d.ts.map +1 -1
  263. package/lib/cjs/render/GraphicBranch.js +1 -0
  264. package/lib/cjs/render/GraphicBranch.js.map +1 -1
  265. package/lib/cjs/render/GraphicBuilder.d.ts +33 -2
  266. package/lib/cjs/render/GraphicBuilder.d.ts.map +1 -1
  267. package/lib/cjs/render/GraphicBuilder.js +26 -0
  268. package/lib/cjs/render/GraphicBuilder.js.map +1 -1
  269. package/lib/cjs/render/GraphicPrimitive.d.ts +14 -0
  270. package/lib/cjs/render/GraphicPrimitive.d.ts.map +1 -1
  271. package/lib/cjs/render/GraphicPrimitive.js.map +1 -1
  272. package/lib/cjs/render/ParticleCollectionBuilder.d.ts +3 -0
  273. package/lib/cjs/render/ParticleCollectionBuilder.d.ts.map +1 -1
  274. package/lib/cjs/render/ParticleCollectionBuilder.js.map +1 -1
  275. package/lib/cjs/render/Pixel.d.ts +1 -0
  276. package/lib/cjs/render/Pixel.d.ts.map +1 -1
  277. package/lib/cjs/render/Pixel.js +1 -0
  278. package/lib/cjs/render/Pixel.js.map +1 -1
  279. package/lib/cjs/render/RenderClipVolume.d.ts +1 -0
  280. package/lib/cjs/render/RenderClipVolume.d.ts.map +1 -1
  281. package/lib/cjs/render/RenderClipVolume.js +1 -0
  282. package/lib/cjs/render/RenderClipVolume.js.map +1 -1
  283. package/lib/cjs/render/RenderGraphic.d.ts +3 -0
  284. package/lib/cjs/render/RenderGraphic.d.ts.map +1 -1
  285. package/lib/cjs/render/RenderGraphic.js +2 -0
  286. package/lib/cjs/render/RenderGraphic.js.map +1 -1
  287. package/lib/cjs/render/RenderSystem.d.ts +4 -3
  288. package/lib/cjs/render/RenderSystem.d.ts.map +1 -1
  289. package/lib/cjs/render/RenderSystem.js +4 -3
  290. package/lib/cjs/render/RenderSystem.js.map +1 -1
  291. package/lib/cjs/render/RenderTexture.d.ts +7 -0
  292. package/lib/cjs/render/RenderTexture.d.ts.map +1 -1
  293. package/lib/cjs/render/RenderTexture.js.map +1 -1
  294. package/lib/cjs/render/Scene.d.ts +1 -0
  295. package/lib/cjs/render/Scene.d.ts.map +1 -1
  296. package/lib/cjs/render/Scene.js +1 -0
  297. package/lib/cjs/render/Scene.js.map +1 -1
  298. package/lib/cjs/render/ScreenSpaceEffectBuilder.d.ts +10 -0
  299. package/lib/cjs/render/ScreenSpaceEffectBuilder.d.ts.map +1 -1
  300. package/lib/cjs/render/ScreenSpaceEffectBuilder.js +2 -0
  301. package/lib/cjs/render/ScreenSpaceEffectBuilder.js.map +1 -1
  302. package/lib/cjs/render/primitives/VertexKey.d.ts +4 -2
  303. package/lib/cjs/render/primitives/VertexKey.d.ts.map +1 -1
  304. package/lib/cjs/render/primitives/VertexKey.js +23 -12
  305. package/lib/cjs/render/primitives/VertexKey.js.map +1 -1
  306. package/lib/cjs/render/primitives/VertexTable.d.ts +1 -1
  307. package/lib/cjs/render/primitives/VertexTable.js +30 -2
  308. package/lib/cjs/render/primitives/VertexTable.js.map +1 -1
  309. package/lib/cjs/render/primitives/geometry/GeometryAccumulator.d.ts +12 -4
  310. package/lib/cjs/render/primitives/geometry/GeometryAccumulator.d.ts.map +1 -1
  311. package/lib/cjs/render/primitives/geometry/GeometryAccumulator.js +20 -15
  312. package/lib/cjs/render/primitives/geometry/GeometryAccumulator.js.map +1 -1
  313. package/lib/cjs/render/primitives/geometry/GeometryListBuilder.d.ts +2 -1
  314. package/lib/cjs/render/primitives/geometry/GeometryListBuilder.d.ts.map +1 -1
  315. package/lib/cjs/render/primitives/geometry/GeometryListBuilder.js +6 -1
  316. package/lib/cjs/render/primitives/geometry/GeometryListBuilder.js.map +1 -1
  317. package/lib/cjs/render/primitives/geometry/GeometryPrimitives.d.ts +14 -12
  318. package/lib/cjs/render/primitives/geometry/GeometryPrimitives.d.ts.map +1 -1
  319. package/lib/cjs/render/primitives/geometry/GeometryPrimitives.js +26 -25
  320. package/lib/cjs/render/primitives/geometry/GeometryPrimitives.js.map +1 -1
  321. package/lib/cjs/render/primitives/mesh/MeshBuilder.d.ts +8 -8
  322. package/lib/cjs/render/primitives/mesh/MeshBuilder.d.ts.map +1 -1
  323. package/lib/cjs/render/primitives/mesh/MeshBuilder.js +15 -15
  324. package/lib/cjs/render/primitives/mesh/MeshBuilder.js.map +1 -1
  325. package/lib/cjs/render/primitives/mesh/MeshBuilderMap.d.ts +11 -6
  326. package/lib/cjs/render/primitives/mesh/MeshBuilderMap.d.ts.map +1 -1
  327. package/lib/cjs/render/primitives/mesh/MeshBuilderMap.js +12 -15
  328. package/lib/cjs/render/primitives/mesh/MeshBuilderMap.js.map +1 -1
  329. package/lib/cjs/render/primitives/mesh/MeshPrimitives.d.ts +1 -1
  330. package/lib/cjs/render/primitives/mesh/MeshPrimitives.d.ts.map +1 -1
  331. package/lib/cjs/render/primitives/mesh/MeshPrimitives.js +6 -2
  332. package/lib/cjs/render/primitives/mesh/MeshPrimitives.js.map +1 -1
  333. package/lib/cjs/render/webgl/AttributeMap.js +1 -1
  334. package/lib/cjs/render/webgl/CachedGeometry.d.ts +7 -1
  335. package/lib/cjs/render/webgl/CachedGeometry.d.ts.map +1 -1
  336. package/lib/cjs/render/webgl/CachedGeometry.js +20 -10
  337. package/lib/cjs/render/webgl/CachedGeometry.js.map +1 -1
  338. package/lib/cjs/render/webgl/DrawCommand.d.ts.map +1 -1
  339. package/lib/cjs/render/webgl/DrawCommand.js +2 -1
  340. package/lib/cjs/render/webgl/DrawCommand.js.map +1 -1
  341. package/lib/cjs/render/webgl/InstancedGeometry.d.ts +1 -0
  342. package/lib/cjs/render/webgl/InstancedGeometry.d.ts.map +1 -1
  343. package/lib/cjs/render/webgl/InstancedGeometry.js +1 -0
  344. package/lib/cjs/render/webgl/InstancedGeometry.js.map +1 -1
  345. package/lib/cjs/render/webgl/RealityMesh.d.ts +14 -11
  346. package/lib/cjs/render/webgl/RealityMesh.d.ts.map +1 -1
  347. package/lib/cjs/render/webgl/RealityMesh.js +26 -17
  348. package/lib/cjs/render/webgl/RealityMesh.js.map +1 -1
  349. package/lib/cjs/render/webgl/SceneCompositor.d.ts +2 -0
  350. package/lib/cjs/render/webgl/SceneCompositor.d.ts.map +1 -1
  351. package/lib/cjs/render/webgl/SceneCompositor.js +219 -52
  352. package/lib/cjs/render/webgl/SceneCompositor.js.map +1 -1
  353. package/lib/cjs/render/webgl/ShaderBuilder.d.ts +5 -4
  354. package/lib/cjs/render/webgl/ShaderBuilder.d.ts.map +1 -1
  355. package/lib/cjs/render/webgl/ShaderBuilder.js +7 -6
  356. package/lib/cjs/render/webgl/ShaderBuilder.js.map +1 -1
  357. package/lib/cjs/render/webgl/System.d.ts +4 -4
  358. package/lib/cjs/render/webgl/System.d.ts.map +1 -1
  359. package/lib/cjs/render/webgl/System.js +6 -6
  360. package/lib/cjs/render/webgl/System.js.map +1 -1
  361. package/lib/cjs/render/webgl/Target.d.ts +6 -1
  362. package/lib/cjs/render/webgl/Target.d.ts.map +1 -1
  363. package/lib/cjs/render/webgl/Target.js +64 -13
  364. package/lib/cjs/render/webgl/Target.js.map +1 -1
  365. package/lib/cjs/render/webgl/Technique.d.ts +4 -2
  366. package/lib/cjs/render/webgl/Technique.d.ts.map +1 -1
  367. package/lib/cjs/render/webgl/Technique.js +166 -135
  368. package/lib/cjs/render/webgl/Technique.js.map +1 -1
  369. package/lib/cjs/render/webgl/TechniqueFlags.d.ts +7 -3
  370. package/lib/cjs/render/webgl/TechniqueFlags.d.ts.map +1 -1
  371. package/lib/cjs/render/webgl/TechniqueFlags.js +17 -4
  372. package/lib/cjs/render/webgl/TechniqueFlags.js.map +1 -1
  373. package/lib/cjs/render/webgl/TechniqueId.d.ts +8 -7
  374. package/lib/cjs/render/webgl/TechniqueId.d.ts.map +1 -1
  375. package/lib/cjs/render/webgl/TechniqueId.js.map +1 -1
  376. package/lib/cjs/render/webgl/glsl/Animation.d.ts.map +1 -1
  377. package/lib/cjs/render/webgl/glsl/Animation.js +2 -0
  378. package/lib/cjs/render/webgl/glsl/Animation.js.map +1 -1
  379. package/lib/cjs/render/webgl/glsl/Blur.d.ts +2 -1
  380. package/lib/cjs/render/webgl/glsl/Blur.d.ts.map +1 -1
  381. package/lib/cjs/render/webgl/glsl/Blur.js +38 -6
  382. package/lib/cjs/render/webgl/glsl/Blur.js.map +1 -1
  383. package/lib/cjs/render/webgl/glsl/Color.d.ts.map +1 -1
  384. package/lib/cjs/render/webgl/glsl/Color.js +8 -7
  385. package/lib/cjs/render/webgl/glsl/Color.js.map +1 -1
  386. package/lib/cjs/render/webgl/glsl/CopyStencil.js +1 -1
  387. package/lib/cjs/render/webgl/glsl/Decode.d.ts +2 -1
  388. package/lib/cjs/render/webgl/glsl/Decode.d.ts.map +1 -1
  389. package/lib/cjs/render/webgl/glsl/Decode.js +16 -2
  390. package/lib/cjs/render/webgl/glsl/Decode.js.map +1 -1
  391. package/lib/cjs/render/webgl/glsl/Edge.d.ts +2 -2
  392. package/lib/cjs/render/webgl/glsl/Edge.d.ts.map +1 -1
  393. package/lib/cjs/render/webgl/glsl/Edge.js +6 -19
  394. package/lib/cjs/render/webgl/glsl/Edge.js.map +1 -1
  395. package/lib/cjs/render/webgl/glsl/FeatureSymbology.d.ts.map +1 -1
  396. package/lib/cjs/render/webgl/glsl/FeatureSymbology.js +0 -2
  397. package/lib/cjs/render/webgl/glsl/FeatureSymbology.js.map +1 -1
  398. package/lib/cjs/render/webgl/glsl/PointString.d.ts +3 -3
  399. package/lib/cjs/render/webgl/glsl/PointString.d.ts.map +1 -1
  400. package/lib/cjs/render/webgl/glsl/PointString.js +6 -6
  401. package/lib/cjs/render/webgl/glsl/PointString.js.map +1 -1
  402. package/lib/cjs/render/webgl/glsl/Polyline.d.ts +3 -3
  403. package/lib/cjs/render/webgl/glsl/Polyline.d.ts.map +1 -1
  404. package/lib/cjs/render/webgl/glsl/Polyline.js +6 -21
  405. package/lib/cjs/render/webgl/glsl/Polyline.js.map +1 -1
  406. package/lib/cjs/render/webgl/glsl/Surface.d.ts +2 -2
  407. package/lib/cjs/render/webgl/glsl/Surface.d.ts.map +1 -1
  408. package/lib/cjs/render/webgl/glsl/Surface.js +50 -34
  409. package/lib/cjs/render/webgl/glsl/Surface.js.map +1 -1
  410. package/lib/cjs/render/webgl/glsl/Vertex.d.ts +3 -3
  411. package/lib/cjs/render/webgl/glsl/Vertex.d.ts.map +1 -1
  412. package/lib/cjs/render/webgl/glsl/Vertex.js +143 -57
  413. package/lib/cjs/render/webgl/glsl/Vertex.js.map +1 -1
  414. package/lib/cjs/tile/ClassifierTileTree.d.ts.map +1 -1
  415. package/lib/cjs/tile/ClassifierTileTree.js +3 -4
  416. package/lib/cjs/tile/ClassifierTileTree.js.map +1 -1
  417. package/lib/cjs/tile/DisclosedTileTreeSet.d.ts +2 -0
  418. package/lib/cjs/tile/DisclosedTileTreeSet.d.ts.map +1 -1
  419. package/lib/cjs/tile/DisclosedTileTreeSet.js +1 -0
  420. package/lib/cjs/tile/DisclosedTileTreeSet.js.map +1 -1
  421. package/lib/cjs/tile/DynamicIModelTile.js +4 -2
  422. package/lib/cjs/tile/DynamicIModelTile.js.map +1 -1
  423. package/lib/cjs/tile/GltfReader.d.ts +19 -9
  424. package/lib/cjs/tile/GltfReader.d.ts.map +1 -1
  425. package/lib/cjs/tile/GltfReader.js +24 -7
  426. package/lib/cjs/tile/GltfReader.js.map +1 -1
  427. package/lib/cjs/tile/IModelTile.js +1 -1
  428. package/lib/cjs/tile/IModelTile.js.map +1 -1
  429. package/lib/cjs/tile/IModelTileRequestChannels.d.ts +3 -3
  430. package/lib/cjs/tile/IModelTileRequestChannels.d.ts.map +1 -1
  431. package/lib/cjs/tile/IModelTileRequestChannels.js +7 -11
  432. package/lib/cjs/tile/IModelTileRequestChannels.js.map +1 -1
  433. package/lib/cjs/tile/IModelTileTree.d.ts +3 -3
  434. package/lib/cjs/tile/IModelTileTree.d.ts.map +1 -1
  435. package/lib/cjs/tile/IModelTileTree.js +1 -1
  436. package/lib/cjs/tile/IModelTileTree.js.map +1 -1
  437. package/lib/cjs/tile/ImdlReader.d.ts +2 -0
  438. package/lib/cjs/tile/ImdlReader.d.ts.map +1 -1
  439. package/lib/cjs/tile/ImdlReader.js +2 -0
  440. package/lib/cjs/tile/ImdlReader.js.map +1 -1
  441. package/lib/cjs/tile/OPCFormatInterpreter.d.ts.map +1 -1
  442. package/lib/cjs/tile/OPCFormatInterpreter.js +1 -2
  443. package/lib/cjs/tile/OPCFormatInterpreter.js.map +1 -1
  444. package/lib/cjs/tile/PrimaryTileTree.d.ts.map +1 -1
  445. package/lib/cjs/tile/PrimaryTileTree.js +4 -4
  446. package/lib/cjs/tile/PrimaryTileTree.js.map +1 -1
  447. package/lib/cjs/tile/RealityTileLoader.d.ts +1 -1
  448. package/lib/cjs/tile/RealityTileLoader.d.ts.map +1 -1
  449. package/lib/cjs/tile/RealityTileLoader.js +34 -6
  450. package/lib/cjs/tile/RealityTileLoader.js.map +1 -1
  451. package/lib/cjs/tile/Tile.d.ts +5 -0
  452. package/lib/cjs/tile/Tile.d.ts.map +1 -1
  453. package/lib/cjs/tile/Tile.js +5 -0
  454. package/lib/cjs/tile/Tile.js.map +1 -1
  455. package/lib/cjs/tile/TileAdmin.d.ts +18 -1
  456. package/lib/cjs/tile/TileAdmin.d.ts.map +1 -1
  457. package/lib/cjs/tile/TileAdmin.js +26 -19
  458. package/lib/cjs/tile/TileAdmin.js.map +1 -1
  459. package/lib/cjs/tile/TileContent.d.ts +1 -0
  460. package/lib/cjs/tile/TileContent.d.ts.map +1 -1
  461. package/lib/cjs/tile/TileContent.js.map +1 -1
  462. package/lib/cjs/tile/TileDrawArgs.d.ts +2 -0
  463. package/lib/cjs/tile/TileDrawArgs.d.ts.map +1 -1
  464. package/lib/cjs/tile/TileDrawArgs.js +1 -0
  465. package/lib/cjs/tile/TileDrawArgs.js.map +1 -1
  466. package/lib/cjs/tile/TileParams.d.ts +1 -0
  467. package/lib/cjs/tile/TileParams.d.ts.map +1 -1
  468. package/lib/cjs/tile/TileParams.js.map +1 -1
  469. package/lib/cjs/tile/TileRequest.d.ts +1 -0
  470. package/lib/cjs/tile/TileRequest.d.ts.map +1 -1
  471. package/lib/cjs/tile/TileRequest.js +1 -0
  472. package/lib/cjs/tile/TileRequest.js.map +1 -1
  473. package/lib/cjs/tile/TileRequestChannel.d.ts +2 -0
  474. package/lib/cjs/tile/TileRequestChannel.d.ts.map +1 -1
  475. package/lib/cjs/tile/TileRequestChannel.js +2 -0
  476. package/lib/cjs/tile/TileRequestChannel.js.map +1 -1
  477. package/lib/cjs/tile/TileRequestChannels.d.ts +1 -4
  478. package/lib/cjs/tile/TileRequestChannels.d.ts.map +1 -1
  479. package/lib/cjs/tile/TileRequestChannels.js +2 -6
  480. package/lib/cjs/tile/TileRequestChannels.js.map +1 -1
  481. package/lib/cjs/tile/TileTree.d.ts +2 -0
  482. package/lib/cjs/tile/TileTree.d.ts.map +1 -1
  483. package/lib/cjs/tile/TileTree.js +2 -0
  484. package/lib/cjs/tile/TileTree.js.map +1 -1
  485. package/lib/cjs/tile/TileTreeOwner.d.ts +1 -0
  486. package/lib/cjs/tile/TileTreeOwner.d.ts.map +1 -1
  487. package/lib/cjs/tile/TileTreeOwner.js.map +1 -1
  488. package/lib/cjs/tile/TileTreeParams.d.ts +1 -0
  489. package/lib/cjs/tile/TileTreeParams.d.ts.map +1 -1
  490. package/lib/cjs/tile/TileTreeParams.js.map +1 -1
  491. package/lib/cjs/tile/TileTreeReference.d.ts +2 -0
  492. package/lib/cjs/tile/TileTreeReference.d.ts.map +1 -1
  493. package/lib/cjs/tile/TileTreeReference.js +2 -0
  494. package/lib/cjs/tile/TileTreeReference.js.map +1 -1
  495. package/lib/cjs/tile/TileTreeSupplier.d.ts +1 -0
  496. package/lib/cjs/tile/TileTreeSupplier.d.ts.map +1 -1
  497. package/lib/cjs/tile/TileTreeSupplier.js.map +1 -1
  498. package/lib/cjs/tile/TileUsageMarker.d.ts +1 -0
  499. package/lib/cjs/tile/TileUsageMarker.d.ts.map +1 -1
  500. package/lib/cjs/tile/TileUsageMarker.js +1 -0
  501. package/lib/cjs/tile/TileUsageMarker.js.map +1 -1
  502. package/lib/cjs/tile/TiledGraphicsProvider.d.ts +1 -0
  503. package/lib/cjs/tile/TiledGraphicsProvider.d.ts.map +1 -1
  504. package/lib/cjs/tile/TiledGraphicsProvider.js.map +1 -1
  505. package/lib/cjs/tile/internal.d.ts +0 -2
  506. package/lib/cjs/tile/internal.d.ts.map +1 -1
  507. package/lib/cjs/tile/internal.js +0 -2
  508. package/lib/cjs/tile/internal.js.map +1 -1
  509. package/lib/cjs/tile/map/ArcGisUtilities.d.ts +2 -1
  510. package/lib/cjs/tile/map/ArcGisUtilities.d.ts.map +1 -1
  511. package/lib/cjs/tile/map/ArcGisUtilities.js +31 -20
  512. package/lib/cjs/tile/map/ArcGisUtilities.js.map +1 -1
  513. package/lib/cjs/tile/map/BingElevation.d.ts +1 -0
  514. package/lib/cjs/tile/map/BingElevation.d.ts.map +1 -1
  515. package/lib/cjs/tile/map/BingElevation.js +1 -0
  516. package/lib/cjs/tile/map/BingElevation.js.map +1 -1
  517. package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts +2 -1
  518. package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts.map +1 -1
  519. package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js +50 -27
  520. package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js.map +1 -1
  521. package/lib/cjs/tile/map/ImageryProviders/WmsMapLayerImageryProvider.d.ts +0 -1
  522. package/lib/cjs/tile/map/ImageryProviders/WmsMapLayerImageryProvider.d.ts.map +1 -1
  523. package/lib/cjs/tile/map/ImageryProviders/WmsMapLayerImageryProvider.js +12 -10
  524. package/lib/cjs/tile/map/ImageryProviders/WmsMapLayerImageryProvider.js.map +1 -1
  525. package/lib/cjs/tile/map/MapLayerAuthentication.d.ts +20 -9
  526. package/lib/cjs/tile/map/MapLayerAuthentication.d.ts.map +1 -1
  527. package/lib/cjs/tile/map/MapLayerAuthentication.js +0 -8
  528. package/lib/cjs/tile/map/MapLayerAuthentication.js.map +1 -1
  529. package/lib/cjs/tile/map/MapLayerFormatRegistry.d.ts +24 -6
  530. package/lib/cjs/tile/map/MapLayerFormatRegistry.d.ts.map +1 -1
  531. package/lib/cjs/tile/map/MapLayerFormatRegistry.js +28 -7
  532. package/lib/cjs/tile/map/MapLayerFormatRegistry.js.map +1 -1
  533. package/lib/cjs/tile/map/MapLayerImageryFormats.d.ts.map +1 -1
  534. package/lib/cjs/tile/map/MapLayerImageryFormats.js +1 -3
  535. package/lib/cjs/tile/map/MapLayerImageryFormats.js.map +1 -1
  536. package/lib/cjs/tile/map/MapLayerSources.d.ts +1 -1
  537. package/lib/cjs/tile/map/MapLayerSources.d.ts.map +1 -1
  538. package/lib/cjs/tile/map/MapLayerSources.js +1 -1
  539. package/lib/cjs/tile/map/MapLayerSources.js.map +1 -1
  540. package/lib/cjs/tile/map/MapTile.js +2 -2
  541. package/lib/cjs/tile/map/MapTile.js.map +1 -1
  542. package/lib/cjs/tile/map/MapTileLoader.js +1 -1
  543. package/lib/cjs/tile/map/MapTileLoader.js.map +1 -1
  544. package/lib/cjs/tile/map/MapTileTree.js +2 -2
  545. package/lib/cjs/tile/map/MapTileTree.js.map +1 -1
  546. package/lib/cjs/tile/map/WmsCapabilities.d.ts +3 -2
  547. package/lib/cjs/tile/map/WmsCapabilities.d.ts.map +1 -1
  548. package/lib/cjs/tile/map/WmsCapabilities.js +11 -10
  549. package/lib/cjs/tile/map/WmsCapabilities.js.map +1 -1
  550. package/lib/cjs/tools/ClipViewTool.d.ts +5 -3
  551. package/lib/cjs/tools/ClipViewTool.d.ts.map +1 -1
  552. package/lib/cjs/tools/ClipViewTool.js +4 -3
  553. package/lib/cjs/tools/ClipViewTool.js.map +1 -1
  554. package/lib/cjs/tools/EditManipulator.d.ts +1 -0
  555. package/lib/cjs/tools/EditManipulator.d.ts.map +1 -1
  556. package/lib/cjs/tools/EditManipulator.js +1 -0
  557. package/lib/cjs/tools/EditManipulator.js.map +1 -1
  558. package/lib/cjs/tools/EventController.d.ts +1 -0
  559. package/lib/cjs/tools/EventController.d.ts.map +1 -1
  560. package/lib/cjs/tools/EventController.js +1 -0
  561. package/lib/cjs/tools/EventController.js.map +1 -1
  562. package/lib/cjs/tools/PrimitiveTool.d.ts +4 -0
  563. package/lib/cjs/tools/PrimitiveTool.d.ts.map +1 -1
  564. package/lib/cjs/tools/PrimitiveTool.js +7 -0
  565. package/lib/cjs/tools/PrimitiveTool.js.map +1 -1
  566. package/lib/cjs/tools/SelectTool.d.ts +3 -0
  567. package/lib/cjs/tools/SelectTool.d.ts.map +1 -1
  568. package/lib/cjs/tools/SelectTool.js +3 -0
  569. package/lib/cjs/tools/SelectTool.js.map +1 -1
  570. package/lib/cjs/tools/Tool.d.ts +41 -6
  571. package/lib/cjs/tools/Tool.d.ts.map +1 -1
  572. package/lib/cjs/tools/Tool.js +27 -4
  573. package/lib/cjs/tools/Tool.js.map +1 -1
  574. package/lib/cjs/tools/ToolAdmin.d.ts +16 -22
  575. package/lib/cjs/tools/ToolAdmin.d.ts.map +1 -1
  576. package/lib/cjs/tools/ToolAdmin.js +47 -8
  577. package/lib/cjs/tools/ToolAdmin.js.map +1 -1
  578. package/lib/cjs/tools/ToolAssistance.d.ts +7 -0
  579. package/lib/cjs/tools/ToolAssistance.d.ts.map +1 -1
  580. package/lib/cjs/tools/ToolAssistance.js +3 -0
  581. package/lib/cjs/tools/ToolAssistance.js.map +1 -1
  582. package/lib/cjs/tools/ToolSettings.d.ts +3 -0
  583. package/lib/cjs/tools/ToolSettings.d.ts.map +1 -1
  584. package/lib/cjs/tools/ToolSettings.js +3 -0
  585. package/lib/cjs/tools/ToolSettings.js.map +1 -1
  586. package/lib/cjs/tools/ViewTool.d.ts +3 -1
  587. package/lib/cjs/tools/ViewTool.d.ts.map +1 -1
  588. package/lib/cjs/tools/ViewTool.js +9 -5
  589. package/lib/cjs/tools/ViewTool.js.map +1 -1
  590. package/lib/esm/AccuDraw.d.ts +2 -0
  591. package/lib/esm/AccuDraw.d.ts.map +1 -1
  592. package/lib/esm/AccuDraw.js +2 -0
  593. package/lib/esm/AccuDraw.js.map +1 -1
  594. package/lib/esm/AccuSnap.d.ts +1 -0
  595. package/lib/esm/AccuSnap.d.ts.map +1 -1
  596. package/lib/esm/AccuSnap.js +1 -0
  597. package/lib/esm/AccuSnap.js.map +1 -1
  598. package/lib/esm/ApproximateTerrainHeights.d.ts.map +1 -1
  599. package/lib/esm/ApproximateTerrainHeights.js +4 -2
  600. package/lib/esm/ApproximateTerrainHeights.js.map +1 -1
  601. package/lib/esm/ApproximateTerrainHeightsProps.d.ts +1 -1
  602. package/lib/esm/ApproximateTerrainHeightsProps.d.ts.map +1 -1
  603. package/lib/esm/ApproximateTerrainHeightsProps.js +1 -1
  604. package/lib/esm/ApproximateTerrainHeightsProps.js.map +1 -1
  605. package/lib/esm/AuxCoordSys.d.ts +12 -2
  606. package/lib/esm/AuxCoordSys.d.ts.map +1 -1
  607. package/lib/esm/AuxCoordSys.js +12 -2
  608. package/lib/esm/AuxCoordSys.js.map +1 -1
  609. package/lib/esm/BingLocation.d.ts +1 -0
  610. package/lib/esm/BingLocation.d.ts.map +1 -1
  611. package/lib/esm/BingLocation.js +1 -0
  612. package/lib/esm/BingLocation.js.map +1 -1
  613. package/lib/esm/BriefcaseConnection.d.ts +35 -1
  614. package/lib/esm/BriefcaseConnection.d.ts.map +1 -1
  615. package/lib/esm/BriefcaseConnection.js +50 -0
  616. package/lib/esm/BriefcaseConnection.js.map +1 -1
  617. package/lib/esm/CategorySelectorState.d.ts +1 -0
  618. package/lib/esm/CategorySelectorState.d.ts.map +1 -1
  619. package/lib/esm/CategorySelectorState.js +1 -0
  620. package/lib/esm/CategorySelectorState.js.map +1 -1
  621. package/lib/esm/ChangeFlags.d.ts +1 -0
  622. package/lib/esm/ChangeFlags.d.ts.map +1 -1
  623. package/lib/esm/ChangeFlags.js +1 -0
  624. package/lib/esm/ChangeFlags.js.map +1 -1
  625. package/lib/esm/ContextRealityModelState.d.ts +1 -0
  626. package/lib/esm/ContextRealityModelState.d.ts.map +1 -1
  627. package/lib/esm/ContextRealityModelState.js +1 -0
  628. package/lib/esm/ContextRealityModelState.js.map +1 -1
  629. package/lib/esm/CoordSystem.d.ts +1 -0
  630. package/lib/esm/CoordSystem.d.ts.map +1 -1
  631. package/lib/esm/CoordSystem.js +1 -0
  632. package/lib/esm/CoordSystem.js.map +1 -1
  633. package/lib/esm/DisplayStyleState.d.ts +4 -0
  634. package/lib/esm/DisplayStyleState.d.ts.map +1 -1
  635. package/lib/esm/DisplayStyleState.js +9 -4
  636. package/lib/esm/DisplayStyleState.js.map +1 -1
  637. package/lib/esm/DrawingViewState.d.ts +5 -2
  638. package/lib/esm/DrawingViewState.d.ts.map +1 -1
  639. package/lib/esm/DrawingViewState.js +34 -3
  640. package/lib/esm/DrawingViewState.js.map +1 -1
  641. package/lib/esm/ElementLocateManager.d.ts +23 -5
  642. package/lib/esm/ElementLocateManager.d.ts.map +1 -1
  643. package/lib/esm/ElementLocateManager.js +19 -4
  644. package/lib/esm/ElementLocateManager.js.map +1 -1
  645. package/lib/esm/EmphasizeElements.d.ts +1 -0
  646. package/lib/esm/EmphasizeElements.d.ts.map +1 -1
  647. package/lib/esm/EmphasizeElements.js +1 -0
  648. package/lib/esm/EmphasizeElements.js.map +1 -1
  649. package/lib/esm/EntityState.d.ts +2 -0
  650. package/lib/esm/EntityState.d.ts.map +1 -1
  651. package/lib/esm/EntityState.js +2 -0
  652. package/lib/esm/EntityState.js.map +1 -1
  653. package/lib/esm/FeatureOverrideProvider.d.ts +1 -0
  654. package/lib/esm/FeatureOverrideProvider.d.ts.map +1 -1
  655. package/lib/esm/FeatureOverrideProvider.js.map +1 -1
  656. package/lib/esm/FlashSettings.d.ts +3 -0
  657. package/lib/esm/FlashSettings.d.ts.map +1 -1
  658. package/lib/esm/FlashSettings.js +2 -0
  659. package/lib/esm/FlashSettings.js.map +1 -1
  660. package/lib/esm/FrontendHubAccess.d.ts +4 -1
  661. package/lib/esm/FrontendHubAccess.d.ts.map +1 -1
  662. package/lib/esm/FrontendHubAccess.js.map +1 -1
  663. package/lib/esm/FrontendLoggerCategory.d.ts +6 -1
  664. package/lib/esm/FrontendLoggerCategory.d.ts.map +1 -1
  665. package/lib/esm/FrontendLoggerCategory.js +5 -0
  666. package/lib/esm/FrontendLoggerCategory.js.map +1 -1
  667. package/lib/esm/FrustumAnimator.d.ts +2 -0
  668. package/lib/esm/FrustumAnimator.d.ts.map +1 -1
  669. package/lib/esm/FrustumAnimator.js +2 -0
  670. package/lib/esm/FrustumAnimator.js.map +1 -1
  671. package/lib/esm/FuzzySearch.d.ts +1 -0
  672. package/lib/esm/FuzzySearch.d.ts.map +1 -1
  673. package/lib/esm/FuzzySearch.js.map +1 -1
  674. package/lib/esm/GlobeAnimator.d.ts +1 -0
  675. package/lib/esm/GlobeAnimator.d.ts.map +1 -1
  676. package/lib/esm/GlobeAnimator.js +1 -0
  677. package/lib/esm/GlobeAnimator.js.map +1 -1
  678. package/lib/esm/HitDetail.d.ts +26 -5
  679. package/lib/esm/HitDetail.d.ts.map +1 -1
  680. package/lib/esm/HitDetail.js +26 -5
  681. package/lib/esm/HitDetail.js.map +1 -1
  682. package/lib/esm/IModelApp.d.ts +9 -0
  683. package/lib/esm/IModelApp.d.ts.map +1 -1
  684. package/lib/esm/IModelApp.js +37 -22
  685. package/lib/esm/IModelApp.js.map +1 -1
  686. package/lib/esm/IModelConnection.d.ts +11 -2
  687. package/lib/esm/IModelConnection.d.ts.map +1 -1
  688. package/lib/esm/IModelConnection.js +23 -2
  689. package/lib/esm/IModelConnection.js.map +1 -1
  690. package/lib/esm/ImageUtil.d.ts +15 -2
  691. package/lib/esm/ImageUtil.d.ts.map +1 -1
  692. package/lib/esm/ImageUtil.js +19 -4
  693. package/lib/esm/ImageUtil.js.map +1 -1
  694. package/lib/esm/IpcApp.d.ts +1 -0
  695. package/lib/esm/IpcApp.d.ts.map +1 -1
  696. package/lib/esm/IpcApp.js +1 -0
  697. package/lib/esm/IpcApp.js.map +1 -1
  698. package/lib/esm/MarginPercent.d.ts +1 -0
  699. package/lib/esm/MarginPercent.d.ts.map +1 -1
  700. package/lib/esm/MarginPercent.js +1 -0
  701. package/lib/esm/MarginPercent.js.map +1 -1
  702. package/lib/esm/Marker.d.ts +16 -3
  703. package/lib/esm/Marker.d.ts.map +1 -1
  704. package/lib/esm/Marker.js +3 -0
  705. package/lib/esm/Marker.js.map +1 -1
  706. package/lib/esm/ModelSelectorState.d.ts +1 -0
  707. package/lib/esm/ModelSelectorState.d.ts.map +1 -1
  708. package/lib/esm/ModelSelectorState.js +1 -0
  709. package/lib/esm/ModelSelectorState.js.map +1 -1
  710. package/lib/esm/ModelState.d.ts +10 -0
  711. package/lib/esm/ModelState.d.ts.map +1 -1
  712. package/lib/esm/ModelState.js +10 -0
  713. package/lib/esm/ModelState.js.map +1 -1
  714. package/lib/esm/NotificationManager.d.ts +11 -0
  715. package/lib/esm/NotificationManager.d.ts.map +1 -1
  716. package/lib/esm/NotificationManager.js +10 -0
  717. package/lib/esm/NotificationManager.js.map +1 -1
  718. package/lib/esm/PerModelCategoryVisibility.d.ts +1 -0
  719. package/lib/esm/PerModelCategoryVisibility.d.ts.map +1 -1
  720. package/lib/esm/PerModelCategoryVisibility.js +1 -0
  721. package/lib/esm/PerModelCategoryVisibility.js.map +1 -1
  722. package/lib/esm/SelectionSet.d.ts +7 -0
  723. package/lib/esm/SelectionSet.d.ts.map +1 -1
  724. package/lib/esm/SelectionSet.js +3 -0
  725. package/lib/esm/SelectionSet.js.map +1 -1
  726. package/lib/esm/SheetViewState.d.ts +6 -5
  727. package/lib/esm/SheetViewState.d.ts.map +1 -1
  728. package/lib/esm/SheetViewState.js +59 -7
  729. package/lib/esm/SheetViewState.js.map +1 -1
  730. package/lib/esm/SpatialViewState.d.ts +7 -2
  731. package/lib/esm/SpatialViewState.d.ts.map +1 -1
  732. package/lib/esm/SpatialViewState.js +18 -4
  733. package/lib/esm/SpatialViewState.js.map +1 -1
  734. package/lib/esm/Sprites.d.ts +3 -0
  735. package/lib/esm/Sprites.d.ts.map +1 -1
  736. package/lib/esm/Sprites.js +3 -0
  737. package/lib/esm/Sprites.js.map +1 -1
  738. package/lib/esm/StandardView.d.ts +1 -0
  739. package/lib/esm/StandardView.d.ts.map +1 -1
  740. package/lib/esm/StandardView.js +1 -0
  741. package/lib/esm/StandardView.js.map +1 -1
  742. package/lib/esm/SubCategoriesCache.d.ts +14 -7
  743. package/lib/esm/SubCategoriesCache.d.ts.map +1 -1
  744. package/lib/esm/SubCategoriesCache.js +37 -9
  745. package/lib/esm/SubCategoriesCache.js.map +1 -1
  746. package/lib/esm/TentativePoint.d.ts +4 -1
  747. package/lib/esm/TentativePoint.d.ts.map +1 -1
  748. package/lib/esm/TentativePoint.js +4 -1
  749. package/lib/esm/TentativePoint.js.map +1 -1
  750. package/lib/esm/Tiles.d.ts +1 -0
  751. package/lib/esm/Tiles.d.ts.map +1 -1
  752. package/lib/esm/Tiles.js +1 -0
  753. package/lib/esm/Tiles.js.map +1 -1
  754. package/lib/esm/ViewAnimation.d.ts +6 -0
  755. package/lib/esm/ViewAnimation.d.ts.map +1 -1
  756. package/lib/esm/ViewAnimation.js.map +1 -1
  757. package/lib/esm/ViewCreator2d.d.ts +2 -0
  758. package/lib/esm/ViewCreator2d.d.ts.map +1 -1
  759. package/lib/esm/ViewCreator2d.js +1 -0
  760. package/lib/esm/ViewCreator2d.js.map +1 -1
  761. package/lib/esm/ViewCreator3d.d.ts +2 -8
  762. package/lib/esm/ViewCreator3d.d.ts.map +1 -1
  763. package/lib/esm/ViewCreator3d.js +12 -38
  764. package/lib/esm/ViewCreator3d.js.map +1 -1
  765. package/lib/esm/ViewGlobalLocation.d.ts +3 -0
  766. package/lib/esm/ViewGlobalLocation.d.ts.map +1 -1
  767. package/lib/esm/ViewGlobalLocation.js +1 -0
  768. package/lib/esm/ViewGlobalLocation.js.map +1 -1
  769. package/lib/esm/ViewManager.d.ts +3 -0
  770. package/lib/esm/ViewManager.d.ts.map +1 -1
  771. package/lib/esm/ViewManager.js +2 -0
  772. package/lib/esm/ViewManager.js.map +1 -1
  773. package/lib/esm/ViewPose.d.ts +1 -0
  774. package/lib/esm/ViewPose.d.ts.map +1 -1
  775. package/lib/esm/ViewPose.js +1 -0
  776. package/lib/esm/ViewPose.js.map +1 -1
  777. package/lib/esm/ViewRect.d.ts +1 -0
  778. package/lib/esm/ViewRect.d.ts.map +1 -1
  779. package/lib/esm/ViewRect.js +1 -0
  780. package/lib/esm/ViewRect.js.map +1 -1
  781. package/lib/esm/ViewState.d.ts +17 -2
  782. package/lib/esm/ViewState.d.ts.map +1 -1
  783. package/lib/esm/ViewState.js +41 -10
  784. package/lib/esm/ViewState.js.map +1 -1
  785. package/lib/esm/ViewStatus.d.ts +1 -0
  786. package/lib/esm/ViewStatus.d.ts.map +1 -1
  787. package/lib/esm/ViewStatus.js +1 -0
  788. package/lib/esm/ViewStatus.js.map +1 -1
  789. package/lib/esm/ViewingSpace.d.ts +1 -0
  790. package/lib/esm/ViewingSpace.d.ts.map +1 -1
  791. package/lib/esm/ViewingSpace.js +1 -0
  792. package/lib/esm/ViewingSpace.js.map +1 -1
  793. package/lib/esm/Viewport.d.ts +6 -2
  794. package/lib/esm/Viewport.d.ts.map +1 -1
  795. package/lib/esm/Viewport.js +12 -4
  796. package/lib/esm/Viewport.js.map +1 -1
  797. package/lib/esm/ViewportSync.d.ts +119 -0
  798. package/lib/esm/ViewportSync.d.ts.map +1 -0
  799. package/lib/esm/ViewportSync.js +177 -0
  800. package/lib/esm/ViewportSync.js.map +1 -0
  801. package/lib/esm/core-frontend.d.ts +10 -6
  802. package/lib/esm/core-frontend.d.ts.map +1 -1
  803. package/lib/esm/core-frontend.js +11 -6
  804. package/lib/esm/core-frontend.js.map +1 -1
  805. package/lib/esm/extension/Extension.d.ts +24 -15
  806. package/lib/esm/extension/Extension.d.ts.map +1 -1
  807. package/lib/esm/extension/Extension.js +1 -7
  808. package/lib/esm/extension/Extension.js.map +1 -1
  809. package/lib/esm/extension/ExtensionAdmin.d.ts +21 -44
  810. package/lib/esm/extension/ExtensionAdmin.d.ts.map +1 -1
  811. package/lib/esm/extension/ExtensionAdmin.js +55 -64
  812. package/lib/esm/extension/ExtensionAdmin.js.map +1 -1
  813. package/lib/esm/extension/ExtensionRuntime.js +239 -59
  814. package/lib/esm/extension/ExtensionRuntime.js.map +1 -1
  815. package/lib/esm/extension/providers/ExtensionLoadScript.d.ts +10 -0
  816. package/lib/esm/extension/providers/ExtensionLoadScript.d.ts.map +1 -0
  817. package/lib/esm/extension/providers/ExtensionLoadScript.js +51 -0
  818. package/lib/esm/extension/providers/ExtensionLoadScript.js.map +1 -0
  819. package/lib/esm/extension/providers/ExtensionServiceClient.d.ts +52 -0
  820. package/lib/esm/extension/providers/ExtensionServiceClient.d.ts.map +1 -0
  821. package/lib/esm/extension/providers/ExtensionServiceClient.js +127 -0
  822. package/lib/esm/extension/providers/ExtensionServiceClient.js.map +1 -0
  823. package/lib/esm/extension/providers/LocalExtensionProvider.d.ts +26 -0
  824. package/lib/esm/extension/providers/LocalExtensionProvider.d.ts.map +1 -0
  825. package/lib/esm/extension/providers/LocalExtensionProvider.js +20 -0
  826. package/lib/esm/extension/providers/LocalExtensionProvider.js.map +1 -0
  827. package/lib/esm/extension/providers/RemoteExtensionProvider.d.ts +36 -0
  828. package/lib/esm/extension/providers/RemoteExtensionProvider.d.ts.map +1 -0
  829. package/lib/esm/extension/providers/RemoteExtensionProvider.js +49 -0
  830. package/lib/esm/extension/providers/RemoteExtensionProvider.js.map +1 -0
  831. package/lib/esm/extension/providers/ServiceExtensionProvider.d.ts +37 -0
  832. package/lib/esm/extension/providers/ServiceExtensionProvider.d.ts.map +1 -0
  833. package/lib/esm/extension/providers/ServiceExtensionProvider.js +80 -0
  834. package/lib/esm/extension/providers/ServiceExtensionProvider.js.map +1 -0
  835. package/lib/esm/quantity-formatting/QuantityFormatter.d.ts.map +1 -1
  836. package/lib/esm/quantity-formatting/QuantityFormatter.js +3 -2
  837. package/lib/esm/quantity-formatting/QuantityFormatter.js.map +1 -1
  838. package/lib/esm/render/CanvasDecoration.d.ts +2 -0
  839. package/lib/esm/render/CanvasDecoration.d.ts.map +1 -1
  840. package/lib/esm/render/CanvasDecoration.js.map +1 -1
  841. package/lib/esm/render/Decorations.d.ts +1 -0
  842. package/lib/esm/render/Decorations.d.ts.map +1 -1
  843. package/lib/esm/render/Decorations.js +1 -0
  844. package/lib/esm/render/Decorations.js.map +1 -1
  845. package/lib/esm/render/FeatureSymbology.d.ts +1 -0
  846. package/lib/esm/render/FeatureSymbology.d.ts.map +1 -1
  847. package/lib/esm/render/FeatureSymbology.js +1 -0
  848. package/lib/esm/render/FeatureSymbology.js.map +1 -1
  849. package/lib/esm/render/GraphicBranch.d.ts +2 -0
  850. package/lib/esm/render/GraphicBranch.d.ts.map +1 -1
  851. package/lib/esm/render/GraphicBranch.js +1 -0
  852. package/lib/esm/render/GraphicBranch.js.map +1 -1
  853. package/lib/esm/render/GraphicBuilder.d.ts +33 -2
  854. package/lib/esm/render/GraphicBuilder.d.ts.map +1 -1
  855. package/lib/esm/render/GraphicBuilder.js +27 -1
  856. package/lib/esm/render/GraphicBuilder.js.map +1 -1
  857. package/lib/esm/render/GraphicPrimitive.d.ts +14 -0
  858. package/lib/esm/render/GraphicPrimitive.d.ts.map +1 -1
  859. package/lib/esm/render/GraphicPrimitive.js.map +1 -1
  860. package/lib/esm/render/ParticleCollectionBuilder.d.ts +3 -0
  861. package/lib/esm/render/ParticleCollectionBuilder.d.ts.map +1 -1
  862. package/lib/esm/render/ParticleCollectionBuilder.js.map +1 -1
  863. package/lib/esm/render/Pixel.d.ts +1 -0
  864. package/lib/esm/render/Pixel.d.ts.map +1 -1
  865. package/lib/esm/render/Pixel.js +1 -0
  866. package/lib/esm/render/Pixel.js.map +1 -1
  867. package/lib/esm/render/RenderClipVolume.d.ts +1 -0
  868. package/lib/esm/render/RenderClipVolume.d.ts.map +1 -1
  869. package/lib/esm/render/RenderClipVolume.js +1 -0
  870. package/lib/esm/render/RenderClipVolume.js.map +1 -1
  871. package/lib/esm/render/RenderGraphic.d.ts +3 -0
  872. package/lib/esm/render/RenderGraphic.d.ts.map +1 -1
  873. package/lib/esm/render/RenderGraphic.js +2 -0
  874. package/lib/esm/render/RenderGraphic.js.map +1 -1
  875. package/lib/esm/render/RenderSystem.d.ts +4 -3
  876. package/lib/esm/render/RenderSystem.d.ts.map +1 -1
  877. package/lib/esm/render/RenderSystem.js +4 -3
  878. package/lib/esm/render/RenderSystem.js.map +1 -1
  879. package/lib/esm/render/RenderTexture.d.ts +7 -0
  880. package/lib/esm/render/RenderTexture.d.ts.map +1 -1
  881. package/lib/esm/render/RenderTexture.js.map +1 -1
  882. package/lib/esm/render/Scene.d.ts +1 -0
  883. package/lib/esm/render/Scene.d.ts.map +1 -1
  884. package/lib/esm/render/Scene.js +1 -0
  885. package/lib/esm/render/Scene.js.map +1 -1
  886. package/lib/esm/render/ScreenSpaceEffectBuilder.d.ts +10 -0
  887. package/lib/esm/render/ScreenSpaceEffectBuilder.d.ts.map +1 -1
  888. package/lib/esm/render/ScreenSpaceEffectBuilder.js +2 -0
  889. package/lib/esm/render/ScreenSpaceEffectBuilder.js.map +1 -1
  890. package/lib/esm/render/primitives/VertexKey.d.ts +4 -2
  891. package/lib/esm/render/primitives/VertexKey.d.ts.map +1 -1
  892. package/lib/esm/render/primitives/VertexKey.js +24 -13
  893. package/lib/esm/render/primitives/VertexKey.js.map +1 -1
  894. package/lib/esm/render/primitives/VertexTable.d.ts +1 -1
  895. package/lib/esm/render/primitives/VertexTable.js +30 -2
  896. package/lib/esm/render/primitives/VertexTable.js.map +1 -1
  897. package/lib/esm/render/primitives/geometry/GeometryAccumulator.d.ts +12 -4
  898. package/lib/esm/render/primitives/geometry/GeometryAccumulator.d.ts.map +1 -1
  899. package/lib/esm/render/primitives/geometry/GeometryAccumulator.js +20 -15
  900. package/lib/esm/render/primitives/geometry/GeometryAccumulator.js.map +1 -1
  901. package/lib/esm/render/primitives/geometry/GeometryListBuilder.d.ts +2 -1
  902. package/lib/esm/render/primitives/geometry/GeometryListBuilder.d.ts.map +1 -1
  903. package/lib/esm/render/primitives/geometry/GeometryListBuilder.js +7 -2
  904. package/lib/esm/render/primitives/geometry/GeometryListBuilder.js.map +1 -1
  905. package/lib/esm/render/primitives/geometry/GeometryPrimitives.d.ts +14 -12
  906. package/lib/esm/render/primitives/geometry/GeometryPrimitives.d.ts.map +1 -1
  907. package/lib/esm/render/primitives/geometry/GeometryPrimitives.js +26 -25
  908. package/lib/esm/render/primitives/geometry/GeometryPrimitives.js.map +1 -1
  909. package/lib/esm/render/primitives/mesh/MeshBuilder.d.ts +8 -8
  910. package/lib/esm/render/primitives/mesh/MeshBuilder.d.ts.map +1 -1
  911. package/lib/esm/render/primitives/mesh/MeshBuilder.js +15 -15
  912. package/lib/esm/render/primitives/mesh/MeshBuilder.js.map +1 -1
  913. package/lib/esm/render/primitives/mesh/MeshBuilderMap.d.ts +11 -6
  914. package/lib/esm/render/primitives/mesh/MeshBuilderMap.d.ts.map +1 -1
  915. package/lib/esm/render/primitives/mesh/MeshBuilderMap.js +13 -16
  916. package/lib/esm/render/primitives/mesh/MeshBuilderMap.js.map +1 -1
  917. package/lib/esm/render/primitives/mesh/MeshPrimitives.d.ts +1 -1
  918. package/lib/esm/render/primitives/mesh/MeshPrimitives.d.ts.map +1 -1
  919. package/lib/esm/render/primitives/mesh/MeshPrimitives.js +6 -2
  920. package/lib/esm/render/primitives/mesh/MeshPrimitives.js.map +1 -1
  921. package/lib/esm/render/webgl/AttributeMap.js +1 -1
  922. package/lib/esm/render/webgl/CachedGeometry.d.ts +7 -1
  923. package/lib/esm/render/webgl/CachedGeometry.d.ts.map +1 -1
  924. package/lib/esm/render/webgl/CachedGeometry.js +19 -9
  925. package/lib/esm/render/webgl/CachedGeometry.js.map +1 -1
  926. package/lib/esm/render/webgl/DrawCommand.d.ts.map +1 -1
  927. package/lib/esm/render/webgl/DrawCommand.js +2 -1
  928. package/lib/esm/render/webgl/DrawCommand.js.map +1 -1
  929. package/lib/esm/render/webgl/InstancedGeometry.d.ts +1 -0
  930. package/lib/esm/render/webgl/InstancedGeometry.d.ts.map +1 -1
  931. package/lib/esm/render/webgl/InstancedGeometry.js +1 -0
  932. package/lib/esm/render/webgl/InstancedGeometry.js.map +1 -1
  933. package/lib/esm/render/webgl/RealityMesh.d.ts +14 -11
  934. package/lib/esm/render/webgl/RealityMesh.d.ts.map +1 -1
  935. package/lib/esm/render/webgl/RealityMesh.js +27 -18
  936. package/lib/esm/render/webgl/RealityMesh.js.map +1 -1
  937. package/lib/esm/render/webgl/SceneCompositor.d.ts +2 -0
  938. package/lib/esm/render/webgl/SceneCompositor.d.ts.map +1 -1
  939. package/lib/esm/render/webgl/SceneCompositor.js +220 -53
  940. package/lib/esm/render/webgl/SceneCompositor.js.map +1 -1
  941. package/lib/esm/render/webgl/ShaderBuilder.d.ts +5 -4
  942. package/lib/esm/render/webgl/ShaderBuilder.d.ts.map +1 -1
  943. package/lib/esm/render/webgl/ShaderBuilder.js +7 -6
  944. package/lib/esm/render/webgl/ShaderBuilder.js.map +1 -1
  945. package/lib/esm/render/webgl/System.d.ts +4 -4
  946. package/lib/esm/render/webgl/System.d.ts.map +1 -1
  947. package/lib/esm/render/webgl/System.js +6 -6
  948. package/lib/esm/render/webgl/System.js.map +1 -1
  949. package/lib/esm/render/webgl/Target.d.ts +6 -1
  950. package/lib/esm/render/webgl/Target.d.ts.map +1 -1
  951. package/lib/esm/render/webgl/Target.js +64 -13
  952. package/lib/esm/render/webgl/Target.js.map +1 -1
  953. package/lib/esm/render/webgl/Technique.d.ts +4 -2
  954. package/lib/esm/render/webgl/Technique.d.ts.map +1 -1
  955. package/lib/esm/render/webgl/Technique.js +166 -135
  956. package/lib/esm/render/webgl/Technique.js.map +1 -1
  957. package/lib/esm/render/webgl/TechniqueFlags.d.ts +7 -3
  958. package/lib/esm/render/webgl/TechniqueFlags.d.ts.map +1 -1
  959. package/lib/esm/render/webgl/TechniqueFlags.js +17 -4
  960. package/lib/esm/render/webgl/TechniqueFlags.js.map +1 -1
  961. package/lib/esm/render/webgl/TechniqueId.d.ts +8 -7
  962. package/lib/esm/render/webgl/TechniqueId.d.ts.map +1 -1
  963. package/lib/esm/render/webgl/TechniqueId.js.map +1 -1
  964. package/lib/esm/render/webgl/glsl/Animation.d.ts.map +1 -1
  965. package/lib/esm/render/webgl/glsl/Animation.js +2 -0
  966. package/lib/esm/render/webgl/glsl/Animation.js.map +1 -1
  967. package/lib/esm/render/webgl/glsl/Blur.d.ts +2 -1
  968. package/lib/esm/render/webgl/glsl/Blur.d.ts.map +1 -1
  969. package/lib/esm/render/webgl/glsl/Blur.js +38 -6
  970. package/lib/esm/render/webgl/glsl/Blur.js.map +1 -1
  971. package/lib/esm/render/webgl/glsl/Color.d.ts.map +1 -1
  972. package/lib/esm/render/webgl/glsl/Color.js +8 -7
  973. package/lib/esm/render/webgl/glsl/Color.js.map +1 -1
  974. package/lib/esm/render/webgl/glsl/CopyStencil.js +1 -1
  975. package/lib/esm/render/webgl/glsl/Decode.d.ts +2 -1
  976. package/lib/esm/render/webgl/glsl/Decode.d.ts.map +1 -1
  977. package/lib/esm/render/webgl/glsl/Decode.js +15 -1
  978. package/lib/esm/render/webgl/glsl/Decode.js.map +1 -1
  979. package/lib/esm/render/webgl/glsl/Edge.d.ts +2 -2
  980. package/lib/esm/render/webgl/glsl/Edge.d.ts.map +1 -1
  981. package/lib/esm/render/webgl/glsl/Edge.js +7 -20
  982. package/lib/esm/render/webgl/glsl/Edge.js.map +1 -1
  983. package/lib/esm/render/webgl/glsl/FeatureSymbology.d.ts.map +1 -1
  984. package/lib/esm/render/webgl/glsl/FeatureSymbology.js +1 -3
  985. package/lib/esm/render/webgl/glsl/FeatureSymbology.js.map +1 -1
  986. package/lib/esm/render/webgl/glsl/PointString.d.ts +3 -3
  987. package/lib/esm/render/webgl/glsl/PointString.d.ts.map +1 -1
  988. package/lib/esm/render/webgl/glsl/PointString.js +6 -6
  989. package/lib/esm/render/webgl/glsl/PointString.js.map +1 -1
  990. package/lib/esm/render/webgl/glsl/Polyline.d.ts +3 -3
  991. package/lib/esm/render/webgl/glsl/Polyline.d.ts.map +1 -1
  992. package/lib/esm/render/webgl/glsl/Polyline.js +7 -22
  993. package/lib/esm/render/webgl/glsl/Polyline.js.map +1 -1
  994. package/lib/esm/render/webgl/glsl/Surface.d.ts +2 -2
  995. package/lib/esm/render/webgl/glsl/Surface.d.ts.map +1 -1
  996. package/lib/esm/render/webgl/glsl/Surface.js +51 -35
  997. package/lib/esm/render/webgl/glsl/Surface.js.map +1 -1
  998. package/lib/esm/render/webgl/glsl/Vertex.d.ts +3 -3
  999. package/lib/esm/render/webgl/glsl/Vertex.d.ts.map +1 -1
  1000. package/lib/esm/render/webgl/glsl/Vertex.js +142 -56
  1001. package/lib/esm/render/webgl/glsl/Vertex.js.map +1 -1
  1002. package/lib/esm/tile/ClassifierTileTree.d.ts.map +1 -1
  1003. package/lib/esm/tile/ClassifierTileTree.js +3 -4
  1004. package/lib/esm/tile/ClassifierTileTree.js.map +1 -1
  1005. package/lib/esm/tile/DisclosedTileTreeSet.d.ts +2 -0
  1006. package/lib/esm/tile/DisclosedTileTreeSet.d.ts.map +1 -1
  1007. package/lib/esm/tile/DisclosedTileTreeSet.js +1 -0
  1008. package/lib/esm/tile/DisclosedTileTreeSet.js.map +1 -1
  1009. package/lib/esm/tile/DynamicIModelTile.js +4 -2
  1010. package/lib/esm/tile/DynamicIModelTile.js.map +1 -1
  1011. package/lib/esm/tile/GltfReader.d.ts +19 -9
  1012. package/lib/esm/tile/GltfReader.d.ts.map +1 -1
  1013. package/lib/esm/tile/GltfReader.js +23 -6
  1014. package/lib/esm/tile/GltfReader.js.map +1 -1
  1015. package/lib/esm/tile/IModelTile.js +1 -1
  1016. package/lib/esm/tile/IModelTile.js.map +1 -1
  1017. package/lib/esm/tile/IModelTileRequestChannels.d.ts +3 -3
  1018. package/lib/esm/tile/IModelTileRequestChannels.d.ts.map +1 -1
  1019. package/lib/esm/tile/IModelTileRequestChannels.js +7 -11
  1020. package/lib/esm/tile/IModelTileRequestChannels.js.map +1 -1
  1021. package/lib/esm/tile/IModelTileTree.d.ts +3 -3
  1022. package/lib/esm/tile/IModelTileTree.d.ts.map +1 -1
  1023. package/lib/esm/tile/IModelTileTree.js +1 -1
  1024. package/lib/esm/tile/IModelTileTree.js.map +1 -1
  1025. package/lib/esm/tile/ImdlReader.d.ts +2 -0
  1026. package/lib/esm/tile/ImdlReader.d.ts.map +1 -1
  1027. package/lib/esm/tile/ImdlReader.js +2 -0
  1028. package/lib/esm/tile/ImdlReader.js.map +1 -1
  1029. package/lib/esm/tile/OPCFormatInterpreter.d.ts.map +1 -1
  1030. package/lib/esm/tile/OPCFormatInterpreter.js +2 -3
  1031. package/lib/esm/tile/OPCFormatInterpreter.js.map +1 -1
  1032. package/lib/esm/tile/PrimaryTileTree.d.ts.map +1 -1
  1033. package/lib/esm/tile/PrimaryTileTree.js +5 -5
  1034. package/lib/esm/tile/PrimaryTileTree.js.map +1 -1
  1035. package/lib/esm/tile/RealityTileLoader.d.ts +1 -1
  1036. package/lib/esm/tile/RealityTileLoader.d.ts.map +1 -1
  1037. package/lib/esm/tile/RealityTileLoader.js +36 -8
  1038. package/lib/esm/tile/RealityTileLoader.js.map +1 -1
  1039. package/lib/esm/tile/Tile.d.ts +5 -0
  1040. package/lib/esm/tile/Tile.d.ts.map +1 -1
  1041. package/lib/esm/tile/Tile.js +5 -0
  1042. package/lib/esm/tile/Tile.js.map +1 -1
  1043. package/lib/esm/tile/TileAdmin.d.ts +18 -1
  1044. package/lib/esm/tile/TileAdmin.d.ts.map +1 -1
  1045. package/lib/esm/tile/TileAdmin.js +27 -20
  1046. package/lib/esm/tile/TileAdmin.js.map +1 -1
  1047. package/lib/esm/tile/TileContent.d.ts +1 -0
  1048. package/lib/esm/tile/TileContent.d.ts.map +1 -1
  1049. package/lib/esm/tile/TileContent.js.map +1 -1
  1050. package/lib/esm/tile/TileDrawArgs.d.ts +2 -0
  1051. package/lib/esm/tile/TileDrawArgs.d.ts.map +1 -1
  1052. package/lib/esm/tile/TileDrawArgs.js +1 -0
  1053. package/lib/esm/tile/TileDrawArgs.js.map +1 -1
  1054. package/lib/esm/tile/TileParams.d.ts +1 -0
  1055. package/lib/esm/tile/TileParams.d.ts.map +1 -1
  1056. package/lib/esm/tile/TileParams.js.map +1 -1
  1057. package/lib/esm/tile/TileRequest.d.ts +1 -0
  1058. package/lib/esm/tile/TileRequest.d.ts.map +1 -1
  1059. package/lib/esm/tile/TileRequest.js +1 -0
  1060. package/lib/esm/tile/TileRequest.js.map +1 -1
  1061. package/lib/esm/tile/TileRequestChannel.d.ts +2 -0
  1062. package/lib/esm/tile/TileRequestChannel.d.ts.map +1 -1
  1063. package/lib/esm/tile/TileRequestChannel.js +2 -0
  1064. package/lib/esm/tile/TileRequestChannel.js.map +1 -1
  1065. package/lib/esm/tile/TileRequestChannels.d.ts +1 -4
  1066. package/lib/esm/tile/TileRequestChannels.d.ts.map +1 -1
  1067. package/lib/esm/tile/TileRequestChannels.js +2 -6
  1068. package/lib/esm/tile/TileRequestChannels.js.map +1 -1
  1069. package/lib/esm/tile/TileTree.d.ts +2 -0
  1070. package/lib/esm/tile/TileTree.d.ts.map +1 -1
  1071. package/lib/esm/tile/TileTree.js +2 -0
  1072. package/lib/esm/tile/TileTree.js.map +1 -1
  1073. package/lib/esm/tile/TileTreeOwner.d.ts +1 -0
  1074. package/lib/esm/tile/TileTreeOwner.d.ts.map +1 -1
  1075. package/lib/esm/tile/TileTreeOwner.js.map +1 -1
  1076. package/lib/esm/tile/TileTreeParams.d.ts +1 -0
  1077. package/lib/esm/tile/TileTreeParams.d.ts.map +1 -1
  1078. package/lib/esm/tile/TileTreeParams.js.map +1 -1
  1079. package/lib/esm/tile/TileTreeReference.d.ts +2 -0
  1080. package/lib/esm/tile/TileTreeReference.d.ts.map +1 -1
  1081. package/lib/esm/tile/TileTreeReference.js +2 -0
  1082. package/lib/esm/tile/TileTreeReference.js.map +1 -1
  1083. package/lib/esm/tile/TileTreeSupplier.d.ts +1 -0
  1084. package/lib/esm/tile/TileTreeSupplier.d.ts.map +1 -1
  1085. package/lib/esm/tile/TileTreeSupplier.js.map +1 -1
  1086. package/lib/esm/tile/TileUsageMarker.d.ts +1 -0
  1087. package/lib/esm/tile/TileUsageMarker.d.ts.map +1 -1
  1088. package/lib/esm/tile/TileUsageMarker.js +1 -0
  1089. package/lib/esm/tile/TileUsageMarker.js.map +1 -1
  1090. package/lib/esm/tile/TiledGraphicsProvider.d.ts +1 -0
  1091. package/lib/esm/tile/TiledGraphicsProvider.d.ts.map +1 -1
  1092. package/lib/esm/tile/TiledGraphicsProvider.js.map +1 -1
  1093. package/lib/esm/tile/internal.d.ts +0 -2
  1094. package/lib/esm/tile/internal.d.ts.map +1 -1
  1095. package/lib/esm/tile/internal.js +0 -2
  1096. package/lib/esm/tile/internal.js.map +1 -1
  1097. package/lib/esm/tile/map/ArcGisUtilities.d.ts +2 -1
  1098. package/lib/esm/tile/map/ArcGisUtilities.d.ts.map +1 -1
  1099. package/lib/esm/tile/map/ArcGisUtilities.js +32 -21
  1100. package/lib/esm/tile/map/ArcGisUtilities.js.map +1 -1
  1101. package/lib/esm/tile/map/BingElevation.d.ts +1 -0
  1102. package/lib/esm/tile/map/BingElevation.d.ts.map +1 -1
  1103. package/lib/esm/tile/map/BingElevation.js +1 -0
  1104. package/lib/esm/tile/map/BingElevation.js.map +1 -1
  1105. package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts +2 -1
  1106. package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts.map +1 -1
  1107. package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js +51 -28
  1108. package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js.map +1 -1
  1109. package/lib/esm/tile/map/ImageryProviders/WmsMapLayerImageryProvider.d.ts +0 -1
  1110. package/lib/esm/tile/map/ImageryProviders/WmsMapLayerImageryProvider.d.ts.map +1 -1
  1111. package/lib/esm/tile/map/ImageryProviders/WmsMapLayerImageryProvider.js +12 -10
  1112. package/lib/esm/tile/map/ImageryProviders/WmsMapLayerImageryProvider.js.map +1 -1
  1113. package/lib/esm/tile/map/MapLayerAuthentication.d.ts +20 -9
  1114. package/lib/esm/tile/map/MapLayerAuthentication.d.ts.map +1 -1
  1115. package/lib/esm/tile/map/MapLayerAuthentication.js +1 -7
  1116. package/lib/esm/tile/map/MapLayerAuthentication.js.map +1 -1
  1117. package/lib/esm/tile/map/MapLayerFormatRegistry.d.ts +24 -6
  1118. package/lib/esm/tile/map/MapLayerFormatRegistry.d.ts.map +1 -1
  1119. package/lib/esm/tile/map/MapLayerFormatRegistry.js +28 -7
  1120. package/lib/esm/tile/map/MapLayerFormatRegistry.js.map +1 -1
  1121. package/lib/esm/tile/map/MapLayerImageryFormats.d.ts.map +1 -1
  1122. package/lib/esm/tile/map/MapLayerImageryFormats.js +2 -4
  1123. package/lib/esm/tile/map/MapLayerImageryFormats.js.map +1 -1
  1124. package/lib/esm/tile/map/MapLayerSources.d.ts +1 -1
  1125. package/lib/esm/tile/map/MapLayerSources.d.ts.map +1 -1
  1126. package/lib/esm/tile/map/MapLayerSources.js +1 -1
  1127. package/lib/esm/tile/map/MapLayerSources.js.map +1 -1
  1128. package/lib/esm/tile/map/MapTile.js +2 -2
  1129. package/lib/esm/tile/map/MapTile.js.map +1 -1
  1130. package/lib/esm/tile/map/MapTileLoader.js +1 -1
  1131. package/lib/esm/tile/map/MapTileLoader.js.map +1 -1
  1132. package/lib/esm/tile/map/MapTileTree.js +2 -2
  1133. package/lib/esm/tile/map/MapTileTree.js.map +1 -1
  1134. package/lib/esm/tile/map/WmsCapabilities.d.ts +3 -2
  1135. package/lib/esm/tile/map/WmsCapabilities.d.ts.map +1 -1
  1136. package/lib/esm/tile/map/WmsCapabilities.js +11 -10
  1137. package/lib/esm/tile/map/WmsCapabilities.js.map +1 -1
  1138. package/lib/esm/tools/ClipViewTool.d.ts +5 -3
  1139. package/lib/esm/tools/ClipViewTool.d.ts.map +1 -1
  1140. package/lib/esm/tools/ClipViewTool.js +4 -3
  1141. package/lib/esm/tools/ClipViewTool.js.map +1 -1
  1142. package/lib/esm/tools/EditManipulator.d.ts +1 -0
  1143. package/lib/esm/tools/EditManipulator.d.ts.map +1 -1
  1144. package/lib/esm/tools/EditManipulator.js +1 -0
  1145. package/lib/esm/tools/EditManipulator.js.map +1 -1
  1146. package/lib/esm/tools/EventController.d.ts +1 -0
  1147. package/lib/esm/tools/EventController.d.ts.map +1 -1
  1148. package/lib/esm/tools/EventController.js +1 -0
  1149. package/lib/esm/tools/EventController.js.map +1 -1
  1150. package/lib/esm/tools/PrimitiveTool.d.ts +4 -0
  1151. package/lib/esm/tools/PrimitiveTool.d.ts.map +1 -1
  1152. package/lib/esm/tools/PrimitiveTool.js +7 -0
  1153. package/lib/esm/tools/PrimitiveTool.js.map +1 -1
  1154. package/lib/esm/tools/SelectTool.d.ts +3 -0
  1155. package/lib/esm/tools/SelectTool.d.ts.map +1 -1
  1156. package/lib/esm/tools/SelectTool.js +3 -0
  1157. package/lib/esm/tools/SelectTool.js.map +1 -1
  1158. package/lib/esm/tools/Tool.d.ts +41 -6
  1159. package/lib/esm/tools/Tool.d.ts.map +1 -1
  1160. package/lib/esm/tools/Tool.js +27 -4
  1161. package/lib/esm/tools/Tool.js.map +1 -1
  1162. package/lib/esm/tools/ToolAdmin.d.ts +16 -22
  1163. package/lib/esm/tools/ToolAdmin.d.ts.map +1 -1
  1164. package/lib/esm/tools/ToolAdmin.js +48 -9
  1165. package/lib/esm/tools/ToolAdmin.js.map +1 -1
  1166. package/lib/esm/tools/ToolAssistance.d.ts +7 -0
  1167. package/lib/esm/tools/ToolAssistance.d.ts.map +1 -1
  1168. package/lib/esm/tools/ToolAssistance.js +3 -0
  1169. package/lib/esm/tools/ToolAssistance.js.map +1 -1
  1170. package/lib/esm/tools/ToolSettings.d.ts +3 -0
  1171. package/lib/esm/tools/ToolSettings.d.ts.map +1 -1
  1172. package/lib/esm/tools/ToolSettings.js +3 -0
  1173. package/lib/esm/tools/ToolSettings.js.map +1 -1
  1174. package/lib/esm/tools/ViewTool.d.ts +3 -1
  1175. package/lib/esm/tools/ViewTool.d.ts.map +1 -1
  1176. package/lib/esm/tools/ViewTool.js +9 -5
  1177. package/lib/esm/tools/ViewTool.js.map +1 -1
  1178. package/package.json +34 -25
  1179. package/lib/cjs/TwoWayViewportSync.d.ts +0 -51
  1180. package/lib/cjs/TwoWayViewportSync.d.ts.map +0 -1
  1181. package/lib/cjs/TwoWayViewportSync.js +0 -87
  1182. package/lib/cjs/TwoWayViewportSync.js.map +0 -1
  1183. package/lib/cjs/extension/ExtensionLoader.d.ts +0 -26
  1184. package/lib/cjs/extension/ExtensionLoader.d.ts.map +0 -1
  1185. package/lib/cjs/extension/ExtensionLoader.js +0 -10
  1186. package/lib/cjs/extension/ExtensionLoader.js.map +0 -1
  1187. package/lib/cjs/extension/extensions.d.ts +0 -19
  1188. package/lib/cjs/extension/extensions.d.ts.map +0 -1
  1189. package/lib/cjs/extension/extensions.js +0 -36
  1190. package/lib/cjs/extension/extensions.js.map +0 -1
  1191. package/lib/cjs/tile/map/ArcGisTokenGenerator.d.ts +0 -35
  1192. package/lib/cjs/tile/map/ArcGisTokenGenerator.d.ts.map +0 -1
  1193. package/lib/cjs/tile/map/ArcGisTokenGenerator.js +0 -116
  1194. package/lib/cjs/tile/map/ArcGisTokenGenerator.js.map +0 -1
  1195. package/lib/cjs/tile/map/ArcGisTokenManager.d.ts +0 -13
  1196. package/lib/cjs/tile/map/ArcGisTokenManager.d.ts.map +0 -1
  1197. package/lib/cjs/tile/map/ArcGisTokenManager.js +0 -39
  1198. package/lib/cjs/tile/map/ArcGisTokenManager.js.map +0 -1
  1199. package/lib/esm/TwoWayViewportSync.d.ts +0 -51
  1200. package/lib/esm/TwoWayViewportSync.d.ts.map +0 -1
  1201. package/lib/esm/TwoWayViewportSync.js +0 -82
  1202. package/lib/esm/TwoWayViewportSync.js.map +0 -1
  1203. package/lib/esm/extension/ExtensionLoader.d.ts +0 -26
  1204. package/lib/esm/extension/ExtensionLoader.d.ts.map +0 -1
  1205. package/lib/esm/extension/ExtensionLoader.js +0 -9
  1206. package/lib/esm/extension/ExtensionLoader.js.map +0 -1
  1207. package/lib/esm/extension/extensions.d.ts +0 -19
  1208. package/lib/esm/extension/extensions.d.ts.map +0 -1
  1209. package/lib/esm/extension/extensions.js +0 -24
  1210. package/lib/esm/extension/extensions.js.map +0 -1
  1211. package/lib/esm/tile/map/ArcGisTokenGenerator.d.ts +0 -35
  1212. package/lib/esm/tile/map/ArcGisTokenGenerator.d.ts.map +0 -1
  1213. package/lib/esm/tile/map/ArcGisTokenGenerator.js +0 -112
  1214. package/lib/esm/tile/map/ArcGisTokenGenerator.js.map +0 -1
  1215. package/lib/esm/tile/map/ArcGisTokenManager.d.ts +0 -13
  1216. package/lib/esm/tile/map/ArcGisTokenManager.d.ts.map +0 -1
  1217. package/lib/esm/tile/map/ArcGisTokenManager.js +0 -35
  1218. package/lib/esm/tile/map/ArcGisTokenManager.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Marker.js","sourceRoot":"","sources":["../../src/Marker.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, Logger, ObservableSet } from \"@itwin/core-bentley\";\r\nimport { Geometry, Matrix4d, Point2d, Point3d, Range1d, Range1dProps, Vector3d, XAndY, XYAndZ } from \"@itwin/core-geometry\";\r\nimport { ColorDef } from \"@itwin/core-common\";\r\nimport { FrontendLoggerCategory } from \"./FrontendLoggerCategory\";\r\nimport { imageElementFromUrl } from \"./ImageUtil\";\r\nimport { IModelApp } from \"./IModelApp\";\r\nimport { ToolTipOptions } from \"./NotificationManager\";\r\nimport { CanvasDecoration } from \"./render/CanvasDecoration\";\r\nimport { BeButtonEvent } from \"./tools/Tool\";\r\nimport { DecorateContext } from \"./ViewContext\";\r\nimport { ScreenViewport, Viewport } from \"./Viewport\";\r\nimport { ViewRect } from \"./ViewRect\";\r\n\r\n/** The types that may be used for Markers\r\n * @public\r\n */\r\nexport type MarkerImage = HTMLImageElement | HTMLCanvasElement | HTMLVideoElement | ImageBitmap;\r\n\r\n/** @public */\r\nexport type MarkerFillStyle = string | CanvasGradient | CanvasPattern;\r\n\r\n/** @public */\r\nexport type MarkerTextAlign = \"left\" | \"right\" | \"center\" | \"start\" | \"end\";\r\n\r\n/** @public */\r\nexport type MarkerTextBaseline = \"top\" | \"hanging\" | \"middle\" | \"alphabetic\" | \"ideographic\" | \"bottom\";\r\n\r\nfunction getMinScaleViewW(vp: Viewport): number {\r\n let zHigh;\r\n const origin = vp.view.getCenter();\r\n const direction = vp.view.getZVector(); direction.scaleInPlace(-1);\r\n const corners = vp.view.iModel.projectExtents.corners();\r\n const delta = Vector3d.create();\r\n for (const corner of corners) {\r\n Vector3d.createStartEnd(origin, corner, delta);\r\n const projection = delta.dotProduct(direction);\r\n if (undefined === zHigh || projection > zHigh)\r\n zHigh = projection;\r\n }\r\n if (undefined === zHigh)\r\n return 0.0;\r\n origin.plusScaled(direction, zHigh, origin);\r\n return vp.worldToView4d(origin).w;\r\n}\r\n\r\n/** A Marker is a [[CanvasDecoration]], whose position follows a fixed location in world space.\r\n * Markers draw on top of all scene graphics, and show visual cues about locations of interest.\r\n * @see [Markers]($docs/learning/frontend/Markers)\r\n * @public\r\n */\r\nexport class Marker implements CanvasDecoration {\r\n protected _scaleFactor?: Point2d;\r\n protected _scaleFactorRange?: Range1d;\r\n\r\n /** Whether this marker is currently enabled. If false, this Marker is not displayed. */\r\n public visible = true;\r\n /** Whether this marker is currently hilited or not. */\r\n protected _isHilited = false;\r\n /** The color for the shadowBlur when this Marker is hilited */\r\n protected _hiliteColor?: ColorDef;\r\n /** The location of this Marker in world coordinates. */\r\n public worldLocation: Point3d;\r\n /** The size of this Marker, in pixels. */\r\n public size: Point2d;\r\n /** The current position for the marker, in view coordinates (pixels). This value will be updated by calls to [[setPosition]]. */\r\n public position = new Point3d();\r\n /** The current rectangle for the marker, in view coordinates (pixels). This value will be updated by calls to [[setPosition]]. */\r\n public readonly rect = new ViewRect();\r\n /** An image to draw for this Marker. If undefined, no image is shown. See https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/drawImage. */\r\n public image?: MarkerImage;\r\n /** The offset for [[image]], in pixels, from the *center* of this Marker. If undefined, (0,0). */\r\n public imageOffset?: XAndY;\r\n /** The size of [[image]], in pixels. If undefined, use [[size]]. */\r\n public imageSize?: XAndY;\r\n /** A text Label for this Marker. If undefined, no label is displayed. */\r\n public label?: string;\r\n /** The offset for [[label]], in pixels, from the *center* of this Marker. If undefined, (0,0). */\r\n public labelOffset?: XAndY;\r\n /** The maximum with for [[label]], in pixels. If undefined label will not be condensed or use a smaller font size. */\r\n public labelMaxWidth?: number;\r\n /** The color for [[label]]. See https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/fillStyle. If undefined, \"white\". */\r\n public labelColor?: MarkerFillStyle;\r\n /** The text alignment for [[label]]. See https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/textAlign. If undefined, \"center\" */\r\n public labelAlign?: MarkerTextAlign;\r\n /** The text baseline for [[label]]. See https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/textBaseline. If undefined, \"middle\" */\r\n public labelBaseline?: MarkerTextBaseline;\r\n /** The font for [[label]]. See https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/font. */\r\n public labelFont?: string;\r\n /** The title string, or HTMLElement, to show (only) in the ToolTip when the pointer is over this Marker. See [[NotificationManager.openToolTip]] */\r\n public title?: HTMLElement | string;\r\n /** The ToolTipOptions to use for [[title]]. */\r\n public tooltipOptions?: ToolTipOptions;\r\n\r\n /** An Optional (unique) HTMLElement to display with this Marker. Generally, HTMLElements are more expensive than\r\n * images and labels, since they are added/removed from the DOM every frame. But, some types of markers are more convenient to construct\r\n * as HTMLElements, and if there aren't too many of them performance is fine.\r\n * @note HTMLElements may only appear in the DOM one time. Therefore, they *may not be shared* by more than one Marker.\r\n * You must ensure that each marker has its own HTMLElement. For this reason, you should probably only use HTMLElements in Markers if\r\n * each one is meant to be unique. For shared content, use images.\r\n */\r\n public htmlElement?: HTMLElement;\r\n\r\n /** Return true to display [[image]], if present. */\r\n public get wantImage() { return true; }\r\n\r\n /** Implement this function to draw onto the CanvasRenderingContext2D when this Marker is displayed. The [0,0] point will be the center of the Marker. */\r\n public drawFunc?(ctx: CanvasRenderingContext2D): void;\r\n\r\n /** Called when the mouse pointer enters this Marker. */\r\n public onMouseEnter(ev: BeButtonEvent) { this._isHilited = true; this._hiliteColor = ev.viewport!.hilite.color; IModelApp.accuSnap.clear(); }\r\n\r\n /** Called when the mouse pointer leaves this Marker. */\r\n public onMouseLeave() { this._isHilited = false; }\r\n\r\n /** Called when the mouse pointer moves over this Marker */\r\n public onMouseMove(ev: BeButtonEvent): void {\r\n if (this.title)\r\n ev.viewport!.openToolTip(this.title, ev.viewPoint, this.tooltipOptions);\r\n }\r\n /** Called when a mouse button is pressed over this Marker. */\r\n public onMouseButton?(_ev: BeButtonEvent): boolean;\r\n\r\n /** Determine whether the point is within this Marker. */\r\n public pick(pt: XAndY): boolean { return this.rect.containsPoint(pt); }\r\n\r\n /** Establish a range of scale factors to increases and decrease the size of this Marker based on its distance from the camera.\r\n * @param range The minimum and maximum scale factors to be applied to the size of this Marker based on its distance from the camera. `range.Low` is the scale factor\r\n * for Markers at the back of the view frustum and `range.high` is the scale factor at the front of the view frustum.\r\n * @note Marker size scaling is only applied in views with the camera enabled. It has no effect on orthographic views.\r\n */\r\n public setScaleFactor(range: Range1dProps) {\r\n this._scaleFactorRange = Range1d.fromJSON(range);\r\n this._scaleFactor = Point2d.create(1, 1);\r\n }\r\n\r\n /** Constructor for Marker\r\n * @param worldLocation The location of this Marker in world coordinates.\r\n * @param size The size of this Marker in pixels.\r\n */\r\n constructor(worldLocation: XYAndZ, size: XAndY) {\r\n this.worldLocation = Point3d.createFrom(worldLocation);\r\n this.size = Point2d.createFrom(size);\r\n }\r\n\r\n /** Make a new Marker at the same position and size as this Marker.\r\n * The new Marker will share the world location and size, but will be otherwise blank.\r\n */\r\n public static makeFrom<T extends Marker>(other: Marker, ...args: any[]): T {\r\n const out = new (this as any)(other.worldLocation, other.size, ...args) as T;\r\n out.rect.setFrom(other.rect);\r\n out.position.setFrom(other.position);\r\n if (other._scaleFactor)\r\n out._scaleFactor = Point2d.createFrom(other._scaleFactor);\r\n out._scaleFactorRange = other._scaleFactorRange;\r\n return out;\r\n }\r\n\r\n /** When a Marker is displayed in its hilited state, this method is called first. If it returns true, no further action is taken.\r\n * Otherwise the Marker's normal drawing operations are also called. By default, this method adds a shadowBlur effect and increases\r\n * the size of the Marker by 25%.\r\n * @return true to stop drawing this Marker\r\n */\r\n protected drawHilited(ctx: CanvasRenderingContext2D) {\r\n ctx.shadowBlur = 30;\r\n ctx.shadowColor = this._hiliteColor ? this._hiliteColor.toHexString() : \"white\";\r\n ctx.scale(1.25, 1.25);\r\n return false;\r\n }\r\n\r\n /** Called during frame rendering to display this Marker onto the supplied context. */\r\n public drawDecoration(ctx: CanvasRenderingContext2D): void {\r\n if (this._isHilited && this.drawHilited(ctx))\r\n return;\r\n\r\n if (this._scaleFactor !== undefined)\r\n ctx.scale(this._scaleFactor.x, this._scaleFactor.y);\r\n\r\n // first call the \"drawFunc\" if defined. This means it will be below the image and label if they overlap\r\n if (undefined !== this.drawFunc)\r\n this.drawFunc(ctx);\r\n\r\n // next draw the image, if defined and desired\r\n if (this.wantImage && this.image !== undefined) {\r\n const size = this.imageSize ? this.imageSize : this.size;\r\n const offset = new Point2d(size.x / 2, size.y / 2);\r\n if (this.imageOffset)\r\n offset.plus(this.imageOffset, offset);\r\n ctx.drawImage(this.image, -offset.x, -offset.y, size.x, size.y);\r\n }\r\n\r\n // lastly, draw the label, if defined. This puts it on top of all other graphics for this Marker.\r\n if (this.label !== undefined) {\r\n ctx.textAlign = this.labelAlign ? this.labelAlign : \"center\";\r\n ctx.textBaseline = this.labelBaseline ? this.labelBaseline : \"middle\";\r\n ctx.font = this.labelFont ? this.labelFont : \"14px sans-serif\";\r\n ctx.fillStyle = this.labelColor ? this.labelColor : \"white\";\r\n ctx.fillText(this.label, this.labelOffset ? -this.labelOffset.x : 0, this.labelOffset ? -this.labelOffset.y : 0, this.labelMaxWidth);\r\n }\r\n }\r\n\r\n /** Set the [[image]] for this marker.\r\n * @param image Either a [[MarkerImage]] or a Promise for a [[MarkerImage]]. If a Promise is supplied, the [[image]] member is set\r\n * when the Promise resolves.\r\n */\r\n public setImage(image: MarkerImage | Promise<MarkerImage>) {\r\n if (image instanceof Promise) {\r\n image.then((resolvedImage) =>\r\n this.image = resolvedImage,\r\n ).catch((err: Event) => {\r\n const target = err.target as any;\r\n const msg = `Could not load image ${target && target.src ? target.src : \"unknown\"}`;\r\n Logger.logError(`${FrontendLoggerCategory.Package}.markers`, msg);\r\n console.log(msg); // eslint-disable-line no-console\r\n });\r\n } else\r\n this.image = image;\r\n }\r\n\r\n /** Set the image for this Marker from a URL. */\r\n public setImageUrl(url: string) { this.setImage(imageElementFromUrl(url)); }\r\n\r\n /** Set the position (in pixels) for this Marker in the supplied Viewport, based on its worldLocation.\r\n * @param markerSet The MarkerSet if this Marker is included in a set.\r\n * @return true if the Marker is visible and its new position is inside the Viewport.\r\n */\r\n public setPosition(vp: Viewport, markerSet?: MarkerSet<Marker>): boolean {\r\n if (!this.visible) // if we're turned off, skip\r\n return false;\r\n\r\n const pt4 = vp.worldToView4d(this.worldLocation);\r\n if (pt4.w > 1.0 || pt4.w < 1.0e-6) // outside of frustum or too close to eye.\r\n return false;\r\n\r\n pt4.realPoint(this.position);\r\n if (!vp.viewRect.containsPoint(this.position))\r\n return false; // outside this viewport rect\r\n\r\n const origin = this.position;\r\n const sizeX = this.size.x / 2;\r\n const sizeY = this.size.y / 2;\r\n this.rect.init(origin.x - sizeX, origin.y - sizeY, origin.x + sizeX, origin.y + sizeY);\r\n\r\n // if there's a scale factor active, calculate it now.\r\n if (this._scaleFactor && this._scaleFactorRange) {\r\n let scale = 1.0;\r\n if (vp.isCameraOn) {\r\n const range = this._scaleFactorRange;\r\n const minScaleViewW = (undefined !== markerSet ? markerSet.getMinScaleViewW(vp) : getMinScaleViewW(vp));\r\n if (minScaleViewW > 0.0)\r\n scale = Geometry.clamp(range.high - (pt4.w / minScaleViewW) * range.length(), .4, 2.0);\r\n else\r\n scale = Geometry.clamp(range.low + ((1 - pt4.w) * range.length()), .4, 2.0);\r\n this.rect.scaleAboutCenter(scale, scale);\r\n }\r\n this._scaleFactor.set(scale, scale);\r\n }\r\n\r\n return true;\r\n }\r\n\r\n /** Position the HTMLElement for this Marker relative to the Marker's position in the view.\r\n * The default implementation centers the HTMLElement (using its boundingClientRect) on the Marker.\r\n * Override this method to provide an alternative positioning approach.\r\n */\r\n protected positionHtml() {\r\n const html = this.htmlElement!;\r\n const style = html.style;\r\n style.position = \"absolute\";\r\n const size = html.getBoundingClientRect(); // Note: only call this *after* setting position = absolute\r\n const markerPos = this.position;\r\n style.left = `${markerPos.x - (size.width / 2)}px`;\r\n style.top = `${markerPos.y - (size.height / 2)}px`;\r\n }\r\n\r\n /** Add this Marker to the supplied DecorateContext. */\r\n public addMarker(context: DecorateContext) {\r\n context.addCanvasDecoration(this);\r\n if (undefined !== this.htmlElement) {\r\n // add this Marker to the DOM\r\n context.addHtmlDecoration(this.htmlElement);\r\n this.positionHtml(); // always reposition it\r\n }\r\n }\r\n\r\n /** Set the position and add this Marker to the supplied DecorateContext, if it's visible.\r\n * This method should be called from your implementation of [[Decorator.decorate]]. It will set this Marker's position based on the\r\n * Viewport from the context, and add this this Marker to the supplied DecorateContext.\r\n * @param context The DecorateContext for the Marker\r\n */\r\n public addDecoration(context: DecorateContext) {\r\n if (this.setPosition(context.viewport))\r\n this.addMarker(context);\r\n }\r\n}\r\n\r\n/** A cluster of one or more Markers that overlap one another in the view. The cluster's screen position is taken from its first entry.\r\n * Clusters also have a Marker themselves, that represents the whole group. The cluster marker isn't created until all entries have been added.\r\n * @public\r\n */\r\nexport class Cluster<T extends Marker> {\r\n public readonly markers: T[];\r\n public clusterMarker?: Marker;\r\n\r\n public constructor(markers: T[]) {\r\n assert(markers.length > 0);\r\n this.markers = markers;\r\n }\r\n\r\n public get position() {\r\n return this.markers[0].position;\r\n }\r\n\r\n /**\r\n * Gets the location for the cluster\r\n * @returns The average of the cluster markers worldLocation.\r\n */\r\n public getClusterLocation() {\r\n const location = Point3d.createZero();\r\n if (this.markers.length > 0) {\r\n this.markers.forEach((marker) => location.addInPlace(marker.worldLocation));\r\n location.scaleInPlace(1 / this.markers.length);\r\n }\r\n return location;\r\n }\r\n}\r\n\r\n/** A *set* of Markers that are logically related, such that they *cluster* when they overlap one another in screen space.\r\n * In that case, a *cluster marker* is drawn instead of the overlapping Markers.\r\n * @public\r\n */\r\nexport abstract class MarkerSet<T extends Marker> {\r\n private _viewport?: ScreenViewport;\r\n\r\n /** @internal */\r\n protected _entries: Array<T | Cluster<T>> = []; // this is an array that holds either Markers or a cluster of markers.\r\n /** @internal */\r\n protected readonly _worldToViewMap = Matrix4d.createZero();\r\n /** @internal */\r\n protected _minScaleViewW?: number;\r\n private readonly _markers = new ObservableSet<T>();\r\n\r\n /** The minimum number of Markers that must overlap before they are clustered. Otherwise they are each drawn individually. Default is 1 (always create a cluster.) */\r\n public minimumClusterSize = 1;\r\n /** The set of Markers in this MarkerSet. Add your [[Marker]]s into this. */\r\n public get markers(): Set<T> { return this._markers; }\r\n /** The radius (in pixels) representing the distance between the screen X,Y positions of two Markers to be clustered. When less than or equal to 0 (the default), the radius is calculated based on the first visible marker imageSize/size. */\r\n protected clusterRadius = 0;\r\n\r\n /** Construct a new MarkerSet for a specific ScreenViewport.\r\n * @param viewport the ScreenViewport for this MarkerSet. If undefined, use [[IModelApp.viewManager.selectedView]]\r\n */\r\n public constructor(viewport?: ScreenViewport) {\r\n this._viewport = undefined === viewport ? IModelApp.viewManager.selectedView : viewport;\r\n const markDirty = () => this.markDirty();\r\n this._markers.onAdded.addListener(markDirty);\r\n this._markers.onDeleted.addListener(markDirty);\r\n this._markers.onCleared.addListener(markDirty);\r\n }\r\n\r\n /** The ScreenViewport of this MarkerSet. */\r\n public get viewport(): ScreenViewport | undefined { return this._viewport; }\r\n\r\n /** Change the ScreenViewport for this MarkerSet.\r\n * After this call, the markers from this MarkerSet will only appear in the supplied ScreenViewport.\r\n * @beta\r\n */\r\n public changeViewport(viewport: ScreenViewport) {\r\n this._viewport = viewport;\r\n this.markDirty();\r\n }\r\n\r\n /** Indicate that this MarkerSet has been changed and is now *dirty*.\r\n * This is necessary because [[addDecoration]] does not recreate the set of decoration graphics\r\n * if it can detect that the previously-created set remains valid.\r\n * The set becomes invalid when the view frustum changes, or the contents of [[markers]] changes.\r\n * If some other criterion affecting the graphics changes, invoke this method. This should not be necessary for most use cases.\r\n * @public\r\n */\r\n public markDirty(): void {\r\n this._worldToViewMap.setZero();\r\n }\r\n\r\n /** Implement this method to create a new Marker that is shown as a *stand-in* for a Cluster of Markers that overlap one another.\r\n * @param cluster The [[Cluster]] that the new Marker will represent.\r\n * @returns The Marker that will be displayed to represent the Cluster.\r\n * @note You must create a new Marker each time this method is called.\r\n */\r\n protected abstract getClusterMarker(cluster: Cluster<T>): Marker;\r\n\r\n /** Get weight value limit establishing the distance from camera for the back of view scale factor. */\r\n public getMinScaleViewW(vp: Viewport): number {\r\n if (undefined === this._minScaleViewW)\r\n this._minScaleViewW = getMinScaleViewW(vp);\r\n return this._minScaleViewW;\r\n }\r\n\r\n /** This method should be called from [[Decorator.decorate]]. It will add this this MarkerSet to the supplied DecorateContext.\r\n * This method implements the logic that turns overlapping Markers into a Cluster.\r\n * @param context The DecorateContext for the Markers\r\n */\r\n public addDecoration(context: DecorateContext): void {\r\n const vp = context.viewport;\r\n if (vp !== this._viewport)\r\n return; // not viewport of this MarkerSet, ignore it\r\n\r\n const entries = this._entries;\r\n\r\n // Don't recreate the entries array if the view hasn't changed. This is important for performance, but also necessary for hilite of\r\n // clusters (otherwise they're recreated continually and never hilited.) */\r\n if (!this._worldToViewMap.isAlmostEqual(vp.worldToViewMap.transform0)) {\r\n this._worldToViewMap.setFrom(vp.worldToViewMap.transform0);\r\n this._minScaleViewW = undefined; // Invalidate current value.\r\n entries.length = 0; // start over.\r\n\r\n let distSquared = this.clusterRadius * this.clusterRadius;\r\n\r\n // loop through all of the Markers in the MarkerSet.\r\n for (const marker of this.markers) {\r\n // establish the screen position for this marker. If it's not in view, setPosition returns false\r\n if (!marker.setPosition(vp, this))\r\n continue;\r\n\r\n if (distSquared <= 0) {\r\n const size = marker.imageSize ? marker.imageSize : marker.size;\r\n const dist = Math.max(size.x, size.y) * 1.5;\r\n distSquared = dist * dist;\r\n }\r\n\r\n let added = false;\r\n for (let i = 0; i < entries.length; ++i) { // loop through all of the currently visible markers/clusters\r\n const entry = entries[i];\r\n if (marker.position.distanceSquaredXY(entry.position) <= distSquared) {\r\n added = true; // yes, we're going to save it as a Cluster\r\n if (entry instanceof Cluster) { // is the entry already a Cluster?\r\n entry.markers.push(marker); // yes, just add this to the existing cluster\r\n } else {\r\n entries[i] = new Cluster([entry, marker]); // no, make a new Cluster holding both\r\n }\r\n break; // this Marker has been handled, we can stop looking for overlaps\r\n }\r\n }\r\n if (!added)\r\n entries.push(marker); // there was no overlap, save this Marker to be drawn\r\n }\r\n }\r\n\r\n // we now have an array of Markers and Clusters, add them to context\r\n for (const entry of entries) {\r\n if (entry instanceof Cluster) { // is this entry a Cluster?\r\n if (entry.markers.length <= this.minimumClusterSize) { // yes, does it have more than the minimum number of entries?\r\n entry.markers.forEach((marker) => marker.addMarker(context)); // no, just draw all of its Markers\r\n } else {\r\n // yes, get and draw the Marker for this Cluster\r\n if (undefined === entry.clusterMarker) { // have we already created this cluster marker?\r\n const clusterMarker = this.getClusterMarker(entry); // no, get it now.\r\n // set the marker's position as getClusterMarker may not set it.\r\n if (clusterMarker.rect.isNull)\r\n clusterMarker.setPosition(vp, this);\r\n entry.clusterMarker = clusterMarker;\r\n }\r\n entry.clusterMarker.addMarker(context);\r\n }\r\n } else {\r\n entry.addMarker(context); // entry is a non-overlapping Marker, draw it.\r\n }\r\n }\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"Marker.js","sourceRoot":"","sources":["../../src/Marker.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, Logger, ObservableSet } from \"@itwin/core-bentley\";\r\nimport { Geometry, Matrix4d, Point2d, Point3d, Range1d, Range1dProps, Vector3d, XAndY, XYAndZ } from \"@itwin/core-geometry\";\r\nimport { ColorDef } from \"@itwin/core-common\";\r\nimport { FrontendLoggerCategory } from \"./FrontendLoggerCategory\";\r\nimport { imageElementFromUrl } from \"./ImageUtil\";\r\nimport { IModelApp } from \"./IModelApp\";\r\nimport { ToolTipOptions } from \"./NotificationManager\";\r\nimport { CanvasDecoration } from \"./render/CanvasDecoration\";\r\nimport { BeButtonEvent } from \"./tools/Tool\";\r\nimport { DecorateContext } from \"./ViewContext\";\r\nimport { ScreenViewport, Viewport } from \"./Viewport\";\r\nimport { ViewRect } from \"./ViewRect\";\r\n\r\n/** The types that may be used for Markers\r\n * @public\r\n * @extensions\r\n */\r\nexport type MarkerImage = HTMLImageElement | HTMLCanvasElement | HTMLVideoElement | ImageBitmap;\r\n\r\n/**\r\n * @public\r\n * @extensions\r\n */\r\nexport type MarkerFillStyle = string | CanvasGradient | CanvasPattern;\r\n\r\n/**\r\n * @public\r\n * @extensions\r\n */\r\nexport type MarkerTextAlign = \"left\" | \"right\" | \"center\" | \"start\" | \"end\";\r\n\r\n/**\r\n * @public\r\n * @extensions\r\n */\r\nexport type MarkerTextBaseline = \"top\" | \"hanging\" | \"middle\" | \"alphabetic\" | \"ideographic\" | \"bottom\";\r\n\r\nfunction getMinScaleViewW(vp: Viewport): number {\r\n let zHigh;\r\n const origin = vp.view.getCenter();\r\n const direction = vp.view.getZVector(); direction.scaleInPlace(-1);\r\n const corners = vp.view.iModel.projectExtents.corners();\r\n const delta = Vector3d.create();\r\n for (const corner of corners) {\r\n Vector3d.createStartEnd(origin, corner, delta);\r\n const projection = delta.dotProduct(direction);\r\n if (undefined === zHigh || projection > zHigh)\r\n zHigh = projection;\r\n }\r\n if (undefined === zHigh)\r\n return 0.0;\r\n origin.plusScaled(direction, zHigh, origin);\r\n return vp.worldToView4d(origin).w;\r\n}\r\n\r\n/** A Marker is a [[CanvasDecoration]], whose position follows a fixed location in world space.\r\n * Markers draw on top of all scene graphics, and show visual cues about locations of interest.\r\n * @see [Markers]($docs/learning/frontend/Markers)\r\n * @public\r\n * @extensions\r\n */\r\nexport class Marker implements CanvasDecoration {\r\n protected _scaleFactor?: Point2d;\r\n protected _scaleFactorRange?: Range1d;\r\n\r\n /** Whether this marker is currently enabled. If false, this Marker is not displayed. */\r\n public visible = true;\r\n /** Whether this marker is currently hilited or not. */\r\n protected _isHilited = false;\r\n /** The color for the shadowBlur when this Marker is hilited */\r\n protected _hiliteColor?: ColorDef;\r\n /** The location of this Marker in world coordinates. */\r\n public worldLocation: Point3d;\r\n /** The size of this Marker, in pixels. */\r\n public size: Point2d;\r\n /** The current position for the marker, in view coordinates (pixels). This value will be updated by calls to [[setPosition]]. */\r\n public position = new Point3d();\r\n /** The current rectangle for the marker, in view coordinates (pixels). This value will be updated by calls to [[setPosition]]. */\r\n public readonly rect = new ViewRect();\r\n /** An image to draw for this Marker. If undefined, no image is shown. See https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/drawImage. */\r\n public image?: MarkerImage;\r\n /** The offset for [[image]], in pixels, from the *center* of this Marker. If undefined, (0,0). */\r\n public imageOffset?: XAndY;\r\n /** The size of [[image]], in pixels. If undefined, use [[size]]. */\r\n public imageSize?: XAndY;\r\n /** A text Label for this Marker. If undefined, no label is displayed. */\r\n public label?: string;\r\n /** The offset for [[label]], in pixels, from the *center* of this Marker. If undefined, (0,0). */\r\n public labelOffset?: XAndY;\r\n /** The maximum with for [[label]], in pixels. If undefined label will not be condensed or use a smaller font size. */\r\n public labelMaxWidth?: number;\r\n /** The color for [[label]]. See https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/fillStyle. If undefined, \"white\". */\r\n public labelColor?: MarkerFillStyle;\r\n /** The text alignment for [[label]]. See https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/textAlign. If undefined, \"center\" */\r\n public labelAlign?: MarkerTextAlign;\r\n /** The text baseline for [[label]]. See https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/textBaseline. If undefined, \"middle\" */\r\n public labelBaseline?: MarkerTextBaseline;\r\n /** The font for [[label]]. See https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/font. */\r\n public labelFont?: string;\r\n /** The title string, or HTMLElement, to show (only) in the ToolTip when the pointer is over this Marker. See [[NotificationManager.openToolTip]] */\r\n public title?: HTMLElement | string;\r\n /** The ToolTipOptions to use for [[title]]. */\r\n public tooltipOptions?: ToolTipOptions;\r\n\r\n /** An Optional (unique) HTMLElement to display with this Marker. Generally, HTMLElements are more expensive than\r\n * images and labels, since they are added/removed from the DOM every frame. But, some types of markers are more convenient to construct\r\n * as HTMLElements, and if there aren't too many of them performance is fine.\r\n * @note HTMLElements may only appear in the DOM one time. Therefore, they *may not be shared* by more than one Marker.\r\n * You must ensure that each marker has its own HTMLElement. For this reason, you should probably only use HTMLElements in Markers if\r\n * each one is meant to be unique. For shared content, use images.\r\n */\r\n public htmlElement?: HTMLElement;\r\n\r\n /** Return true to display [[image]], if present. */\r\n public get wantImage() { return true; }\r\n\r\n /** Implement this function to draw onto the CanvasRenderingContext2D when this Marker is displayed. The [0,0] point will be the center of the Marker. */\r\n public drawFunc?(ctx: CanvasRenderingContext2D): void;\r\n\r\n /** Called when the mouse pointer enters this Marker. */\r\n public onMouseEnter(ev: BeButtonEvent) { this._isHilited = true; this._hiliteColor = ev.viewport!.hilite.color; IModelApp.accuSnap.clear(); }\r\n\r\n /** Called when the mouse pointer leaves this Marker. */\r\n public onMouseLeave() { this._isHilited = false; }\r\n\r\n /** Called when the mouse pointer moves over this Marker */\r\n public onMouseMove(ev: BeButtonEvent): void {\r\n if (this.title)\r\n ev.viewport!.openToolTip(this.title, ev.viewPoint, this.tooltipOptions);\r\n }\r\n /** Called when a mouse button is pressed over this Marker. */\r\n public onMouseButton?(_ev: BeButtonEvent): boolean;\r\n\r\n /** Determine whether the point is within this Marker. */\r\n public pick(pt: XAndY): boolean { return this.rect.containsPoint(pt); }\r\n\r\n /** Establish a range of scale factors to increases and decrease the size of this Marker based on its distance from the camera.\r\n * @param range The minimum and maximum scale factors to be applied to the size of this Marker based on its distance from the camera. `range.Low` is the scale factor\r\n * for Markers at the back of the view frustum and `range.high` is the scale factor at the front of the view frustum.\r\n * @note Marker size scaling is only applied in views with the camera enabled. It has no effect on orthographic views.\r\n */\r\n public setScaleFactor(range: Range1dProps) {\r\n this._scaleFactorRange = Range1d.fromJSON(range);\r\n this._scaleFactor = Point2d.create(1, 1);\r\n }\r\n\r\n /** Constructor for Marker\r\n * @param worldLocation The location of this Marker in world coordinates.\r\n * @param size The size of this Marker in pixels.\r\n */\r\n constructor(worldLocation: XYAndZ, size: XAndY) {\r\n this.worldLocation = Point3d.createFrom(worldLocation);\r\n this.size = Point2d.createFrom(size);\r\n }\r\n\r\n /** Make a new Marker at the same position and size as this Marker.\r\n * The new Marker will share the world location and size, but will be otherwise blank.\r\n */\r\n public static makeFrom<T extends Marker>(other: Marker, ...args: any[]): T {\r\n const out = new (this as any)(other.worldLocation, other.size, ...args) as T;\r\n out.rect.setFrom(other.rect);\r\n out.position.setFrom(other.position);\r\n if (other._scaleFactor)\r\n out._scaleFactor = Point2d.createFrom(other._scaleFactor);\r\n out._scaleFactorRange = other._scaleFactorRange;\r\n return out;\r\n }\r\n\r\n /** When a Marker is displayed in its hilited state, this method is called first. If it returns true, no further action is taken.\r\n * Otherwise the Marker's normal drawing operations are also called. By default, this method adds a shadowBlur effect and increases\r\n * the size of the Marker by 25%.\r\n * @return true to stop drawing this Marker\r\n */\r\n protected drawHilited(ctx: CanvasRenderingContext2D) {\r\n ctx.shadowBlur = 30;\r\n ctx.shadowColor = this._hiliteColor ? this._hiliteColor.toHexString() : \"white\";\r\n ctx.scale(1.25, 1.25);\r\n return false;\r\n }\r\n\r\n /** Called during frame rendering to display this Marker onto the supplied context. */\r\n public drawDecoration(ctx: CanvasRenderingContext2D): void {\r\n if (this._isHilited && this.drawHilited(ctx))\r\n return;\r\n\r\n if (this._scaleFactor !== undefined)\r\n ctx.scale(this._scaleFactor.x, this._scaleFactor.y);\r\n\r\n // first call the \"drawFunc\" if defined. This means it will be below the image and label if they overlap\r\n if (undefined !== this.drawFunc)\r\n this.drawFunc(ctx);\r\n\r\n // next draw the image, if defined and desired\r\n if (this.wantImage && this.image !== undefined) {\r\n const size = this.imageSize ? this.imageSize : this.size;\r\n const offset = new Point2d(size.x / 2, size.y / 2);\r\n if (this.imageOffset)\r\n offset.plus(this.imageOffset, offset);\r\n ctx.drawImage(this.image, -offset.x, -offset.y, size.x, size.y);\r\n }\r\n\r\n // lastly, draw the label, if defined. This puts it on top of all other graphics for this Marker.\r\n if (this.label !== undefined) {\r\n ctx.textAlign = this.labelAlign ? this.labelAlign : \"center\";\r\n ctx.textBaseline = this.labelBaseline ? this.labelBaseline : \"middle\";\r\n ctx.font = this.labelFont ? this.labelFont : \"14px sans-serif\";\r\n ctx.fillStyle = this.labelColor ? this.labelColor : \"white\";\r\n ctx.fillText(this.label, this.labelOffset ? -this.labelOffset.x : 0, this.labelOffset ? -this.labelOffset.y : 0, this.labelMaxWidth);\r\n }\r\n }\r\n\r\n /** Set the [[image]] for this marker.\r\n * @param image Either a [[MarkerImage]] or a Promise for a [[MarkerImage]]. If a Promise is supplied, the [[image]] member is set\r\n * when the Promise resolves.\r\n */\r\n public setImage(image: MarkerImage | Promise<MarkerImage>) {\r\n if (image instanceof Promise) {\r\n image.then((resolvedImage) =>\r\n this.image = resolvedImage,\r\n ).catch((err: Event) => {\r\n const target = err.target as any;\r\n const msg = `Could not load image ${target && target.src ? target.src : \"unknown\"}`;\r\n Logger.logError(`${FrontendLoggerCategory.Package}.markers`, msg);\r\n console.log(msg); // eslint-disable-line no-console\r\n });\r\n } else\r\n this.image = image;\r\n }\r\n\r\n /** Set the image for this Marker from a URL. */\r\n public setImageUrl(url: string) { this.setImage(imageElementFromUrl(url)); }\r\n\r\n /** Set the position (in pixels) for this Marker in the supplied Viewport, based on its worldLocation.\r\n * @param markerSet The MarkerSet if this Marker is included in a set.\r\n * @return true if the Marker is visible and its new position is inside the Viewport.\r\n */\r\n public setPosition(vp: Viewport, markerSet?: MarkerSet<Marker>): boolean {\r\n if (!this.visible) // if we're turned off, skip\r\n return false;\r\n\r\n const pt4 = vp.worldToView4d(this.worldLocation);\r\n if (pt4.w > 1.0 || pt4.w < 1.0e-6) // outside of frustum or too close to eye.\r\n return false;\r\n\r\n pt4.realPoint(this.position);\r\n if (!vp.viewRect.containsPoint(this.position))\r\n return false; // outside this viewport rect\r\n\r\n const origin = this.position;\r\n const sizeX = this.size.x / 2;\r\n const sizeY = this.size.y / 2;\r\n this.rect.init(origin.x - sizeX, origin.y - sizeY, origin.x + sizeX, origin.y + sizeY);\r\n\r\n // if there's a scale factor active, calculate it now.\r\n if (this._scaleFactor && this._scaleFactorRange) {\r\n let scale = 1.0;\r\n if (vp.isCameraOn) {\r\n const range = this._scaleFactorRange;\r\n const minScaleViewW = (undefined !== markerSet ? markerSet.getMinScaleViewW(vp) : getMinScaleViewW(vp));\r\n if (minScaleViewW > 0.0)\r\n scale = Geometry.clamp(range.high - (pt4.w / minScaleViewW) * range.length(), .4, 2.0);\r\n else\r\n scale = Geometry.clamp(range.low + ((1 - pt4.w) * range.length()), .4, 2.0);\r\n this.rect.scaleAboutCenter(scale, scale);\r\n }\r\n this._scaleFactor.set(scale, scale);\r\n }\r\n\r\n return true;\r\n }\r\n\r\n /** Position the HTMLElement for this Marker relative to the Marker's position in the view.\r\n * The default implementation centers the HTMLElement (using its boundingClientRect) on the Marker.\r\n * Override this method to provide an alternative positioning approach.\r\n */\r\n protected positionHtml() {\r\n const html = this.htmlElement!;\r\n const style = html.style;\r\n style.position = \"absolute\";\r\n const size = html.getBoundingClientRect(); // Note: only call this *after* setting position = absolute\r\n const markerPos = this.position;\r\n style.left = `${markerPos.x - (size.width / 2)}px`;\r\n style.top = `${markerPos.y - (size.height / 2)}px`;\r\n }\r\n\r\n /** Add this Marker to the supplied DecorateContext. */\r\n public addMarker(context: DecorateContext) {\r\n context.addCanvasDecoration(this);\r\n if (undefined !== this.htmlElement) {\r\n // add this Marker to the DOM\r\n context.addHtmlDecoration(this.htmlElement);\r\n this.positionHtml(); // always reposition it\r\n }\r\n }\r\n\r\n /** Set the position and add this Marker to the supplied DecorateContext, if it's visible.\r\n * This method should be called from your implementation of [[Decorator.decorate]]. It will set this Marker's position based on the\r\n * Viewport from the context, and add this this Marker to the supplied DecorateContext.\r\n * @param context The DecorateContext for the Marker\r\n */\r\n public addDecoration(context: DecorateContext) {\r\n if (this.setPosition(context.viewport))\r\n this.addMarker(context);\r\n }\r\n}\r\n\r\n/** A cluster of one or more Markers that overlap one another in the view. The cluster's screen position is taken from its first entry.\r\n * Clusters also have a Marker themselves, that represents the whole group. The cluster marker isn't created until all entries have been added.\r\n * @public\r\n * @extensions\r\n */\r\nexport class Cluster<T extends Marker> {\r\n public readonly markers: T[];\r\n public clusterMarker?: Marker;\r\n\r\n public constructor(markers: T[]) {\r\n assert(markers.length > 0);\r\n this.markers = markers;\r\n }\r\n\r\n public get position() {\r\n return this.markers[0].position;\r\n }\r\n\r\n /**\r\n * Gets the location for the cluster\r\n * @returns The average of the cluster markers worldLocation.\r\n */\r\n public getClusterLocation() {\r\n const location = Point3d.createZero();\r\n if (this.markers.length > 0) {\r\n this.markers.forEach((marker) => location.addInPlace(marker.worldLocation));\r\n location.scaleInPlace(1 / this.markers.length);\r\n }\r\n return location;\r\n }\r\n}\r\n\r\n/** A *set* of Markers that are logically related, such that they *cluster* when they overlap one another in screen space.\r\n * In that case, a *cluster marker* is drawn instead of the overlapping Markers.\r\n * @public\r\n * @extensions\r\n */\r\nexport abstract class MarkerSet<T extends Marker> {\r\n private _viewport?: ScreenViewport;\r\n\r\n /** @internal */\r\n protected _entries: Array<T | Cluster<T>> = []; // this is an array that holds either Markers or a cluster of markers.\r\n /** @internal */\r\n protected readonly _worldToViewMap = Matrix4d.createZero();\r\n /** @internal */\r\n protected _minScaleViewW?: number;\r\n private readonly _markers = new ObservableSet<T>();\r\n\r\n /** The minimum number of Markers that must overlap before they are clustered. Otherwise they are each drawn individually. Default is 1 (always create a cluster.) */\r\n public minimumClusterSize = 1;\r\n /** The set of Markers in this MarkerSet. Add your [[Marker]]s into this. */\r\n public get markers(): Set<T> { return this._markers; }\r\n /** The radius (in pixels) representing the distance between the screen X,Y positions of two Markers to be clustered. When less than or equal to 0 (the default), the radius is calculated based on the first visible marker imageSize/size. */\r\n protected clusterRadius = 0;\r\n\r\n /** Construct a new MarkerSet for a specific ScreenViewport.\r\n * @param viewport the ScreenViewport for this MarkerSet. If undefined, use [[IModelApp.viewManager.selectedView]]\r\n */\r\n public constructor(viewport?: ScreenViewport) {\r\n this._viewport = undefined === viewport ? IModelApp.viewManager.selectedView : viewport;\r\n const markDirty = () => this.markDirty();\r\n this._markers.onAdded.addListener(markDirty);\r\n this._markers.onDeleted.addListener(markDirty);\r\n this._markers.onCleared.addListener(markDirty);\r\n }\r\n\r\n /** The ScreenViewport of this MarkerSet. */\r\n public get viewport(): ScreenViewport | undefined { return this._viewport; }\r\n\r\n /** Change the ScreenViewport for this MarkerSet.\r\n * After this call, the markers from this MarkerSet will only appear in the supplied ScreenViewport.\r\n * @beta\r\n */\r\n public changeViewport(viewport: ScreenViewport) {\r\n this._viewport = viewport;\r\n this.markDirty();\r\n }\r\n\r\n /** Indicate that this MarkerSet has been changed and is now *dirty*.\r\n * This is necessary because [[addDecoration]] does not recreate the set of decoration graphics\r\n * if it can detect that the previously-created set remains valid.\r\n * The set becomes invalid when the view frustum changes, or the contents of [[markers]] changes.\r\n * If some other criterion affecting the graphics changes, invoke this method. This should not be necessary for most use cases.\r\n * @public\r\n */\r\n public markDirty(): void {\r\n this._worldToViewMap.setZero();\r\n }\r\n\r\n /** Implement this method to create a new Marker that is shown as a *stand-in* for a Cluster of Markers that overlap one another.\r\n * @param cluster The [[Cluster]] that the new Marker will represent.\r\n * @returns The Marker that will be displayed to represent the Cluster.\r\n * @note You must create a new Marker each time this method is called.\r\n */\r\n protected abstract getClusterMarker(cluster: Cluster<T>): Marker;\r\n\r\n /** Get weight value limit establishing the distance from camera for the back of view scale factor. */\r\n public getMinScaleViewW(vp: Viewport): number {\r\n if (undefined === this._minScaleViewW)\r\n this._minScaleViewW = getMinScaleViewW(vp);\r\n return this._minScaleViewW;\r\n }\r\n\r\n /** This method should be called from [[Decorator.decorate]]. It will add this this MarkerSet to the supplied DecorateContext.\r\n * This method implements the logic that turns overlapping Markers into a Cluster.\r\n * @param context The DecorateContext for the Markers\r\n */\r\n public addDecoration(context: DecorateContext): void {\r\n const vp = context.viewport;\r\n if (vp !== this._viewport)\r\n return; // not viewport of this MarkerSet, ignore it\r\n\r\n const entries = this._entries;\r\n\r\n // Don't recreate the entries array if the view hasn't changed. This is important for performance, but also necessary for hilite of\r\n // clusters (otherwise they're recreated continually and never hilited.) */\r\n if (!this._worldToViewMap.isAlmostEqual(vp.worldToViewMap.transform0)) {\r\n this._worldToViewMap.setFrom(vp.worldToViewMap.transform0);\r\n this._minScaleViewW = undefined; // Invalidate current value.\r\n entries.length = 0; // start over.\r\n\r\n let distSquared = this.clusterRadius * this.clusterRadius;\r\n\r\n // loop through all of the Markers in the MarkerSet.\r\n for (const marker of this.markers) {\r\n // establish the screen position for this marker. If it's not in view, setPosition returns false\r\n if (!marker.setPosition(vp, this))\r\n continue;\r\n\r\n if (distSquared <= 0) {\r\n const size = marker.imageSize ? marker.imageSize : marker.size;\r\n const dist = Math.max(size.x, size.y) * 1.5;\r\n distSquared = dist * dist;\r\n }\r\n\r\n let added = false;\r\n for (let i = 0; i < entries.length; ++i) { // loop through all of the currently visible markers/clusters\r\n const entry = entries[i];\r\n if (marker.position.distanceSquaredXY(entry.position) <= distSquared) {\r\n added = true; // yes, we're going to save it as a Cluster\r\n if (entry instanceof Cluster) { // is the entry already a Cluster?\r\n entry.markers.push(marker); // yes, just add this to the existing cluster\r\n } else {\r\n entries[i] = new Cluster([entry, marker]); // no, make a new Cluster holding both\r\n }\r\n break; // this Marker has been handled, we can stop looking for overlaps\r\n }\r\n }\r\n if (!added)\r\n entries.push(marker); // there was no overlap, save this Marker to be drawn\r\n }\r\n }\r\n\r\n // we now have an array of Markers and Clusters, add them to context\r\n for (const entry of entries) {\r\n if (entry instanceof Cluster) { // is this entry a Cluster?\r\n if (entry.markers.length <= this.minimumClusterSize) { // yes, does it have more than the minimum number of entries?\r\n entry.markers.forEach((marker) => marker.addMarker(context)); // no, just draw all of its Markers\r\n } else {\r\n // yes, get and draw the Marker for this Cluster\r\n if (undefined === entry.clusterMarker) { // have we already created this cluster marker?\r\n const clusterMarker = this.getClusterMarker(entry); // no, get it now.\r\n // set the marker's position as getClusterMarker may not set it.\r\n if (clusterMarker.rect.isNull)\r\n clusterMarker.setPosition(vp, this);\r\n entry.clusterMarker = clusterMarker;\r\n }\r\n entry.clusterMarker.addMarker(context);\r\n }\r\n } else {\r\n entry.addMarker(context); // entry is a non-overlapping Marker, draw it.\r\n }\r\n }\r\n }\r\n}\r\n"]}
@@ -8,6 +8,7 @@ import { IModelConnection } from "./IModelConnection";
8
8
  /** The state of a [ModelSelector]($backend). It holds a set of ids of GeometricModels for a [[SpatialViewState]].
9
9
  * It defines the set of [[ModelState]]s drawn within the view as a set of IDs.
10
10
  * @public
11
+ * @extensions
11
12
  */
12
13
  export declare class ModelSelectorState extends ElementState {
13
14
  /** @internal */
@@ -1 +1 @@
1
- {"version":3,"file":"ModelSelectorState.d.ts","sourceRoot":"","sources":["../../src/ModelSelectorState.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAQ,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAC/E,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD;;;GAGG;AACH,qBAAa,kBAAmB,SAAQ,YAAY;IAClD,gBAAgB;IAChB,WAA2B,SAAS,WAA8B;IAElE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA+B;IAEvD,qDAAqD;IACrD,IAAW,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,CAE/B;IAED,IAAW,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,EAIpC;IAED,gBAAgB;IAChB,IAAW,gBAAgB,IAAI,aAAa,CAAC,MAAM,CAAC,CAEnD;gBAEW,KAAK,EAAE,kBAAkB,EAAE,MAAM,EAAE,gBAAgB;IAM/D,qCAAqC;IACrC,IAAW,IAAI,IAAI,MAAM,CAA4B;IAErC,MAAM,IAAI,kBAAkB;IAO5C;;;;;OAKG;IACI,UAAU,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO;IAWrD,wDAAwD;IACjD,SAAS,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;IAKpC,2DAA2D;IACpD,UAAU,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;IAKrC,qFAAqF;IAC9E,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAE/B,+EAA+E;IACxE,aAAa,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO;IAElD,6EAA6E;IAChE,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAGnC"}
1
+ {"version":3,"file":"ModelSelectorState.d.ts","sourceRoot":"","sources":["../../src/ModelSelectorState.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAQ,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAC/E,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD;;;;GAIG;AACH,qBAAa,kBAAmB,SAAQ,YAAY;IAClD,gBAAgB;IAChB,WAA2B,SAAS,WAA8B;IAElE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA+B;IAEvD,qDAAqD;IACrD,IAAW,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,CAE/B;IAED,IAAW,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,EAIpC;IAED,gBAAgB;IAChB,IAAW,gBAAgB,IAAI,aAAa,CAAC,MAAM,CAAC,CAEnD;gBAEW,KAAK,EAAE,kBAAkB,EAAE,MAAM,EAAE,gBAAgB;IAM/D,qCAAqC;IACrC,IAAW,IAAI,IAAI,MAAM,CAA4B;IAErC,MAAM,IAAI,kBAAkB;IAO5C;;;;;OAKG;IACI,UAAU,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO;IAWrD,wDAAwD;IACjD,SAAS,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;IAKpC,2DAA2D;IACpD,UAAU,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;IAKrC,qFAAqF;IAC9E,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAE/B,+EAA+E;IACxE,aAAa,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO;IAElD,6EAA6E;IAChE,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAGnC"}
@@ -13,6 +13,7 @@ const EntityState_1 = require("./EntityState");
13
13
  /** The state of a [ModelSelector]($backend). It holds a set of ids of GeometricModels for a [[SpatialViewState]].
14
14
  * It defines the set of [[ModelState]]s drawn within the view as a set of IDs.
15
15
  * @public
16
+ * @extensions
16
17
  */
17
18
  class ModelSelectorState extends EntityState_1.ElementState {
18
19
  constructor(props, iModel) {
@@ -1 +1 @@
1
- {"version":3,"file":"ModelSelectorState.js","sourceRoot":"","sources":["../../src/ModelSelectorState.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 { Id64, Id64Arg, Id64String, ObservableSet } from \"@itwin/core-bentley\";\r\nimport { ModelSelectorProps } from \"@itwin/core-common\";\r\nimport { ElementState } from \"./EntityState\";\r\nimport { IModelConnection } from \"./IModelConnection\";\r\n\r\n/** The state of a [ModelSelector]($backend). It holds a set of ids of GeometricModels for a [[SpatialViewState]].\r\n * It defines the set of [[ModelState]]s drawn within the view as a set of IDs.\r\n * @public\r\n */\r\nexport class ModelSelectorState extends ElementState {\r\n /** @internal */\r\n public static override get className() { return \"ModelSelector\"; }\r\n\r\n private readonly _models = new ObservableSet<string>();\r\n\r\n /** The set of ModelIds of this ModelSelectorState */\r\n public get models(): Set<string> {\r\n return this._models;\r\n }\r\n\r\n public set models(models: Set<string>) {\r\n this.models.clear();\r\n for (const model of models)\r\n this.models.add(model);\r\n }\r\n\r\n /** @internal */\r\n public get observableModels(): ObservableSet<string> {\r\n return this._models;\r\n }\r\n\r\n constructor(props: ModelSelectorProps, iModel: IModelConnection) {\r\n super(props, iModel);\r\n if (props.models)\r\n props.models.forEach((model) => this.models.add(model));\r\n }\r\n\r\n /** The name of this ModelSelector */\r\n public get name(): string { return this.code.value; }\r\n\r\n public override toJSON(): ModelSelectorProps {\r\n const val: any = super.toJSON();\r\n val.models = [];\r\n this.models.forEach((model) => val.models.push(model));\r\n return val;\r\n }\r\n\r\n /** Determine if this model selector is logically equivalent to the specified model selector. Two model selectors are logically equivalent is\r\n * they have the same name and Id and contain the same set of models.\r\n * @param other The model selector to which to compare.\r\n * @returns true if the model selectors are logically equivalent.\r\n * @public\r\n */\r\n public equalState(other: ModelSelectorState): boolean {\r\n if (this.models.size !== other.models.size || this.id !== other.id || this.name !== other.name)\r\n return false;\r\n\r\n for (const model of this.models)\r\n if (!other.models.has(model))\r\n return false;\r\n\r\n return true;\r\n }\r\n\r\n /** Add one or more models to this ModelSelectorState */\r\n public addModels(arg: Id64Arg): void {\r\n for (const id of Id64.iterable(arg))\r\n this.models.add(id);\r\n }\r\n\r\n /** Drop one or more models from this ModelSelectorState */\r\n public dropModels(arg: Id64Arg): void {\r\n for (const id of Id64.iterable(arg))\r\n this.models.delete(id);\r\n }\r\n\r\n /** Determine whether this ModelSelectorState includes the specified modelId value */\r\n public has(id: string): boolean { return this.models.has(id); }\r\n\r\n /** Determine whether this ModelSelectorState includes the specified modelId */\r\n public containsModel(modelId: Id64String): boolean { return this.has(modelId.toString()); }\r\n\r\n /** Make sure all models referenced by this ModelSelectorState are loaded. */\r\n public async load(): Promise<void> {\r\n return this.iModel.models.load(this.models);\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"ModelSelectorState.js","sourceRoot":"","sources":["../../src/ModelSelectorState.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 { Id64, Id64Arg, Id64String, ObservableSet } from \"@itwin/core-bentley\";\r\nimport { ModelSelectorProps } from \"@itwin/core-common\";\r\nimport { ElementState } from \"./EntityState\";\r\nimport { IModelConnection } from \"./IModelConnection\";\r\n\r\n/** The state of a [ModelSelector]($backend). It holds a set of ids of GeometricModels for a [[SpatialViewState]].\r\n * It defines the set of [[ModelState]]s drawn within the view as a set of IDs.\r\n * @public\r\n * @extensions\r\n */\r\nexport class ModelSelectorState extends ElementState {\r\n /** @internal */\r\n public static override get className() { return \"ModelSelector\"; }\r\n\r\n private readonly _models = new ObservableSet<string>();\r\n\r\n /** The set of ModelIds of this ModelSelectorState */\r\n public get models(): Set<string> {\r\n return this._models;\r\n }\r\n\r\n public set models(models: Set<string>) {\r\n this.models.clear();\r\n for (const model of models)\r\n this.models.add(model);\r\n }\r\n\r\n /** @internal */\r\n public get observableModels(): ObservableSet<string> {\r\n return this._models;\r\n }\r\n\r\n constructor(props: ModelSelectorProps, iModel: IModelConnection) {\r\n super(props, iModel);\r\n if (props.models)\r\n props.models.forEach((model) => this.models.add(model));\r\n }\r\n\r\n /** The name of this ModelSelector */\r\n public get name(): string { return this.code.value; }\r\n\r\n public override toJSON(): ModelSelectorProps {\r\n const val: any = super.toJSON();\r\n val.models = [];\r\n this.models.forEach((model) => val.models.push(model));\r\n return val;\r\n }\r\n\r\n /** Determine if this model selector is logically equivalent to the specified model selector. Two model selectors are logically equivalent is\r\n * they have the same name and Id and contain the same set of models.\r\n * @param other The model selector to which to compare.\r\n * @returns true if the model selectors are logically equivalent.\r\n * @public\r\n */\r\n public equalState(other: ModelSelectorState): boolean {\r\n if (this.models.size !== other.models.size || this.id !== other.id || this.name !== other.name)\r\n return false;\r\n\r\n for (const model of this.models)\r\n if (!other.models.has(model))\r\n return false;\r\n\r\n return true;\r\n }\r\n\r\n /** Add one or more models to this ModelSelectorState */\r\n public addModels(arg: Id64Arg): void {\r\n for (const id of Id64.iterable(arg))\r\n this.models.add(id);\r\n }\r\n\r\n /** Drop one or more models from this ModelSelectorState */\r\n public dropModels(arg: Id64Arg): void {\r\n for (const id of Id64.iterable(arg))\r\n this.models.delete(id);\r\n }\r\n\r\n /** Determine whether this ModelSelectorState includes the specified modelId value */\r\n public has(id: string): boolean { return this.models.has(id); }\r\n\r\n /** Determine whether this ModelSelectorState includes the specified modelId */\r\n public containsModel(modelId: Id64String): boolean { return this.has(modelId.toString()); }\r\n\r\n /** Make sure all models referenced by this ModelSelectorState are loaded. */\r\n public async load(): Promise<void> {\r\n return this.iModel.models.load(this.models);\r\n }\r\n}\r\n"]}
@@ -11,6 +11,7 @@ import { TileTreeReference } from "./tile/internal";
11
11
  import { ViewState } from "./ViewState";
12
12
  /** Represents the front-end state of a [Model]($backend).
13
13
  * @public
14
+ * @extensions
14
15
  */
15
16
  export declare class ModelState extends EntityState implements ModelProps {
16
17
  /** @internal */
@@ -42,6 +43,7 @@ export declare class ModelState extends EntityState implements ModelProps {
42
43
  /** Represents the front-end state of a [GeometricModel]($backend).
43
44
  * The contents of a GeometricModelState can be rendered inside a [[Viewport]].
44
45
  * @public
46
+ * @extensions
45
47
  */
46
48
  export declare abstract class GeometricModelState extends ModelState implements GeometricModelProps {
47
49
  /** @internal */
@@ -69,6 +71,7 @@ export declare abstract class GeometricModelState extends ModelState implements
69
71
  }
70
72
  /** Represents the front-end state of a [GeometricModel2d]($backend).
71
73
  * @public
74
+ * @extensions
72
75
  */
73
76
  export declare class GeometricModel2dState extends GeometricModelState implements GeometricModel2dProps {
74
77
  /** @internal */
@@ -84,6 +87,7 @@ export declare class GeometricModel2dState extends GeometricModelState implement
84
87
  }
85
88
  /** Represents the front-end state of a [GeometricModel3d]($backend).
86
89
  * @public
90
+ * @extensions
87
91
  */
88
92
  export declare class GeometricModel3dState extends GeometricModelState {
89
93
  /** @internal */
@@ -108,6 +112,7 @@ export declare class GeometricModel3dState extends GeometricModelState {
108
112
  }
109
113
  /** Represents the front-end state of a [SheetModel]($backend).
110
114
  * @public
115
+ * @extensions
111
116
  */
112
117
  export declare class SheetModelState extends GeometricModel2dState {
113
118
  /** @internal */
@@ -115,6 +120,7 @@ export declare class SheetModelState extends GeometricModel2dState {
115
120
  }
116
121
  /** Represents the front-end state of a [SpatialModel]($backend).
117
122
  * @public
123
+ * @extensions
118
124
  */
119
125
  export declare class SpatialModelState extends GeometricModel3dState {
120
126
  /** If this is a reality model, provides access to a list of available spatial classifiers that can be applied to it. */
@@ -129,6 +135,7 @@ export declare class SpatialModelState extends GeometricModel3dState {
129
135
  }
130
136
  /** Represents the front-end state of a [PhysicalModel]($backend).
131
137
  * @public
138
+ * @extensions
132
139
  */
133
140
  export declare class PhysicalModelState extends SpatialModelState {
134
141
  /** @internal */
@@ -136,6 +143,7 @@ export declare class PhysicalModelState extends SpatialModelState {
136
143
  }
137
144
  /** Represents the front-end state of a [SpatialLocationModel]($backend).
138
145
  * @public
146
+ * @extensions
139
147
  */
140
148
  export declare class SpatialLocationModelState extends SpatialModelState {
141
149
  /** @internal */
@@ -143,6 +151,7 @@ export declare class SpatialLocationModelState extends SpatialModelState {
143
151
  }
144
152
  /** Represents the front-end state of a [DrawingModel]($backend).
145
153
  * @public
154
+ * @extensions
146
155
  */
147
156
  export declare class DrawingModelState extends GeometricModel2dState {
148
157
  /** @internal */
@@ -150,6 +159,7 @@ export declare class DrawingModelState extends GeometricModel2dState {
150
159
  }
151
160
  /** Represents the front-end state of a [SectionDrawingModel]($backend).
152
161
  * @public
162
+ * @extensions
153
163
  */
154
164
  export declare class SectionDrawingModelState extends DrawingModelState {
155
165
  /** @internal */
@@ -1 +1 @@
1
- {"version":3,"file":"ModelState.d.ts","sourceRoot":"","sources":["../../src/ModelState.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ModelState.d.ts","sourceRoot":"","sources":["../../src/ModelState.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,7 @@ const RealityDataSource_1 = require("./RealityDataSource");
16
16
  const internal_1 = require("./tile/internal");
17
17
  /** Represents the front-end state of a [Model]($backend).
18
18
  * @public
19
+ * @extensions
19
20
  */
20
21
  class ModelState extends EntityState_1.EntityState {
21
22
  constructor(props, iModel, state) {
@@ -60,6 +61,7 @@ exports.ModelState = ModelState;
60
61
  /** Represents the front-end state of a [GeometricModel]($backend).
61
62
  * The contents of a GeometricModelState can be rendered inside a [[Viewport]].
62
63
  * @public
64
+ * @extensions
63
65
  */
64
66
  class GeometricModelState extends ModelState {
65
67
  constructor(props, iModel, state) {
@@ -154,6 +156,7 @@ class GeometricModelState extends ModelState {
154
156
  exports.GeometricModelState = GeometricModelState;
155
157
  /** Represents the front-end state of a [GeometricModel2d]($backend).
156
158
  * @public
159
+ * @extensions
157
160
  */
158
161
  class GeometricModel2dState extends GeometricModelState {
159
162
  constructor(props, iModel, state) {
@@ -175,6 +178,7 @@ class GeometricModel2dState extends GeometricModelState {
175
178
  exports.GeometricModel2dState = GeometricModel2dState;
176
179
  /** Represents the front-end state of a [GeometricModel3d]($backend).
177
180
  * @public
181
+ * @extensions
178
182
  */
179
183
  class GeometricModel3dState extends GeometricModelState {
180
184
  constructor(props, iModel, state) {
@@ -203,6 +207,7 @@ class GeometricModel3dState extends GeometricModelState {
203
207
  exports.GeometricModel3dState = GeometricModel3dState;
204
208
  /** Represents the front-end state of a [SheetModel]($backend).
205
209
  * @public
210
+ * @extensions
206
211
  */
207
212
  class SheetModelState extends GeometricModel2dState {
208
213
  /** @internal */
@@ -211,6 +216,7 @@ class SheetModelState extends GeometricModel2dState {
211
216
  exports.SheetModelState = SheetModelState;
212
217
  /** Represents the front-end state of a [SpatialModel]($backend).
213
218
  * @public
219
+ * @extensions
214
220
  */
215
221
  class SpatialModelState extends GeometricModel3dState {
216
222
  constructor(props, iModel, state) {
@@ -230,6 +236,7 @@ class SpatialModelState extends GeometricModel3dState {
230
236
  exports.SpatialModelState = SpatialModelState;
231
237
  /** Represents the front-end state of a [PhysicalModel]($backend).
232
238
  * @public
239
+ * @extensions
233
240
  */
234
241
  class PhysicalModelState extends SpatialModelState {
235
242
  /** @internal */
@@ -238,6 +245,7 @@ class PhysicalModelState extends SpatialModelState {
238
245
  exports.PhysicalModelState = PhysicalModelState;
239
246
  /** Represents the front-end state of a [SpatialLocationModel]($backend).
240
247
  * @public
248
+ * @extensions
241
249
  */
242
250
  class SpatialLocationModelState extends SpatialModelState {
243
251
  /** @internal */
@@ -246,6 +254,7 @@ class SpatialLocationModelState extends SpatialModelState {
246
254
  exports.SpatialLocationModelState = SpatialLocationModelState;
247
255
  /** Represents the front-end state of a [DrawingModel]($backend).
248
256
  * @public
257
+ * @extensions
249
258
  */
250
259
  class DrawingModelState extends GeometricModel2dState {
251
260
  /** @internal */
@@ -254,6 +263,7 @@ class DrawingModelState extends GeometricModel2dState {
254
263
  exports.DrawingModelState = DrawingModelState;
255
264
  /** Represents the front-end state of a [SectionDrawingModel]($backend).
256
265
  * @public
266
+ * @extensions
257
267
  */
258
268
  class SectionDrawingModelState extends DrawingModelState {
259
269
  /** @internal */
@@ -1 +1 @@
1
- {"version":3,"file":"ModelState.js","sourceRoot":"","sources":["../../src/ModelState.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 ModelState\r\n */\r\n\r\nimport { Id64, Id64String, JsonUtils } from \"@itwin/core-bentley\";\r\nimport {\r\n GeometricModel2dProps, GeometricModel3dProps, GeometricModelProps, ModelProps, RealityDataFormat, RealityDataSourceKey, RelatedElement, SpatialClassifiers,\r\n} from \"@itwin/core-common\";\r\nimport { Point2d, Range3d } from \"@itwin/core-geometry\";\r\nimport { EntityState } from \"./EntityState\";\r\nimport { HitDetail } from \"./HitDetail\";\r\nimport { IModelConnection } from \"./IModelConnection\";\r\nimport { RealityDataSource } from \"./RealityDataSource\";\r\nimport { createOrbitGtTileTreeReference, createPrimaryTileTreeReference, createRealityTileTreeReference, TileTreeReference } from \"./tile/internal\";\r\nimport { ViewState } from \"./ViewState\";\r\n\r\n/** Represents the front-end state of a [Model]($backend).\r\n * @public\r\n */\r\nexport class ModelState extends EntityState implements ModelProps {\r\n /** @internal */\r\n public static override get className() { return \"Model\"; }\r\n public readonly modeledElement: RelatedElement;\r\n public readonly name: string;\r\n public parentModel: Id64String;\r\n public readonly isPrivate: boolean;\r\n public readonly isTemplate: boolean;\r\n\r\n constructor(props: ModelProps, iModel: IModelConnection, state?: ModelState) {\r\n super(props, iModel, state);\r\n this.modeledElement = RelatedElement.fromJSON(props.modeledElement)!;\r\n this.name = props.name ? props.name : \"\";\r\n this.parentModel = Id64.fromJSON(props.parentModel)!; // NB! Must always match the model of the modeledElement!\r\n this.isPrivate = JsonUtils.asBool(props.isPrivate);\r\n this.isTemplate = JsonUtils.asBool(props.isTemplate);\r\n }\r\n\r\n /** Add all custom-handled properties of a Model to a json object. */\r\n public override toJSON(): ModelProps {\r\n const val = super.toJSON() as ModelProps;\r\n val.modeledElement = this.modeledElement;\r\n val.parentModel = this.parentModel;\r\n val.name = this.name;\r\n if (this.isPrivate)\r\n val.isPrivate = this.isPrivate;\r\n if (this.isTemplate)\r\n val.isTemplate = this.isTemplate;\r\n return val;\r\n }\r\n\r\n /** Determine whether this is a GeometricModel */\r\n public get isGeometricModel(): boolean { return false; }\r\n\r\n /** Attempts to cast this model to a geometric model. */\r\n public get asGeometricModel(): GeometricModelState | undefined { return undefined; }\r\n /** Attempts to cast this model to a 3d geometric model. */\r\n public get asGeometricModel3d(): GeometricModel3dState | undefined { return undefined; }\r\n /** Attempts to cast this model to a 2d geometric model. */\r\n public get asGeometricModel2d(): GeometricModel2dState | undefined { return undefined; }\r\n /** Attempts to cast this model to a spatial model. */\r\n public get asSpatialModel(): SpatialModelState | undefined { return undefined; }\r\n\r\n /**\r\n * Return the tool tip for this model. This is called only if the hit does not return a tooltip.\r\n * @internal\r\n */\r\n public getToolTip(_hit: HitDetail): HTMLElement | string | undefined { return undefined; }\r\n}\r\n\r\n/** Represents the front-end state of a [GeometricModel]($backend).\r\n * The contents of a GeometricModelState can be rendered inside a [[Viewport]].\r\n * @public\r\n */\r\nexport abstract class GeometricModelState extends ModelState implements GeometricModelProps {\r\n /** @internal */\r\n public static override get className() { return \"GeometricModel\"; }\r\n /** @internal */\r\n public geometryGuid?: string;\r\n\r\n private _modelRange?: Range3d;\r\n\r\n constructor(props: GeometricModelProps, iModel: IModelConnection, state?: GeometricModelState) {\r\n super(props, iModel, state);\r\n this.geometryGuid = props.geometryGuid;\r\n }\r\n\r\n /** Returns true if this is a 3d model (a [[GeometricModel3dState]]). */\r\n public abstract get is3d(): boolean;\r\n /** @internal */\r\n public override get asGeometricModel(): GeometricModelState { return this; }\r\n /** Returns true if this is a 2d model (a [[GeometricModel2dState]]). */\r\n public get is2d(): boolean { return !this.is3d; }\r\n\r\n /** @internal */\r\n public override get isGeometricModel(): boolean { return true; }\r\n /** @internal */\r\n public get treeModelId(): Id64String { return this.id; }\r\n\r\n /** Query for the union of the ranges of all the elements in this GeometricModel.\r\n * @internal\r\n */\r\n public async queryModelRange(): Promise<Range3d> {\r\n if (undefined === this._modelRange) {\r\n const ranges = await this.iModel.models.queryModelRanges(this.id);\r\n this._modelRange = Range3d.fromJSON(ranges[0]);\r\n }\r\n return this._modelRange;\r\n }\r\n\r\n /** @internal */\r\n public createTileTreeReference(view: ViewState): TileTreeReference {\r\n // If this is a reality model, its tile tree is obtained from reality data service URL.\r\n\r\n const spatialModel = this.asSpatialModel;\r\n const rdSourceKey = this.jsonProperties.rdSourceKey;\r\n\r\n if (rdSourceKey) {\r\n const useOrbitGtTileTreeReference = rdSourceKey.format === RealityDataFormat.OPC;\r\n const treeRef = (!useOrbitGtTileTreeReference) ?\r\n createRealityTileTreeReference({\r\n rdSourceKey,\r\n iModel: this.iModel,\r\n source: view,\r\n modelId: this.id,\r\n // url: tilesetUrl, // If rdSourceKey is defined, url is not used\r\n classifiers: undefined !== spatialModel ? spatialModel.classifiers : undefined,\r\n }) :\r\n createOrbitGtTileTreeReference({\r\n rdSourceKey,\r\n iModel: this.iModel,\r\n source: view,\r\n modelId: this.id,\r\n // orbitGtBlob: props.orbitGtBlob!, // If rdSourceKey is defined, orbitGtBlob is not used\r\n classifiers: undefined !== spatialModel ? spatialModel.classifiers : undefined,\r\n });\r\n return treeRef;\r\n }\r\n\r\n const orbitGtBlob = this.jsonProperties.orbitGtBlob;\r\n\r\n // If this is an OrbitGt reality model, create it's reference\r\n if(orbitGtBlob) {\r\n let orbitGtName = \"\";\r\n if (orbitGtBlob.blobFileName !== \"\") {\r\n if (orbitGtBlob.blobFileName[0] === \"/\")\r\n orbitGtName = orbitGtBlob.blobFileName.substring(1);\r\n else\r\n orbitGtName = orbitGtBlob.blobFileName;\r\n }\r\n // Create rdSourceKey if not provided\r\n const rdSourceKeyOGT: RealityDataSourceKey = RealityDataSource.createKeyFromOrbitGtBlobProps(orbitGtBlob);\r\n\r\n return createOrbitGtTileTreeReference({\r\n rdSourceKey: rdSourceKeyOGT,\r\n iModel: this.iModel,\r\n source: view,\r\n modelId: this.id,\r\n orbitGtBlob,\r\n name: orbitGtName,\r\n classifiers: undefined !== spatialModel ? spatialModel.classifiers : undefined,\r\n });\r\n }\r\n\r\n // If this is a TileTree reality model, create it's reference\r\n const tilesetUrl = this.jsonProperties.tilesetUrl;\r\n\r\n if(tilesetUrl) {\r\n const rdSourceKeyCS = RealityDataSource.createKeyFromUrl(tilesetUrl);\r\n return createRealityTileTreeReference({\r\n rdSourceKey: rdSourceKeyCS,\r\n url : tilesetUrl,\r\n iModel: this.iModel,\r\n source: view,\r\n modelId: this.id,\r\n tilesetToDbTransform: this.jsonProperties.tilesetToDbTransform,\r\n classifiers: undefined !== spatialModel ? spatialModel.classifiers : undefined,\r\n });\r\n }\r\n\r\n return createPrimaryTileTreeReference(view, this);\r\n }\r\n}\r\n/** Represents the front-end state of a [GeometricModel2d]($backend).\r\n * @public\r\n */\r\nexport class GeometricModel2dState extends GeometricModelState implements GeometricModel2dProps {\r\n /** @internal */\r\n public static override get className() { return \"GeometricModel2d\"; }\r\n /** @internal */\r\n public readonly globalOrigin: Point2d;\r\n\r\n constructor(props: GeometricModel2dProps, iModel: IModelConnection, state?: GeometricModel2dState) {\r\n super(props, iModel, state);\r\n this.globalOrigin = Point2d.fromJSON(props.globalOrigin);\r\n }\r\n\r\n /** @internal */\r\n public get is3d(): boolean { return false; }\r\n /** @internal */\r\n public override get asGeometricModel2d(): GeometricModel2dState { return this; }\r\n\r\n public override toJSON(): GeometricModel2dProps {\r\n const val = super.toJSON() as GeometricModel2dProps;\r\n val.globalOrigin = this.globalOrigin;\r\n return val;\r\n }\r\n}\r\n\r\n/** Represents the front-end state of a [GeometricModel3d]($backend).\r\n * @public\r\n */\r\nexport class GeometricModel3dState extends GeometricModelState {\r\n /** @internal */\r\n public static override get className() { return \"GeometricModel3d\"; }\r\n\r\n constructor(props: GeometricModel3dProps, iModel: IModelConnection, state?: GeometricModel3dState) {\r\n super(props, iModel, state);\r\n this.isNotSpatiallyLocated = JsonUtils.asBool(props.isNotSpatiallyLocated);\r\n this.isPlanProjection = JsonUtils.asBool(props.isPlanProjection);\r\n }\r\n\r\n /** @internal */\r\n public override toJSON(): GeometricModel3dProps {\r\n const val = super.toJSON() as GeometricModel3dProps;\r\n if (this.isNotSpatiallyLocated)\r\n val.isNotSpatiallyLocated = true;\r\n\r\n if (this.isPlanProjection)\r\n val.isPlanProjection = true;\r\n\r\n return val;\r\n }\r\n\r\n /** @internal */\r\n public get is3d(): boolean { return true; }\r\n /** @internal */\r\n public override get asGeometricModel3d(): GeometricModel3dState { return this; }\r\n\r\n /** If true, then the elements in this GeometricModel3dState are expected to be in an XY plane.\r\n * @note The associated ECProperty was added to the BisCore schema in version 1.0.8\r\n */\r\n public readonly isPlanProjection: boolean;\r\n\r\n /** If true, then the elements in this GeometricModel3dState are not in real-world coordinates and will not be in the spatial index.\r\n * @note The associated ECProperty was added to the BisCore schema in version 1.0.8\r\n */\r\n public readonly isNotSpatiallyLocated: boolean;\r\n\r\n /** If true, then the elements in this GeometricModel3dState are in real-world coordinates and will be in the spatial index. */\r\n public get isSpatiallyLocated(): boolean { return !this.isNotSpatiallyLocated; }\r\n}\r\n\r\n/** Represents the front-end state of a [SheetModel]($backend).\r\n * @public\r\n */\r\nexport class SheetModelState extends GeometricModel2dState {\r\n /** @internal */\r\n public static override get className() { return \"SheetModel\"; }\r\n}\r\n\r\n/** Represents the front-end state of a [SpatialModel]($backend).\r\n * @public\r\n */\r\nexport class SpatialModelState extends GeometricModel3dState {\r\n /** If this is a reality model, provides access to a list of available spatial classifiers that can be applied to it. */\r\n public readonly classifiers?: SpatialClassifiers;\r\n\r\n /** @internal */\r\n public static override get className() { return \"SpatialModel\"; }\r\n /** @internal */\r\n public override get asSpatialModel(): SpatialModelState { return this; }\r\n\r\n public constructor(props: ModelProps, iModel: IModelConnection, state?: SpatialModelState) {\r\n super(props, iModel, state);\r\n if (this.isRealityModel)\r\n this.classifiers = new SpatialClassifiers(this.jsonProperties);\r\n }\r\n /** Return true if this is a reality model (represented by a 3d tile set). */\r\n public get isRealityModel(): boolean {\r\n return undefined !== this.jsonProperties.tilesetUrl;\r\n }\r\n}\r\n\r\n/** Represents the front-end state of a [PhysicalModel]($backend).\r\n * @public\r\n */\r\nexport class PhysicalModelState extends SpatialModelState {\r\n /** @internal */\r\n public static override get className() { return \"PhysicalModel\"; }\r\n}\r\n\r\n/** Represents the front-end state of a [SpatialLocationModel]($backend).\r\n * @public\r\n */\r\nexport class SpatialLocationModelState extends SpatialModelState {\r\n /** @internal */\r\n public static override get className() { return \"SpatialLocationModel\"; }\r\n}\r\n\r\n/** Represents the front-end state of a [DrawingModel]($backend).\r\n * @public\r\n */\r\nexport class DrawingModelState extends GeometricModel2dState {\r\n /** @internal */\r\n public static override get className() { return \"DrawingModel\"; }\r\n}\r\n\r\n/** Represents the front-end state of a [SectionDrawingModel]($backend).\r\n * @public\r\n */\r\nexport class SectionDrawingModelState extends DrawingModelState {\r\n /** @internal */\r\n public static override get className() { return \"SectionDrawingModel\"; }\r\n}\r\n"]}
1
+ {"version":3,"file":"ModelState.js","sourceRoot":"","sources":["../../src/ModelState.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 ModelState\r\n */\r\n\r\nimport { Id64, Id64String, JsonUtils } from \"@itwin/core-bentley\";\r\nimport {\r\n GeometricModel2dProps, GeometricModel3dProps, GeometricModelProps, ModelProps, RealityDataFormat, RealityDataSourceKey, RelatedElement, SpatialClassifiers,\r\n} from \"@itwin/core-common\";\r\nimport { Point2d, Range3d } from \"@itwin/core-geometry\";\r\nimport { EntityState } from \"./EntityState\";\r\nimport { HitDetail } from \"./HitDetail\";\r\nimport { IModelConnection } from \"./IModelConnection\";\r\nimport { RealityDataSource } from \"./RealityDataSource\";\r\nimport { createOrbitGtTileTreeReference, createPrimaryTileTreeReference, createRealityTileTreeReference, TileTreeReference } from \"./tile/internal\";\r\nimport { ViewState } from \"./ViewState\";\r\n\r\n/** Represents the front-end state of a [Model]($backend).\r\n * @public\r\n * @extensions\r\n */\r\nexport class ModelState extends EntityState implements ModelProps {\r\n /** @internal */\r\n public static override get className() { return \"Model\"; }\r\n public readonly modeledElement: RelatedElement;\r\n public readonly name: string;\r\n public parentModel: Id64String;\r\n public readonly isPrivate: boolean;\r\n public readonly isTemplate: boolean;\r\n\r\n constructor(props: ModelProps, iModel: IModelConnection, state?: ModelState) {\r\n super(props, iModel, state);\r\n this.modeledElement = RelatedElement.fromJSON(props.modeledElement)!;\r\n this.name = props.name ? props.name : \"\";\r\n this.parentModel = Id64.fromJSON(props.parentModel)!; // NB! Must always match the model of the modeledElement!\r\n this.isPrivate = JsonUtils.asBool(props.isPrivate);\r\n this.isTemplate = JsonUtils.asBool(props.isTemplate);\r\n }\r\n\r\n /** Add all custom-handled properties of a Model to a json object. */\r\n public override toJSON(): ModelProps {\r\n const val = super.toJSON() as ModelProps;\r\n val.modeledElement = this.modeledElement;\r\n val.parentModel = this.parentModel;\r\n val.name = this.name;\r\n if (this.isPrivate)\r\n val.isPrivate = this.isPrivate;\r\n if (this.isTemplate)\r\n val.isTemplate = this.isTemplate;\r\n return val;\r\n }\r\n\r\n /** Determine whether this is a GeometricModel */\r\n public get isGeometricModel(): boolean { return false; }\r\n\r\n /** Attempts to cast this model to a geometric model. */\r\n public get asGeometricModel(): GeometricModelState | undefined { return undefined; }\r\n /** Attempts to cast this model to a 3d geometric model. */\r\n public get asGeometricModel3d(): GeometricModel3dState | undefined { return undefined; }\r\n /** Attempts to cast this model to a 2d geometric model. */\r\n public get asGeometricModel2d(): GeometricModel2dState | undefined { return undefined; }\r\n /** Attempts to cast this model to a spatial model. */\r\n public get asSpatialModel(): SpatialModelState | undefined { return undefined; }\r\n\r\n /**\r\n * Return the tool tip for this model. This is called only if the hit does not return a tooltip.\r\n * @internal\r\n */\r\n public getToolTip(_hit: HitDetail): HTMLElement | string | undefined { return undefined; }\r\n}\r\n\r\n/** Represents the front-end state of a [GeometricModel]($backend).\r\n * The contents of a GeometricModelState can be rendered inside a [[Viewport]].\r\n * @public\r\n * @extensions\r\n */\r\nexport abstract class GeometricModelState extends ModelState implements GeometricModelProps {\r\n /** @internal */\r\n public static override get className() { return \"GeometricModel\"; }\r\n /** @internal */\r\n public geometryGuid?: string;\r\n\r\n private _modelRange?: Range3d;\r\n\r\n constructor(props: GeometricModelProps, iModel: IModelConnection, state?: GeometricModelState) {\r\n super(props, iModel, state);\r\n this.geometryGuid = props.geometryGuid;\r\n }\r\n\r\n /** Returns true if this is a 3d model (a [[GeometricModel3dState]]). */\r\n public abstract get is3d(): boolean;\r\n /** @internal */\r\n public override get asGeometricModel(): GeometricModelState { return this; }\r\n /** Returns true if this is a 2d model (a [[GeometricModel2dState]]). */\r\n public get is2d(): boolean { return !this.is3d; }\r\n\r\n /** @internal */\r\n public override get isGeometricModel(): boolean { return true; }\r\n /** @internal */\r\n public get treeModelId(): Id64String { return this.id; }\r\n\r\n /** Query for the union of the ranges of all the elements in this GeometricModel.\r\n * @internal\r\n */\r\n public async queryModelRange(): Promise<Range3d> {\r\n if (undefined === this._modelRange) {\r\n const ranges = await this.iModel.models.queryModelRanges(this.id);\r\n this._modelRange = Range3d.fromJSON(ranges[0]);\r\n }\r\n return this._modelRange;\r\n }\r\n\r\n /** @internal */\r\n public createTileTreeReference(view: ViewState): TileTreeReference {\r\n // If this is a reality model, its tile tree is obtained from reality data service URL.\r\n\r\n const spatialModel = this.asSpatialModel;\r\n const rdSourceKey = this.jsonProperties.rdSourceKey;\r\n\r\n if (rdSourceKey) {\r\n const useOrbitGtTileTreeReference = rdSourceKey.format === RealityDataFormat.OPC;\r\n const treeRef = (!useOrbitGtTileTreeReference) ?\r\n createRealityTileTreeReference({\r\n rdSourceKey,\r\n iModel: this.iModel,\r\n source: view,\r\n modelId: this.id,\r\n // url: tilesetUrl, // If rdSourceKey is defined, url is not used\r\n classifiers: undefined !== spatialModel ? spatialModel.classifiers : undefined,\r\n }) :\r\n createOrbitGtTileTreeReference({\r\n rdSourceKey,\r\n iModel: this.iModel,\r\n source: view,\r\n modelId: this.id,\r\n // orbitGtBlob: props.orbitGtBlob!, // If rdSourceKey is defined, orbitGtBlob is not used\r\n classifiers: undefined !== spatialModel ? spatialModel.classifiers : undefined,\r\n });\r\n return treeRef;\r\n }\r\n\r\n const orbitGtBlob = this.jsonProperties.orbitGtBlob;\r\n\r\n // If this is an OrbitGt reality model, create it's reference\r\n if(orbitGtBlob) {\r\n let orbitGtName = \"\";\r\n if (orbitGtBlob.blobFileName !== \"\") {\r\n if (orbitGtBlob.blobFileName[0] === \"/\")\r\n orbitGtName = orbitGtBlob.blobFileName.substring(1);\r\n else\r\n orbitGtName = orbitGtBlob.blobFileName;\r\n }\r\n // Create rdSourceKey if not provided\r\n const rdSourceKeyOGT: RealityDataSourceKey = RealityDataSource.createKeyFromOrbitGtBlobProps(orbitGtBlob);\r\n\r\n return createOrbitGtTileTreeReference({\r\n rdSourceKey: rdSourceKeyOGT,\r\n iModel: this.iModel,\r\n source: view,\r\n modelId: this.id,\r\n orbitGtBlob,\r\n name: orbitGtName,\r\n classifiers: undefined !== spatialModel ? spatialModel.classifiers : undefined,\r\n });\r\n }\r\n\r\n // If this is a TileTree reality model, create it's reference\r\n const tilesetUrl = this.jsonProperties.tilesetUrl;\r\n\r\n if(tilesetUrl) {\r\n const rdSourceKeyCS = RealityDataSource.createKeyFromUrl(tilesetUrl);\r\n return createRealityTileTreeReference({\r\n rdSourceKey: rdSourceKeyCS,\r\n url : tilesetUrl,\r\n iModel: this.iModel,\r\n source: view,\r\n modelId: this.id,\r\n tilesetToDbTransform: this.jsonProperties.tilesetToDbTransform,\r\n classifiers: undefined !== spatialModel ? spatialModel.classifiers : undefined,\r\n });\r\n }\r\n\r\n return createPrimaryTileTreeReference(view, this);\r\n }\r\n}\r\n/** Represents the front-end state of a [GeometricModel2d]($backend).\r\n * @public\r\n * @extensions\r\n */\r\nexport class GeometricModel2dState extends GeometricModelState implements GeometricModel2dProps {\r\n /** @internal */\r\n public static override get className() { return \"GeometricModel2d\"; }\r\n /** @internal */\r\n public readonly globalOrigin: Point2d;\r\n\r\n constructor(props: GeometricModel2dProps, iModel: IModelConnection, state?: GeometricModel2dState) {\r\n super(props, iModel, state);\r\n this.globalOrigin = Point2d.fromJSON(props.globalOrigin);\r\n }\r\n\r\n /** @internal */\r\n public get is3d(): boolean { return false; }\r\n /** @internal */\r\n public override get asGeometricModel2d(): GeometricModel2dState { return this; }\r\n\r\n public override toJSON(): GeometricModel2dProps {\r\n const val = super.toJSON() as GeometricModel2dProps;\r\n val.globalOrigin = this.globalOrigin;\r\n return val;\r\n }\r\n}\r\n\r\n/** Represents the front-end state of a [GeometricModel3d]($backend).\r\n * @public\r\n * @extensions\r\n */\r\nexport class GeometricModel3dState extends GeometricModelState {\r\n /** @internal */\r\n public static override get className() { return \"GeometricModel3d\"; }\r\n\r\n constructor(props: GeometricModel3dProps, iModel: IModelConnection, state?: GeometricModel3dState) {\r\n super(props, iModel, state);\r\n this.isNotSpatiallyLocated = JsonUtils.asBool(props.isNotSpatiallyLocated);\r\n this.isPlanProjection = JsonUtils.asBool(props.isPlanProjection);\r\n }\r\n\r\n /** @internal */\r\n public override toJSON(): GeometricModel3dProps {\r\n const val = super.toJSON() as GeometricModel3dProps;\r\n if (this.isNotSpatiallyLocated)\r\n val.isNotSpatiallyLocated = true;\r\n\r\n if (this.isPlanProjection)\r\n val.isPlanProjection = true;\r\n\r\n return val;\r\n }\r\n\r\n /** @internal */\r\n public get is3d(): boolean { return true; }\r\n /** @internal */\r\n public override get asGeometricModel3d(): GeometricModel3dState { return this; }\r\n\r\n /** If true, then the elements in this GeometricModel3dState are expected to be in an XY plane.\r\n * @note The associated ECProperty was added to the BisCore schema in version 1.0.8\r\n */\r\n public readonly isPlanProjection: boolean;\r\n\r\n /** If true, then the elements in this GeometricModel3dState are not in real-world coordinates and will not be in the spatial index.\r\n * @note The associated ECProperty was added to the BisCore schema in version 1.0.8\r\n */\r\n public readonly isNotSpatiallyLocated: boolean;\r\n\r\n /** If true, then the elements in this GeometricModel3dState are in real-world coordinates and will be in the spatial index. */\r\n public get isSpatiallyLocated(): boolean { return !this.isNotSpatiallyLocated; }\r\n}\r\n\r\n/** Represents the front-end state of a [SheetModel]($backend).\r\n * @public\r\n * @extensions\r\n */\r\nexport class SheetModelState extends GeometricModel2dState {\r\n /** @internal */\r\n public static override get className() { return \"SheetModel\"; }\r\n}\r\n\r\n/** Represents the front-end state of a [SpatialModel]($backend).\r\n * @public\r\n * @extensions\r\n */\r\nexport class SpatialModelState extends GeometricModel3dState {\r\n /** If this is a reality model, provides access to a list of available spatial classifiers that can be applied to it. */\r\n public readonly classifiers?: SpatialClassifiers;\r\n\r\n /** @internal */\r\n public static override get className() { return \"SpatialModel\"; }\r\n /** @internal */\r\n public override get asSpatialModel(): SpatialModelState { return this; }\r\n\r\n public constructor(props: ModelProps, iModel: IModelConnection, state?: SpatialModelState) {\r\n super(props, iModel, state);\r\n if (this.isRealityModel)\r\n this.classifiers = new SpatialClassifiers(this.jsonProperties);\r\n }\r\n /** Return true if this is a reality model (represented by a 3d tile set). */\r\n public get isRealityModel(): boolean {\r\n return undefined !== this.jsonProperties.tilesetUrl;\r\n }\r\n}\r\n\r\n/** Represents the front-end state of a [PhysicalModel]($backend).\r\n * @public\r\n * @extensions\r\n */\r\nexport class PhysicalModelState extends SpatialModelState {\r\n /** @internal */\r\n public static override get className() { return \"PhysicalModel\"; }\r\n}\r\n\r\n/** Represents the front-end state of a [SpatialLocationModel]($backend).\r\n * @public\r\n * @extensions\r\n */\r\nexport class SpatialLocationModelState extends SpatialModelState {\r\n /** @internal */\r\n public static override get className() { return \"SpatialLocationModel\"; }\r\n}\r\n\r\n/** Represents the front-end state of a [DrawingModel]($backend).\r\n * @public\r\n * @extensions\r\n */\r\nexport class DrawingModelState extends GeometricModel2dState {\r\n /** @internal */\r\n public static override get className() { return \"DrawingModel\"; }\r\n}\r\n\r\n/** Represents the front-end state of a [SectionDrawingModel]($backend).\r\n * @public\r\n * @extensions\r\n */\r\nexport class SectionDrawingModelState extends DrawingModelState {\r\n /** @internal */\r\n public static override get className() { return \"SectionDrawingModel\"; }\r\n}\r\n"]}
@@ -7,6 +7,7 @@ import { DisplayMessageType, MessagePresenter, MessageSeverity, RelativePosition
7
7
  import { ToolAssistanceInstructions } from "./tools/ToolAssistance";
8
8
  /** Describes the type and behavior of a [[NotifyMessageDetails]].
9
9
  * @public
10
+ * @extensions
10
11
  */
11
12
  export declare enum OutputMessageType {
12
13
  /** Temporary message box displays at the top or bottom of the screen then disappears automatically. */
@@ -22,6 +23,7 @@ export declare enum OutputMessageType {
22
23
  }
23
24
  /** Classifies a [[NotifyMessageDetails]] by its level of importance.
24
25
  * @public
26
+ * @extensions
25
27
  */
26
28
  export declare enum OutputMessagePriority {
27
29
  None = 0,
@@ -34,6 +36,7 @@ export declare enum OutputMessagePriority {
34
36
  }
35
37
  /** Describes the alert behavior of a [[NotifyMessageDetails]].
36
38
  * @public
39
+ * @extensions
37
40
  */
38
41
  export declare enum OutputMessageAlert {
39
42
  None = 0,
@@ -42,6 +45,7 @@ export declare enum OutputMessageAlert {
42
45
  }
43
46
  /** Reason for ending the activity message via endActivityMessage
44
47
  * @public
48
+ * @extensions
45
49
  */
46
50
  export declare enum ActivityMessageEndReason {
47
51
  Completed = 0,
@@ -49,6 +53,7 @@ export declare enum ActivityMessageEndReason {
49
53
  }
50
54
  /** Describes the set of buttons displayed in a message box opened using [[NotificationManager.openMessageBox]].
51
55
  * @public
56
+ * @extensions
52
57
  */
53
58
  export declare enum MessageBoxType {
54
59
  OkCancel = 0,
@@ -60,6 +65,7 @@ export declare enum MessageBoxType {
60
65
  }
61
66
  /** Describes the icon displayed in a messagebox opened using [[NotificationManager.openMessageBox]].
62
67
  * @public
68
+ * @extensions
63
69
  */
64
70
  export declare enum MessageBoxIconType {
65
71
  NoSymbol = 0,
@@ -71,6 +77,7 @@ export declare enum MessageBoxIconType {
71
77
  }
72
78
  /** Describes the possible return values produced when the user clicks a button in a messagebox opened using [[NotificationManager.openMessageBox]].
73
79
  * @public
80
+ * @extensions
74
81
  */
75
82
  export declare enum MessageBoxValue {
76
83
  Apply = 1,
@@ -88,6 +95,7 @@ export declare enum MessageBoxValue {
88
95
  }
89
96
  /** Describes the behavior of a tooltip created using [[NotificationManager.openToolTip]].
90
97
  * @public
98
+ * @extensions
91
99
  */
92
100
  export interface ToolTipOptions {
93
101
  duration?: BeDuration;
@@ -95,6 +103,7 @@ export interface ToolTipOptions {
95
103
  }
96
104
  /** Describes a message to be displayed to the user.
97
105
  * @public
106
+ * @extensions
98
107
  */
99
108
  export declare class NotifyMessageDetails {
100
109
  priority: OutputMessagePriority;
@@ -128,6 +137,7 @@ export declare class NotifyMessageDetails {
128
137
  }
129
138
  /** Specifies the details of an activity message to be displayed to the user.
130
139
  * @public
140
+ * @extensions
131
141
  */
132
142
  export declare class ActivityMessageDetails {
133
143
  showProgressBar: boolean;
@@ -151,6 +161,7 @@ export declare class ActivityMessageDetails {
151
161
  * Implementations of the NotificationManager may present the information in different ways. For example, in
152
162
  * non-interactive sessions, these messages may be saved to a log file or simply discarded.
153
163
  * @public
164
+ * @extensions
154
165
  */
155
166
  export declare class NotificationManager implements MessagePresenter {
156
167
  readonly toolTipLocation: Point2d;
@@ -1 +1 @@
1
- {"version":3,"file":"NotificationManager.d.ts","sourceRoot":"","sources":["../../src/NotificationManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NotificationManager.d.ts","sourceRoot":"","sources":["../../src/NotificationManager.ts"],"names":[],"mappings":"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"}