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

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
@@ -9,6 +9,7 @@ import { RenderMemory } from "./RenderMemory";
9
9
  * - [[Decorations]] created on the front-end to be rendered along with the scene.
10
10
  * The latter are produced using a [[GraphicBuilder]].
11
11
  * @public
12
+ * @extensions
12
13
  */
13
14
  export declare abstract class RenderGraphic implements IDisposable {
14
15
  abstract dispose(): void;
@@ -20,6 +21,7 @@ export declare abstract class RenderGraphic implements IDisposable {
20
21
  * will never be automatically disposed of. Instead, you assume responsibility for disposing of the owned graphic by calling [[disposeGraphic]] when the owned graphic is no longer in use. Failure
21
22
  * to do so will result in leaks of graphics memory or other webgl resources.
22
23
  * @public
24
+ * @extensions
23
25
  */
24
26
  export declare abstract class RenderGraphicOwner extends RenderGraphic {
25
27
  /** The owned graphic. */
@@ -33,6 +35,7 @@ export declare abstract class RenderGraphicOwner extends RenderGraphic {
33
35
  }
34
36
  /** An array of [[RenderGraphic]]s.
35
37
  * @public
38
+ * @extensions
36
39
  */
37
40
  export declare type GraphicList = RenderGraphic[];
38
41
  //# sourceMappingURL=RenderGraphic.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"RenderGraphic.d.ts","sourceRoot":"","sources":["../../../src/render/RenderGraphic.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C;;;;;;GAMG;AACH,8BAAsB,aAAc,YAAW,WAAW;aACxC,OAAO,IAAI,IAAI;IAE/B,gBAAgB;aACA,iBAAiB,CAAC,KAAK,EAAE,YAAY,CAAC,UAAU,GAAG,IAAI;CACxE;AAED;;;;;GAKG;AACH,8BAAsB,kBAAmB,SAAQ,aAAa;IAC5D,yBAAyB;IACzB,aAAoB,OAAO,IAAI,aAAa,CAAC;IAC7C,6EAA6E;IACtE,OAAO,IAAI,IAAI;IACtB,qCAAqC;IAC9B,cAAc,IAAI,IAAI;IAC7B,gBAAgB;IACT,iBAAiB,CAAC,KAAK,EAAE,YAAY,CAAC,UAAU,GAAG,IAAI;CAC/D;AAED;;GAEG;AACH,oBAAY,WAAW,GAAG,aAAa,EAAE,CAAC"}
1
+ {"version":3,"file":"RenderGraphic.d.ts","sourceRoot":"","sources":["../../../src/render/RenderGraphic.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C;;;;;;;GAOG;AACH,8BAAsB,aAAc,YAAW,WAAW;aACxC,OAAO,IAAI,IAAI;IAE/B,gBAAgB;aACA,iBAAiB,CAAC,KAAK,EAAE,YAAY,CAAC,UAAU,GAAG,IAAI;CACxE;AAED;;;;;;GAMG;AACH,8BAAsB,kBAAmB,SAAQ,aAAa;IAC5D,yBAAyB;IACzB,aAAoB,OAAO,IAAI,aAAa,CAAC;IAC7C,6EAA6E;IACtE,OAAO,IAAI,IAAI;IACtB,qCAAqC;IAC9B,cAAc,IAAI,IAAI;IAC7B,gBAAgB;IACT,iBAAiB,CAAC,KAAK,EAAE,YAAY,CAAC,UAAU,GAAG,IAAI;CAC/D;AAED;;;GAGG;AACH,oBAAY,WAAW,GAAG,aAAa,EAAE,CAAC"}
@@ -14,6 +14,7 @@ exports.RenderGraphicOwner = exports.RenderGraphic = void 0;
14
14
  * - [[Decorations]] created on the front-end to be rendered along with the scene.
15
15
  * The latter are produced using a [[GraphicBuilder]].
16
16
  * @public
17
+ * @extensions
17
18
  */
18
19
  class RenderGraphic {
19
20
  }
@@ -23,6 +24,7 @@ exports.RenderGraphic = RenderGraphic;
23
24
  * will never be automatically disposed of. Instead, you assume responsibility for disposing of the owned graphic by calling [[disposeGraphic]] when the owned graphic is no longer in use. Failure
24
25
  * to do so will result in leaks of graphics memory or other webgl resources.
25
26
  * @public
27
+ * @extensions
26
28
  */
27
29
  class RenderGraphicOwner extends RenderGraphic {
28
30
  /** Does nothing. To dispose of the owned graphic, use [[disposeGraphic]]. */
@@ -1 +1 @@
1
- {"version":3,"file":"RenderGraphic.js","sourceRoot":"","sources":["../../../src/render/RenderGraphic.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAKH;;;;;;GAMG;AACH,MAAsB,aAAa;CAKlC;AALD,sCAKC;AAED;;;;;GAKG;AACH,MAAsB,kBAAmB,SAAQ,aAAa;IAG5D,6EAA6E;IACtE,OAAO,KAAW,CAAC;IAC1B,qCAAqC;IAC9B,cAAc,KAAW,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IACzD,gBAAgB;IACT,iBAAiB,CAAC,KAA8B,IAAU,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;CAC1G;AATD,gDASC","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 Rendering\r\n */\r\n\r\nimport { IDisposable } from \"@itwin/core-bentley\";\r\nimport { RenderMemory } from \"./RenderMemory\";\r\n\r\n/** Abstract representation of an object which can be rendered by a [[RenderSystem]].\r\n * Two broad classes of graphics exist:\r\n * - \"Scene\" graphics generated on the back-end to represent the contents of the models displayed in a [[Viewport]]; and\r\n * - [[Decorations]] created on the front-end to be rendered along with the scene.\r\n * The latter are produced using a [[GraphicBuilder]].\r\n * @public\r\n */\r\nexport abstract class RenderGraphic implements IDisposable /* , RenderMemory.Consumer */ {\r\n public abstract dispose(): void;\r\n\r\n /** @internal */\r\n public abstract collectStatistics(stats: RenderMemory.Statistics): void;\r\n}\r\n\r\n/** A graphic that owns another graphic. By default, every time a [[Viewport]]'s decorations or dynamics graphics change, the previous graphics are disposed of.\r\n * Use a GraphicOwner to prevent disposal of a graphic that you want to reuse. The graphic owner can be added to decorations and list of dynamics just like any other graphic, but the graphic it owns\r\n * will never be automatically disposed of. Instead, you assume responsibility for disposing of the owned graphic by calling [[disposeGraphic]] when the owned graphic is no longer in use. Failure\r\n * to do so will result in leaks of graphics memory or other webgl resources.\r\n * @public\r\n */\r\nexport abstract class RenderGraphicOwner extends RenderGraphic {\r\n /** The owned graphic. */\r\n public abstract get graphic(): RenderGraphic;\r\n /** Does nothing. To dispose of the owned graphic, use [[disposeGraphic]]. */\r\n public dispose(): void { }\r\n /** Disposes of the owned graphic. */\r\n public disposeGraphic(): void { this.graphic.dispose(); }\r\n /** @internal */\r\n public collectStatistics(stats: RenderMemory.Statistics): void { this.graphic.collectStatistics(stats); }\r\n}\r\n\r\n/** An array of [[RenderGraphic]]s.\r\n * @public\r\n */\r\nexport type GraphicList = RenderGraphic[];\r\n"]}
1
+ {"version":3,"file":"RenderGraphic.js","sourceRoot":"","sources":["../../../src/render/RenderGraphic.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAKH;;;;;;;GAOG;AACH,MAAsB,aAAa;CAKlC;AALD,sCAKC;AAED;;;;;;GAMG;AACH,MAAsB,kBAAmB,SAAQ,aAAa;IAG5D,6EAA6E;IACtE,OAAO,KAAW,CAAC;IAC1B,qCAAqC;IAC9B,cAAc,KAAW,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IACzD,gBAAgB;IACT,iBAAiB,CAAC,KAA8B,IAAU,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;CAC1G;AATD,gDASC","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 Rendering\r\n */\r\n\r\nimport { IDisposable } from \"@itwin/core-bentley\";\r\nimport { RenderMemory } from \"./RenderMemory\";\r\n\r\n/** Abstract representation of an object which can be rendered by a [[RenderSystem]].\r\n * Two broad classes of graphics exist:\r\n * - \"Scene\" graphics generated on the back-end to represent the contents of the models displayed in a [[Viewport]]; and\r\n * - [[Decorations]] created on the front-end to be rendered along with the scene.\r\n * The latter are produced using a [[GraphicBuilder]].\r\n * @public\r\n * @extensions\r\n */\r\nexport abstract class RenderGraphic implements IDisposable /* , RenderMemory.Consumer */ {\r\n public abstract dispose(): void;\r\n\r\n /** @internal */\r\n public abstract collectStatistics(stats: RenderMemory.Statistics): void;\r\n}\r\n\r\n/** A graphic that owns another graphic. By default, every time a [[Viewport]]'s decorations or dynamics graphics change, the previous graphics are disposed of.\r\n * Use a GraphicOwner to prevent disposal of a graphic that you want to reuse. The graphic owner can be added to decorations and list of dynamics just like any other graphic, but the graphic it owns\r\n * will never be automatically disposed of. Instead, you assume responsibility for disposing of the owned graphic by calling [[disposeGraphic]] when the owned graphic is no longer in use. Failure\r\n * to do so will result in leaks of graphics memory or other webgl resources.\r\n * @public\r\n * @extensions\r\n */\r\nexport abstract class RenderGraphicOwner extends RenderGraphic {\r\n /** The owned graphic. */\r\n public abstract get graphic(): RenderGraphic;\r\n /** Does nothing. To dispose of the owned graphic, use [[disposeGraphic]]. */\r\n public dispose(): void { }\r\n /** Disposes of the owned graphic. */\r\n public disposeGraphic(): void { this.graphic.dispose(); }\r\n /** @internal */\r\n public collectStatistics(stats: RenderMemory.Statistics): void { this.graphic.collectStatistics(stats); }\r\n}\r\n\r\n/** An array of [[RenderGraphic]]s.\r\n * @public\r\n * @extensions\r\n */\r\nexport type GraphicList = RenderGraphic[];\r\n"]}
@@ -195,6 +195,7 @@ export declare type RenderSkyBoxParams = RenderSkyGradientParams | RenderSkySphe
195
195
  * @see [Display system overview]($docs/learning/display/index.md)
196
196
  * @see [[IModelApp.renderSystem]].
197
197
  * @public
198
+ * @extensions
198
199
  */
199
200
  export declare abstract class RenderSystem implements IDisposable {
200
201
  /** Options used to initialize the RenderSystem. These are primarily used for feature-gating.
@@ -299,11 +300,11 @@ export declare abstract class RenderSystem implements IDisposable {
299
300
  /** @internal */
300
301
  createPointString(params: PointStringParams, instances?: InstancedGraphicParams | RenderAreaPattern | Point3d): RenderGraphic | undefined;
301
302
  /** @internal */
302
- createRealityMeshFromTerrain(_terrainMesh: TerrainMeshPrimitive, _transform?: Transform): RenderTerrainGeometry | undefined;
303
+ createRealityMeshFromTerrain(_terrainMesh: TerrainMeshPrimitive, _transform?: Transform, _disableTextureDisposal?: boolean): RenderTerrainGeometry | undefined;
303
304
  /** @internal */
304
- createRealityMeshGraphic(_params: RealityMeshGraphicParams): RenderGraphic | undefined;
305
+ createRealityMeshGraphic(_params: RealityMeshGraphicParams, _disableTextureDisposal?: boolean): RenderGraphic | undefined;
305
306
  /** @internal */
306
- createRealityMesh(_realityMesh: RealityMeshPrimitive): RenderGraphic | undefined;
307
+ createRealityMesh(_realityMesh: RealityMeshPrimitive, _disableTextureDisposal?: boolean): RenderGraphic | undefined;
307
308
  /** @internal */
308
309
  get maxRealityImageryLayers(): number;
309
310
  /** @internal */
@@ -1 +1 @@
1
- {"version":3,"file":"RenderSystem.d.ts","sourceRoot":"","sources":["../../../src/render/RenderSystem.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RenderSystem.d.ts","sourceRoot":"","sources":["../../../src/render/RenderSystem.ts"],"names":[],"mappings":"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"}
@@ -99,6 +99,7 @@ exports.PlanarGridTransparency = PlanarGridTransparency;
99
99
  * @see [Display system overview]($docs/learning/display/index.md)
100
100
  * @see [[IModelApp.renderSystem]].
101
101
  * @public
102
+ * @extensions
102
103
  */
103
104
  class RenderSystem {
104
105
  /** Initialize the RenderSystem with the specified options.
@@ -212,11 +213,11 @@ class RenderSystem {
212
213
  return this.createGraphicFromGeometry((origin) => this.createPointStringGeometry(params, origin), instances);
213
214
  }
214
215
  /** @internal */
215
- createRealityMeshFromTerrain(_terrainMesh, _transform) { return undefined; }
216
+ createRealityMeshFromTerrain(_terrainMesh, _transform, _disableTextureDisposal = false) { return undefined; }
216
217
  /** @internal */
217
- createRealityMeshGraphic(_params) { return undefined; }
218
+ createRealityMeshGraphic(_params, _disableTextureDisposal = false) { return undefined; }
218
219
  /** @internal */
219
- createRealityMesh(_realityMesh) { return undefined; }
220
+ createRealityMesh(_realityMesh, _disableTextureDisposal = false) { return undefined; }
220
221
  /** @internal */
221
222
  get maxRealityImageryLayers() { return 0; }
222
223
  /** @internal */
@@ -1 +1 @@
1
- {"version":3,"file":"RenderSystem.js","sourceRoot":"","sources":["../../../src/render/RenderSystem.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 Rendering\r\n */\r\n\r\nimport { base64StringToUint8Array, Id64String, IDisposable } from \"@itwin/core-bentley\";\r\nimport {\r\n ColorDef, ColorIndex, ElementAlignedBox3d, FeatureIndex, FeatureIndexType, FillFlags, Frustum, Gradient, ImageBuffer, ImageBufferFormat, ImageSource, ImageSourceFormat,\r\n isValidImageSourceFormat, PackedFeatureTable, QParams3d, QPoint3dList, RenderMaterial, RenderTexture, SkyGradient, TextureProps, TextureTransparency,\r\n} from \"@itwin/core-common\";\r\nimport { ClipVector, Matrix3d, Point2d, Point3d, Range2d, Range3d, Transform, Vector2d, XAndY } from \"@itwin/core-geometry\";\r\nimport { WebGLExtensionName } from \"@itwin/webgl-compatibility\";\r\nimport { imageElementFromImageSource } from \"../ImageUtil\";\r\nimport { IModelApp } from \"../IModelApp\";\r\nimport { IModelConnection } from \"../IModelConnection\";\r\nimport { MapTileTreeReference, TileTreeReference } from \"../tile/internal\";\r\nimport { ToolAdmin } from \"../tools/ToolAdmin\";\r\nimport { SceneContext } from \"../ViewContext\";\r\nimport { Viewport } from \"../Viewport\";\r\nimport { ViewRect } from \"../ViewRect\";\r\nimport { GraphicBranch, GraphicBranchOptions } from \"./GraphicBranch\";\r\nimport { BatchOptions, CustomGraphicBuilderOptions, GraphicBuilder, GraphicType, ViewportGraphicBuilderOptions } from \"./GraphicBuilder\";\r\nimport { InstancedGraphicParams, PatternGraphicParams } from \"./InstancedGraphicParams\";\r\nimport { MeshArgs, PolylineArgs } from \"./primitives/mesh/MeshPrimitives\";\r\nimport { RealityMeshGraphicParams, RealityMeshPrimitive } from \"./primitives/mesh/RealityMeshPrimitive\";\r\nimport { TerrainMeshPrimitive } from \"./primitives/mesh/TerrainMeshPrimitive\";\r\nimport { PointCloudArgs } from \"./primitives/PointCloudPrimitive\";\r\nimport { PointStringParams } from \"./primitives/PointStringParams\";\r\nimport { PolylineParams } from \"./primitives/PolylineParams\";\r\nimport { MeshParams } from \"./primitives/VertexTable\";\r\nimport { RenderClipVolume } from \"./RenderClipVolume\";\r\nimport { RenderGraphic, RenderGraphicOwner } from \"./RenderGraphic\";\r\nimport { CreateRenderMaterialArgs } from \"./RenderMaterial\";\r\nimport { RenderMemory } from \"./RenderMemory\";\r\nimport { RenderPlanarClassifier } from \"./RenderPlanarClassifier\";\r\nimport { RenderTarget } from \"./RenderTarget\";\r\nimport { CreateTextureArgs, CreateTextureFromSourceArgs, TextureCacheKey } from \"./RenderTexture\";\r\nimport { ScreenSpaceEffectBuilder, ScreenSpaceEffectBuilderParams } from \"./ScreenSpaceEffectBuilder\";\r\n\r\n/* eslint-disable no-restricted-syntax */\r\n// cSpell:ignore deserializing subcat uninstanced wiremesh qorigin trimesh\r\n\r\n/** An opaque representation of a texture draped on geometry within a [[Viewport]].\r\n * @internal\r\n */\r\nexport abstract class RenderTextureDrape implements IDisposable {\r\n public abstract dispose(): void;\r\n\r\n /** @internal */\r\n public abstract collectStatistics(stats: RenderMemory.Statistics): void;\r\n public abstract collectGraphics(context: SceneContext): void;\r\n}\r\n\r\n/** @internal */\r\nexport type TextureDrapeMap = Map<Id64String, RenderTextureDrape>;\r\n\r\n/** @internal */\r\nexport type MapLayerClassifiers = Map<number, RenderPlanarClassifier>;\r\n\r\n/** Describes a texture loaded from an HTMLImageElement\r\n * ###TODO Replace with TextureImage from RenderTexture.ts after we start returning transparency info from the backend.\r\n * @internal\r\n */\r\nexport interface OldTextureImage {\r\n /** The HTMLImageElement containing the texture's image data */\r\n image: HTMLImageElement;\r\n /** The format of the texture's image data */\r\n format: ImageSourceFormat;\r\n}\r\n\r\n/** @internal */\r\nexport enum RenderDiagnostics {\r\n /** No diagnostics enabled. */\r\n None = 0,\r\n /** Debugging output to browser console enabled. */\r\n DebugOutput = 1 << 1,\r\n /** Potentially expensive checks of WebGL state enabled. */\r\n WebGL = 1 << 2,\r\n /** All diagnostics enabled. */\r\n All = DebugOutput | WebGL,\r\n}\r\n\r\n/** @internal */\r\nexport interface GLTimerResult {\r\n /** Label from GLTimer.beginOperation */\r\n label: string;\r\n /** Time elapsed in nanoseconds, inclusive of child result times.\r\n * @note no-op queries seem to have 32ns of noise.\r\n */\r\n nanoseconds: number;\r\n /** Child results if GLTimer.beginOperation calls were nested */\r\n children?: GLTimerResult[];\r\n}\r\n\r\n/** @internal */\r\nexport type GLTimerResultCallback = (result: GLTimerResult) => void;\r\n\r\n/** Default implementation of RenderGraphicOwner. */\r\nclass GraphicOwner extends RenderGraphicOwner {\r\n public constructor(private readonly _graphic: RenderGraphic) { super(); }\r\n public get graphic(): RenderGraphic { return this._graphic; }\r\n}\r\n\r\n/** An interface optionally exposed by a RenderSystem that allows control of various debugging features.\r\n * @beta\r\n */\r\nexport interface RenderSystemDebugControl {\r\n /** Destroy this system's webgl context. Returns false if this behavior is not supported. */\r\n loseContext(): boolean;\r\n\r\n /** Overrides [[RenderSystem.dpiAwareLOD]].\r\n * @internal\r\n */\r\n dpiAwareLOD: boolean;\r\n\r\n /** Record GPU profiling information for each frame drawn. Check isGLTimerSupported before using.\r\n * @internal\r\n */\r\n resultsCallback?: GLTimerResultCallback;\r\n\r\n /** Returns true if the browser supports GPU profiling queries.\r\n * @internal\r\n */\r\n readonly isGLTimerSupported: boolean;\r\n\r\n /** Attempts to compile all shader programs and returns true if all were successful. May throw exceptions on errors.\r\n * This is useful for debugging shader compilation on specific platforms - especially those which use neither ANGLE nor SwiftShader (e.g., linux, mac, iOS)\r\n * because our unit tests which also compile all shaders run in software mode and therefore may not catch some \"errors\" (especially uniforms that have no effect on\r\n * program output).\r\n * @internal\r\n */\r\n compileAllShaders(): boolean;\r\n\r\n /** Obtain accumulated debug info collected during shader compilation. See `RenderSystem.Options.debugShaders`.\r\n * @internal\r\n */\r\n debugShaderFiles?: DebugShaderFile[];\r\n}\r\n\r\n/** @internal */\r\nexport abstract class RenderTerrainGeometry implements IDisposable, RenderMemory.Consumer {\r\n public abstract dispose(): void;\r\n public abstract get transform(): Transform | undefined;\r\n public abstract collectStatistics(stats: RenderMemory.Statistics): void;\r\n}\r\n\r\n/** @internal */\r\nexport class TerrainTexture {\r\n public constructor(\r\n public readonly texture: RenderTexture,\r\n public featureId: number,\r\n public readonly scale: Vector2d,\r\n public readonly translate: Vector2d,\r\n public readonly targetRectangle: Range2d,\r\n public readonly layerIndex: number,\r\n public transparency: number,\r\n public readonly clipRectangle?: Range2d\r\n ) { }\r\n\r\n public cloneWithClip(clipRectangle: Range2d) {\r\n return new TerrainTexture (this.texture, this.featureId, this.scale, this.translate, this.targetRectangle, this.layerIndex, this.transparency, clipRectangle);\r\n }\r\n}\r\n/** @internal */\r\nexport class DebugShaderFile {\r\n public constructor(\r\n public readonly filename: string,\r\n public readonly src: string,\r\n public isVS: boolean,\r\n public isGL: boolean,\r\n public isUsed: boolean\r\n ) { }\r\n}\r\n/** Transparency settings for planar grid display.\r\n * @alpha\r\n */\r\nexport class PlanarGridTransparency {\r\n /** Transparency for the grid plane. This should generally be fairly high to avoid obscuring other geometry */\r\n public readonly planeTransparency = .9;\r\n /** Transparency of the grid lines. This should be higher than the plane, but less than reference line transparency */\r\n public readonly lineTransparency = .75;\r\n /** Transparency of the reference lines. This should be less than plane or line transparency so that reference lines are more prominent */\r\n public readonly refTransparency = .5;\r\n}\r\n\r\n/** Settings for planar grid display.\r\n * @alpha\r\n */\r\nexport interface PlanarGridProps {\r\n /** The grid origin */\r\n origin: Point3d;\r\n /** The grid orientation. The grid X and Y direction are the first and second matrix rows */\r\n rMatrix: Matrix3d;\r\n /** The spacing between grid liens in the X and Y direction */\r\n spacing: XAndY;\r\n /** Grid lines per reference. If zero no reference lines are displayed. */\r\n gridsPerRef: number;\r\n /** Grid color. [[Use Viewport.getContrastToBackgroundColor]] to get best constrast color based on current background. */\r\n color: ColorDef;\r\n /** Transparency settings. If omitted then the [[PlanarGridTransparency]] defaults are used. */\r\n transparency?: PlanarGridTransparency;\r\n}\r\n\r\n/** An opaque representation of geometry allocated by a [[RenderSystem]] to be supplied to [[RenderSystem.createRenderGraphic]].\r\n * @internal\r\n */\r\nexport type RenderGeometry = IDisposable & RenderMemory.Consumer;\r\n\r\n/** An opaque representation of instructions for repeatedly drawing a [[RenderGeometry]] to pattern a planar region, to be supplied to [[RenderSystem.createRenderGraphic]].\r\n * @internal\r\n */\r\nexport type RenderAreaPattern = IDisposable & RenderMemory.Consumer;\r\n\r\n/** @internal */\r\nexport interface RenderSkyGradientParams {\r\n type: \"gradient\";\r\n gradient: SkyGradient;\r\n zOffset: number;\r\n}\r\n\r\n/** @internal */\r\nexport interface RenderSkySphereParams {\r\n type: \"sphere\";\r\n texture: RenderTexture;\r\n rotation: number;\r\n zOffset: number;\r\n}\r\n\r\n/** @internal */\r\nexport interface RenderSkyCubeParams {\r\n type: \"cube\";\r\n texture: RenderTexture;\r\n}\r\n\r\n/** @internal */\r\nexport type RenderSkyBoxParams = RenderSkyGradientParams | RenderSkySphereParams | RenderSkyCubeParams;\r\n\r\n/** A RenderSystem provides access to resources used by the internal WebGL-based rendering system.\r\n * An application rarely interacts directly with the RenderSystem; instead it interacts with types like [[Viewport]] which\r\n * coordinate with the RenderSystem on the application's behalf.\r\n * @see [Display system overview]($docs/learning/display/index.md)\r\n * @see [[IModelApp.renderSystem]].\r\n * @public\r\n */\r\nexport abstract class RenderSystem implements IDisposable {\r\n /** Options used to initialize the RenderSystem. These are primarily used for feature-gating.\r\n * This object is frozen and cannot be modified after the RenderSystem is created.\r\n * @internal\r\n */\r\n public readonly options: RenderSystem.Options;\r\n\r\n /** Antialias samples to use on all subsequently created render targets.\r\n * Default value: undefined (no antialiasing)\r\n * @beta\r\n */\r\n public antialiasSamples?: number;\r\n\r\n /** Initialize the RenderSystem with the specified options.\r\n * @note The RenderSystem takes ownership of the supplied Options and freezes it.\r\n * @internal\r\n */\r\n protected constructor(options?: RenderSystem.Options) {\r\n this.options = undefined !== options ? options : {};\r\n Object.freeze(this.options);\r\n if (undefined !== this.options.disabledExtensions)\r\n Object.freeze(this.options.disabledExtensions);\r\n }\r\n\r\n /** @internal */\r\n public abstract get isValid(): boolean;\r\n\r\n /** @internal */\r\n public abstract dispose(): void;\r\n\r\n /** @internal */\r\n public get maxTextureSize(): number { return 0; }\r\n\r\n /** @internal */\r\n public get supportsInstancing(): boolean { return true; }\r\n\r\n /** @internal */\r\n public get supportsIndexedEdges(): boolean { return true; }\r\n\r\n /** @internal */\r\n public get supportsNonuniformScaledInstancing(): boolean { return true; }\r\n\r\n /** @internal */\r\n public get dpiAwareLOD(): boolean { return true === this.options.dpiAwareLOD; }\r\n\r\n /** @internal */\r\n public get isMobile(): boolean { return false; }\r\n\r\n /** @internal */\r\n public abstract createTarget(canvas: HTMLCanvasElement): RenderTarget;\r\n /** @internal */\r\n public abstract createOffscreenTarget(rect: ViewRect): RenderTarget;\r\n\r\n /** Perform a small unit of idle work and return true if more idle work remains to be done. This function is invoked on each tick of the javascript event loop as long as no viewports are registered with the ViewManager, until it returns false to indicate all idle work has been completed.\r\n * @internal\r\n */\r\n public abstract doIdleWork(): boolean;\r\n\r\n /** Find a previously-created [RenderMaterial]($common) by its ID.\r\n * @param _key The unique ID of the material within the context of the IModelConnection. Typically an element ID.\r\n * @param _imodel The IModelConnection with which the material is associated.\r\n * @returns A previously-created material matching the specified ID, or undefined if no such material exists.\r\n */\r\n public findMaterial(_key: string, _imodel: IModelConnection): RenderMaterial | undefined { return undefined; }\r\n\r\n /** Create a [RenderMaterial]($common) from parameters\r\n * If the parameters include a non-empty key, and no previously-created material already exists with that key, the newly-created material will be cached on the IModelConnection such\r\n * that it can later be retrieved by the same key using [[RenderSystem.findMaterial]].\r\n * @param _params A description of the material's properties.\r\n * @param _imodel The IModelConnection associated with the material.\r\n * @returns the newly-created material, or undefined if the material could not be created or if a material with the same key as that specified in the params already exists.\r\n * @deprecated Use [[createRenderMaterial]].\r\n */\r\n // eslint-disable-next-line deprecation/deprecation\r\n public createMaterial(_params: RenderMaterial.Params, _imodel: IModelConnection): RenderMaterial | undefined { return undefined; }\r\n\r\n /** Create a [RenderMaterial]($common).\r\n * @see [[CreateRenderMaterialArgs]] for a description of the material parameters.\r\n */\r\n public createRenderMaterial(_args: CreateRenderMaterialArgs): RenderMaterial | undefined {\r\n return undefined;\r\n }\r\n\r\n /** Creates a [[GraphicBuilder]] for creating a [[RenderGraphic]].\r\n * @param placement The local-to-world transform in which the builder's geometry is to be defined.\r\n * @param type The type of builder to create.\r\n * @param viewport The viewport in which the resultant [[RenderGraphic]] will be rendered.\r\n * @param pickableId If the decoration is to be pickable, a unique identifier to associate with the resultant [[RenderGraphic]].\r\n * @returns A builder for creating a [[RenderGraphic]] of the specified type appropriate for rendering within the specified viewport.\r\n * @see [[IModelConnection.transientIds]] for obtaining an ID for a pickable decoration.\r\n * @see [[RenderContext.createGraphicBuilder]].\r\n * @see [[Decorator]]\r\n */\r\n public createGraphicBuilder(placement: Transform, type: GraphicType, viewport: Viewport, pickableId?: Id64String): GraphicBuilder {\r\n const pickable = undefined !== pickableId ? { id: pickableId } : undefined;\r\n return this.createGraphic({ type, viewport, placement, pickable });\r\n }\r\n\r\n /** Obtain a [[GraphicBuilder]] from which to produce a [[RenderGraphic]].\r\n * @param options Options describing how to create the builder.\r\n * @returns A builder that produces a [[RenderGraphic]].\r\n */\r\n public abstract createGraphic(options: CustomGraphicBuilderOptions | ViewportGraphicBuilderOptions): GraphicBuilder;\r\n\r\n /** Obtain an object capable of producing a custom screen-space effect to be applied to the image rendered by a [[Viewport]].\r\n * @returns undefined if screen-space effects are not supported by this RenderSystem.\r\n */\r\n public createScreenSpaceEffectBuilder(_params: ScreenSpaceEffectBuilderParams): ScreenSpaceEffectBuilder | undefined {\r\n return undefined;\r\n }\r\n\r\n /** @internal */\r\n public createTriMesh(args: MeshArgs, instances?: InstancedGraphicParams | RenderAreaPattern | Point3d): RenderGraphic | undefined {\r\n const params = MeshParams.create(args);\r\n return this.createMesh(params, instances);\r\n }\r\n\r\n /** @internal */\r\n public createIndexedPolylines(args: PolylineArgs, instances?: InstancedGraphicParams | RenderAreaPattern | Point3d): RenderGraphic | undefined {\r\n if (args.flags.isDisjoint) {\r\n const pointStringParams = PointStringParams.create(args);\r\n return undefined !== pointStringParams ? this.createPointString(pointStringParams, instances) : undefined;\r\n } else {\r\n const polylineParams = PolylineParams.create(args);\r\n return undefined !== polylineParams ? this.createPolyline(polylineParams, instances) : undefined;\r\n }\r\n }\r\n\r\n /** @internal */\r\n public createMeshGeometry(_params: MeshParams, _viewIndependentOrigin?: Point3d): RenderGeometry | undefined { return undefined; }\r\n /** @internal */\r\n public createPolylineGeometry(_params: PolylineParams, _viewIndependentOrigin?: Point3d): RenderGeometry | undefined { return undefined; }\r\n /** @internal */\r\n public createPointStringGeometry(_params: PointStringParams, _viewIndependentOrigin?: Point3d): RenderGeometry | undefined { return undefined; }\r\n\r\n /** @internal */\r\n public createAreaPattern(_params: PatternGraphicParams): RenderAreaPattern | undefined { return undefined; }\r\n\r\n /** Create a RenderGraphic from a RenderGeometry produced by this RenderSystem.\r\n * @internal\r\n */\r\n public abstract createRenderGraphic(_geometry: RenderGeometry, instances?: InstancedGraphicParams | RenderAreaPattern): RenderGraphic | undefined;\r\n\r\n private createGraphicFromGeometry(\r\n createGeometry: (viewIndependentOrigin?: Point3d) => RenderGeometry | undefined,\r\n instancesOrOrigin?: InstancedGraphicParams | RenderAreaPattern | Point3d): RenderGraphic | undefined {\r\n let viOrigin;\r\n let instances;\r\n if (instancesOrOrigin instanceof Point3d)\r\n viOrigin = instancesOrOrigin;\r\n else\r\n instances = instancesOrOrigin;\r\n\r\n const geom = createGeometry(viOrigin);\r\n return geom ? this.createRenderGraphic(geom, instances) : undefined;\r\n }\r\n\r\n /** @internal */\r\n public createMesh(params: MeshParams, instances?: InstancedGraphicParams | RenderAreaPattern | Point3d): RenderGraphic | undefined {\r\n return this.createGraphicFromGeometry((viOrigin) => this.createMeshGeometry(params, viOrigin), instances);\r\n }\r\n\r\n /** @internal */\r\n public createPolyline(params: PolylineParams, instances?: InstancedGraphicParams | RenderAreaPattern | Point3d): RenderGraphic | undefined {\r\n return this.createGraphicFromGeometry((origin) => this.createPolylineGeometry(params, origin), instances);\r\n }\r\n\r\n /** @internal */\r\n public createPointString(params: PointStringParams, instances?: InstancedGraphicParams | RenderAreaPattern | Point3d): RenderGraphic | undefined {\r\n return this.createGraphicFromGeometry((origin) => this.createPointStringGeometry(params, origin), instances);\r\n }\r\n\r\n /** @internal */\r\n public createRealityMeshFromTerrain(_terrainMesh: TerrainMeshPrimitive, _transform?: Transform): RenderTerrainGeometry | undefined { return undefined; }\r\n /** @internal */\r\n public createRealityMeshGraphic(_params: RealityMeshGraphicParams): RenderGraphic | undefined { return undefined; }\r\n /** @internal */\r\n public createRealityMesh(_realityMesh: RealityMeshPrimitive): RenderGraphic | undefined { return undefined; }\r\n /** @internal */\r\n public get maxRealityImageryLayers() { return 0; }\r\n /** @internal */\r\n public createPointCloud(_args: PointCloudArgs, _imodel: IModelConnection): RenderGraphic | undefined { return undefined; }\r\n\r\n /** Create a clip volume to clip geometry.\r\n * @note The clip volume takes ownership of the ClipVector, which must not be subsequently mutated.\r\n * @param _clipVector Defines how the volume clips geometry.\r\n * @returns A clip volume, or undefined if, e.g., the clip vector does not clip anything.\r\n */\r\n public createClipVolume(_clipVector: ClipVector): RenderClipVolume | undefined { return undefined; }\r\n\r\n /** @internal */\r\n public createPlanarGrid(_frustum: Frustum, _grid: PlanarGridProps): RenderGraphic | undefined { return undefined; }\r\n /** @internal */\r\n public createBackgroundMapDrape(_drapedTree: TileTreeReference, _mapTree: MapTileTreeReference): RenderTextureDrape | undefined { return undefined; }\r\n /** @internal */\r\n public createTile(tileTexture: RenderTexture, corners: Point3d[], featureIndex?: number): RenderGraphic | undefined {\r\n // corners\r\n // [0] [1]\r\n // [2] [3]\r\n // Quantize the points according to their range\r\n const points = new QPoint3dList(QParams3d.fromRange(Range3d.create(...corners)));\r\n for (let i = 0; i < 4; i++)\r\n points.add(corners[i]);\r\n\r\n // Now remove the translation from the quantized points and put it into a transform instead.\r\n // This prevents graphical artifacts when quantization origin is large relative to quantization scale.\r\n // ###TODO: Would be better not to create a branch for every tile.\r\n const qorigin = points.params.origin;\r\n const transform = Transform.createTranslationXYZ(qorigin.x, qorigin.y, qorigin.z);\r\n qorigin.setZero();\r\n\r\n const features = new FeatureIndex();\r\n if (undefined !== featureIndex) {\r\n features.featureID = featureIndex;\r\n features.type = FeatureIndexType.Uniform;\r\n }\r\n\r\n const rasterTile: MeshArgs = {\r\n points,\r\n vertIndices: [0, 1, 2, 2, 1, 3],\r\n isPlanar: true,\r\n features,\r\n colors: new ColorIndex(),\r\n fillFlags: FillFlags.None,\r\n textureMapping: {\r\n uvParams: [new Point2d(0, 0), new Point2d(1, 0), new Point2d(0, 1), new Point2d(1, 1)],\r\n texture: tileTexture,\r\n },\r\n };\r\n\r\n const trimesh = this.createTriMesh(rasterTile);\r\n if (undefined === trimesh)\r\n return undefined;\r\n\r\n const branch = new GraphicBranch(true);\r\n branch.add(trimesh);\r\n return this.createBranch(branch, transform);\r\n }\r\n\r\n /** Create a Graphic for a [[SkyBox]] which encompasses the entire scene, rotating with the camera.\r\n * @internal\r\n */\r\n public createSkyBox(_params: RenderSkyBoxParams): RenderGraphic | undefined { return undefined; }\r\n\r\n /** Create a RenderGraphic consisting of a list of Graphics to be drawn together. */\r\n public abstract createGraphicList(primitives: RenderGraphic[]): RenderGraphic;\r\n\r\n /** Create a RenderGraphic consisting of a list of Graphics, with optional transform and symbology overrides applied to the list */\r\n public createBranch(branch: GraphicBranch, transform: Transform): RenderGraphic {\r\n return this.createGraphicBranch(branch, transform);\r\n }\r\n\r\n /** Create a graphic from a [[GraphicBranch]]. */\r\n public abstract createGraphicBranch(branch: GraphicBranch, transform: Transform, options?: GraphicBranchOptions): RenderGraphic;\r\n\r\n /** Create a node in the scene graph corresponding to a transform node in the scene's schedule script.\r\n * Nodes under this branch will only be drawn if they belong to the specified transform node.\r\n * This allows the graphics in a single Tile to be efficiently drawn with different transforms applied by different nodes.\r\n * The node Id is either the Id of a single transform node in the script, of 0xffffffff to indicate all nodes that have no transform applied to them.\r\n * @internal\r\n */\r\n public createAnimationTransformNode(graphic: RenderGraphic, _nodeId: number): RenderGraphic {\r\n return graphic;\r\n }\r\n\r\n /** Create a RenderGraphic consisting of batched [[Feature]]s.\r\n * @internal\r\n */\r\n public abstract createBatch(graphic: RenderGraphic, features: PackedFeatureTable, range: ElementAlignedBox3d, options?: BatchOptions): RenderGraphic;\r\n\r\n /** Return a Promise which when resolved indicates that all pending external textures have finished loading from the backend. */\r\n public async waitForAllExternalTextures(): Promise<void> { return Promise.resolve(); }\r\n\r\n /** Create a graphic that assumes ownership of another graphic.\r\n * @param ownedGraphic The RenderGraphic to be owned.\r\n * @returns The owning graphic that exposes a `disposeGraphic` method for explicitly disposing of the owned graphic.\r\n * @see [[RenderGraphicOwner]] for details regarding ownership semantics.\r\n * @public\r\n */\r\n public createGraphicOwner(ownedGraphic: RenderGraphic): RenderGraphicOwner { return new GraphicOwner(ownedGraphic); }\r\n\r\n /** Create a \"layer\" containing the graphics belonging to it. A layer has a unique identifier and all of its geometry lies in an XY plane.\r\n * Different layers can be drawn coincident with one another; their draw order can be controlled by a per-layer priority value so that one layer draws\r\n * on top of another. Layers cannot nest inside other layers. Multiple GraphicLayers can exist with the same ID; they are treated as belonging to the same layer.\r\n * A GraphicLayer must be contained (perhaps indirectly) inside a GraphicLayerContainer.\r\n * @see [[createGraphicLayerContainer]]\r\n * @internal\r\n */\r\n public createGraphicLayer(graphic: RenderGraphic, _layerId: string): RenderGraphic { return graphic; }\r\n\r\n /** Create a graphic that can contain [[GraphicLayer]]s.\r\n * @internal\r\n */\r\n public createGraphicLayerContainer(graphic: RenderGraphic, _drawAsOverlay: boolean, _transparency: number, _elevation: number): RenderGraphic { return graphic; }\r\n\r\n /** Find a previously-created [[RenderTexture]] by its key.\r\n * @param _key The unique key of the texture within the context of the IModelConnection. Typically an element Id.\r\n * @param _imodel The IModelConnection with which the texture is associated.\r\n * @returns A previously-created texture matching the specified key, or undefined if no such texture exists.\r\n */\r\n public findTexture(_key: TextureCacheKey, _imodel: IModelConnection): RenderTexture | undefined {\r\n return undefined;\r\n }\r\n\r\n /** Find or create a [[RenderTexture]] from a persistent texture element.\r\n * @param id The ID of the texture element.\r\n * @param iModel The IModel containing the texture element.\r\n * @returns A Promise resolving to the created RenderTexture or to undefined if the texture could not be created.\r\n * @note If the texture is successfully created, it will be cached on the IModelConnection such that it can later be retrieved by its ID using [[RenderSystem.findTexture]].\r\n * @see [[RenderSystem.loadTextureImage]].\r\n * @internal\r\n */\r\n public async loadTexture(id: Id64String, iModel: IModelConnection): Promise<RenderTexture | undefined> {\r\n let texture = this.findTexture(id.toString(), iModel);\r\n if (undefined === texture) {\r\n const image = await this.loadTextureImage(id, iModel);\r\n if (undefined !== image) {\r\n // This will return a pre-existing RenderTexture if somebody else loaded it while we were awaiting the image.\r\n texture = this.createTexture({\r\n type: RenderTexture.Type.Normal,\r\n ownership: { key: id, iModel },\r\n image: {\r\n source: image.image,\r\n transparency: ImageSourceFormat.Png === image.format ? TextureTransparency.Mixed : TextureTransparency.Opaque,\r\n },\r\n });\r\n }\r\n }\r\n\r\n return texture;\r\n }\r\n\r\n /**\r\n * Load a texture image given the ID of a texture element.\r\n * @param id The ID of the texture element.\r\n * @param iModel The IModel containing the texture element.\r\n * @returns A Promise resolving to a TextureImage created from the texture element's data, or to undefined if the TextureImage could not be created.\r\n * @see [[RenderSystem.loadTexture]]\r\n * @internal\r\n */\r\n public async loadTextureImage(id: Id64String, iModel: IModelConnection): Promise<OldTextureImage | undefined> {\r\n const elemProps = await iModel.elements.getProps(id);\r\n if (1 !== elemProps.length)\r\n return undefined;\r\n\r\n const textureProps = elemProps[0] as TextureProps;\r\n if (undefined === textureProps.data || \"string\" !== typeof (textureProps.data) || undefined === textureProps.format || \"number\" !== typeof (textureProps.format))\r\n return undefined;\r\n\r\n const format = textureProps.format;\r\n if (!isValidImageSourceFormat(format))\r\n return undefined;\r\n\r\n const imageSource = new ImageSource(base64StringToUint8Array(textureProps.data), format);\r\n const image = await imageElementFromImageSource(imageSource);\r\n return { image, format };\r\n }\r\n\r\n /** Obtain a texture created from a gradient.\r\n * @param _symb The description of the gradient.\r\n * @param _imodel The IModelConnection with which the texture is associated.\r\n * @returns A texture created from the gradient image, or undefined if the texture could not be created.\r\n * @note If a texture matching the specified gradient is already cached on the iModel, it will be returned.\r\n * Otherwise, if an iModel is supplied, the newly-created texture will be cached on the iModel such that subsequent calls with an equivalent gradient and the\r\n * same iModel will return the cached texture instead of creating a new one.\r\n */\r\n public getGradientTexture(_symb: Gradient.Symb, _imodel?: IModelConnection): RenderTexture | undefined {\r\n return undefined;\r\n }\r\n\r\n /** Create a new texture from an [[ImageBuffer]].\r\n * @deprecated Use [[createTexture]].\r\n */\r\n // eslint-disable-next-line deprecation/deprecation\r\n public createTextureFromImageBuffer(image: ImageBuffer, iModel: IModelConnection, params: RenderTexture.Params): RenderTexture | undefined {\r\n const ownership = params.key ? { key: params.key, iModel } : (params.isOwned ? \"external\" : undefined);\r\n return this.createTexture({\r\n type: params.type,\r\n ownership,\r\n image: {\r\n source: image,\r\n transparency: ImageBufferFormat.Rgba === image.format ? TextureTransparency.Mixed : TextureTransparency.Opaque,\r\n },\r\n });\r\n }\r\n\r\n /** Create a new texture from an HTML image. Typically the image was extracted from a binary representation of a jpeg or png via [[imageElementFromImageSource]].\r\n * @deprecated Use [[createTexture]].\r\n */\r\n // eslint-disable-next-line deprecation/deprecation\r\n public createTextureFromImage(image: HTMLImageElement, hasAlpha: boolean, iModel: IModelConnection | undefined, params: RenderTexture.Params): RenderTexture | undefined {\r\n const ownership = params.key && iModel ? { key: params.key, iModel } : (params.isOwned ? \"external\" : undefined);\r\n return this.createTexture({\r\n type: params.type,\r\n ownership,\r\n image: {\r\n source: image,\r\n transparency: hasAlpha ? TextureTransparency.Mixed : TextureTransparency.Opaque,\r\n },\r\n });\r\n }\r\n\r\n /** Create a new texture from an ImageSource.\r\n * @deprecated Use RenderSystem.createTextureFromSource.\r\n */\r\n // eslint-disable-next-line deprecation/deprecation\r\n public async createTextureFromImageSource(source: ImageSource, iModel: IModelConnection | undefined, params: RenderTexture.Params): Promise<RenderTexture | undefined> {\r\n const ownership = iModel && params.key ? { iModel, key: params.key } : (params.isOwned ? \"external\" : undefined);\r\n return this.createTextureFromSource({\r\n type: params.type,\r\n source,\r\n ownership,\r\n transparency: source.format === ImageSourceFormat.Jpeg ? TextureTransparency.Opaque : TextureTransparency.Mixed,\r\n });\r\n }\r\n\r\n /** Create a texture from an ImageSource. */\r\n public async createTextureFromSource(args: CreateTextureFromSourceArgs): Promise<RenderTexture | undefined> {\r\n try {\r\n // JPEGs don't support transparency.\r\n const transparency = ImageSourceFormat.Jpeg === args.source.format ? TextureTransparency.Opaque : (args.transparency ?? TextureTransparency.Mixed);\r\n const image = await imageElementFromImageSource(args.source);\r\n if (!IModelApp.hasRenderSystem)\r\n return undefined;\r\n\r\n return this.createTexture({\r\n type: args.type,\r\n ownership: args.ownership,\r\n image: {\r\n source: image,\r\n transparency,\r\n },\r\n });\r\n } catch {\r\n return undefined;\r\n }\r\n }\r\n\r\n /** Create a new texture by its element ID. This texture will be retrieved asynchronously from the backend. A placeholder image will be associated with the texture until the requested image data loads. */\r\n // eslint-disable-next-line deprecation/deprecation\r\n public createTextureFromElement(_id: Id64String, _imodel: IModelConnection, _params: RenderTexture.Params, _format: ImageSourceFormat): RenderTexture | undefined {\r\n return undefined;\r\n }\r\n\r\n public createTexture(_args: CreateTextureArgs): RenderTexture | undefined {\r\n return undefined;\r\n }\r\n\r\n /** Create a new texture from a cube of HTML images.\r\n * @internal\r\n */\r\n // eslint-disable-next-line deprecation/deprecation\r\n public createTextureFromCubeImages(_posX: HTMLImageElement, _negX: HTMLImageElement, _posY: HTMLImageElement, _negY: HTMLImageElement, _posZ: HTMLImageElement, _negZ: HTMLImageElement, _imodel: IModelConnection, _params: RenderTexture.Params): RenderTexture | undefined {\r\n return undefined;\r\n }\r\n\r\n /** @internal */\r\n public onInitialized(): void { }\r\n\r\n /** @internal */\r\n public enableDiagnostics(_enable: RenderDiagnostics): void { }\r\n\r\n /** @internal */\r\n public get supportsLogZBuffer(): boolean { return false !== this.options.logarithmicDepthBuffer; }\r\n\r\n /** Obtain an object that can be used to control various debugging features. Returns `undefined` if debugging features are unavailable for this `RenderSystem`.\r\n * @beta\r\n */\r\n public get debugControl(): RenderSystemDebugControl | undefined { return undefined; }\r\n\r\n /** @internal */\r\n public collectStatistics(_stats: RenderMemory.Statistics): void { }\r\n\r\n /** A function that is invoked after the WebGL context is lost. Context loss is almost always caused by excessive consumption of GPU memory.\r\n * After context loss occurs, the RenderSystem will be unable to interact with WebGL by rendering viewports, creating graphics and textures, etc.\r\n * By default, this function invokes [[ToolAdmin.exceptionHandler]] with a brief message describing what occurred.\r\n * An application can override this behavior as follows:\r\n * ```ts\r\n * RenderSystem.contextLossHandler = (): Promise<any> => {\r\n * // your implementation here.\r\n * }\r\n * ```\r\n * @note Context loss is reported by the browser some short time *after* it has occurred. It is not possible to determine the specific cause.\r\n * @see [[TileAdmin.gpuMemoryLimit]] to limit the amount of GPU memory consumed thereby reducing the likelihood of context loss.\r\n * @see [[TileAdmin.totalTileContentBytes]] for the amount of GPU memory allocated for tile graphics.\r\n */\r\n public static async contextLossHandler(): Promise<any> {\r\n const msg = IModelApp.localization.getLocalizedString(\"iModelJs:Errors.WebGLContextLost\");\r\n return ToolAdmin.exceptionHandler(msg);\r\n }\r\n}\r\n\r\n/** A RenderSystem provides access to resources used by the internal WebGL-based rendering system.\r\n * An application rarely interacts directly with the RenderSystem; instead it interacts with types like [[Viewport]] which\r\n * coordinate with the RenderSystem on the application's behalf.\r\n * @see [[IModelApp.renderSystem]].\r\n * @public\r\n */\r\nexport namespace RenderSystem { // eslint-disable-line no-redeclare\r\n /** Options passed to [[IModelApp.supplyRenderSystem]] to configure the [[RenderSystem]] on startup. Many of these options serve as \"feature flags\" used to enable newer, experimental features. As such they typically begin life tagged as \"alpha\" or \"beta\" and are subsequently deprecated when the feature is declared stable.\r\n *\r\n * @public\r\n */\r\n export interface Options {\r\n /** WebGL extensions to be explicitly disabled, regardless of whether or not the WebGL implementation supports them.\r\n * This is chiefly useful for testing code that only executes in the absence of particular extensions, while running on a system that supports those extensions.\r\n *\r\n * Default value: undefined\r\n *\r\n * @public\r\n */\r\n disabledExtensions?: WebGLExtensionName[];\r\n\r\n /** If true, preserve the shader source code as internal strings, useful for debugging purposes.\r\n *\r\n * Default value: false\r\n *\r\n * @public\r\n */\r\n preserveShaderSourceCode?: boolean;\r\n\r\n /** If true, display solar shadows when enabled by [ViewFlags.shadows]($common).\r\n *\r\n * Default value: true\r\n *\r\n * @beta\r\n */\r\n displaySolarShadows?: boolean;\r\n\r\n /** If the view frustum is sufficiently large, and the EXT_frag_depth WebGL extension is available, use a logarithmic depth buffer to improve depth buffer resolution. Framerate may degrade to an extent while the logarithmic depth buffer is in use. If this option is disabled, or the extension is not supported, the near and far planes of very large view frustums will instead be moved to reduce the draw distance.\r\n *\r\n * Default value: true\r\n *\r\n * @public\r\n */\r\n logarithmicDepthBuffer?: boolean;\r\n\r\n /** ###TODO this appears to do nothing. @internal */\r\n filterMapTextures?: boolean;\r\n /** ###TODO this appears to do nothing. @internal */\r\n filterMapDrapeTextures?: boolean;\r\n\r\n /** If true, [[ScreenViewport]]s will respect the DPI of the display. See [[Viewport.devicePixelRatio]] and [[Viewport.cssPixelsToDevicePixels]].\r\n * @see [[dpiAwareLOD]] to control whether device pixel ratio affects the level of detail for tile graphics and decorations.\r\n * @see [[Viewport.cssPixelsToDevicePixels]] to convert CSS pixels to device pixels.\r\n * @see [[Viewport.devicePixelRatio]].\r\n *\r\n * Default value: true\r\n *\r\n * @public\r\n */\r\n dpiAwareViewports?: boolean;\r\n\r\n /** If defined, this will be used as the device pixel ratio instead of the system's actual device pixel ratio.\r\n * This can be helpful for situations like running in the iOS Simulator where forcing a lower resolution by setting a sub-1 device pixel ratio would increase performance.\r\n * @note If this setting is used to decrease the effective device pixel ratio, the view will appear pixelated.\r\n * @note This setting should only be used to increase performance in situations like the iOS Simulator for testing purposes only. It should not be used in a production situation.\r\n * @note This setting has no effect if [[dpiAwareViewports]] is `false`.\r\n *\r\n * Default value: undefined\r\n *\r\n * @public\r\n */\r\n devicePixelRatioOverride?: number;\r\n\r\n /** If true, [[ScreenViewport]]s will take into account the DPI of the display when computing the level of detail for tile graphics and decorations.\r\n * This can result in sharper-looking images on high-DPI devices like mobile phones, but may reduce performance on such devices.\r\n * @note This setting has no effect if [[dpiAwareViewports]] is `false`.\r\n * @see [[Viewport.devicePixelRatio]].\r\n *\r\n * Default value: false\r\n *\r\n * @public\r\n */\r\n dpiAwareLOD?: boolean;\r\n\r\n /** If true will attempt to create a WebGL2 context, falling back to WebGL1 if WebGL2 is not supported.\r\n *\r\n * Default value: true\r\n *\r\n * @public\r\n */\r\n useWebGL2?: boolean;\r\n\r\n /** If true, plan projection models will be rendered using [PlanProjectionSettings]($common) defined by the [[DisplayStyle3dState]].\r\n * Default value: true\r\n * @public\r\n */\r\n planProjections?: boolean;\r\n\r\n /** To help prevent delays when a user interacts with a [[Viewport]], the WebGL render system can precompile shader programs before any Viewport is opened.\r\n * This particularly helps applications when they do not open a Viewport immediately upon startup - for example, if the user is first expected to select an iModel and a view through the user interface.\r\n * Shader precompilation will cease once all shader programs have been compiled, or when a Viewport is opened (registered with the [[ViewManager]]).\r\n * @note Enabling this feature can slow UI interactions before a [[Viewport]] is opened.\r\n * To enable this feature, set this to `true`.\r\n *\r\n * Default value: false\r\n *\r\n * @beta\r\n */\r\n doIdleWork?: boolean;\r\n\r\n /** WebGL context attributes to explicitly set when initializing [[IModelApp.renderSystem]].\r\n * Exposed chiefly for OpenCities Planner.\r\n * @internal\r\n */\r\n contextAttributes?: WebGLContextAttributes;\r\n\r\n /** If true, and the `WEBGL_debug_shaders` extension is available, accumulate debug information during shader compilation.\r\n * This information can be accessed via `RenderSystemDebugControl.debugShaderFiles`.\r\n * Default value: false\r\n * @internal\r\n */\r\n debugShaders?: boolean;\r\n\r\n /** Initial antialias setting\r\n * If > 1, and a WebGL2 context is being used, will turn on antialiasing using that many samples.\r\n * Default value: 1\r\n * @public\r\n */\r\n antialiasSamples?: number;\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"RenderSystem.js","sourceRoot":"","sources":["../../../src/render/RenderSystem.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 Rendering\r\n */\r\n\r\nimport { base64StringToUint8Array, Id64String, IDisposable } from \"@itwin/core-bentley\";\r\nimport {\r\n ColorDef, ColorIndex, ElementAlignedBox3d, FeatureIndex, FeatureIndexType, FillFlags, Frustum, Gradient, ImageBuffer, ImageBufferFormat, ImageSource, ImageSourceFormat,\r\n isValidImageSourceFormat, PackedFeatureTable, QParams3d, QPoint3dList, RenderMaterial, RenderTexture, SkyGradient, TextureProps, TextureTransparency,\r\n} from \"@itwin/core-common\";\r\nimport { ClipVector, Matrix3d, Point2d, Point3d, Range2d, Range3d, Transform, Vector2d, XAndY } from \"@itwin/core-geometry\";\r\nimport { WebGLExtensionName } from \"@itwin/webgl-compatibility\";\r\nimport { imageElementFromImageSource } from \"../ImageUtil\";\r\nimport { IModelApp } from \"../IModelApp\";\r\nimport { IModelConnection } from \"../IModelConnection\";\r\nimport { MapTileTreeReference, TileTreeReference } from \"../tile/internal\";\r\nimport { ToolAdmin } from \"../tools/ToolAdmin\";\r\nimport { SceneContext } from \"../ViewContext\";\r\nimport { Viewport } from \"../Viewport\";\r\nimport { ViewRect } from \"../ViewRect\";\r\nimport { GraphicBranch, GraphicBranchOptions } from \"./GraphicBranch\";\r\nimport { BatchOptions, CustomGraphicBuilderOptions, GraphicBuilder, GraphicType, ViewportGraphicBuilderOptions } from \"./GraphicBuilder\";\r\nimport { InstancedGraphicParams, PatternGraphicParams } from \"./InstancedGraphicParams\";\r\nimport { MeshArgs, PolylineArgs } from \"./primitives/mesh/MeshPrimitives\";\r\nimport { RealityMeshGraphicParams, RealityMeshPrimitive } from \"./primitives/mesh/RealityMeshPrimitive\";\r\nimport { TerrainMeshPrimitive } from \"./primitives/mesh/TerrainMeshPrimitive\";\r\nimport { PointCloudArgs } from \"./primitives/PointCloudPrimitive\";\r\nimport { PointStringParams } from \"./primitives/PointStringParams\";\r\nimport { PolylineParams } from \"./primitives/PolylineParams\";\r\nimport { MeshParams } from \"./primitives/VertexTable\";\r\nimport { RenderClipVolume } from \"./RenderClipVolume\";\r\nimport { RenderGraphic, RenderGraphicOwner } from \"./RenderGraphic\";\r\nimport { CreateRenderMaterialArgs } from \"./RenderMaterial\";\r\nimport { RenderMemory } from \"./RenderMemory\";\r\nimport { RenderPlanarClassifier } from \"./RenderPlanarClassifier\";\r\nimport { RenderTarget } from \"./RenderTarget\";\r\nimport { CreateTextureArgs, CreateTextureFromSourceArgs, TextureCacheKey } from \"./RenderTexture\";\r\nimport { ScreenSpaceEffectBuilder, ScreenSpaceEffectBuilderParams } from \"./ScreenSpaceEffectBuilder\";\r\n\r\n/* eslint-disable no-restricted-syntax */\r\n// cSpell:ignore deserializing subcat uninstanced wiremesh qorigin trimesh\r\n\r\n/** An opaque representation of a texture draped on geometry within a [[Viewport]].\r\n * @internal\r\n */\r\nexport abstract class RenderTextureDrape implements IDisposable {\r\n public abstract dispose(): void;\r\n\r\n /** @internal */\r\n public abstract collectStatistics(stats: RenderMemory.Statistics): void;\r\n public abstract collectGraphics(context: SceneContext): void;\r\n}\r\n\r\n/** @internal */\r\nexport type TextureDrapeMap = Map<Id64String, RenderTextureDrape>;\r\n\r\n/** @internal */\r\nexport type MapLayerClassifiers = Map<number, RenderPlanarClassifier>;\r\n\r\n/** Describes a texture loaded from an HTMLImageElement\r\n * ###TODO Replace with TextureImage from RenderTexture.ts after we start returning transparency info from the backend.\r\n * @internal\r\n */\r\nexport interface OldTextureImage {\r\n /** The HTMLImageElement containing the texture's image data */\r\n image: HTMLImageElement;\r\n /** The format of the texture's image data */\r\n format: ImageSourceFormat;\r\n}\r\n\r\n/** @internal */\r\nexport enum RenderDiagnostics {\r\n /** No diagnostics enabled. */\r\n None = 0,\r\n /** Debugging output to browser console enabled. */\r\n DebugOutput = 1 << 1,\r\n /** Potentially expensive checks of WebGL state enabled. */\r\n WebGL = 1 << 2,\r\n /** All diagnostics enabled. */\r\n All = DebugOutput | WebGL,\r\n}\r\n\r\n/** @internal */\r\nexport interface GLTimerResult {\r\n /** Label from GLTimer.beginOperation */\r\n label: string;\r\n /** Time elapsed in nanoseconds, inclusive of child result times.\r\n * @note no-op queries seem to have 32ns of noise.\r\n */\r\n nanoseconds: number;\r\n /** Child results if GLTimer.beginOperation calls were nested */\r\n children?: GLTimerResult[];\r\n}\r\n\r\n/** @internal */\r\nexport type GLTimerResultCallback = (result: GLTimerResult) => void;\r\n\r\n/** Default implementation of RenderGraphicOwner. */\r\nclass GraphicOwner extends RenderGraphicOwner {\r\n public constructor(private readonly _graphic: RenderGraphic) { super(); }\r\n public get graphic(): RenderGraphic { return this._graphic; }\r\n}\r\n\r\n/** An interface optionally exposed by a RenderSystem that allows control of various debugging features.\r\n * @beta\r\n */\r\nexport interface RenderSystemDebugControl {\r\n /** Destroy this system's webgl context. Returns false if this behavior is not supported. */\r\n loseContext(): boolean;\r\n\r\n /** Overrides [[RenderSystem.dpiAwareLOD]].\r\n * @internal\r\n */\r\n dpiAwareLOD: boolean;\r\n\r\n /** Record GPU profiling information for each frame drawn. Check isGLTimerSupported before using.\r\n * @internal\r\n */\r\n resultsCallback?: GLTimerResultCallback;\r\n\r\n /** Returns true if the browser supports GPU profiling queries.\r\n * @internal\r\n */\r\n readonly isGLTimerSupported: boolean;\r\n\r\n /** Attempts to compile all shader programs and returns true if all were successful. May throw exceptions on errors.\r\n * This is useful for debugging shader compilation on specific platforms - especially those which use neither ANGLE nor SwiftShader (e.g., linux, mac, iOS)\r\n * because our unit tests which also compile all shaders run in software mode and therefore may not catch some \"errors\" (especially uniforms that have no effect on\r\n * program output).\r\n * @internal\r\n */\r\n compileAllShaders(): boolean;\r\n\r\n /** Obtain accumulated debug info collected during shader compilation. See `RenderSystem.Options.debugShaders`.\r\n * @internal\r\n */\r\n debugShaderFiles?: DebugShaderFile[];\r\n}\r\n\r\n/** @internal */\r\nexport abstract class RenderTerrainGeometry implements IDisposable, RenderMemory.Consumer {\r\n public abstract dispose(): void;\r\n public abstract get transform(): Transform | undefined;\r\n public abstract collectStatistics(stats: RenderMemory.Statistics): void;\r\n}\r\n\r\n/** @internal */\r\nexport class TerrainTexture {\r\n public constructor(\r\n public readonly texture: RenderTexture,\r\n public featureId: number,\r\n public readonly scale: Vector2d,\r\n public readonly translate: Vector2d,\r\n public readonly targetRectangle: Range2d,\r\n public readonly layerIndex: number,\r\n public transparency: number,\r\n public readonly clipRectangle?: Range2d\r\n ) { }\r\n\r\n public cloneWithClip(clipRectangle: Range2d) {\r\n return new TerrainTexture (this.texture, this.featureId, this.scale, this.translate, this.targetRectangle, this.layerIndex, this.transparency, clipRectangle);\r\n }\r\n}\r\n/** @internal */\r\nexport class DebugShaderFile {\r\n public constructor(\r\n public readonly filename: string,\r\n public readonly src: string,\r\n public isVS: boolean,\r\n public isGL: boolean,\r\n public isUsed: boolean\r\n ) { }\r\n}\r\n/** Transparency settings for planar grid display.\r\n * @alpha\r\n */\r\nexport class PlanarGridTransparency {\r\n /** Transparency for the grid plane. This should generally be fairly high to avoid obscuring other geometry */\r\n public readonly planeTransparency = .9;\r\n /** Transparency of the grid lines. This should be higher than the plane, but less than reference line transparency */\r\n public readonly lineTransparency = .75;\r\n /** Transparency of the reference lines. This should be less than plane or line transparency so that reference lines are more prominent */\r\n public readonly refTransparency = .5;\r\n}\r\n\r\n/** Settings for planar grid display.\r\n * @alpha\r\n */\r\nexport interface PlanarGridProps {\r\n /** The grid origin */\r\n origin: Point3d;\r\n /** The grid orientation. The grid X and Y direction are the first and second matrix rows */\r\n rMatrix: Matrix3d;\r\n /** The spacing between grid liens in the X and Y direction */\r\n spacing: XAndY;\r\n /** Grid lines per reference. If zero no reference lines are displayed. */\r\n gridsPerRef: number;\r\n /** Grid color. [[Use Viewport.getContrastToBackgroundColor]] to get best constrast color based on current background. */\r\n color: ColorDef;\r\n /** Transparency settings. If omitted then the [[PlanarGridTransparency]] defaults are used. */\r\n transparency?: PlanarGridTransparency;\r\n}\r\n\r\n/** An opaque representation of geometry allocated by a [[RenderSystem]] to be supplied to [[RenderSystem.createRenderGraphic]].\r\n * @internal\r\n */\r\nexport type RenderGeometry = IDisposable & RenderMemory.Consumer;\r\n\r\n/** An opaque representation of instructions for repeatedly drawing a [[RenderGeometry]] to pattern a planar region, to be supplied to [[RenderSystem.createRenderGraphic]].\r\n * @internal\r\n */\r\nexport type RenderAreaPattern = IDisposable & RenderMemory.Consumer;\r\n\r\n/** @internal */\r\nexport interface RenderSkyGradientParams {\r\n type: \"gradient\";\r\n gradient: SkyGradient;\r\n zOffset: number;\r\n}\r\n\r\n/** @internal */\r\nexport interface RenderSkySphereParams {\r\n type: \"sphere\";\r\n texture: RenderTexture;\r\n rotation: number;\r\n zOffset: number;\r\n}\r\n\r\n/** @internal */\r\nexport interface RenderSkyCubeParams {\r\n type: \"cube\";\r\n texture: RenderTexture;\r\n}\r\n\r\n/** @internal */\r\nexport type RenderSkyBoxParams = RenderSkyGradientParams | RenderSkySphereParams | RenderSkyCubeParams;\r\n\r\n/** A RenderSystem provides access to resources used by the internal WebGL-based rendering system.\r\n * An application rarely interacts directly with the RenderSystem; instead it interacts with types like [[Viewport]] which\r\n * coordinate with the RenderSystem on the application's behalf.\r\n * @see [Display system overview]($docs/learning/display/index.md)\r\n * @see [[IModelApp.renderSystem]].\r\n * @public\r\n * @extensions\r\n */\r\nexport abstract class RenderSystem implements IDisposable {\r\n /** Options used to initialize the RenderSystem. These are primarily used for feature-gating.\r\n * This object is frozen and cannot be modified after the RenderSystem is created.\r\n * @internal\r\n */\r\n public readonly options: RenderSystem.Options;\r\n\r\n /** Antialias samples to use on all subsequently created render targets.\r\n * Default value: undefined (no antialiasing)\r\n * @beta\r\n */\r\n public antialiasSamples?: number;\r\n\r\n /** Initialize the RenderSystem with the specified options.\r\n * @note The RenderSystem takes ownership of the supplied Options and freezes it.\r\n * @internal\r\n */\r\n protected constructor(options?: RenderSystem.Options) {\r\n this.options = undefined !== options ? options : {};\r\n Object.freeze(this.options);\r\n if (undefined !== this.options.disabledExtensions)\r\n Object.freeze(this.options.disabledExtensions);\r\n }\r\n\r\n /** @internal */\r\n public abstract get isValid(): boolean;\r\n\r\n /** @internal */\r\n public abstract dispose(): void;\r\n\r\n /** @internal */\r\n public get maxTextureSize(): number { return 0; }\r\n\r\n /** @internal */\r\n public get supportsInstancing(): boolean { return true; }\r\n\r\n /** @internal */\r\n public get supportsIndexedEdges(): boolean { return true; }\r\n\r\n /** @internal */\r\n public get supportsNonuniformScaledInstancing(): boolean { return true; }\r\n\r\n /** @internal */\r\n public get dpiAwareLOD(): boolean { return true === this.options.dpiAwareLOD; }\r\n\r\n /** @internal */\r\n public get isMobile(): boolean { return false; }\r\n\r\n /** @internal */\r\n public abstract createTarget(canvas: HTMLCanvasElement): RenderTarget;\r\n /** @internal */\r\n public abstract createOffscreenTarget(rect: ViewRect): RenderTarget;\r\n\r\n /** Perform a small unit of idle work and return true if more idle work remains to be done. This function is invoked on each tick of the javascript event loop as long as no viewports are registered with the ViewManager, until it returns false to indicate all idle work has been completed.\r\n * @internal\r\n */\r\n public abstract doIdleWork(): boolean;\r\n\r\n /** Find a previously-created [RenderMaterial]($common) by its ID.\r\n * @param _key The unique ID of the material within the context of the IModelConnection. Typically an element ID.\r\n * @param _imodel The IModelConnection with which the material is associated.\r\n * @returns A previously-created material matching the specified ID, or undefined if no such material exists.\r\n */\r\n public findMaterial(_key: string, _imodel: IModelConnection): RenderMaterial | undefined { return undefined; }\r\n\r\n /** Create a [RenderMaterial]($common) from parameters\r\n * If the parameters include a non-empty key, and no previously-created material already exists with that key, the newly-created material will be cached on the IModelConnection such\r\n * that it can later be retrieved by the same key using [[RenderSystem.findMaterial]].\r\n * @param _params A description of the material's properties.\r\n * @param _imodel The IModelConnection associated with the material.\r\n * @returns the newly-created material, or undefined if the material could not be created or if a material with the same key as that specified in the params already exists.\r\n * @deprecated Use [[createRenderMaterial]].\r\n */\r\n // eslint-disable-next-line deprecation/deprecation\r\n public createMaterial(_params: RenderMaterial.Params, _imodel: IModelConnection): RenderMaterial | undefined { return undefined; }\r\n\r\n /** Create a [RenderMaterial]($common).\r\n * @see [[CreateRenderMaterialArgs]] for a description of the material parameters.\r\n */\r\n public createRenderMaterial(_args: CreateRenderMaterialArgs): RenderMaterial | undefined {\r\n return undefined;\r\n }\r\n\r\n /** Creates a [[GraphicBuilder]] for creating a [[RenderGraphic]].\r\n * @param placement The local-to-world transform in which the builder's geometry is to be defined.\r\n * @param type The type of builder to create.\r\n * @param viewport The viewport in which the resultant [[RenderGraphic]] will be rendered.\r\n * @param pickableId If the decoration is to be pickable, a unique identifier to associate with the resultant [[RenderGraphic]].\r\n * @returns A builder for creating a [[RenderGraphic]] of the specified type appropriate for rendering within the specified viewport.\r\n * @see [[IModelConnection.transientIds]] for obtaining an ID for a pickable decoration.\r\n * @see [[RenderContext.createGraphicBuilder]].\r\n * @see [[Decorator]]\r\n */\r\n public createGraphicBuilder(placement: Transform, type: GraphicType, viewport: Viewport, pickableId?: Id64String): GraphicBuilder {\r\n const pickable = undefined !== pickableId ? { id: pickableId } : undefined;\r\n return this.createGraphic({ type, viewport, placement, pickable });\r\n }\r\n\r\n /** Obtain a [[GraphicBuilder]] from which to produce a [[RenderGraphic]].\r\n * @param options Options describing how to create the builder.\r\n * @returns A builder that produces a [[RenderGraphic]].\r\n */\r\n public abstract createGraphic(options: CustomGraphicBuilderOptions | ViewportGraphicBuilderOptions): GraphicBuilder;\r\n\r\n /** Obtain an object capable of producing a custom screen-space effect to be applied to the image rendered by a [[Viewport]].\r\n * @returns undefined if screen-space effects are not supported by this RenderSystem.\r\n */\r\n public createScreenSpaceEffectBuilder(_params: ScreenSpaceEffectBuilderParams): ScreenSpaceEffectBuilder | undefined {\r\n return undefined;\r\n }\r\n\r\n /** @internal */\r\n public createTriMesh(args: MeshArgs, instances?: InstancedGraphicParams | RenderAreaPattern | Point3d): RenderGraphic | undefined {\r\n const params = MeshParams.create(args);\r\n return this.createMesh(params, instances);\r\n }\r\n\r\n /** @internal */\r\n public createIndexedPolylines(args: PolylineArgs, instances?: InstancedGraphicParams | RenderAreaPattern | Point3d): RenderGraphic | undefined {\r\n if (args.flags.isDisjoint) {\r\n const pointStringParams = PointStringParams.create(args);\r\n return undefined !== pointStringParams ? this.createPointString(pointStringParams, instances) : undefined;\r\n } else {\r\n const polylineParams = PolylineParams.create(args);\r\n return undefined !== polylineParams ? this.createPolyline(polylineParams, instances) : undefined;\r\n }\r\n }\r\n\r\n /** @internal */\r\n public createMeshGeometry(_params: MeshParams, _viewIndependentOrigin?: Point3d): RenderGeometry | undefined { return undefined; }\r\n /** @internal */\r\n public createPolylineGeometry(_params: PolylineParams, _viewIndependentOrigin?: Point3d): RenderGeometry | undefined { return undefined; }\r\n /** @internal */\r\n public createPointStringGeometry(_params: PointStringParams, _viewIndependentOrigin?: Point3d): RenderGeometry | undefined { return undefined; }\r\n\r\n /** @internal */\r\n public createAreaPattern(_params: PatternGraphicParams): RenderAreaPattern | undefined { return undefined; }\r\n\r\n /** Create a RenderGraphic from a RenderGeometry produced by this RenderSystem.\r\n * @internal\r\n */\r\n public abstract createRenderGraphic(_geometry: RenderGeometry, instances?: InstancedGraphicParams | RenderAreaPattern): RenderGraphic | undefined;\r\n\r\n private createGraphicFromGeometry(\r\n createGeometry: (viewIndependentOrigin?: Point3d) => RenderGeometry | undefined,\r\n instancesOrOrigin?: InstancedGraphicParams | RenderAreaPattern | Point3d): RenderGraphic | undefined {\r\n let viOrigin;\r\n let instances;\r\n if (instancesOrOrigin instanceof Point3d)\r\n viOrigin = instancesOrOrigin;\r\n else\r\n instances = instancesOrOrigin;\r\n\r\n const geom = createGeometry(viOrigin);\r\n return geom ? this.createRenderGraphic(geom, instances) : undefined;\r\n }\r\n\r\n /** @internal */\r\n public createMesh(params: MeshParams, instances?: InstancedGraphicParams | RenderAreaPattern | Point3d): RenderGraphic | undefined {\r\n return this.createGraphicFromGeometry((viOrigin) => this.createMeshGeometry(params, viOrigin), instances);\r\n }\r\n\r\n /** @internal */\r\n public createPolyline(params: PolylineParams, instances?: InstancedGraphicParams | RenderAreaPattern | Point3d): RenderGraphic | undefined {\r\n return this.createGraphicFromGeometry((origin) => this.createPolylineGeometry(params, origin), instances);\r\n }\r\n\r\n /** @internal */\r\n public createPointString(params: PointStringParams, instances?: InstancedGraphicParams | RenderAreaPattern | Point3d): RenderGraphic | undefined {\r\n return this.createGraphicFromGeometry((origin) => this.createPointStringGeometry(params, origin), instances);\r\n }\r\n\r\n /** @internal */\r\n public createRealityMeshFromTerrain(_terrainMesh: TerrainMeshPrimitive, _transform?: Transform, _disableTextureDisposal = false): RenderTerrainGeometry | undefined { return undefined; }\r\n /** @internal */\r\n public createRealityMeshGraphic(_params: RealityMeshGraphicParams, _disableTextureDisposal = false): RenderGraphic | undefined { return undefined; }\r\n /** @internal */\r\n public createRealityMesh(_realityMesh: RealityMeshPrimitive, _disableTextureDisposal = false): RenderGraphic | undefined { return undefined; }\r\n /** @internal */\r\n public get maxRealityImageryLayers() { return 0; }\r\n /** @internal */\r\n public createPointCloud(_args: PointCloudArgs, _imodel: IModelConnection): RenderGraphic | undefined { return undefined; }\r\n\r\n /** Create a clip volume to clip geometry.\r\n * @note The clip volume takes ownership of the ClipVector, which must not be subsequently mutated.\r\n * @param _clipVector Defines how the volume clips geometry.\r\n * @returns A clip volume, or undefined if, e.g., the clip vector does not clip anything.\r\n */\r\n public createClipVolume(_clipVector: ClipVector): RenderClipVolume | undefined { return undefined; }\r\n\r\n /** @internal */\r\n public createPlanarGrid(_frustum: Frustum, _grid: PlanarGridProps): RenderGraphic | undefined { return undefined; }\r\n /** @internal */\r\n public createBackgroundMapDrape(_drapedTree: TileTreeReference, _mapTree: MapTileTreeReference): RenderTextureDrape | undefined { return undefined; }\r\n /** @internal */\r\n public createTile(tileTexture: RenderTexture, corners: Point3d[], featureIndex?: number): RenderGraphic | undefined {\r\n // corners\r\n // [0] [1]\r\n // [2] [3]\r\n // Quantize the points according to their range\r\n const points = new QPoint3dList(QParams3d.fromRange(Range3d.create(...corners)));\r\n for (let i = 0; i < 4; i++)\r\n points.add(corners[i]);\r\n\r\n // Now remove the translation from the quantized points and put it into a transform instead.\r\n // This prevents graphical artifacts when quantization origin is large relative to quantization scale.\r\n // ###TODO: Would be better not to create a branch for every tile.\r\n const qorigin = points.params.origin;\r\n const transform = Transform.createTranslationXYZ(qorigin.x, qorigin.y, qorigin.z);\r\n qorigin.setZero();\r\n\r\n const features = new FeatureIndex();\r\n if (undefined !== featureIndex) {\r\n features.featureID = featureIndex;\r\n features.type = FeatureIndexType.Uniform;\r\n }\r\n\r\n const rasterTile: MeshArgs = {\r\n points,\r\n vertIndices: [0, 1, 2, 2, 1, 3],\r\n isPlanar: true,\r\n features,\r\n colors: new ColorIndex(),\r\n fillFlags: FillFlags.None,\r\n textureMapping: {\r\n uvParams: [new Point2d(0, 0), new Point2d(1, 0), new Point2d(0, 1), new Point2d(1, 1)],\r\n texture: tileTexture,\r\n },\r\n };\r\n\r\n const trimesh = this.createTriMesh(rasterTile);\r\n if (undefined === trimesh)\r\n return undefined;\r\n\r\n const branch = new GraphicBranch(true);\r\n branch.add(trimesh);\r\n return this.createBranch(branch, transform);\r\n }\r\n\r\n /** Create a Graphic for a [[SkyBox]] which encompasses the entire scene, rotating with the camera.\r\n * @internal\r\n */\r\n public createSkyBox(_params: RenderSkyBoxParams): RenderGraphic | undefined { return undefined; }\r\n\r\n /** Create a RenderGraphic consisting of a list of Graphics to be drawn together. */\r\n public abstract createGraphicList(primitives: RenderGraphic[]): RenderGraphic;\r\n\r\n /** Create a RenderGraphic consisting of a list of Graphics, with optional transform and symbology overrides applied to the list */\r\n public createBranch(branch: GraphicBranch, transform: Transform): RenderGraphic {\r\n return this.createGraphicBranch(branch, transform);\r\n }\r\n\r\n /** Create a graphic from a [[GraphicBranch]]. */\r\n public abstract createGraphicBranch(branch: GraphicBranch, transform: Transform, options?: GraphicBranchOptions): RenderGraphic;\r\n\r\n /** Create a node in the scene graph corresponding to a transform node in the scene's schedule script.\r\n * Nodes under this branch will only be drawn if they belong to the specified transform node.\r\n * This allows the graphics in a single Tile to be efficiently drawn with different transforms applied by different nodes.\r\n * The node Id is either the Id of a single transform node in the script, of 0xffffffff to indicate all nodes that have no transform applied to them.\r\n * @internal\r\n */\r\n public createAnimationTransformNode(graphic: RenderGraphic, _nodeId: number): RenderGraphic {\r\n return graphic;\r\n }\r\n\r\n /** Create a RenderGraphic consisting of batched [[Feature]]s.\r\n * @internal\r\n */\r\n public abstract createBatch(graphic: RenderGraphic, features: PackedFeatureTable, range: ElementAlignedBox3d, options?: BatchOptions): RenderGraphic;\r\n\r\n /** Return a Promise which when resolved indicates that all pending external textures have finished loading from the backend. */\r\n public async waitForAllExternalTextures(): Promise<void> { return Promise.resolve(); }\r\n\r\n /** Create a graphic that assumes ownership of another graphic.\r\n * @param ownedGraphic The RenderGraphic to be owned.\r\n * @returns The owning graphic that exposes a `disposeGraphic` method for explicitly disposing of the owned graphic.\r\n * @see [[RenderGraphicOwner]] for details regarding ownership semantics.\r\n * @public\r\n */\r\n public createGraphicOwner(ownedGraphic: RenderGraphic): RenderGraphicOwner { return new GraphicOwner(ownedGraphic); }\r\n\r\n /** Create a \"layer\" containing the graphics belonging to it. A layer has a unique identifier and all of its geometry lies in an XY plane.\r\n * Different layers can be drawn coincident with one another; their draw order can be controlled by a per-layer priority value so that one layer draws\r\n * on top of another. Layers cannot nest inside other layers. Multiple GraphicLayers can exist with the same ID; they are treated as belonging to the same layer.\r\n * A GraphicLayer must be contained (perhaps indirectly) inside a GraphicLayerContainer.\r\n * @see [[createGraphicLayerContainer]]\r\n * @internal\r\n */\r\n public createGraphicLayer(graphic: RenderGraphic, _layerId: string): RenderGraphic { return graphic; }\r\n\r\n /** Create a graphic that can contain [[GraphicLayer]]s.\r\n * @internal\r\n */\r\n public createGraphicLayerContainer(graphic: RenderGraphic, _drawAsOverlay: boolean, _transparency: number, _elevation: number): RenderGraphic { return graphic; }\r\n\r\n /** Find a previously-created [[RenderTexture]] by its key.\r\n * @param _key The unique key of the texture within the context of the IModelConnection. Typically an element Id.\r\n * @param _imodel The IModelConnection with which the texture is associated.\r\n * @returns A previously-created texture matching the specified key, or undefined if no such texture exists.\r\n */\r\n public findTexture(_key: TextureCacheKey, _imodel: IModelConnection): RenderTexture | undefined {\r\n return undefined;\r\n }\r\n\r\n /** Find or create a [[RenderTexture]] from a persistent texture element.\r\n * @param id The ID of the texture element.\r\n * @param iModel The IModel containing the texture element.\r\n * @returns A Promise resolving to the created RenderTexture or to undefined if the texture could not be created.\r\n * @note If the texture is successfully created, it will be cached on the IModelConnection such that it can later be retrieved by its ID using [[RenderSystem.findTexture]].\r\n * @see [[RenderSystem.loadTextureImage]].\r\n * @internal\r\n */\r\n public async loadTexture(id: Id64String, iModel: IModelConnection): Promise<RenderTexture | undefined> {\r\n let texture = this.findTexture(id.toString(), iModel);\r\n if (undefined === texture) {\r\n const image = await this.loadTextureImage(id, iModel);\r\n if (undefined !== image) {\r\n // This will return a pre-existing RenderTexture if somebody else loaded it while we were awaiting the image.\r\n texture = this.createTexture({\r\n type: RenderTexture.Type.Normal,\r\n ownership: { key: id, iModel },\r\n image: {\r\n source: image.image,\r\n transparency: ImageSourceFormat.Png === image.format ? TextureTransparency.Mixed : TextureTransparency.Opaque,\r\n },\r\n });\r\n }\r\n }\r\n\r\n return texture;\r\n }\r\n\r\n /**\r\n * Load a texture image given the ID of a texture element.\r\n * @param id The ID of the texture element.\r\n * @param iModel The IModel containing the texture element.\r\n * @returns A Promise resolving to a TextureImage created from the texture element's data, or to undefined if the TextureImage could not be created.\r\n * @see [[RenderSystem.loadTexture]]\r\n * @internal\r\n */\r\n public async loadTextureImage(id: Id64String, iModel: IModelConnection): Promise<OldTextureImage | undefined> {\r\n const elemProps = await iModel.elements.getProps(id);\r\n if (1 !== elemProps.length)\r\n return undefined;\r\n\r\n const textureProps = elemProps[0] as TextureProps;\r\n if (undefined === textureProps.data || \"string\" !== typeof (textureProps.data) || undefined === textureProps.format || \"number\" !== typeof (textureProps.format))\r\n return undefined;\r\n\r\n const format = textureProps.format;\r\n if (!isValidImageSourceFormat(format))\r\n return undefined;\r\n\r\n const imageSource = new ImageSource(base64StringToUint8Array(textureProps.data), format);\r\n const image = await imageElementFromImageSource(imageSource);\r\n return { image, format };\r\n }\r\n\r\n /** Obtain a texture created from a gradient.\r\n * @param _symb The description of the gradient.\r\n * @param _imodel The IModelConnection with which the texture is associated.\r\n * @returns A texture created from the gradient image, or undefined if the texture could not be created.\r\n * @note If a texture matching the specified gradient is already cached on the iModel, it will be returned.\r\n * Otherwise, if an iModel is supplied, the newly-created texture will be cached on the iModel such that subsequent calls with an equivalent gradient and the\r\n * same iModel will return the cached texture instead of creating a new one.\r\n */\r\n public getGradientTexture(_symb: Gradient.Symb, _imodel?: IModelConnection): RenderTexture | undefined {\r\n return undefined;\r\n }\r\n\r\n /** Create a new texture from an [[ImageBuffer]].\r\n * @deprecated Use [[createTexture]].\r\n */\r\n // eslint-disable-next-line deprecation/deprecation\r\n public createTextureFromImageBuffer(image: ImageBuffer, iModel: IModelConnection, params: RenderTexture.Params): RenderTexture | undefined {\r\n const ownership = params.key ? { key: params.key, iModel } : (params.isOwned ? \"external\" : undefined);\r\n return this.createTexture({\r\n type: params.type,\r\n ownership,\r\n image: {\r\n source: image,\r\n transparency: ImageBufferFormat.Rgba === image.format ? TextureTransparency.Mixed : TextureTransparency.Opaque,\r\n },\r\n });\r\n }\r\n\r\n /** Create a new texture from an HTML image. Typically the image was extracted from a binary representation of a jpeg or png via [[imageElementFromImageSource]].\r\n * @deprecated Use [[createTexture]].\r\n */\r\n // eslint-disable-next-line deprecation/deprecation\r\n public createTextureFromImage(image: HTMLImageElement, hasAlpha: boolean, iModel: IModelConnection | undefined, params: RenderTexture.Params): RenderTexture | undefined {\r\n const ownership = params.key && iModel ? { key: params.key, iModel } : (params.isOwned ? \"external\" : undefined);\r\n return this.createTexture({\r\n type: params.type,\r\n ownership,\r\n image: {\r\n source: image,\r\n transparency: hasAlpha ? TextureTransparency.Mixed : TextureTransparency.Opaque,\r\n },\r\n });\r\n }\r\n\r\n /** Create a new texture from an ImageSource.\r\n * @deprecated Use RenderSystem.createTextureFromSource.\r\n */\r\n // eslint-disable-next-line deprecation/deprecation\r\n public async createTextureFromImageSource(source: ImageSource, iModel: IModelConnection | undefined, params: RenderTexture.Params): Promise<RenderTexture | undefined> {\r\n const ownership = iModel && params.key ? { iModel, key: params.key } : (params.isOwned ? \"external\" : undefined);\r\n return this.createTextureFromSource({\r\n type: params.type,\r\n source,\r\n ownership,\r\n transparency: source.format === ImageSourceFormat.Jpeg ? TextureTransparency.Opaque : TextureTransparency.Mixed,\r\n });\r\n }\r\n\r\n /** Create a texture from an ImageSource. */\r\n public async createTextureFromSource(args: CreateTextureFromSourceArgs): Promise<RenderTexture | undefined> {\r\n try {\r\n // JPEGs don't support transparency.\r\n const transparency = ImageSourceFormat.Jpeg === args.source.format ? TextureTransparency.Opaque : (args.transparency ?? TextureTransparency.Mixed);\r\n const image = await imageElementFromImageSource(args.source);\r\n if (!IModelApp.hasRenderSystem)\r\n return undefined;\r\n\r\n return this.createTexture({\r\n type: args.type,\r\n ownership: args.ownership,\r\n image: {\r\n source: image,\r\n transparency,\r\n },\r\n });\r\n } catch {\r\n return undefined;\r\n }\r\n }\r\n\r\n /** Create a new texture by its element ID. This texture will be retrieved asynchronously from the backend. A placeholder image will be associated with the texture until the requested image data loads. */\r\n // eslint-disable-next-line deprecation/deprecation\r\n public createTextureFromElement(_id: Id64String, _imodel: IModelConnection, _params: RenderTexture.Params, _format: ImageSourceFormat): RenderTexture | undefined {\r\n return undefined;\r\n }\r\n\r\n public createTexture(_args: CreateTextureArgs): RenderTexture | undefined {\r\n return undefined;\r\n }\r\n\r\n /** Create a new texture from a cube of HTML images.\r\n * @internal\r\n */\r\n // eslint-disable-next-line deprecation/deprecation\r\n public createTextureFromCubeImages(_posX: HTMLImageElement, _negX: HTMLImageElement, _posY: HTMLImageElement, _negY: HTMLImageElement, _posZ: HTMLImageElement, _negZ: HTMLImageElement, _imodel: IModelConnection, _params: RenderTexture.Params): RenderTexture | undefined {\r\n return undefined;\r\n }\r\n\r\n /** @internal */\r\n public onInitialized(): void { }\r\n\r\n /** @internal */\r\n public enableDiagnostics(_enable: RenderDiagnostics): void { }\r\n\r\n /** @internal */\r\n public get supportsLogZBuffer(): boolean { return false !== this.options.logarithmicDepthBuffer; }\r\n\r\n /** Obtain an object that can be used to control various debugging features. Returns `undefined` if debugging features are unavailable for this `RenderSystem`.\r\n * @beta\r\n */\r\n public get debugControl(): RenderSystemDebugControl | undefined { return undefined; }\r\n\r\n /** @internal */\r\n public collectStatistics(_stats: RenderMemory.Statistics): void { }\r\n\r\n /** A function that is invoked after the WebGL context is lost. Context loss is almost always caused by excessive consumption of GPU memory.\r\n * After context loss occurs, the RenderSystem will be unable to interact with WebGL by rendering viewports, creating graphics and textures, etc.\r\n * By default, this function invokes [[ToolAdmin.exceptionHandler]] with a brief message describing what occurred.\r\n * An application can override this behavior as follows:\r\n * ```ts\r\n * RenderSystem.contextLossHandler = (): Promise<any> => {\r\n * // your implementation here.\r\n * }\r\n * ```\r\n * @note Context loss is reported by the browser some short time *after* it has occurred. It is not possible to determine the specific cause.\r\n * @see [[TileAdmin.gpuMemoryLimit]] to limit the amount of GPU memory consumed thereby reducing the likelihood of context loss.\r\n * @see [[TileAdmin.totalTileContentBytes]] for the amount of GPU memory allocated for tile graphics.\r\n */\r\n public static async contextLossHandler(): Promise<any> {\r\n const msg = IModelApp.localization.getLocalizedString(\"iModelJs:Errors.WebGLContextLost\");\r\n return ToolAdmin.exceptionHandler(msg);\r\n }\r\n}\r\n\r\n/** A RenderSystem provides access to resources used by the internal WebGL-based rendering system.\r\n * An application rarely interacts directly with the RenderSystem; instead it interacts with types like [[Viewport]] which\r\n * coordinate with the RenderSystem on the application's behalf.\r\n * @see [[IModelApp.renderSystem]].\r\n * @public\r\n */\r\nexport namespace RenderSystem { // eslint-disable-line no-redeclare\r\n /** Options passed to [[IModelApp.supplyRenderSystem]] to configure the [[RenderSystem]] on startup. Many of these options serve as \"feature flags\" used to enable newer, experimental features. As such they typically begin life tagged as \"alpha\" or \"beta\" and are subsequently deprecated when the feature is declared stable.\r\n *\r\n * @public\r\n */\r\n export interface Options {\r\n /** WebGL extensions to be explicitly disabled, regardless of whether or not the WebGL implementation supports them.\r\n * This is chiefly useful for testing code that only executes in the absence of particular extensions, while running on a system that supports those extensions.\r\n *\r\n * Default value: undefined\r\n *\r\n * @public\r\n */\r\n disabledExtensions?: WebGLExtensionName[];\r\n\r\n /** If true, preserve the shader source code as internal strings, useful for debugging purposes.\r\n *\r\n * Default value: false\r\n *\r\n * @public\r\n */\r\n preserveShaderSourceCode?: boolean;\r\n\r\n /** If true, display solar shadows when enabled by [ViewFlags.shadows]($common).\r\n *\r\n * Default value: true\r\n *\r\n * @beta\r\n */\r\n displaySolarShadows?: boolean;\r\n\r\n /** If the view frustum is sufficiently large, and the EXT_frag_depth WebGL extension is available, use a logarithmic depth buffer to improve depth buffer resolution. Framerate may degrade to an extent while the logarithmic depth buffer is in use. If this option is disabled, or the extension is not supported, the near and far planes of very large view frustums will instead be moved to reduce the draw distance.\r\n *\r\n * Default value: true\r\n *\r\n * @public\r\n */\r\n logarithmicDepthBuffer?: boolean;\r\n\r\n /** ###TODO this appears to do nothing. @internal */\r\n filterMapTextures?: boolean;\r\n /** ###TODO this appears to do nothing. @internal */\r\n filterMapDrapeTextures?: boolean;\r\n\r\n /** If true, [[ScreenViewport]]s will respect the DPI of the display. See [[Viewport.devicePixelRatio]] and [[Viewport.cssPixelsToDevicePixels]].\r\n * @see [[dpiAwareLOD]] to control whether device pixel ratio affects the level of detail for tile graphics and decorations.\r\n * @see [[Viewport.cssPixelsToDevicePixels]] to convert CSS pixels to device pixels.\r\n * @see [[Viewport.devicePixelRatio]].\r\n *\r\n * Default value: true\r\n *\r\n * @public\r\n */\r\n dpiAwareViewports?: boolean;\r\n\r\n /** If defined, this will be used as the device pixel ratio instead of the system's actual device pixel ratio.\r\n * This can be helpful for situations like running in the iOS Simulator where forcing a lower resolution by setting a sub-1 device pixel ratio would increase performance.\r\n * @note If this setting is used to decrease the effective device pixel ratio, the view will appear pixelated.\r\n * @note This setting should only be used to increase performance in situations like the iOS Simulator for testing purposes only. It should not be used in a production situation.\r\n * @note This setting has no effect if [[dpiAwareViewports]] is `false`.\r\n *\r\n * Default value: undefined\r\n *\r\n * @public\r\n */\r\n devicePixelRatioOverride?: number;\r\n\r\n /** If true, [[ScreenViewport]]s will take into account the DPI of the display when computing the level of detail for tile graphics and decorations.\r\n * This can result in sharper-looking images on high-DPI devices like mobile phones, but may reduce performance on such devices.\r\n * @note This setting has no effect if [[dpiAwareViewports]] is `false`.\r\n * @see [[Viewport.devicePixelRatio]].\r\n *\r\n * Default value: false\r\n *\r\n * @public\r\n */\r\n dpiAwareLOD?: boolean;\r\n\r\n /** If true will attempt to create a WebGL2 context, falling back to WebGL1 if WebGL2 is not supported.\r\n *\r\n * Default value: true\r\n *\r\n * @public\r\n */\r\n useWebGL2?: boolean;\r\n\r\n /** If true, plan projection models will be rendered using [PlanProjectionSettings]($common) defined by the [[DisplayStyle3dState]].\r\n * Default value: true\r\n * @public\r\n */\r\n planProjections?: boolean;\r\n\r\n /** To help prevent delays when a user interacts with a [[Viewport]], the WebGL render system can precompile shader programs before any Viewport is opened.\r\n * This particularly helps applications when they do not open a Viewport immediately upon startup - for example, if the user is first expected to select an iModel and a view through the user interface.\r\n * Shader precompilation will cease once all shader programs have been compiled, or when a Viewport is opened (registered with the [[ViewManager]]).\r\n * @note Enabling this feature can slow UI interactions before a [[Viewport]] is opened.\r\n * To enable this feature, set this to `true`.\r\n *\r\n * Default value: false\r\n *\r\n * @beta\r\n */\r\n doIdleWork?: boolean;\r\n\r\n /** WebGL context attributes to explicitly set when initializing [[IModelApp.renderSystem]].\r\n * Exposed chiefly for OpenCities Planner.\r\n * @internal\r\n */\r\n contextAttributes?: WebGLContextAttributes;\r\n\r\n /** If true, and the `WEBGL_debug_shaders` extension is available, accumulate debug information during shader compilation.\r\n * This information can be accessed via `RenderSystemDebugControl.debugShaderFiles`.\r\n * Default value: false\r\n * @internal\r\n */\r\n debugShaders?: boolean;\r\n\r\n /** Initial antialias setting\r\n * If > 1, and a WebGL2 context is being used, will turn on antialiasing using that many samples.\r\n * Default value: 1\r\n * @public\r\n */\r\n antialiasSamples?: number;\r\n }\r\n}\r\n"]}
@@ -6,12 +6,14 @@ import { IModelConnection } from "../IModelConnection";
6
6
  /** A key that uniquely identifies a [RenderTexture]($common) in the context of an [[IModelConnection]], used for caching.
7
7
  * @see [[TextureCacheOwnership]].
8
8
  * @public
9
+ * @extensions
9
10
  */
10
11
  export declare type TextureCacheKey = string | Gradient.Symb;
11
12
  /** Specifies that a [RenderTexture]($common) should be kept in memory until the corresponding [[IModelConnection]] is closed, at
12
13
  * which point it will be disposed.
13
14
  * @see [[TextureOwnership]]
14
15
  * @public
16
+ * @extensions
15
17
  */
16
18
  export interface TextureCacheOwnership {
17
19
  /** The iModel on which the texture will be cached. */
@@ -27,16 +29,19 @@ export interface TextureCacheOwnership {
27
29
  * texture is responsible for calling its `dispose` method when it is no longer needed.
28
30
  * @see [[CreateTextureArgs.ownership]]
29
31
  * @public
32
+ * @extensions
30
33
  */
31
34
  export declare type TextureOwnership = TextureCacheOwnership | "external";
32
35
  /** An object from which a [RenderTexture]($common) can be created.
33
36
  * @see [[TextureImage.source]]
34
37
  * @public
38
+ * @extensions
35
39
  */
36
40
  export declare type TextureImageSource = HTMLImageElement | ImageBuffer;
37
41
  /** Describes the image from which to create a [RenderTexture]($common).
38
42
  * @see [[CreateTextureArgs.image]]
39
43
  * @public
44
+ * @extensions
40
45
  */
41
46
  export interface TextureImage {
42
47
  /** The object that supplies the texture image. */
@@ -48,6 +53,7 @@ export interface TextureImage {
48
53
  }
49
54
  /** Arguments supplied to [[RenderSystem.createTexture]] to create a [RenderTexture]($common).
50
55
  * @public
56
+ * @extensions
51
57
  */
52
58
  export interface CreateTextureArgs {
53
59
  /** The type of texture to create. Default: [RenderTexture.Type.Normal]($common). */
@@ -64,6 +70,7 @@ export interface CreateTextureArgs {
64
70
  }
65
71
  /** Arguments supplied to [[RenderSystem.createTextureFromSource]].
66
72
  * @public
73
+ * @extensions
67
74
  */
68
75
  export interface CreateTextureFromSourceArgs {
69
76
  /** The type of texture to create. Default: [RenderTexture.Type.Normal]($common). */
@@ -1 +1 @@
1
- {"version":3,"file":"RenderTexture.d.ts","sourceRoot":"","sources":["../../../src/render/RenderTexture.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC5G,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD;;;GAGG;AACH,oBAAY,eAAe,GAAG,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC;AAErD;;;;GAIG;AACH,MAAM,WAAW,qBAAqB;IACpC,sDAAsD;IACtD,MAAM,EAAE,gBAAgB,CAAC;IACzB,0FAA0F;IAC1F,GAAG,EAAE,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC;CAC7B;AAED;;;;;;;;GAQG;AACH,oBAAY,gBAAgB,GAAG,qBAAqB,GAAG,UAAU,CAAC;AAElE;;;GAGG;AACH,oBAAY,kBAAkB,GAAG,gBAAgB,GAAG,WAAW,CAAC;AAEhE;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B,kDAAkD;IAClD,MAAM,EAAE,kBAAkB,CAAC;IAC3B;;OAEG;IACH,YAAY,CAAC,EAAE,mBAAmB,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,oFAAoF;IACpF,IAAI,CAAC,EAAE,aAAa,CAAC,IAAI,CAAC;IAC1B,kDAAkD;IAClD,KAAK,EAAE,YAAY,CAAC;IACpB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,gBAAgB,CAAC;CAC9B;AAED;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C,oFAAoF;IACpF,IAAI,CAAC,EAAE,aAAa,CAAC,IAAI,CAAC;IAC1B,kDAAkD;IAClD,MAAM,EAAE,WAAW,CAAC;IACpB;;OAEG;IACH,YAAY,CAAC,EAAE,mBAAmB,CAAC;IACnC;;;;;OAKG;IACH,SAAS,CAAC,EAAE,qBAAqB,GAAG;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,GAAG,UAAU,CAAC;CAClE"}
1
+ {"version":3,"file":"RenderTexture.d.ts","sourceRoot":"","sources":["../../../src/render/RenderTexture.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC5G,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD;;;;GAIG;AACH,oBAAY,eAAe,GAAG,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC;AAErD;;;;;GAKG;AACH,MAAM,WAAW,qBAAqB;IACpC,sDAAsD;IACtD,MAAM,EAAE,gBAAgB,CAAC;IACzB,0FAA0F;IAC1F,GAAG,EAAE,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC;CAC7B;AAED;;;;;;;;;GASG;AACH,oBAAY,gBAAgB,GAAG,qBAAqB,GAAG,UAAU,CAAC;AAElE;;;;GAIG;AACH,oBAAY,kBAAkB,GAAG,gBAAgB,GAAG,WAAW,CAAC;AAEhE;;;;GAIG;AACH,MAAM,WAAW,YAAY;IAC3B,kDAAkD;IAClD,MAAM,EAAE,kBAAkB,CAAC;IAC3B;;OAEG;IACH,YAAY,CAAC,EAAE,mBAAmB,CAAC;CACpC;AAED;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC,oFAAoF;IACpF,IAAI,CAAC,EAAE,aAAa,CAAC,IAAI,CAAC;IAC1B,kDAAkD;IAClD,KAAK,EAAE,YAAY,CAAC;IACpB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,gBAAgB,CAAC;CAC9B;AAED;;;GAGG;AACH,MAAM,WAAW,2BAA2B;IAC1C,oFAAoF;IACpF,IAAI,CAAC,EAAE,aAAa,CAAC,IAAI,CAAC;IAC1B,kDAAkD;IAClD,MAAM,EAAE,WAAW,CAAC;IACpB;;OAEG;IACH,YAAY,CAAC,EAAE,mBAAmB,CAAC;IACnC;;;;;OAKG;IACH,SAAS,CAAC,EAAE,qBAAqB,GAAG;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,GAAG,UAAU,CAAC;CAClE"}
@@ -1 +1 @@
1
- {"version":3,"file":"RenderTexture.js","sourceRoot":"","sources":["../../../src/render/RenderTexture.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG","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 Rendering\r\n */\r\n\r\nimport { Gradient, ImageBuffer, ImageSource, RenderTexture, TextureTransparency } from \"@itwin/core-common\";\r\nimport { IModelConnection } from \"../IModelConnection\";\r\n\r\n/** A key that uniquely identifies a [RenderTexture]($common) in the context of an [[IModelConnection]], used for caching.\r\n * @see [[TextureCacheOwnership]].\r\n * @public\r\n */\r\nexport type TextureCacheKey = string | Gradient.Symb;\r\n\r\n/** Specifies that a [RenderTexture]($common) should be kept in memory until the corresponding [[IModelConnection]] is closed, at\r\n * which point it will be disposed.\r\n * @see [[TextureOwnership]]\r\n * @public\r\n */\r\nexport interface TextureCacheOwnership {\r\n /** The iModel on which the texture will be cached. */\r\n iModel: IModelConnection;\r\n /** The key uniquely identifying the texture amongst all textures cached on the iModel. */\r\n key: string | Gradient.Symb;\r\n}\r\n\r\n/** Describes the ownership of a [RenderTexture]($common), which controls when the texture is disposed of.\r\n * - [[TextureCacheOwnership]] indicates that the texture will be disposed of when the [[IModelConnection]] is closed, and that attempting\r\n * to create or look up a texture with the same `key` as an existing cached texture will always return the cached texture instead of creating\r\n * a new one.\r\n * - \"external\" indicates that the lifetime of the texture will be controlled externally, e.g. by a [[Decorator]], in which case the owner of the\r\n * texture is responsible for calling its `dispose` method when it is no longer needed.\r\n * @see [[CreateTextureArgs.ownership]]\r\n * @public\r\n */\r\nexport type TextureOwnership = TextureCacheOwnership | \"external\";\r\n\r\n/** An object from which a [RenderTexture]($common) can be created.\r\n * @see [[TextureImage.source]]\r\n * @public\r\n */\r\nexport type TextureImageSource = HTMLImageElement | ImageBuffer; // ###TODO | HTMLCanvasElement etc\r\n\r\n/** Describes the image from which to create a [RenderTexture]($common).\r\n * @see [[CreateTextureArgs.image]]\r\n * @public\r\n */\r\nexport interface TextureImage {\r\n /** The object that supplies the texture image. */\r\n source: TextureImageSource;\r\n /** Describes the transparency of the image. If this information can be supplied, it can improve performance.\r\n * If this information is not available at the call site, omit it - it defaults to \"mixed\" if it cannot be inferred from the source.\r\n */\r\n transparency?: TextureTransparency;\r\n}\r\n\r\n/** Arguments supplied to [[RenderSystem.createTexture]] to create a [RenderTexture]($common).\r\n * @public\r\n */\r\nexport interface CreateTextureArgs {\r\n /** The type of texture to create. Default: [RenderTexture.Type.Normal]($common). */\r\n type?: RenderTexture.Type;\r\n /** The image from which to create the texture. */\r\n image: TextureImage;\r\n /** The ownership of the texture. If `undefined`, the texture's lifetime will be controlled by the first [[RenderGraphic]] with which it\r\n * becomes associated, such that disposing of the graphic will also dispose of the texture.\r\n * Applications typically create textures for use with [[Decorator]]s, which recreate their graphics quite frequently.\r\n * Ideally, the decorator will take ownership of the texture by specifying \"external\" and disposing of the texture when it is no longer needed,\r\n * rather than recreating the texture every time it creates its decoration graphics.\r\n */\r\n ownership?: TextureOwnership;\r\n}\r\n\r\n/** Arguments supplied to [[RenderSystem.createTextureFromSource]].\r\n * @public\r\n */\r\nexport interface CreateTextureFromSourceArgs {\r\n /** The type of texture to create. Default: [RenderTexture.Type.Normal]($common). */\r\n type?: RenderTexture.Type;\r\n /** The image from which to create the texture. */\r\n source: ImageSource;\r\n /** Describes the transparency of the image. If this information can be supplied, it can improve performance.\r\n * If not supplied, PNGs will default to [TextureTransparency.Mixed]($common) and JPEGs (which do not support transparency) to [TextureTransparency.Opaque]($common).\r\n */\r\n transparency?: TextureTransparency;\r\n /** The ownership of the texture. If `undefined`, the texture's lifetime will be controlled by the first [[RenderGraphic]] with which it\r\n * becomes associated, such that disposing of the graphic will also dispose of the texture.\r\n * Applications typically create textures for use with [[Decorator]]s, which recreate their graphics quite frequently.\r\n * Ideally, the decorator will take ownership of the texture by specifying \"external\" and disposing of the texture when it is no longer needed,\r\n * rather than recreating the texture every time it creates its decoration graphics.\r\n */\r\n ownership?: TextureCacheOwnership & { key: string } | \"external\";\r\n}\r\n"]}
1
+ {"version":3,"file":"RenderTexture.js","sourceRoot":"","sources":["../../../src/render/RenderTexture.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG","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 Rendering\r\n */\r\n\r\nimport { Gradient, ImageBuffer, ImageSource, RenderTexture, TextureTransparency } from \"@itwin/core-common\";\r\nimport { IModelConnection } from \"../IModelConnection\";\r\n\r\n/** A key that uniquely identifies a [RenderTexture]($common) in the context of an [[IModelConnection]], used for caching.\r\n * @see [[TextureCacheOwnership]].\r\n * @public\r\n * @extensions\r\n */\r\nexport type TextureCacheKey = string | Gradient.Symb;\r\n\r\n/** Specifies that a [RenderTexture]($common) should be kept in memory until the corresponding [[IModelConnection]] is closed, at\r\n * which point it will be disposed.\r\n * @see [[TextureOwnership]]\r\n * @public\r\n * @extensions\r\n */\r\nexport interface TextureCacheOwnership {\r\n /** The iModel on which the texture will be cached. */\r\n iModel: IModelConnection;\r\n /** The key uniquely identifying the texture amongst all textures cached on the iModel. */\r\n key: string | Gradient.Symb;\r\n}\r\n\r\n/** Describes the ownership of a [RenderTexture]($common), which controls when the texture is disposed of.\r\n * - [[TextureCacheOwnership]] indicates that the texture will be disposed of when the [[IModelConnection]] is closed, and that attempting\r\n * to create or look up a texture with the same `key` as an existing cached texture will always return the cached texture instead of creating\r\n * a new one.\r\n * - \"external\" indicates that the lifetime of the texture will be controlled externally, e.g. by a [[Decorator]], in which case the owner of the\r\n * texture is responsible for calling its `dispose` method when it is no longer needed.\r\n * @see [[CreateTextureArgs.ownership]]\r\n * @public\r\n * @extensions\r\n */\r\nexport type TextureOwnership = TextureCacheOwnership | \"external\";\r\n\r\n/** An object from which a [RenderTexture]($common) can be created.\r\n * @see [[TextureImage.source]]\r\n * @public\r\n * @extensions\r\n */\r\nexport type TextureImageSource = HTMLImageElement | ImageBuffer; // ###TODO | HTMLCanvasElement etc\r\n\r\n/** Describes the image from which to create a [RenderTexture]($common).\r\n * @see [[CreateTextureArgs.image]]\r\n * @public\r\n * @extensions\r\n */\r\nexport interface TextureImage {\r\n /** The object that supplies the texture image. */\r\n source: TextureImageSource;\r\n /** Describes the transparency of the image. If this information can be supplied, it can improve performance.\r\n * If this information is not available at the call site, omit it - it defaults to \"mixed\" if it cannot be inferred from the source.\r\n */\r\n transparency?: TextureTransparency;\r\n}\r\n\r\n/** Arguments supplied to [[RenderSystem.createTexture]] to create a [RenderTexture]($common).\r\n * @public\r\n * @extensions\r\n */\r\nexport interface CreateTextureArgs {\r\n /** The type of texture to create. Default: [RenderTexture.Type.Normal]($common). */\r\n type?: RenderTexture.Type;\r\n /** The image from which to create the texture. */\r\n image: TextureImage;\r\n /** The ownership of the texture. If `undefined`, the texture's lifetime will be controlled by the first [[RenderGraphic]] with which it\r\n * becomes associated, such that disposing of the graphic will also dispose of the texture.\r\n * Applications typically create textures for use with [[Decorator]]s, which recreate their graphics quite frequently.\r\n * Ideally, the decorator will take ownership of the texture by specifying \"external\" and disposing of the texture when it is no longer needed,\r\n * rather than recreating the texture every time it creates its decoration graphics.\r\n */\r\n ownership?: TextureOwnership;\r\n}\r\n\r\n/** Arguments supplied to [[RenderSystem.createTextureFromSource]].\r\n * @public\r\n * @extensions\r\n */\r\nexport interface CreateTextureFromSourceArgs {\r\n /** The type of texture to create. Default: [RenderTexture.Type.Normal]($common). */\r\n type?: RenderTexture.Type;\r\n /** The image from which to create the texture. */\r\n source: ImageSource;\r\n /** Describes the transparency of the image. If this information can be supplied, it can improve performance.\r\n * If not supplied, PNGs will default to [TextureTransparency.Mixed]($common) and JPEGs (which do not support transparency) to [TextureTransparency.Opaque]($common).\r\n */\r\n transparency?: TextureTransparency;\r\n /** The ownership of the texture. If `undefined`, the texture's lifetime will be controlled by the first [[RenderGraphic]] with which it\r\n * becomes associated, such that disposing of the graphic will also dispose of the texture.\r\n * Applications typically create textures for use with [[Decorator]]s, which recreate their graphics quite frequently.\r\n * Ideally, the decorator will take ownership of the texture by specifying \"external\" and disposing of the texture when it is no longer needed,\r\n * rather than recreating the texture every time it creates its decoration graphics.\r\n */\r\n ownership?: TextureCacheOwnership & { key: string } | \"external\";\r\n}\r\n"]}
@@ -16,6 +16,7 @@ export interface SceneVolumeClassifier {
16
16
  /** Holds a collection of objects comprising the scene to be drawn by a [[Viewport]]'s.
17
17
  * @see [[SceneContext]] for the context in which the scene is created.
18
18
  * @public
19
+ * @extensions
19
20
  */
20
21
  export declare class Scene {
21
22
  /** Graphics to be drawn as a "normal" part of the scene - that is, with depth. */
@@ -1 +1 @@
1
- {"version":3,"file":"Scene.d.ts","sourceRoot":"","sources":["../../../src/render/Scene.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEpD;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,UAAU,EAAE,iBAAiB,CAAC;IAC9B,OAAO,EAAE,UAAU,CAAC;CACrB;AAED;;;GAGG;AACH,qBAAa,KAAK;IAChB,kFAAkF;IAClF,SAAgB,UAAU,EAAE,aAAa,EAAE,CAAM;IACjD,wEAAwE;IACxE,SAAgB,UAAU,EAAE,aAAa,EAAE,CAAM;IACjD,uDAAuD;IACvD,SAAgB,OAAO,EAAE,aAAa,EAAE,CAAM;IAC9C,gBAAgB;IAChB,SAAgB,iBAAiB,sCAA6C;IAC9E,gBAAgB;IAChB,SAAgB,aAAa,kCAA6C;IAC1E,gBAAgB;IACT,gBAAgB,CAAC,EAAE,qBAAqB,CAAC;CACjD"}
1
+ {"version":3,"file":"Scene.d.ts","sourceRoot":"","sources":["../../../src/render/Scene.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEpD;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,UAAU,EAAE,iBAAiB,CAAC;IAC9B,OAAO,EAAE,UAAU,CAAC;CACrB;AAED;;;;GAIG;AACH,qBAAa,KAAK;IAChB,kFAAkF;IAClF,SAAgB,UAAU,EAAE,aAAa,EAAE,CAAM;IACjD,wEAAwE;IACxE,SAAgB,UAAU,EAAE,aAAa,EAAE,CAAM;IACjD,uDAAuD;IACvD,SAAgB,OAAO,EAAE,aAAa,EAAE,CAAM;IAC9C,gBAAgB;IAChB,SAAgB,iBAAiB,sCAA6C;IAC9E,gBAAgB;IAChB,SAAgB,aAAa,kCAA6C;IAC1E,gBAAgB;IACT,gBAAgB,CAAC,EAAE,qBAAqB,CAAC;CACjD"}
@@ -11,6 +11,7 @@ exports.Scene = void 0;
11
11
  /** Holds a collection of objects comprising the scene to be drawn by a [[Viewport]]'s.
12
12
  * @see [[SceneContext]] for the context in which the scene is created.
13
13
  * @public
14
+ * @extensions
14
15
  */
15
16
  class Scene {
16
17
  constructor() {
@@ -1 +1 @@
1
- {"version":3,"file":"Scene.js","sourceRoot":"","sources":["../../../src/render/Scene.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAgBH;;;GAGG;AACH,MAAa,KAAK;IAAlB;QACE,kFAAkF;QAClE,eAAU,GAAoB,EAAE,CAAC;QACjD,wEAAwE;QACxD,eAAU,GAAoB,EAAE,CAAC;QACjD,uDAAuD;QACvC,YAAO,GAAoB,EAAE,CAAC;QAC9C,gBAAgB;QACA,sBAAiB,GAAG,IAAI,GAAG,EAAkC,CAAC,CAAC,4CAA4C;QAC3H,gBAAgB;QACA,kBAAa,GAAG,IAAI,GAAG,EAAkC,CAAC;IAG5E,CAAC;CAAA;AAbD,sBAaC","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 Rendering\r\n */\r\n\r\nimport { Id64String } from \"@itwin/core-bentley\";\r\nimport { SpatialClassifier } from \"@itwin/core-common\";\r\nimport { RenderGraphic } from \"./RenderGraphic\";\r\nimport { RenderPlanarClassifier } from \"./RenderPlanarClassifier\";\r\nimport { RenderTextureDrape } from \"./RenderSystem\";\r\n\r\n/** Describes the spatial classification applied to a [[Scene]].\r\n * @internal\r\n */\r\nexport interface SceneVolumeClassifier {\r\n classifier: SpatialClassifier;\r\n modelId: Id64String;\r\n}\r\n\r\n/** Holds a collection of objects comprising the scene to be drawn by a [[Viewport]]'s.\r\n * @see [[SceneContext]] for the context in which the scene is created.\r\n * @public\r\n */\r\nexport class Scene {\r\n /** Graphics to be drawn as a \"normal\" part of the scene - that is, with depth. */\r\n public readonly foreground: RenderGraphic[] = [];\r\n /** Graphics to be drawn in the background behind all other graphics. */\r\n public readonly background: RenderGraphic[] = [];\r\n /** Graphics to be overlaid atop all other graphics. */\r\n public readonly overlay: RenderGraphic[] = [];\r\n /** @internal */\r\n public readonly planarClassifiers = new Map<string, RenderPlanarClassifier>(); // Classifier model id to planar classifier.\r\n /** @internal */\r\n public readonly textureDrapes = new Map<Id64String, RenderTextureDrape>();\r\n /** @internal */\r\n public volumeClassifier?: SceneVolumeClassifier;\r\n}\r\n"]}
1
+ {"version":3,"file":"Scene.js","sourceRoot":"","sources":["../../../src/render/Scene.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAgBH;;;;GAIG;AACH,MAAa,KAAK;IAAlB;QACE,kFAAkF;QAClE,eAAU,GAAoB,EAAE,CAAC;QACjD,wEAAwE;QACxD,eAAU,GAAoB,EAAE,CAAC;QACjD,uDAAuD;QACvC,YAAO,GAAoB,EAAE,CAAC;QAC9C,gBAAgB;QACA,sBAAiB,GAAG,IAAI,GAAG,EAAkC,CAAC,CAAC,4CAA4C;QAC3H,gBAAgB;QACA,kBAAa,GAAG,IAAI,GAAG,EAAkC,CAAC;IAG5E,CAAC;CAAA;AAbD,sBAaC","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 Rendering\r\n */\r\n\r\nimport { Id64String } from \"@itwin/core-bentley\";\r\nimport { SpatialClassifier } from \"@itwin/core-common\";\r\nimport { RenderGraphic } from \"./RenderGraphic\";\r\nimport { RenderPlanarClassifier } from \"./RenderPlanarClassifier\";\r\nimport { RenderTextureDrape } from \"./RenderSystem\";\r\n\r\n/** Describes the spatial classification applied to a [[Scene]].\r\n * @internal\r\n */\r\nexport interface SceneVolumeClassifier {\r\n classifier: SpatialClassifier;\r\n modelId: Id64String;\r\n}\r\n\r\n/** Holds a collection of objects comprising the scene to be drawn by a [[Viewport]]'s.\r\n * @see [[SceneContext]] for the context in which the scene is created.\r\n * @public\r\n * @extensions\r\n */\r\nexport class Scene {\r\n /** Graphics to be drawn as a \"normal\" part of the scene - that is, with depth. */\r\n public readonly foreground: RenderGraphic[] = [];\r\n /** Graphics to be drawn in the background behind all other graphics. */\r\n public readonly background: RenderGraphic[] = [];\r\n /** Graphics to be overlaid atop all other graphics. */\r\n public readonly overlay: RenderGraphic[] = [];\r\n /** @internal */\r\n public readonly planarClassifiers = new Map<string, RenderPlanarClassifier>(); // Classifier model id to planar classifier.\r\n /** @internal */\r\n public readonly textureDrapes = new Map<Id64String, RenderTextureDrape>();\r\n /** @internal */\r\n public volumeClassifier?: SceneVolumeClassifier;\r\n}\r\n"]}