@itwin/core-frontend 4.1.0-dev.7 → 4.1.0-dev.70

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 (1224) hide show
  1. package/CHANGELOG.md +100 -1
  2. package/lib/cjs/AccuDraw.d.ts +3 -4
  3. package/lib/cjs/AccuDraw.d.ts.map +1 -1
  4. package/lib/cjs/AccuDraw.js +6 -7
  5. package/lib/cjs/AccuDraw.js.map +1 -1
  6. package/lib/cjs/AccuSnap.d.ts +7 -1
  7. package/lib/cjs/AccuSnap.d.ts.map +1 -1
  8. package/lib/cjs/AccuSnap.js +24 -6
  9. package/lib/cjs/AccuSnap.js.map +1 -1
  10. package/lib/cjs/BackgroundMapGeometry.d.ts +3 -2
  11. package/lib/cjs/BackgroundMapGeometry.d.ts.map +1 -1
  12. package/lib/cjs/BackgroundMapGeometry.js +47 -7
  13. package/lib/cjs/BackgroundMapGeometry.js.map +1 -1
  14. package/lib/cjs/BriefcaseConnection.d.ts +3 -3
  15. package/lib/cjs/BriefcaseConnection.js +3 -3
  16. package/lib/cjs/BriefcaseConnection.js.map +1 -1
  17. package/lib/cjs/BriefcaseTxns.d.ts +2 -2
  18. package/lib/cjs/BriefcaseTxns.d.ts.map +1 -1
  19. package/lib/cjs/BriefcaseTxns.js +3 -3
  20. package/lib/cjs/BriefcaseTxns.js.map +1 -1
  21. package/lib/cjs/ChangeFlags.d.ts +25 -12
  22. package/lib/cjs/ChangeFlags.d.ts.map +1 -1
  23. package/lib/cjs/ChangeFlags.js +24 -11
  24. package/lib/cjs/ChangeFlags.js.map +1 -1
  25. package/lib/cjs/CheckpointConnection.js +1 -1
  26. package/lib/cjs/CheckpointConnection.js.map +1 -1
  27. package/lib/cjs/DisplayStyleState.d.ts.map +1 -1
  28. package/lib/cjs/DisplayStyleState.js +2 -1
  29. package/lib/cjs/DisplayStyleState.js.map +1 -1
  30. package/lib/cjs/DrawingViewState.d.ts +2 -2
  31. package/lib/cjs/DrawingViewState.d.ts.map +1 -1
  32. package/lib/cjs/DrawingViewState.js +3 -3
  33. package/lib/cjs/DrawingViewState.js.map +1 -1
  34. package/lib/cjs/ElementLocateManager.d.ts +0 -1
  35. package/lib/cjs/ElementLocateManager.d.ts.map +1 -1
  36. package/lib/cjs/ElementLocateManager.js +11 -19
  37. package/lib/cjs/ElementLocateManager.js.map +1 -1
  38. package/lib/cjs/EnvironmentDecorations.js +1 -1
  39. package/lib/cjs/EnvironmentDecorations.js.map +1 -1
  40. package/lib/cjs/FrustumAnimator.js.map +1 -1
  41. package/lib/cjs/GeoServices.d.ts +37 -7
  42. package/lib/cjs/GeoServices.d.ts.map +1 -1
  43. package/lib/cjs/GeoServices.js +75 -25
  44. package/lib/cjs/GeoServices.js.map +1 -1
  45. package/lib/cjs/GraphicalEditingScope.d.ts +2 -2
  46. package/lib/cjs/GraphicalEditingScope.d.ts.map +1 -1
  47. package/lib/cjs/GraphicalEditingScope.js +1 -1
  48. package/lib/cjs/GraphicalEditingScope.js.map +1 -1
  49. package/lib/cjs/HitDetail.d.ts +100 -29
  50. package/lib/cjs/HitDetail.d.ts.map +1 -1
  51. package/lib/cjs/HitDetail.js +89 -36
  52. package/lib/cjs/HitDetail.js.map +1 -1
  53. package/lib/cjs/IModelApp.d.ts +18 -14
  54. package/lib/cjs/IModelApp.d.ts.map +1 -1
  55. package/lib/cjs/IModelApp.js +22 -18
  56. package/lib/cjs/IModelApp.js.map +1 -1
  57. package/lib/cjs/IModelConnection.d.ts +64 -19
  58. package/lib/cjs/IModelConnection.d.ts.map +1 -1
  59. package/lib/cjs/IModelConnection.js +131 -20
  60. package/lib/cjs/IModelConnection.js.map +1 -1
  61. package/lib/cjs/IpcApp.d.ts +1 -1
  62. package/lib/cjs/IpcApp.d.ts.map +1 -1
  63. package/lib/cjs/IpcApp.js +4 -4
  64. package/lib/cjs/IpcApp.js.map +1 -1
  65. package/lib/cjs/LocalhostIpcApp.js +1 -1
  66. package/lib/cjs/LocalhostIpcApp.js.map +1 -1
  67. package/lib/cjs/Marker.d.ts +1 -1
  68. package/lib/cjs/Marker.d.ts.map +1 -1
  69. package/lib/cjs/Marker.js +3 -3
  70. package/lib/cjs/Marker.js.map +1 -1
  71. package/lib/cjs/NativeApp.d.ts.map +1 -1
  72. package/lib/cjs/NativeApp.js +4 -4
  73. package/lib/cjs/NativeApp.js.map +1 -1
  74. package/lib/cjs/NoRenderApp.d.ts +1 -1
  75. package/lib/cjs/NoRenderApp.d.ts.map +1 -1
  76. package/lib/cjs/NoRenderApp.js +1 -1
  77. package/lib/cjs/NoRenderApp.js.map +1 -1
  78. package/lib/cjs/RealityDataSource.js +1 -1
  79. package/lib/cjs/RealityDataSource.js.map +1 -1
  80. package/lib/cjs/RealityDataSourceContextShareImpl.js +1 -1
  81. package/lib/cjs/RealityDataSourceContextShareImpl.js.map +1 -1
  82. package/lib/cjs/SheetViewState.d.ts +9 -7
  83. package/lib/cjs/SheetViewState.d.ts.map +1 -1
  84. package/lib/cjs/SheetViewState.js +22 -7
  85. package/lib/cjs/SheetViewState.js.map +1 -1
  86. package/lib/cjs/SpatialViewState.d.ts +20 -5
  87. package/lib/cjs/SpatialViewState.d.ts.map +1 -1
  88. package/lib/cjs/SpatialViewState.js +13 -5
  89. package/lib/cjs/SpatialViewState.js.map +1 -1
  90. package/lib/cjs/Sprites.js +2 -2
  91. package/lib/cjs/Sprites.js.map +1 -1
  92. package/lib/cjs/TentativePoint.d.ts.map +1 -1
  93. package/lib/cjs/TentativePoint.js +10 -1
  94. package/lib/cjs/TentativePoint.js.map +1 -1
  95. package/lib/cjs/ViewContext.d.ts +19 -0
  96. package/lib/cjs/ViewContext.d.ts.map +1 -1
  97. package/lib/cjs/ViewContext.js +9 -0
  98. package/lib/cjs/ViewContext.js.map +1 -1
  99. package/lib/cjs/ViewCreator3d.d.ts +3 -6
  100. package/lib/cjs/ViewCreator3d.d.ts.map +1 -1
  101. package/lib/cjs/ViewCreator3d.js +12 -33
  102. package/lib/cjs/ViewCreator3d.js.map +1 -1
  103. package/lib/cjs/ViewGlobalLocation.d.ts.map +1 -1
  104. package/lib/cjs/ViewGlobalLocation.js +4 -3
  105. package/lib/cjs/ViewGlobalLocation.js.map +1 -1
  106. package/lib/cjs/ViewManager.d.ts +4 -2
  107. package/lib/cjs/ViewManager.d.ts.map +1 -1
  108. package/lib/cjs/ViewManager.js +4 -2
  109. package/lib/cjs/ViewManager.js.map +1 -1
  110. package/lib/cjs/ViewPose.d.ts +11 -11
  111. package/lib/cjs/ViewPose.d.ts.map +1 -1
  112. package/lib/cjs/ViewPose.js +17 -11
  113. package/lib/cjs/ViewPose.js.map +1 -1
  114. package/lib/cjs/ViewState.d.ts +44 -26
  115. package/lib/cjs/ViewState.d.ts.map +1 -1
  116. package/lib/cjs/ViewState.js +52 -25
  117. package/lib/cjs/ViewState.js.map +1 -1
  118. package/lib/cjs/ViewingSpace.js +1 -1
  119. package/lib/cjs/ViewingSpace.js.map +1 -1
  120. package/lib/cjs/Viewport.d.ts +59 -21
  121. package/lib/cjs/Viewport.d.ts.map +1 -1
  122. package/lib/cjs/Viewport.js +68 -25
  123. package/lib/cjs/Viewport.js.map +1 -1
  124. package/lib/cjs/ViewportSync.d.ts +2 -2
  125. package/lib/cjs/ViewportSync.d.ts.map +1 -1
  126. package/lib/cjs/ViewportSync.js +2 -2
  127. package/lib/cjs/ViewportSync.js.map +1 -1
  128. package/lib/cjs/common/FrontendLoggerCategory.d.ts.map +1 -0
  129. package/lib/cjs/common/FrontendLoggerCategory.js.map +1 -0
  130. package/lib/cjs/common/ImageUtil.d.ts.map +1 -0
  131. package/lib/cjs/{ImageUtil.js → common/ImageUtil.js} +2 -0
  132. package/lib/cjs/common/ImageUtil.js.map +1 -0
  133. package/lib/cjs/common/ViewRect.d.ts.map +1 -0
  134. package/lib/cjs/common/ViewRect.js.map +1 -0
  135. package/lib/cjs/common/WorkerProxy.d.ts +73 -0
  136. package/lib/cjs/common/WorkerProxy.d.ts.map +1 -0
  137. package/lib/cjs/common/WorkerProxy.js +54 -0
  138. package/lib/cjs/common/WorkerProxy.js.map +1 -0
  139. package/lib/{esm → cjs/common}/gltf/GltfModel.d.ts +1 -1
  140. package/lib/cjs/common/gltf/GltfModel.d.ts.map +1 -0
  141. package/lib/cjs/common/gltf/GltfModel.js.map +1 -0
  142. package/lib/cjs/common/gltf/GltfParser.d.ts.map +1 -0
  143. package/lib/cjs/common/gltf/GltfParser.js.map +1 -0
  144. package/lib/cjs/common/gltf/GltfSchema.d.ts.map +1 -0
  145. package/lib/cjs/common/gltf/GltfSchema.js.map +1 -0
  146. package/lib/cjs/common/imdl/CompactEdges.d.ts +27 -0
  147. package/lib/cjs/common/imdl/CompactEdges.d.ts.map +1 -0
  148. package/lib/cjs/common/imdl/CompactEdges.js +96 -0
  149. package/lib/cjs/common/imdl/CompactEdges.js.map +1 -0
  150. package/lib/cjs/{imdl → common/imdl}/ImdlModel.d.ts +5 -0
  151. package/lib/cjs/common/imdl/ImdlModel.d.ts.map +1 -0
  152. package/lib/cjs/common/imdl/ImdlModel.js +71 -0
  153. package/lib/cjs/common/imdl/ImdlModel.js.map +1 -0
  154. package/lib/{esm → cjs/common}/imdl/ImdlSchema.d.ts +68 -36
  155. package/lib/cjs/common/imdl/ImdlSchema.d.ts.map +1 -0
  156. package/lib/cjs/common/imdl/ImdlSchema.js +23 -0
  157. package/lib/cjs/common/imdl/ImdlSchema.js.map +1 -0
  158. package/lib/cjs/{imdl/ImdlParser.d.ts → common/imdl/ParseImdlDocument.d.ts} +13 -8
  159. package/lib/cjs/common/imdl/ParseImdlDocument.d.ts.map +1 -0
  160. package/lib/cjs/{imdl/ImdlParser.js → common/imdl/ParseImdlDocument.js} +52 -37
  161. package/lib/cjs/common/imdl/ParseImdlDocument.js.map +1 -0
  162. package/lib/cjs/common/render/AnimationNodeId.d.ts +11 -0
  163. package/lib/cjs/common/render/AnimationNodeId.d.ts.map +1 -0
  164. package/lib/cjs/common/render/AnimationNodeId.js +19 -0
  165. package/lib/cjs/common/render/AnimationNodeId.js.map +1 -0
  166. package/lib/{esm/render/RenderMaterial.d.ts → cjs/common/render/MaterialParams.d.ts} +7 -20
  167. package/lib/cjs/common/render/MaterialParams.d.ts.map +1 -0
  168. package/lib/cjs/{render/RenderMaterial.js → common/render/MaterialParams.js} +1 -1
  169. package/lib/cjs/common/render/MaterialParams.js.map +1 -0
  170. package/lib/cjs/common/render/TextureParams.d.ts +30 -0
  171. package/lib/cjs/common/render/TextureParams.d.ts.map +1 -0
  172. package/lib/cjs/{render/RenderTexture.js → common/render/TextureParams.js} +1 -1
  173. package/lib/cjs/common/render/TextureParams.js.map +1 -0
  174. package/lib/{esm → cjs/common}/render/primitives/AuxChannelTable.d.ts +8 -8
  175. package/lib/cjs/common/render/primitives/AuxChannelTable.d.ts.map +1 -0
  176. package/lib/cjs/{render → common/render}/primitives/AuxChannelTable.js +9 -9
  177. package/lib/cjs/common/render/primitives/AuxChannelTable.js.map +1 -0
  178. package/lib/cjs/common/render/primitives/DisplayParams.d.ts.map +1 -0
  179. package/lib/cjs/common/render/primitives/DisplayParams.js.map +1 -0
  180. package/lib/cjs/common/render/primitives/EdgeParams.d.ts +94 -0
  181. package/lib/cjs/common/render/primitives/EdgeParams.d.ts.map +1 -0
  182. package/lib/cjs/common/render/primitives/EdgeParams.js +46 -0
  183. package/lib/cjs/common/render/primitives/EdgeParams.js.map +1 -0
  184. package/lib/cjs/common/render/primitives/MeshParams.d.ts +20 -0
  185. package/lib/cjs/common/render/primitives/MeshParams.d.ts.map +1 -0
  186. package/lib/cjs/{imdl/ImdlModel.js → common/render/primitives/MeshParams.js} +2 -2
  187. package/lib/cjs/common/render/primitives/MeshParams.js.map +1 -0
  188. package/lib/cjs/common/render/primitives/MeshPrimitive.d.ts +29 -0
  189. package/lib/cjs/common/render/primitives/MeshPrimitive.d.ts.map +1 -0
  190. package/lib/cjs/common/render/primitives/MeshPrimitive.js +18 -0
  191. package/lib/cjs/common/render/primitives/MeshPrimitive.js.map +1 -0
  192. package/lib/cjs/common/render/primitives/PointStringParams.d.ts +14 -0
  193. package/lib/cjs/common/render/primitives/PointStringParams.d.ts.map +1 -0
  194. package/lib/cjs/common/render/primitives/PointStringParams.js +10 -0
  195. package/lib/cjs/common/render/primitives/PointStringParams.js.map +1 -0
  196. package/lib/cjs/common/render/primitives/PolylineParams.d.ts +29 -0
  197. package/lib/cjs/common/render/primitives/PolylineParams.d.ts.map +1 -0
  198. package/lib/cjs/common/render/primitives/PolylineParams.js +10 -0
  199. package/lib/cjs/common/render/primitives/PolylineParams.js.map +1 -0
  200. package/lib/{esm → cjs/common}/render/primitives/SurfaceParams.d.ts +1 -1
  201. package/lib/cjs/common/render/primitives/SurfaceParams.d.ts.map +1 -0
  202. package/lib/cjs/common/render/primitives/SurfaceParams.js.map +1 -0
  203. package/lib/cjs/common/render/primitives/VertexIndices.d.ts +26 -0
  204. package/lib/cjs/common/render/primitives/VertexIndices.d.ts.map +1 -0
  205. package/lib/cjs/common/render/primitives/VertexIndices.js +64 -0
  206. package/lib/cjs/common/render/primitives/VertexIndices.js.map +1 -0
  207. package/lib/cjs/common/render/primitives/VertexTable.d.ts +45 -0
  208. package/lib/cjs/common/render/primitives/VertexTable.d.ts.map +1 -0
  209. package/lib/cjs/common/render/primitives/VertexTable.js +38 -0
  210. package/lib/cjs/common/render/primitives/VertexTable.js.map +1 -0
  211. package/lib/{esm → cjs/common}/render/primitives/VertexTableSplitter.d.ts +20 -3
  212. package/lib/cjs/common/render/primitives/VertexTableSplitter.d.ts.map +1 -0
  213. package/lib/cjs/{render → common/render}/primitives/VertexTableSplitter.js +33 -23
  214. package/lib/cjs/common/render/primitives/VertexTableSplitter.js.map +1 -0
  215. package/lib/cjs/core-frontend.d.ts +45 -11
  216. package/lib/cjs/core-frontend.d.ts.map +1 -1
  217. package/lib/cjs/core-frontend.js +45 -11
  218. package/lib/cjs/core-frontend.js.map +1 -1
  219. package/lib/cjs/extension/ExtensionAdmin.js +1 -1
  220. package/lib/cjs/extension/ExtensionAdmin.js.map +1 -1
  221. package/lib/cjs/extension/providers/ExtensionLoadScript.js.map +1 -1
  222. package/lib/cjs/quantity-formatting/QuantityFormatter.js +1 -1
  223. package/lib/cjs/quantity-formatting/QuantityFormatter.js.map +1 -1
  224. package/lib/cjs/render/CanvasDecoration.d.ts +6 -2
  225. package/lib/cjs/render/CanvasDecoration.d.ts.map +1 -1
  226. package/lib/cjs/render/CanvasDecoration.js.map +1 -1
  227. package/lib/cjs/render/CreateRenderMaterialArgs.d.ts +24 -0
  228. package/lib/cjs/render/CreateRenderMaterialArgs.d.ts.map +1 -0
  229. package/lib/cjs/render/CreateRenderMaterialArgs.js +10 -0
  230. package/lib/cjs/render/CreateRenderMaterialArgs.js.map +1 -0
  231. package/lib/{esm/render/RenderTexture.d.ts → cjs/render/CreateTextureArgs.d.ts} +4 -28
  232. package/lib/cjs/render/CreateTextureArgs.d.ts.map +1 -0
  233. package/lib/cjs/render/CreateTextureArgs.js +10 -0
  234. package/lib/cjs/render/CreateTextureArgs.js.map +1 -0
  235. package/lib/cjs/render/GraphicBranch.d.ts +5 -7
  236. package/lib/cjs/render/GraphicBranch.d.ts.map +1 -1
  237. package/lib/cjs/render/GraphicBranch.js +1 -9
  238. package/lib/cjs/render/GraphicBranch.js.map +1 -1
  239. package/lib/cjs/render/InstancedGraphicParams.d.ts +3 -4
  240. package/lib/cjs/render/InstancedGraphicParams.d.ts.map +1 -1
  241. package/lib/cjs/render/InstancedGraphicParams.js.map +1 -1
  242. package/lib/cjs/render/MockRender.d.ts +4 -4
  243. package/lib/cjs/render/MockRender.d.ts.map +1 -1
  244. package/lib/cjs/render/MockRender.js +1 -1
  245. package/lib/cjs/render/MockRender.js.map +1 -1
  246. package/lib/cjs/render/ParticleCollectionBuilder.d.ts.map +1 -1
  247. package/lib/cjs/render/ParticleCollectionBuilder.js +5 -5
  248. package/lib/cjs/render/ParticleCollectionBuilder.js.map +1 -1
  249. package/lib/cjs/render/Pixel.d.ts +57 -0
  250. package/lib/cjs/render/Pixel.d.ts.map +1 -1
  251. package/lib/cjs/render/Pixel.js +41 -0
  252. package/lib/cjs/render/Pixel.js.map +1 -1
  253. package/lib/cjs/render/RealityMeshParams.js +2 -2
  254. package/lib/cjs/render/RealityMeshParams.js.map +1 -1
  255. package/lib/cjs/render/RenderSystem.d.ts +24 -10
  256. package/lib/cjs/render/RenderSystem.d.ts.map +1 -1
  257. package/lib/cjs/render/RenderSystem.js +7 -8
  258. package/lib/cjs/render/RenderSystem.js.map +1 -1
  259. package/lib/cjs/render/RenderTarget.d.ts +1 -1
  260. package/lib/cjs/render/RenderTarget.d.ts.map +1 -1
  261. package/lib/cjs/render/RenderTarget.js.map +1 -1
  262. package/lib/cjs/render/UpsampleRealityMeshParams.js.map +1 -1
  263. package/lib/cjs/render/VisibleFeature.d.ts +1 -1
  264. package/lib/cjs/render/VisibleFeature.d.ts.map +1 -1
  265. package/lib/cjs/render/VisibleFeature.js.map +1 -1
  266. package/lib/cjs/render/primitives/EdgeParams.d.ts +2 -89
  267. package/lib/cjs/render/primitives/EdgeParams.d.ts.map +1 -1
  268. package/lib/cjs/render/primitives/EdgeParams.js +44 -80
  269. package/lib/cjs/render/primitives/EdgeParams.js.map +1 -1
  270. package/lib/cjs/render/primitives/PointCloudPrimitive.d.ts +1 -0
  271. package/lib/cjs/render/primitives/PointCloudPrimitive.d.ts.map +1 -1
  272. package/lib/cjs/render/primitives/PointCloudPrimitive.js.map +1 -1
  273. package/lib/cjs/render/primitives/PointStringParams.d.ts +3 -11
  274. package/lib/cjs/render/primitives/PointStringParams.d.ts.map +1 -1
  275. package/lib/cjs/render/primitives/PointStringParams.js +27 -30
  276. package/lib/cjs/render/primitives/PointStringParams.js.map +1 -1
  277. package/lib/cjs/render/primitives/Polyface.d.ts +1 -1
  278. package/lib/cjs/render/primitives/Polyface.d.ts.map +1 -1
  279. package/lib/cjs/render/primitives/Polyface.js.map +1 -1
  280. package/lib/cjs/render/primitives/PolylineParams.d.ts +8 -37
  281. package/lib/cjs/render/primitives/PolylineParams.d.ts.map +1 -1
  282. package/lib/cjs/render/primitives/PolylineParams.js +40 -48
  283. package/lib/cjs/render/primitives/PolylineParams.js.map +1 -1
  284. package/lib/cjs/render/primitives/Strokes.d.ts +1 -1
  285. package/lib/cjs/render/primitives/Strokes.d.ts.map +1 -1
  286. package/lib/cjs/render/primitives/Strokes.js.map +1 -1
  287. package/lib/cjs/render/primitives/VertexTableBuilder.d.ts +31 -0
  288. package/lib/cjs/render/primitives/VertexTableBuilder.d.ts.map +1 -0
  289. package/lib/cjs/render/primitives/{VertexTable.js → VertexTableBuilder.js} +62 -173
  290. package/lib/cjs/render/primitives/VertexTableBuilder.js.map +1 -0
  291. package/lib/cjs/render/primitives/geometry/GeometryAccumulator.d.ts +1 -1
  292. package/lib/cjs/render/primitives/geometry/GeometryAccumulator.d.ts.map +1 -1
  293. package/lib/cjs/render/primitives/geometry/GeometryAccumulator.js.map +1 -1
  294. package/lib/cjs/render/primitives/geometry/GeometryListBuilder.d.ts +1 -1
  295. package/lib/cjs/render/primitives/geometry/GeometryListBuilder.d.ts.map +1 -1
  296. package/lib/cjs/render/primitives/geometry/GeometryListBuilder.js +1 -1
  297. package/lib/cjs/render/primitives/geometry/GeometryListBuilder.js.map +1 -1
  298. package/lib/cjs/render/primitives/geometry/GeometryPrimitives.d.ts +1 -1
  299. package/lib/cjs/render/primitives/geometry/GeometryPrimitives.d.ts.map +1 -1
  300. package/lib/cjs/render/primitives/geometry/GeometryPrimitives.js +1 -1
  301. package/lib/cjs/render/primitives/geometry/GeometryPrimitives.js.map +1 -1
  302. package/lib/cjs/render/primitives/mesh/MeshBuilder.d.ts +2 -1
  303. package/lib/cjs/render/primitives/mesh/MeshBuilder.d.ts.map +1 -1
  304. package/lib/cjs/render/primitives/mesh/MeshBuilder.js +5 -2
  305. package/lib/cjs/render/primitives/mesh/MeshBuilder.js.map +1 -1
  306. package/lib/cjs/render/primitives/mesh/MeshBuilderMap.d.ts +6 -5
  307. package/lib/cjs/render/primitives/mesh/MeshBuilderMap.d.ts.map +1 -1
  308. package/lib/cjs/render/primitives/mesh/MeshBuilderMap.js +7 -4
  309. package/lib/cjs/render/primitives/mesh/MeshBuilderMap.js.map +1 -1
  310. package/lib/cjs/render/primitives/mesh/MeshPrimitives.d.ts +58 -31
  311. package/lib/cjs/render/primitives/mesh/MeshPrimitives.d.ts.map +1 -1
  312. package/lib/cjs/render/primitives/mesh/MeshPrimitives.js +25 -29
  313. package/lib/cjs/render/primitives/mesh/MeshPrimitives.js.map +1 -1
  314. package/lib/cjs/render/webgl/BatchState.js +1 -1
  315. package/lib/cjs/render/webgl/BatchState.js.map +1 -1
  316. package/lib/cjs/render/webgl/BranchState.d.ts +3 -0
  317. package/lib/cjs/render/webgl/BranchState.d.ts.map +1 -1
  318. package/lib/cjs/render/webgl/BranchState.js +2 -0
  319. package/lib/cjs/render/webgl/BranchState.js.map +1 -1
  320. package/lib/cjs/render/webgl/CachedGeometry.d.ts +1 -1
  321. package/lib/cjs/render/webgl/CachedGeometry.d.ts.map +1 -1
  322. package/lib/cjs/render/webgl/CachedGeometry.js.map +1 -1
  323. package/lib/cjs/render/webgl/ColorInfo.d.ts +1 -1
  324. package/lib/cjs/render/webgl/ColorInfo.d.ts.map +1 -1
  325. package/lib/cjs/render/webgl/ColorInfo.js.map +1 -1
  326. package/lib/cjs/render/webgl/EdgeGeometry.d.ts +2 -2
  327. package/lib/cjs/render/webgl/EdgeGeometry.d.ts.map +1 -1
  328. package/lib/cjs/render/webgl/EdgeGeometry.js.map +1 -1
  329. package/lib/cjs/render/webgl/FeatureOverrides.js +1 -1
  330. package/lib/cjs/render/webgl/FeatureOverrides.js.map +1 -1
  331. package/lib/cjs/render/webgl/Graphic.d.ts +7 -1
  332. package/lib/cjs/render/webgl/Graphic.d.ts.map +1 -1
  333. package/lib/cjs/render/webgl/Graphic.js +7 -2
  334. package/lib/cjs/render/webgl/Graphic.js.map +1 -1
  335. package/lib/cjs/render/webgl/IndexedEdgeGeometry.d.ts +1 -1
  336. package/lib/cjs/render/webgl/IndexedEdgeGeometry.d.ts.map +1 -1
  337. package/lib/cjs/render/webgl/IndexedEdgeGeometry.js.map +1 -1
  338. package/lib/cjs/render/webgl/InstancedGeometry.js.map +1 -1
  339. package/lib/cjs/render/webgl/Material.d.ts +1 -1
  340. package/lib/cjs/render/webgl/Material.d.ts.map +1 -1
  341. package/lib/cjs/render/webgl/Material.js.map +1 -1
  342. package/lib/cjs/render/webgl/Mesh.d.ts +2 -2
  343. package/lib/cjs/render/webgl/Mesh.d.ts.map +1 -1
  344. package/lib/cjs/render/webgl/Mesh.js +1 -1
  345. package/lib/cjs/render/webgl/Mesh.js.map +1 -1
  346. package/lib/cjs/render/webgl/MeshData.d.ts +2 -2
  347. package/lib/cjs/render/webgl/MeshData.d.ts.map +1 -1
  348. package/lib/cjs/render/webgl/MeshData.js.map +1 -1
  349. package/lib/cjs/render/webgl/MeshGeometry.d.ts +1 -1
  350. package/lib/cjs/render/webgl/MeshGeometry.d.ts.map +1 -1
  351. package/lib/cjs/render/webgl/PointString.d.ts +1 -1
  352. package/lib/cjs/render/webgl/PointString.d.ts.map +1 -1
  353. package/lib/cjs/render/webgl/PointString.js.map +1 -1
  354. package/lib/cjs/render/webgl/Polyline.d.ts +1 -1
  355. package/lib/cjs/render/webgl/Polyline.d.ts.map +1 -1
  356. package/lib/cjs/render/webgl/Polyline.js.map +1 -1
  357. package/lib/cjs/render/webgl/RealityMesh.js.map +1 -1
  358. package/lib/cjs/render/webgl/RenderCommands.js +1 -1
  359. package/lib/cjs/render/webgl/RenderCommands.js.map +1 -1
  360. package/lib/cjs/render/webgl/SceneCompositor.d.ts +2 -1
  361. package/lib/cjs/render/webgl/SceneCompositor.d.ts.map +1 -1
  362. package/lib/cjs/render/webgl/SceneCompositor.js +5 -2
  363. package/lib/cjs/render/webgl/SceneCompositor.js.map +1 -1
  364. package/lib/cjs/render/webgl/SurfaceGeometry.d.ts +1 -1
  365. package/lib/cjs/render/webgl/SurfaceGeometry.d.ts.map +1 -1
  366. package/lib/cjs/render/webgl/SurfaceGeometry.js +1 -1
  367. package/lib/cjs/render/webgl/SurfaceGeometry.js.map +1 -1
  368. package/lib/cjs/render/webgl/System.d.ts +7 -6
  369. package/lib/cjs/render/webgl/System.d.ts.map +1 -1
  370. package/lib/cjs/render/webgl/System.js +2 -2
  371. package/lib/cjs/render/webgl/System.js.map +1 -1
  372. package/lib/cjs/render/webgl/Target.d.ts +1 -1
  373. package/lib/cjs/render/webgl/Target.d.ts.map +1 -1
  374. package/lib/cjs/render/webgl/Target.js +14 -12
  375. package/lib/cjs/render/webgl/Target.js.map +1 -1
  376. package/lib/cjs/render/webgl/Texture.d.ts +1 -1
  377. package/lib/cjs/render/webgl/Texture.d.ts.map +1 -1
  378. package/lib/cjs/render/webgl/Texture.js +1 -1
  379. package/lib/cjs/render/webgl/Texture.js.map +1 -1
  380. package/lib/cjs/render/webgl/UniformHandle.js +1 -1
  381. package/lib/cjs/render/webgl/UniformHandle.js.map +1 -1
  382. package/lib/cjs/render/webgl/VertexLUT.d.ts +2 -2
  383. package/lib/cjs/render/webgl/VertexLUT.d.ts.map +1 -1
  384. package/lib/cjs/render/webgl/VertexLUT.js.map +1 -1
  385. package/lib/cjs/render/webgl/glsl/Animation.js.map +1 -1
  386. package/lib/cjs/render/webgl/glsl/Atmosphere.js.map +1 -1
  387. package/lib/cjs/render/webgl/glsl/RealityMesh.d.ts.map +1 -1
  388. package/lib/cjs/render/webgl/glsl/RealityMesh.js +32 -19
  389. package/lib/cjs/render/webgl/glsl/RealityMesh.js.map +1 -1
  390. package/lib/cjs/tile/B3dmReader.d.ts +1 -1
  391. package/lib/cjs/tile/B3dmReader.d.ts.map +1 -1
  392. package/lib/cjs/tile/B3dmReader.js +1 -1
  393. package/lib/cjs/tile/B3dmReader.js.map +1 -1
  394. package/lib/cjs/tile/DynamicIModelTile.js +1 -1
  395. package/lib/cjs/tile/DynamicIModelTile.js.map +1 -1
  396. package/lib/cjs/tile/FetchCloudStorage.d.ts +15 -0
  397. package/lib/cjs/tile/FetchCloudStorage.d.ts.map +1 -0
  398. package/lib/cjs/tile/FetchCloudStorage.js +35 -0
  399. package/lib/cjs/tile/FetchCloudStorage.js.map +1 -0
  400. package/lib/cjs/tile/GltfReader.d.ts +13 -4
  401. package/lib/cjs/tile/GltfReader.d.ts.map +1 -1
  402. package/lib/cjs/tile/GltfReader.js +80 -28
  403. package/lib/cjs/tile/GltfReader.js.map +1 -1
  404. package/lib/cjs/tile/IModelTile.d.ts.map +1 -1
  405. package/lib/cjs/tile/IModelTile.js +4 -9
  406. package/lib/cjs/tile/IModelTile.js.map +1 -1
  407. package/lib/cjs/tile/IModelTileTree.d.ts +4 -1
  408. package/lib/cjs/tile/IModelTileTree.d.ts.map +1 -1
  409. package/lib/cjs/tile/IModelTileTree.js +15 -0
  410. package/lib/cjs/tile/IModelTileTree.js.map +1 -1
  411. package/lib/cjs/tile/ImdlDecoder.d.ts +52 -0
  412. package/lib/cjs/tile/ImdlDecoder.d.ts.map +1 -0
  413. package/lib/cjs/tile/ImdlDecoder.js +35 -0
  414. package/lib/cjs/tile/ImdlDecoder.js.map +1 -0
  415. package/lib/{esm/imdl → cjs/tile}/ImdlGraphicsCreator.d.ts +1 -1
  416. package/lib/cjs/tile/ImdlGraphicsCreator.d.ts.map +1 -0
  417. package/lib/cjs/{imdl → tile}/ImdlGraphicsCreator.js +13 -13
  418. package/lib/cjs/tile/ImdlGraphicsCreator.js.map +1 -0
  419. package/lib/cjs/tile/ImdlParser.d.ts +26 -0
  420. package/lib/cjs/tile/ImdlParser.d.ts.map +1 -0
  421. package/lib/cjs/tile/ImdlParser.js +72 -0
  422. package/lib/cjs/tile/ImdlParser.js.map +1 -0
  423. package/lib/cjs/tile/ImdlReader.d.ts +6 -1
  424. package/lib/cjs/tile/ImdlReader.d.ts.map +1 -1
  425. package/lib/cjs/tile/ImdlReader.js +16 -11
  426. package/lib/cjs/tile/ImdlReader.js.map +1 -1
  427. package/lib/cjs/tile/OPCFormatInterpreter.js +1 -1
  428. package/lib/cjs/tile/OPCFormatInterpreter.js.map +1 -1
  429. package/lib/cjs/tile/PntsReader.js +1 -1
  430. package/lib/cjs/tile/PntsReader.js.map +1 -1
  431. package/lib/cjs/tile/PrimaryTileTree.d.ts.map +1 -1
  432. package/lib/cjs/tile/PrimaryTileTree.js +2 -1
  433. package/lib/cjs/tile/PrimaryTileTree.js.map +1 -1
  434. package/lib/cjs/tile/RealityModelTileTree.js.map +1 -1
  435. package/lib/cjs/tile/RealityTile.d.ts +8 -3
  436. package/lib/cjs/tile/RealityTile.d.ts.map +1 -1
  437. package/lib/cjs/tile/RealityTile.js +4 -1
  438. package/lib/cjs/tile/RealityTile.js.map +1 -1
  439. package/lib/cjs/tile/RealityTileLoader.d.ts.map +1 -1
  440. package/lib/cjs/tile/RealityTileLoader.js +10 -5
  441. package/lib/cjs/tile/RealityTileLoader.js.map +1 -1
  442. package/lib/cjs/tile/RealityTileTree.js +1 -1
  443. package/lib/cjs/tile/RealityTileTree.js.map +1 -1
  444. package/lib/cjs/tile/ThreeDTileFormatInterpreter.js +1 -1
  445. package/lib/cjs/tile/ThreeDTileFormatInterpreter.js.map +1 -1
  446. package/lib/cjs/tile/TileAdmin.d.ts +14 -11
  447. package/lib/cjs/tile/TileAdmin.d.ts.map +1 -1
  448. package/lib/cjs/tile/TileAdmin.js +9 -52
  449. package/lib/cjs/tile/TileAdmin.js.map +1 -1
  450. package/lib/cjs/tile/TileContent.d.ts +6 -0
  451. package/lib/cjs/tile/TileContent.d.ts.map +1 -1
  452. package/lib/cjs/tile/TileContent.js.map +1 -1
  453. package/lib/cjs/tile/TileStorage.js.map +1 -1
  454. package/lib/cjs/tile/internal.d.ts +9 -0
  455. package/lib/cjs/tile/internal.d.ts.map +1 -1
  456. package/lib/cjs/tile/internal.js +9 -0
  457. package/lib/cjs/tile/internal.js.map +1 -1
  458. package/lib/cjs/tile/map/ArcGisUtilities.d.ts +8 -1
  459. package/lib/cjs/tile/map/ArcGisUtilities.d.ts.map +1 -1
  460. package/lib/cjs/tile/map/ArcGisUtilities.js +21 -0
  461. package/lib/cjs/tile/map/ArcGisUtilities.js.map +1 -1
  462. package/lib/cjs/tile/map/EllipsoidTerrainProvider.d.ts +6 -4
  463. package/lib/cjs/tile/map/EllipsoidTerrainProvider.d.ts.map +1 -1
  464. package/lib/cjs/tile/map/EllipsoidTerrainProvider.js +6 -4
  465. package/lib/cjs/tile/map/EllipsoidTerrainProvider.js.map +1 -1
  466. package/lib/cjs/tile/map/ImageryProviders/ArcGISImageryProvider.d.ts +2 -0
  467. package/lib/cjs/tile/map/ImageryProviders/ArcGISImageryProvider.d.ts.map +1 -1
  468. package/lib/cjs/tile/map/ImageryProviders/ArcGISImageryProvider.js +4 -2
  469. package/lib/cjs/tile/map/ImageryProviders/ArcGISImageryProvider.js.map +1 -1
  470. package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts +55 -2
  471. package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts.map +1 -1
  472. package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js +96 -23
  473. package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js.map +1 -1
  474. package/lib/cjs/tile/map/ImageryProviders/ArcGisAttributeDrivenSymbology.d.ts +11 -0
  475. package/lib/cjs/tile/map/ImageryProviders/ArcGisAttributeDrivenSymbology.d.ts.map +1 -0
  476. package/lib/cjs/{imdl/ImdlSchema.js → tile/map/ImageryProviders/ArcGisAttributeDrivenSymbology.js} +1 -1
  477. package/lib/cjs/tile/map/ImageryProviders/ArcGisAttributeDrivenSymbology.js.map +1 -0
  478. package/lib/cjs/tile/map/ImageryProviders/ArcGisGeometryReaderJSON.d.ts +15 -0
  479. package/lib/cjs/tile/map/ImageryProviders/ArcGisGeometryReaderJSON.d.ts.map +1 -0
  480. package/lib/cjs/tile/map/ImageryProviders/ArcGisGeometryReaderJSON.js +59 -0
  481. package/lib/cjs/tile/map/ImageryProviders/ArcGisGeometryReaderJSON.js.map +1 -0
  482. package/lib/cjs/tile/map/ImageryProviders/ArcGisGeometryRenderer.d.ts +47 -0
  483. package/lib/cjs/tile/map/ImageryProviders/ArcGisGeometryRenderer.d.ts.map +1 -0
  484. package/lib/cjs/tile/map/ImageryProviders/ArcGisGeometryRenderer.js +126 -0
  485. package/lib/cjs/tile/map/ImageryProviders/ArcGisGeometryRenderer.js.map +1 -0
  486. package/lib/cjs/tile/map/ImageryProviders/ArcGisGraphicsRenderer.d.ts +27 -0
  487. package/lib/cjs/tile/map/ImageryProviders/ArcGisGraphicsRenderer.d.ts.map +1 -0
  488. package/lib/cjs/tile/map/ImageryProviders/ArcGisGraphicsRenderer.js +135 -0
  489. package/lib/cjs/tile/map/ImageryProviders/ArcGisGraphicsRenderer.js.map +1 -0
  490. package/lib/cjs/tile/map/ImageryProviders/WebMercator.d.ts +6 -0
  491. package/lib/cjs/tile/map/ImageryProviders/WebMercator.d.ts.map +1 -0
  492. package/lib/cjs/tile/map/ImageryProviders/WebMercator.js +22 -0
  493. package/lib/cjs/tile/map/ImageryProviders/WebMercator.js.map +1 -0
  494. package/lib/cjs/tile/map/ImageryTileTree.d.ts +2 -1
  495. package/lib/cjs/tile/map/ImageryTileTree.d.ts.map +1 -1
  496. package/lib/cjs/tile/map/ImageryTileTree.js +16 -9
  497. package/lib/cjs/tile/map/ImageryTileTree.js.map +1 -1
  498. package/lib/cjs/tile/map/MapFeatureInfo.d.ts +67 -7
  499. package/lib/cjs/tile/map/MapFeatureInfo.d.ts.map +1 -1
  500. package/lib/cjs/tile/map/MapFeatureInfo.js +16 -2
  501. package/lib/cjs/tile/map/MapFeatureInfo.js.map +1 -1
  502. package/lib/cjs/tile/map/MapLayerImageryFormats.d.ts.map +1 -1
  503. package/lib/cjs/tile/map/MapLayerImageryFormats.js +3 -0
  504. package/lib/cjs/tile/map/MapLayerImageryFormats.js.map +1 -1
  505. package/lib/cjs/tile/map/MapLayerImageryProvider.d.ts +4 -1
  506. package/lib/cjs/tile/map/MapLayerImageryProvider.d.ts.map +1 -1
  507. package/lib/cjs/tile/map/MapLayerImageryProvider.js +3 -1
  508. package/lib/cjs/tile/map/MapLayerImageryProvider.js.map +1 -1
  509. package/lib/cjs/tile/map/MapLayerSources.d.ts +4 -1
  510. package/lib/cjs/tile/map/MapLayerSources.d.ts.map +1 -1
  511. package/lib/cjs/tile/map/MapLayerSources.js +3 -0
  512. package/lib/cjs/tile/map/MapLayerSources.js.map +1 -1
  513. package/lib/cjs/tile/map/MapTile.d.ts.map +1 -1
  514. package/lib/cjs/tile/map/MapTile.js +9 -1
  515. package/lib/cjs/tile/map/MapTile.js.map +1 -1
  516. package/lib/cjs/tile/map/MapTileLoader.d.ts.map +1 -1
  517. package/lib/cjs/tile/map/MapTileLoader.js +1 -15
  518. package/lib/cjs/tile/map/MapTileLoader.js.map +1 -1
  519. package/lib/cjs/tile/map/MapTileTree.d.ts +12 -3
  520. package/lib/cjs/tile/map/MapTileTree.d.ts.map +1 -1
  521. package/lib/cjs/tile/map/MapTileTree.js +33 -20
  522. package/lib/cjs/tile/map/MapTileTree.js.map +1 -1
  523. package/lib/cjs/tile/map/MapTiledGraphicsProvider.d.ts +2 -3
  524. package/lib/cjs/tile/map/MapTiledGraphicsProvider.d.ts.map +1 -1
  525. package/lib/cjs/tile/map/MapTiledGraphicsProvider.js +3 -4
  526. package/lib/cjs/tile/map/MapTiledGraphicsProvider.js.map +1 -1
  527. package/lib/cjs/tile/map/MapTilingScheme.d.ts +4 -4
  528. package/lib/cjs/tile/map/MapTilingScheme.d.ts.map +1 -1
  529. package/lib/cjs/tile/map/MapTilingScheme.js +4 -4
  530. package/lib/cjs/tile/map/MapTilingScheme.js.map +1 -1
  531. package/lib/cjs/tile/map/QuadId.js.map +1 -1
  532. package/lib/cjs/tools/ElementSetTool.js +1 -1
  533. package/lib/cjs/tools/ElementSetTool.js.map +1 -1
  534. package/lib/cjs/tools/SelectTool.js +1 -1
  535. package/lib/cjs/tools/SelectTool.js.map +1 -1
  536. package/lib/cjs/tools/ToolAdmin.d.ts +8 -6
  537. package/lib/cjs/tools/ToolAdmin.d.ts.map +1 -1
  538. package/lib/cjs/tools/ToolAdmin.js +11 -8
  539. package/lib/cjs/tools/ToolAdmin.js.map +1 -1
  540. package/lib/cjs/tools/ToolAssistance.d.ts +18 -0
  541. package/lib/cjs/tools/ToolAssistance.d.ts.map +1 -1
  542. package/lib/cjs/tools/ToolAssistance.js +8 -0
  543. package/lib/cjs/tools/ToolAssistance.js.map +1 -1
  544. package/lib/cjs/tools/ViewTool.d.ts.map +1 -1
  545. package/lib/cjs/tools/ViewTool.js +3 -2
  546. package/lib/cjs/tools/ViewTool.js.map +1 -1
  547. package/lib/cjs/workers/ImdlParser/Worker.d.ts +20 -0
  548. package/lib/cjs/workers/ImdlParser/Worker.d.ts.map +1 -0
  549. package/lib/cjs/workers/ImdlParser/Worker.js +32 -0
  550. package/lib/cjs/workers/ImdlParser/Worker.js.map +1 -0
  551. package/lib/cjs/workers/ImdlParser/webpack.config.js +40 -0
  552. package/lib/cjs/workers/RegisterWorker.d.ts +9 -0
  553. package/lib/cjs/workers/RegisterWorker.d.ts.map +1 -0
  554. package/lib/cjs/workers/RegisterWorker.js +36 -0
  555. package/lib/cjs/workers/RegisterWorker.js.map +1 -0
  556. package/lib/esm/AccuDraw.d.ts +3 -4
  557. package/lib/esm/AccuDraw.d.ts.map +1 -1
  558. package/lib/esm/AccuDraw.js +6 -7
  559. package/lib/esm/AccuDraw.js.map +1 -1
  560. package/lib/esm/AccuSnap.d.ts +7 -1
  561. package/lib/esm/AccuSnap.d.ts.map +1 -1
  562. package/lib/esm/AccuSnap.js +24 -6
  563. package/lib/esm/AccuSnap.js.map +1 -1
  564. package/lib/esm/BackgroundMapGeometry.d.ts +3 -2
  565. package/lib/esm/BackgroundMapGeometry.d.ts.map +1 -1
  566. package/lib/esm/BackgroundMapGeometry.js +47 -7
  567. package/lib/esm/BackgroundMapGeometry.js.map +1 -1
  568. package/lib/esm/BriefcaseConnection.d.ts +3 -3
  569. package/lib/esm/BriefcaseConnection.js +3 -3
  570. package/lib/esm/BriefcaseConnection.js.map +1 -1
  571. package/lib/esm/BriefcaseTxns.d.ts +2 -2
  572. package/lib/esm/BriefcaseTxns.d.ts.map +1 -1
  573. package/lib/esm/BriefcaseTxns.js +3 -3
  574. package/lib/esm/BriefcaseTxns.js.map +1 -1
  575. package/lib/esm/ChangeFlags.d.ts +25 -12
  576. package/lib/esm/ChangeFlags.d.ts.map +1 -1
  577. package/lib/esm/ChangeFlags.js +24 -11
  578. package/lib/esm/ChangeFlags.js.map +1 -1
  579. package/lib/esm/CheckpointConnection.js +1 -1
  580. package/lib/esm/CheckpointConnection.js.map +1 -1
  581. package/lib/esm/DisplayStyleState.d.ts.map +1 -1
  582. package/lib/esm/DisplayStyleState.js +2 -1
  583. package/lib/esm/DisplayStyleState.js.map +1 -1
  584. package/lib/esm/DrawingViewState.d.ts +2 -2
  585. package/lib/esm/DrawingViewState.d.ts.map +1 -1
  586. package/lib/esm/DrawingViewState.js +3 -3
  587. package/lib/esm/DrawingViewState.js.map +1 -1
  588. package/lib/esm/ElementLocateManager.d.ts +0 -1
  589. package/lib/esm/ElementLocateManager.d.ts.map +1 -1
  590. package/lib/esm/ElementLocateManager.js +12 -20
  591. package/lib/esm/ElementLocateManager.js.map +1 -1
  592. package/lib/esm/EnvironmentDecorations.js +1 -1
  593. package/lib/esm/EnvironmentDecorations.js.map +1 -1
  594. package/lib/esm/FrustumAnimator.js.map +1 -1
  595. package/lib/esm/GeoServices.d.ts +37 -7
  596. package/lib/esm/GeoServices.d.ts.map +1 -1
  597. package/lib/esm/GeoServices.js +75 -25
  598. package/lib/esm/GeoServices.js.map +1 -1
  599. package/lib/esm/GraphicalEditingScope.d.ts +2 -2
  600. package/lib/esm/GraphicalEditingScope.d.ts.map +1 -1
  601. package/lib/esm/GraphicalEditingScope.js +2 -2
  602. package/lib/esm/GraphicalEditingScope.js.map +1 -1
  603. package/lib/esm/HitDetail.d.ts +100 -29
  604. package/lib/esm/HitDetail.d.ts.map +1 -1
  605. package/lib/esm/HitDetail.js +90 -37
  606. package/lib/esm/HitDetail.js.map +1 -1
  607. package/lib/esm/IModelApp.d.ts +18 -14
  608. package/lib/esm/IModelApp.d.ts.map +1 -1
  609. package/lib/esm/IModelApp.js +22 -18
  610. package/lib/esm/IModelApp.js.map +1 -1
  611. package/lib/esm/IModelConnection.d.ts +64 -19
  612. package/lib/esm/IModelConnection.d.ts.map +1 -1
  613. package/lib/esm/IModelConnection.js +132 -21
  614. package/lib/esm/IModelConnection.js.map +1 -1
  615. package/lib/esm/IpcApp.d.ts +1 -1
  616. package/lib/esm/IpcApp.d.ts.map +1 -1
  617. package/lib/esm/IpcApp.js +5 -5
  618. package/lib/esm/IpcApp.js.map +1 -1
  619. package/lib/esm/LocalhostIpcApp.js +2 -2
  620. package/lib/esm/LocalhostIpcApp.js.map +1 -1
  621. package/lib/esm/Marker.d.ts +1 -1
  622. package/lib/esm/Marker.d.ts.map +1 -1
  623. package/lib/esm/Marker.js +3 -3
  624. package/lib/esm/Marker.js.map +1 -1
  625. package/lib/esm/NativeApp.d.ts.map +1 -1
  626. package/lib/esm/NativeApp.js +5 -5
  627. package/lib/esm/NativeApp.js.map +1 -1
  628. package/lib/esm/NoRenderApp.d.ts +1 -1
  629. package/lib/esm/NoRenderApp.d.ts.map +1 -1
  630. package/lib/esm/NoRenderApp.js +1 -1
  631. package/lib/esm/NoRenderApp.js.map +1 -1
  632. package/lib/esm/RealityDataSource.js +1 -1
  633. package/lib/esm/RealityDataSource.js.map +1 -1
  634. package/lib/esm/RealityDataSourceContextShareImpl.js +1 -1
  635. package/lib/esm/RealityDataSourceContextShareImpl.js.map +1 -1
  636. package/lib/esm/SheetViewState.d.ts +9 -7
  637. package/lib/esm/SheetViewState.d.ts.map +1 -1
  638. package/lib/esm/SheetViewState.js +22 -7
  639. package/lib/esm/SheetViewState.js.map +1 -1
  640. package/lib/esm/SpatialViewState.d.ts +20 -5
  641. package/lib/esm/SpatialViewState.d.ts.map +1 -1
  642. package/lib/esm/SpatialViewState.js +13 -5
  643. package/lib/esm/SpatialViewState.js.map +1 -1
  644. package/lib/esm/Sprites.js +2 -2
  645. package/lib/esm/Sprites.js.map +1 -1
  646. package/lib/esm/TentativePoint.d.ts.map +1 -1
  647. package/lib/esm/TentativePoint.js +10 -1
  648. package/lib/esm/TentativePoint.js.map +1 -1
  649. package/lib/esm/ViewContext.d.ts +19 -0
  650. package/lib/esm/ViewContext.d.ts.map +1 -1
  651. package/lib/esm/ViewContext.js +9 -0
  652. package/lib/esm/ViewContext.js.map +1 -1
  653. package/lib/esm/ViewCreator3d.d.ts +3 -6
  654. package/lib/esm/ViewCreator3d.d.ts.map +1 -1
  655. package/lib/esm/ViewCreator3d.js +14 -35
  656. package/lib/esm/ViewCreator3d.js.map +1 -1
  657. package/lib/esm/ViewGlobalLocation.d.ts.map +1 -1
  658. package/lib/esm/ViewGlobalLocation.js +4 -3
  659. package/lib/esm/ViewGlobalLocation.js.map +1 -1
  660. package/lib/esm/ViewManager.d.ts +4 -2
  661. package/lib/esm/ViewManager.d.ts.map +1 -1
  662. package/lib/esm/ViewManager.js +4 -2
  663. package/lib/esm/ViewManager.js.map +1 -1
  664. package/lib/esm/ViewPose.d.ts +11 -11
  665. package/lib/esm/ViewPose.d.ts.map +1 -1
  666. package/lib/esm/ViewPose.js +17 -11
  667. package/lib/esm/ViewPose.js.map +1 -1
  668. package/lib/esm/ViewState.d.ts +44 -26
  669. package/lib/esm/ViewState.d.ts.map +1 -1
  670. package/lib/esm/ViewState.js +52 -25
  671. package/lib/esm/ViewState.js.map +1 -1
  672. package/lib/esm/ViewingSpace.js +1 -1
  673. package/lib/esm/ViewingSpace.js.map +1 -1
  674. package/lib/esm/Viewport.d.ts +59 -21
  675. package/lib/esm/Viewport.d.ts.map +1 -1
  676. package/lib/esm/Viewport.js +68 -25
  677. package/lib/esm/Viewport.js.map +1 -1
  678. package/lib/esm/ViewportSync.d.ts +2 -2
  679. package/lib/esm/ViewportSync.d.ts.map +1 -1
  680. package/lib/esm/ViewportSync.js +2 -2
  681. package/lib/esm/ViewportSync.js.map +1 -1
  682. package/lib/esm/common/FrontendLoggerCategory.d.ts.map +1 -0
  683. package/lib/esm/common/FrontendLoggerCategory.js.map +1 -0
  684. package/lib/esm/common/ImageUtil.d.ts.map +1 -0
  685. package/lib/esm/{ImageUtil.js → common/ImageUtil.js} +2 -0
  686. package/lib/esm/common/ImageUtil.js.map +1 -0
  687. package/lib/esm/common/ViewRect.d.ts.map +1 -0
  688. package/lib/esm/common/ViewRect.js.map +1 -0
  689. package/lib/esm/common/WorkerProxy.d.ts +73 -0
  690. package/lib/esm/common/WorkerProxy.d.ts.map +1 -0
  691. package/lib/esm/common/WorkerProxy.js +50 -0
  692. package/lib/esm/common/WorkerProxy.js.map +1 -0
  693. package/lib/{cjs → esm/common}/gltf/GltfModel.d.ts +1 -1
  694. package/lib/esm/common/gltf/GltfModel.d.ts.map +1 -0
  695. package/lib/esm/common/gltf/GltfModel.js.map +1 -0
  696. package/lib/esm/common/gltf/GltfParser.d.ts.map +1 -0
  697. package/lib/esm/common/gltf/GltfParser.js.map +1 -0
  698. package/lib/esm/common/gltf/GltfSchema.d.ts.map +1 -0
  699. package/lib/esm/common/gltf/GltfSchema.js.map +1 -0
  700. package/lib/esm/common/imdl/CompactEdges.d.ts +27 -0
  701. package/lib/esm/common/imdl/CompactEdges.d.ts.map +1 -0
  702. package/lib/esm/common/imdl/CompactEdges.js +92 -0
  703. package/lib/esm/common/imdl/CompactEdges.js.map +1 -0
  704. package/lib/esm/{imdl → common/imdl}/ImdlModel.d.ts +5 -0
  705. package/lib/esm/common/imdl/ImdlModel.d.ts.map +1 -0
  706. package/lib/esm/common/imdl/ImdlModel.js +67 -0
  707. package/lib/esm/common/imdl/ImdlModel.js.map +1 -0
  708. package/lib/{cjs → esm/common}/imdl/ImdlSchema.d.ts +68 -36
  709. package/lib/esm/common/imdl/ImdlSchema.d.ts.map +1 -0
  710. package/lib/esm/common/imdl/ImdlSchema.js +20 -0
  711. package/lib/esm/common/imdl/ImdlSchema.js.map +1 -0
  712. package/lib/esm/{imdl/ImdlParser.d.ts → common/imdl/ParseImdlDocument.d.ts} +13 -8
  713. package/lib/esm/common/imdl/ParseImdlDocument.d.ts.map +1 -0
  714. package/lib/esm/{imdl/ImdlParser.js → common/imdl/ParseImdlDocument.js} +40 -25
  715. package/lib/esm/common/imdl/ParseImdlDocument.js.map +1 -0
  716. package/lib/esm/common/render/AnimationNodeId.d.ts +11 -0
  717. package/lib/esm/common/render/AnimationNodeId.d.ts.map +1 -0
  718. package/lib/esm/common/render/AnimationNodeId.js +16 -0
  719. package/lib/esm/common/render/AnimationNodeId.js.map +1 -0
  720. package/lib/{cjs/render/RenderMaterial.d.ts → esm/common/render/MaterialParams.d.ts} +7 -20
  721. package/lib/esm/common/render/MaterialParams.d.ts.map +1 -0
  722. package/lib/esm/{render/RenderMaterial.js → common/render/MaterialParams.js} +1 -1
  723. package/lib/esm/common/render/MaterialParams.js.map +1 -0
  724. package/lib/esm/common/render/TextureParams.d.ts +30 -0
  725. package/lib/esm/common/render/TextureParams.d.ts.map +1 -0
  726. package/lib/esm/{render/RenderTexture.js → common/render/TextureParams.js} +1 -1
  727. package/lib/esm/common/render/TextureParams.js.map +1 -0
  728. package/lib/{cjs → esm/common}/render/primitives/AuxChannelTable.d.ts +8 -8
  729. package/lib/esm/common/render/primitives/AuxChannelTable.d.ts.map +1 -0
  730. package/lib/esm/{render → common/render}/primitives/AuxChannelTable.js +9 -9
  731. package/lib/esm/common/render/primitives/AuxChannelTable.js.map +1 -0
  732. package/lib/esm/common/render/primitives/DisplayParams.d.ts.map +1 -0
  733. package/lib/esm/common/render/primitives/DisplayParams.js.map +1 -0
  734. package/lib/esm/common/render/primitives/EdgeParams.d.ts +94 -0
  735. package/lib/esm/common/render/primitives/EdgeParams.d.ts.map +1 -0
  736. package/lib/esm/common/render/primitives/EdgeParams.js +42 -0
  737. package/lib/esm/common/render/primitives/EdgeParams.js.map +1 -0
  738. package/lib/esm/common/render/primitives/MeshParams.d.ts +20 -0
  739. package/lib/esm/common/render/primitives/MeshParams.d.ts.map +1 -0
  740. package/lib/esm/{imdl/ImdlSchema.js → common/render/primitives/MeshParams.js} +2 -2
  741. package/lib/esm/common/render/primitives/MeshParams.js.map +1 -0
  742. package/lib/esm/common/render/primitives/MeshPrimitive.d.ts +29 -0
  743. package/lib/esm/common/render/primitives/MeshPrimitive.d.ts.map +1 -0
  744. package/lib/esm/common/render/primitives/MeshPrimitive.js +15 -0
  745. package/lib/esm/common/render/primitives/MeshPrimitive.js.map +1 -0
  746. package/lib/esm/common/render/primitives/PointStringParams.d.ts +14 -0
  747. package/lib/esm/common/render/primitives/PointStringParams.d.ts.map +1 -0
  748. package/lib/esm/common/render/primitives/PointStringParams.js +9 -0
  749. package/lib/esm/common/render/primitives/PointStringParams.js.map +1 -0
  750. package/lib/esm/common/render/primitives/PolylineParams.d.ts +29 -0
  751. package/lib/esm/common/render/primitives/PolylineParams.d.ts.map +1 -0
  752. package/lib/esm/common/render/primitives/PolylineParams.js +9 -0
  753. package/lib/esm/common/render/primitives/PolylineParams.js.map +1 -0
  754. package/lib/{cjs → esm/common}/render/primitives/SurfaceParams.d.ts +1 -1
  755. package/lib/esm/common/render/primitives/SurfaceParams.d.ts.map +1 -0
  756. package/lib/esm/common/render/primitives/SurfaceParams.js.map +1 -0
  757. package/lib/esm/common/render/primitives/VertexIndices.d.ts +26 -0
  758. package/lib/esm/common/render/primitives/VertexIndices.d.ts.map +1 -0
  759. package/lib/esm/common/render/primitives/VertexIndices.js +60 -0
  760. package/lib/esm/common/render/primitives/VertexIndices.js.map +1 -0
  761. package/lib/esm/common/render/primitives/VertexTable.d.ts +45 -0
  762. package/lib/esm/common/render/primitives/VertexTable.d.ts.map +1 -0
  763. package/lib/esm/common/render/primitives/VertexTable.js +34 -0
  764. package/lib/esm/common/render/primitives/VertexTable.js.map +1 -0
  765. package/lib/{cjs → esm/common}/render/primitives/VertexTableSplitter.d.ts +20 -3
  766. package/lib/esm/common/render/primitives/VertexTableSplitter.d.ts.map +1 -0
  767. package/lib/esm/{render → common/render}/primitives/VertexTableSplitter.js +31 -21
  768. package/lib/esm/common/render/primitives/VertexTableSplitter.js.map +1 -0
  769. package/lib/esm/core-frontend.d.ts +45 -11
  770. package/lib/esm/core-frontend.d.ts.map +1 -1
  771. package/lib/esm/core-frontend.js +45 -11
  772. package/lib/esm/core-frontend.js.map +1 -1
  773. package/lib/esm/extension/ExtensionAdmin.js +1 -1
  774. package/lib/esm/extension/ExtensionAdmin.js.map +1 -1
  775. package/lib/esm/extension/providers/ExtensionLoadScript.js.map +1 -1
  776. package/lib/esm/quantity-formatting/QuantityFormatter.js +1 -1
  777. package/lib/esm/quantity-formatting/QuantityFormatter.js.map +1 -1
  778. package/lib/esm/render/CanvasDecoration.d.ts +6 -2
  779. package/lib/esm/render/CanvasDecoration.d.ts.map +1 -1
  780. package/lib/esm/render/CanvasDecoration.js.map +1 -1
  781. package/lib/esm/render/CreateRenderMaterialArgs.d.ts +24 -0
  782. package/lib/esm/render/CreateRenderMaterialArgs.d.ts.map +1 -0
  783. package/lib/esm/render/CreateRenderMaterialArgs.js +9 -0
  784. package/lib/esm/render/CreateRenderMaterialArgs.js.map +1 -0
  785. package/lib/{cjs/render/RenderTexture.d.ts → esm/render/CreateTextureArgs.d.ts} +4 -28
  786. package/lib/esm/render/CreateTextureArgs.d.ts.map +1 -0
  787. package/lib/esm/render/CreateTextureArgs.js +9 -0
  788. package/lib/esm/render/CreateTextureArgs.js.map +1 -0
  789. package/lib/esm/render/GraphicBranch.d.ts +5 -7
  790. package/lib/esm/render/GraphicBranch.d.ts.map +1 -1
  791. package/lib/esm/render/GraphicBranch.js +0 -8
  792. package/lib/esm/render/GraphicBranch.js.map +1 -1
  793. package/lib/esm/render/InstancedGraphicParams.d.ts +3 -4
  794. package/lib/esm/render/InstancedGraphicParams.d.ts.map +1 -1
  795. package/lib/esm/render/InstancedGraphicParams.js.map +1 -1
  796. package/lib/esm/render/MockRender.d.ts +4 -4
  797. package/lib/esm/render/MockRender.d.ts.map +1 -1
  798. package/lib/esm/render/MockRender.js +1 -1
  799. package/lib/esm/render/MockRender.js.map +1 -1
  800. package/lib/esm/render/ParticleCollectionBuilder.d.ts.map +1 -1
  801. package/lib/esm/render/ParticleCollectionBuilder.js +5 -5
  802. package/lib/esm/render/ParticleCollectionBuilder.js.map +1 -1
  803. package/lib/esm/render/Pixel.d.ts +57 -0
  804. package/lib/esm/render/Pixel.d.ts.map +1 -1
  805. package/lib/esm/render/Pixel.js +41 -0
  806. package/lib/esm/render/Pixel.js.map +1 -1
  807. package/lib/esm/render/RealityMeshParams.js +2 -2
  808. package/lib/esm/render/RealityMeshParams.js.map +1 -1
  809. package/lib/esm/render/RenderSystem.d.ts +24 -10
  810. package/lib/esm/render/RenderSystem.d.ts.map +1 -1
  811. package/lib/esm/render/RenderSystem.js +8 -9
  812. package/lib/esm/render/RenderSystem.js.map +1 -1
  813. package/lib/esm/render/RenderTarget.d.ts +1 -1
  814. package/lib/esm/render/RenderTarget.d.ts.map +1 -1
  815. package/lib/esm/render/RenderTarget.js.map +1 -1
  816. package/lib/esm/render/UpsampleRealityMeshParams.js.map +1 -1
  817. package/lib/esm/render/VisibleFeature.d.ts +1 -1
  818. package/lib/esm/render/VisibleFeature.d.ts.map +1 -1
  819. package/lib/esm/render/VisibleFeature.js.map +1 -1
  820. package/lib/esm/render/primitives/EdgeParams.d.ts +2 -89
  821. package/lib/esm/render/primitives/EdgeParams.d.ts.map +1 -1
  822. package/lib/esm/render/primitives/EdgeParams.js +38 -74
  823. package/lib/esm/render/primitives/EdgeParams.js.map +1 -1
  824. package/lib/esm/render/primitives/PointCloudPrimitive.d.ts +1 -0
  825. package/lib/esm/render/primitives/PointCloudPrimitive.d.ts.map +1 -1
  826. package/lib/esm/render/primitives/PointCloudPrimitive.js.map +1 -1
  827. package/lib/esm/render/primitives/PointStringParams.d.ts +3 -11
  828. package/lib/esm/render/primitives/PointStringParams.d.ts.map +1 -1
  829. package/lib/esm/render/primitives/PointStringParams.js +25 -28
  830. package/lib/esm/render/primitives/PointStringParams.js.map +1 -1
  831. package/lib/esm/render/primitives/Polyface.d.ts +1 -1
  832. package/lib/esm/render/primitives/Polyface.d.ts.map +1 -1
  833. package/lib/esm/render/primitives/Polyface.js.map +1 -1
  834. package/lib/esm/render/primitives/PolylineParams.d.ts +8 -37
  835. package/lib/esm/render/primitives/PolylineParams.d.ts.map +1 -1
  836. package/lib/esm/render/primitives/PolylineParams.js +34 -43
  837. package/lib/esm/render/primitives/PolylineParams.js.map +1 -1
  838. package/lib/esm/render/primitives/Strokes.d.ts +1 -1
  839. package/lib/esm/render/primitives/Strokes.d.ts.map +1 -1
  840. package/lib/esm/render/primitives/Strokes.js.map +1 -1
  841. package/lib/esm/render/primitives/VertexTableBuilder.d.ts +31 -0
  842. package/lib/esm/render/primitives/VertexTableBuilder.d.ts.map +1 -0
  843. package/lib/esm/render/primitives/{VertexTable.js → VertexTableBuilder.js} +62 -170
  844. package/lib/esm/render/primitives/VertexTableBuilder.js.map +1 -0
  845. package/lib/esm/render/primitives/geometry/GeometryAccumulator.d.ts +1 -1
  846. package/lib/esm/render/primitives/geometry/GeometryAccumulator.d.ts.map +1 -1
  847. package/lib/esm/render/primitives/geometry/GeometryAccumulator.js.map +1 -1
  848. package/lib/esm/render/primitives/geometry/GeometryListBuilder.d.ts +1 -1
  849. package/lib/esm/render/primitives/geometry/GeometryListBuilder.d.ts.map +1 -1
  850. package/lib/esm/render/primitives/geometry/GeometryListBuilder.js +1 -1
  851. package/lib/esm/render/primitives/geometry/GeometryListBuilder.js.map +1 -1
  852. package/lib/esm/render/primitives/geometry/GeometryPrimitives.d.ts +1 -1
  853. package/lib/esm/render/primitives/geometry/GeometryPrimitives.d.ts.map +1 -1
  854. package/lib/esm/render/primitives/geometry/GeometryPrimitives.js +1 -1
  855. package/lib/esm/render/primitives/geometry/GeometryPrimitives.js.map +1 -1
  856. package/lib/esm/render/primitives/mesh/MeshBuilder.d.ts +2 -1
  857. package/lib/esm/render/primitives/mesh/MeshBuilder.d.ts.map +1 -1
  858. package/lib/esm/render/primitives/mesh/MeshBuilder.js +5 -2
  859. package/lib/esm/render/primitives/mesh/MeshBuilder.js.map +1 -1
  860. package/lib/esm/render/primitives/mesh/MeshBuilderMap.d.ts +6 -5
  861. package/lib/esm/render/primitives/mesh/MeshBuilderMap.d.ts.map +1 -1
  862. package/lib/esm/render/primitives/mesh/MeshBuilderMap.js +8 -5
  863. package/lib/esm/render/primitives/mesh/MeshBuilderMap.js.map +1 -1
  864. package/lib/esm/render/primitives/mesh/MeshPrimitives.d.ts +58 -31
  865. package/lib/esm/render/primitives/mesh/MeshPrimitives.d.ts.map +1 -1
  866. package/lib/esm/render/primitives/mesh/MeshPrimitives.js +26 -30
  867. package/lib/esm/render/primitives/mesh/MeshPrimitives.js.map +1 -1
  868. package/lib/esm/render/webgl/BatchState.js +1 -1
  869. package/lib/esm/render/webgl/BatchState.js.map +1 -1
  870. package/lib/esm/render/webgl/BranchState.d.ts +3 -0
  871. package/lib/esm/render/webgl/BranchState.d.ts.map +1 -1
  872. package/lib/esm/render/webgl/BranchState.js +2 -0
  873. package/lib/esm/render/webgl/BranchState.js.map +1 -1
  874. package/lib/esm/render/webgl/CachedGeometry.d.ts +1 -1
  875. package/lib/esm/render/webgl/CachedGeometry.d.ts.map +1 -1
  876. package/lib/esm/render/webgl/CachedGeometry.js.map +1 -1
  877. package/lib/esm/render/webgl/ColorInfo.d.ts +1 -1
  878. package/lib/esm/render/webgl/ColorInfo.d.ts.map +1 -1
  879. package/lib/esm/render/webgl/ColorInfo.js.map +1 -1
  880. package/lib/esm/render/webgl/EdgeGeometry.d.ts +2 -2
  881. package/lib/esm/render/webgl/EdgeGeometry.d.ts.map +1 -1
  882. package/lib/esm/render/webgl/EdgeGeometry.js.map +1 -1
  883. package/lib/esm/render/webgl/FeatureOverrides.js +1 -1
  884. package/lib/esm/render/webgl/FeatureOverrides.js.map +1 -1
  885. package/lib/esm/render/webgl/Graphic.d.ts +7 -1
  886. package/lib/esm/render/webgl/Graphic.d.ts.map +1 -1
  887. package/lib/esm/render/webgl/Graphic.js +7 -2
  888. package/lib/esm/render/webgl/Graphic.js.map +1 -1
  889. package/lib/esm/render/webgl/IndexedEdgeGeometry.d.ts +1 -1
  890. package/lib/esm/render/webgl/IndexedEdgeGeometry.d.ts.map +1 -1
  891. package/lib/esm/render/webgl/IndexedEdgeGeometry.js.map +1 -1
  892. package/lib/esm/render/webgl/InstancedGeometry.js.map +1 -1
  893. package/lib/esm/render/webgl/Material.d.ts +1 -1
  894. package/lib/esm/render/webgl/Material.d.ts.map +1 -1
  895. package/lib/esm/render/webgl/Material.js.map +1 -1
  896. package/lib/esm/render/webgl/Mesh.d.ts +2 -2
  897. package/lib/esm/render/webgl/Mesh.d.ts.map +1 -1
  898. package/lib/esm/render/webgl/Mesh.js +1 -1
  899. package/lib/esm/render/webgl/Mesh.js.map +1 -1
  900. package/lib/esm/render/webgl/MeshData.d.ts +2 -2
  901. package/lib/esm/render/webgl/MeshData.d.ts.map +1 -1
  902. package/lib/esm/render/webgl/MeshData.js.map +1 -1
  903. package/lib/esm/render/webgl/MeshGeometry.d.ts +1 -1
  904. package/lib/esm/render/webgl/MeshGeometry.d.ts.map +1 -1
  905. package/lib/esm/render/webgl/PointString.d.ts +1 -1
  906. package/lib/esm/render/webgl/PointString.d.ts.map +1 -1
  907. package/lib/esm/render/webgl/PointString.js.map +1 -1
  908. package/lib/esm/render/webgl/Polyline.d.ts +1 -1
  909. package/lib/esm/render/webgl/Polyline.d.ts.map +1 -1
  910. package/lib/esm/render/webgl/Polyline.js.map +1 -1
  911. package/lib/esm/render/webgl/RealityMesh.js.map +1 -1
  912. package/lib/esm/render/webgl/RenderCommands.js +1 -1
  913. package/lib/esm/render/webgl/RenderCommands.js.map +1 -1
  914. package/lib/esm/render/webgl/SceneCompositor.d.ts +2 -1
  915. package/lib/esm/render/webgl/SceneCompositor.d.ts.map +1 -1
  916. package/lib/esm/render/webgl/SceneCompositor.js +5 -2
  917. package/lib/esm/render/webgl/SceneCompositor.js.map +1 -1
  918. package/lib/esm/render/webgl/SurfaceGeometry.d.ts +1 -1
  919. package/lib/esm/render/webgl/SurfaceGeometry.d.ts.map +1 -1
  920. package/lib/esm/render/webgl/SurfaceGeometry.js +1 -1
  921. package/lib/esm/render/webgl/SurfaceGeometry.js.map +1 -1
  922. package/lib/esm/render/webgl/System.d.ts +7 -6
  923. package/lib/esm/render/webgl/System.d.ts.map +1 -1
  924. package/lib/esm/render/webgl/System.js +2 -2
  925. package/lib/esm/render/webgl/System.js.map +1 -1
  926. package/lib/esm/render/webgl/Target.d.ts +1 -1
  927. package/lib/esm/render/webgl/Target.d.ts.map +1 -1
  928. package/lib/esm/render/webgl/Target.js +13 -11
  929. package/lib/esm/render/webgl/Target.js.map +1 -1
  930. package/lib/esm/render/webgl/Texture.d.ts +1 -1
  931. package/lib/esm/render/webgl/Texture.d.ts.map +1 -1
  932. package/lib/esm/render/webgl/Texture.js +1 -1
  933. package/lib/esm/render/webgl/Texture.js.map +1 -1
  934. package/lib/esm/render/webgl/UniformHandle.js +1 -1
  935. package/lib/esm/render/webgl/UniformHandle.js.map +1 -1
  936. package/lib/esm/render/webgl/VertexLUT.d.ts +2 -2
  937. package/lib/esm/render/webgl/VertexLUT.d.ts.map +1 -1
  938. package/lib/esm/render/webgl/VertexLUT.js.map +1 -1
  939. package/lib/esm/render/webgl/glsl/Animation.js.map +1 -1
  940. package/lib/esm/render/webgl/glsl/Atmosphere.js.map +1 -1
  941. package/lib/esm/render/webgl/glsl/RealityMesh.d.ts.map +1 -1
  942. package/lib/esm/render/webgl/glsl/RealityMesh.js +32 -19
  943. package/lib/esm/render/webgl/glsl/RealityMesh.js.map +1 -1
  944. package/lib/esm/tile/B3dmReader.d.ts +1 -1
  945. package/lib/esm/tile/B3dmReader.d.ts.map +1 -1
  946. package/lib/esm/tile/B3dmReader.js +1 -1
  947. package/lib/esm/tile/B3dmReader.js.map +1 -1
  948. package/lib/esm/tile/DynamicIModelTile.js +1 -1
  949. package/lib/esm/tile/DynamicIModelTile.js.map +1 -1
  950. package/lib/esm/tile/FetchCloudStorage.d.ts +15 -0
  951. package/lib/esm/tile/FetchCloudStorage.d.ts.map +1 -0
  952. package/lib/esm/tile/FetchCloudStorage.js +31 -0
  953. package/lib/esm/tile/FetchCloudStorage.js.map +1 -0
  954. package/lib/esm/tile/GltfReader.d.ts +13 -4
  955. package/lib/esm/tile/GltfReader.d.ts.map +1 -1
  956. package/lib/esm/tile/GltfReader.js +81 -29
  957. package/lib/esm/tile/GltfReader.js.map +1 -1
  958. package/lib/esm/tile/IModelTile.d.ts.map +1 -1
  959. package/lib/esm/tile/IModelTile.js +5 -10
  960. package/lib/esm/tile/IModelTile.js.map +1 -1
  961. package/lib/esm/tile/IModelTileTree.d.ts +4 -1
  962. package/lib/esm/tile/IModelTileTree.d.ts.map +1 -1
  963. package/lib/esm/tile/IModelTileTree.js +16 -1
  964. package/lib/esm/tile/IModelTileTree.js.map +1 -1
  965. package/lib/esm/tile/ImdlDecoder.d.ts +52 -0
  966. package/lib/esm/tile/ImdlDecoder.d.ts.map +1 -0
  967. package/lib/esm/tile/ImdlDecoder.js +31 -0
  968. package/lib/esm/tile/ImdlDecoder.js.map +1 -0
  969. package/lib/{cjs/imdl → esm/tile}/ImdlGraphicsCreator.d.ts +1 -1
  970. package/lib/esm/tile/ImdlGraphicsCreator.d.ts.map +1 -0
  971. package/lib/esm/{imdl → tile}/ImdlGraphicsCreator.js +5 -5
  972. package/lib/esm/tile/ImdlGraphicsCreator.js.map +1 -0
  973. package/lib/esm/tile/ImdlParser.d.ts +26 -0
  974. package/lib/esm/tile/ImdlParser.d.ts.map +1 -0
  975. package/lib/esm/tile/ImdlParser.js +68 -0
  976. package/lib/esm/tile/ImdlParser.js.map +1 -0
  977. package/lib/esm/tile/ImdlReader.d.ts +6 -1
  978. package/lib/esm/tile/ImdlReader.d.ts.map +1 -1
  979. package/lib/esm/tile/ImdlReader.js +13 -9
  980. package/lib/esm/tile/ImdlReader.js.map +1 -1
  981. package/lib/esm/tile/OPCFormatInterpreter.js +1 -1
  982. package/lib/esm/tile/OPCFormatInterpreter.js.map +1 -1
  983. package/lib/esm/tile/PntsReader.js +1 -1
  984. package/lib/esm/tile/PntsReader.js.map +1 -1
  985. package/lib/esm/tile/PrimaryTileTree.d.ts.map +1 -1
  986. package/lib/esm/tile/PrimaryTileTree.js +2 -1
  987. package/lib/esm/tile/PrimaryTileTree.js.map +1 -1
  988. package/lib/esm/tile/RealityModelTileTree.js.map +1 -1
  989. package/lib/esm/tile/RealityTile.d.ts +8 -3
  990. package/lib/esm/tile/RealityTile.d.ts.map +1 -1
  991. package/lib/esm/tile/RealityTile.js +4 -1
  992. package/lib/esm/tile/RealityTile.js.map +1 -1
  993. package/lib/esm/tile/RealityTileLoader.d.ts.map +1 -1
  994. package/lib/esm/tile/RealityTileLoader.js +10 -5
  995. package/lib/esm/tile/RealityTileLoader.js.map +1 -1
  996. package/lib/esm/tile/RealityTileTree.js +1 -1
  997. package/lib/esm/tile/RealityTileTree.js.map +1 -1
  998. package/lib/esm/tile/ThreeDTileFormatInterpreter.js +1 -1
  999. package/lib/esm/tile/ThreeDTileFormatInterpreter.js.map +1 -1
  1000. package/lib/esm/tile/TileAdmin.d.ts +14 -11
  1001. package/lib/esm/tile/TileAdmin.d.ts.map +1 -1
  1002. package/lib/esm/tile/TileAdmin.js +10 -30
  1003. package/lib/esm/tile/TileAdmin.js.map +1 -1
  1004. package/lib/esm/tile/TileContent.d.ts +6 -0
  1005. package/lib/esm/tile/TileContent.d.ts.map +1 -1
  1006. package/lib/esm/tile/TileContent.js.map +1 -1
  1007. package/lib/esm/tile/TileStorage.js.map +1 -1
  1008. package/lib/esm/tile/internal.d.ts +9 -0
  1009. package/lib/esm/tile/internal.d.ts.map +1 -1
  1010. package/lib/esm/tile/internal.js +9 -0
  1011. package/lib/esm/tile/internal.js.map +1 -1
  1012. package/lib/esm/tile/map/ArcGisUtilities.d.ts +8 -1
  1013. package/lib/esm/tile/map/ArcGisUtilities.d.ts.map +1 -1
  1014. package/lib/esm/tile/map/ArcGisUtilities.js +21 -0
  1015. package/lib/esm/tile/map/ArcGisUtilities.js.map +1 -1
  1016. package/lib/esm/tile/map/EllipsoidTerrainProvider.d.ts +6 -4
  1017. package/lib/esm/tile/map/EllipsoidTerrainProvider.d.ts.map +1 -1
  1018. package/lib/esm/tile/map/EllipsoidTerrainProvider.js +6 -4
  1019. package/lib/esm/tile/map/EllipsoidTerrainProvider.js.map +1 -1
  1020. package/lib/esm/tile/map/ImageryProviders/ArcGISImageryProvider.d.ts +2 -0
  1021. package/lib/esm/tile/map/ImageryProviders/ArcGISImageryProvider.d.ts.map +1 -1
  1022. package/lib/esm/tile/map/ImageryProviders/ArcGISImageryProvider.js +4 -2
  1023. package/lib/esm/tile/map/ImageryProviders/ArcGISImageryProvider.js.map +1 -1
  1024. package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts +55 -2
  1025. package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts.map +1 -1
  1026. package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js +96 -24
  1027. package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js.map +1 -1
  1028. package/lib/esm/tile/map/ImageryProviders/ArcGisAttributeDrivenSymbology.d.ts +11 -0
  1029. package/lib/esm/tile/map/ImageryProviders/ArcGisAttributeDrivenSymbology.d.ts.map +1 -0
  1030. package/lib/esm/{imdl/ImdlModel.js → tile/map/ImageryProviders/ArcGisAttributeDrivenSymbology.js} +1 -1
  1031. package/lib/esm/tile/map/ImageryProviders/ArcGisAttributeDrivenSymbology.js.map +1 -0
  1032. package/lib/esm/tile/map/ImageryProviders/ArcGisGeometryReaderJSON.d.ts +15 -0
  1033. package/lib/esm/tile/map/ImageryProviders/ArcGisGeometryReaderJSON.d.ts.map +1 -0
  1034. package/lib/esm/tile/map/ImageryProviders/ArcGisGeometryReaderJSON.js +55 -0
  1035. package/lib/esm/tile/map/ImageryProviders/ArcGisGeometryReaderJSON.js.map +1 -0
  1036. package/lib/esm/tile/map/ImageryProviders/ArcGisGeometryRenderer.d.ts +47 -0
  1037. package/lib/esm/tile/map/ImageryProviders/ArcGisGeometryRenderer.d.ts.map +1 -0
  1038. package/lib/esm/tile/map/ImageryProviders/ArcGisGeometryRenderer.js +122 -0
  1039. package/lib/esm/tile/map/ImageryProviders/ArcGisGeometryRenderer.js.map +1 -0
  1040. package/lib/esm/tile/map/ImageryProviders/ArcGisGraphicsRenderer.d.ts +27 -0
  1041. package/lib/esm/tile/map/ImageryProviders/ArcGisGraphicsRenderer.d.ts.map +1 -0
  1042. package/lib/esm/tile/map/ImageryProviders/ArcGisGraphicsRenderer.js +131 -0
  1043. package/lib/esm/tile/map/ImageryProviders/ArcGisGraphicsRenderer.js.map +1 -0
  1044. package/lib/esm/tile/map/ImageryProviders/WebMercator.d.ts +6 -0
  1045. package/lib/esm/tile/map/ImageryProviders/WebMercator.d.ts.map +1 -0
  1046. package/lib/esm/tile/map/ImageryProviders/WebMercator.js +18 -0
  1047. package/lib/esm/tile/map/ImageryProviders/WebMercator.js.map +1 -0
  1048. package/lib/esm/tile/map/ImageryTileTree.d.ts +2 -1
  1049. package/lib/esm/tile/map/ImageryTileTree.d.ts.map +1 -1
  1050. package/lib/esm/tile/map/ImageryTileTree.js +16 -9
  1051. package/lib/esm/tile/map/ImageryTileTree.js.map +1 -1
  1052. package/lib/esm/tile/map/MapFeatureInfo.d.ts +67 -7
  1053. package/lib/esm/tile/map/MapFeatureInfo.d.ts.map +1 -1
  1054. package/lib/esm/tile/map/MapFeatureInfo.js +14 -1
  1055. package/lib/esm/tile/map/MapFeatureInfo.js.map +1 -1
  1056. package/lib/esm/tile/map/MapLayerImageryFormats.d.ts.map +1 -1
  1057. package/lib/esm/tile/map/MapLayerImageryFormats.js +3 -0
  1058. package/lib/esm/tile/map/MapLayerImageryFormats.js.map +1 -1
  1059. package/lib/esm/tile/map/MapLayerImageryProvider.d.ts +4 -1
  1060. package/lib/esm/tile/map/MapLayerImageryProvider.d.ts.map +1 -1
  1061. package/lib/esm/tile/map/MapLayerImageryProvider.js +3 -1
  1062. package/lib/esm/tile/map/MapLayerImageryProvider.js.map +1 -1
  1063. package/lib/esm/tile/map/MapLayerSources.d.ts +4 -1
  1064. package/lib/esm/tile/map/MapLayerSources.d.ts.map +1 -1
  1065. package/lib/esm/tile/map/MapLayerSources.js +3 -0
  1066. package/lib/esm/tile/map/MapLayerSources.js.map +1 -1
  1067. package/lib/esm/tile/map/MapTile.d.ts.map +1 -1
  1068. package/lib/esm/tile/map/MapTile.js +9 -1
  1069. package/lib/esm/tile/map/MapTile.js.map +1 -1
  1070. package/lib/esm/tile/map/MapTileLoader.d.ts.map +1 -1
  1071. package/lib/esm/tile/map/MapTileLoader.js +1 -15
  1072. package/lib/esm/tile/map/MapTileLoader.js.map +1 -1
  1073. package/lib/esm/tile/map/MapTileTree.d.ts +12 -3
  1074. package/lib/esm/tile/map/MapTileTree.d.ts.map +1 -1
  1075. package/lib/esm/tile/map/MapTileTree.js +34 -21
  1076. package/lib/esm/tile/map/MapTileTree.js.map +1 -1
  1077. package/lib/esm/tile/map/MapTiledGraphicsProvider.d.ts +2 -3
  1078. package/lib/esm/tile/map/MapTiledGraphicsProvider.d.ts.map +1 -1
  1079. package/lib/esm/tile/map/MapTiledGraphicsProvider.js +3 -4
  1080. package/lib/esm/tile/map/MapTiledGraphicsProvider.js.map +1 -1
  1081. package/lib/esm/tile/map/MapTilingScheme.d.ts +4 -4
  1082. package/lib/esm/tile/map/MapTilingScheme.d.ts.map +1 -1
  1083. package/lib/esm/tile/map/MapTilingScheme.js +4 -4
  1084. package/lib/esm/tile/map/MapTilingScheme.js.map +1 -1
  1085. package/lib/esm/tile/map/QuadId.js.map +1 -1
  1086. package/lib/esm/tools/ElementSetTool.js +1 -1
  1087. package/lib/esm/tools/ElementSetTool.js.map +1 -1
  1088. package/lib/esm/tools/SelectTool.js +1 -1
  1089. package/lib/esm/tools/SelectTool.js.map +1 -1
  1090. package/lib/esm/tools/ToolAdmin.d.ts +8 -6
  1091. package/lib/esm/tools/ToolAdmin.d.ts.map +1 -1
  1092. package/lib/esm/tools/ToolAdmin.js +11 -8
  1093. package/lib/esm/tools/ToolAdmin.js.map +1 -1
  1094. package/lib/esm/tools/ToolAssistance.d.ts +18 -0
  1095. package/lib/esm/tools/ToolAssistance.d.ts.map +1 -1
  1096. package/lib/esm/tools/ToolAssistance.js +8 -0
  1097. package/lib/esm/tools/ToolAssistance.js.map +1 -1
  1098. package/lib/esm/tools/ViewTool.d.ts.map +1 -1
  1099. package/lib/esm/tools/ViewTool.js +3 -2
  1100. package/lib/esm/tools/ViewTool.js.map +1 -1
  1101. package/lib/esm/workers/ImdlParser/Worker.d.ts +20 -0
  1102. package/lib/esm/workers/ImdlParser/Worker.d.ts.map +1 -0
  1103. package/lib/esm/workers/ImdlParser/Worker.js +30 -0
  1104. package/lib/esm/workers/ImdlParser/Worker.js.map +1 -0
  1105. package/lib/esm/workers/ImdlParser/webpack.config.js +40 -0
  1106. package/lib/esm/workers/RegisterWorker.d.ts +9 -0
  1107. package/lib/esm/workers/RegisterWorker.d.ts.map +1 -0
  1108. package/lib/esm/workers/RegisterWorker.js +32 -0
  1109. package/lib/esm/workers/RegisterWorker.js.map +1 -0
  1110. package/lib/public/scripts/parse-imdl-worker.js +1 -0
  1111. package/lib/workers/webpack/parse-imdl-worker.js +1 -0
  1112. package/package.json +32 -69
  1113. package/lib/cjs/FrontendLoggerCategory.d.ts.map +0 -1
  1114. package/lib/cjs/FrontendLoggerCategory.js.map +0 -1
  1115. package/lib/cjs/ImageUtil.d.ts.map +0 -1
  1116. package/lib/cjs/ImageUtil.js.map +0 -1
  1117. package/lib/cjs/ViewRect.d.ts.map +0 -1
  1118. package/lib/cjs/ViewRect.js.map +0 -1
  1119. package/lib/cjs/WebWorkerManager.d.ts +0 -49
  1120. package/lib/cjs/WebWorkerManager.d.ts.map +0 -1
  1121. package/lib/cjs/WebWorkerManager.js +0 -155
  1122. package/lib/cjs/WebWorkerManager.js.map +0 -1
  1123. package/lib/cjs/gltf/GltfModel.d.ts.map +0 -1
  1124. package/lib/cjs/gltf/GltfModel.js.map +0 -1
  1125. package/lib/cjs/gltf/GltfParser.d.ts.map +0 -1
  1126. package/lib/cjs/gltf/GltfParser.js.map +0 -1
  1127. package/lib/cjs/gltf/GltfSchema.d.ts.map +0 -1
  1128. package/lib/cjs/gltf/GltfSchema.js.map +0 -1
  1129. package/lib/cjs/imdl/ImdlGraphicsCreator.d.ts.map +0 -1
  1130. package/lib/cjs/imdl/ImdlGraphicsCreator.js.map +0 -1
  1131. package/lib/cjs/imdl/ImdlModel.d.ts.map +0 -1
  1132. package/lib/cjs/imdl/ImdlModel.js.map +0 -1
  1133. package/lib/cjs/imdl/ImdlParser.d.ts.map +0 -1
  1134. package/lib/cjs/imdl/ImdlParser.js.map +0 -1
  1135. package/lib/cjs/imdl/ImdlSchema.d.ts.map +0 -1
  1136. package/lib/cjs/imdl/ImdlSchema.js.map +0 -1
  1137. package/lib/cjs/render/RenderMaterial.d.ts.map +0 -1
  1138. package/lib/cjs/render/RenderMaterial.js.map +0 -1
  1139. package/lib/cjs/render/RenderTexture.d.ts.map +0 -1
  1140. package/lib/cjs/render/RenderTexture.js.map +0 -1
  1141. package/lib/cjs/render/primitives/AuxChannelTable.d.ts.map +0 -1
  1142. package/lib/cjs/render/primitives/AuxChannelTable.js.map +0 -1
  1143. package/lib/cjs/render/primitives/DisplayParams.d.ts.map +0 -1
  1144. package/lib/cjs/render/primitives/DisplayParams.js.map +0 -1
  1145. package/lib/cjs/render/primitives/SurfaceParams.d.ts.map +0 -1
  1146. package/lib/cjs/render/primitives/SurfaceParams.js.map +0 -1
  1147. package/lib/cjs/render/primitives/VertexTable.d.ts +0 -152
  1148. package/lib/cjs/render/primitives/VertexTable.d.ts.map +0 -1
  1149. package/lib/cjs/render/primitives/VertexTable.js.map +0 -1
  1150. package/lib/cjs/render/primitives/VertexTableSplitter.d.ts.map +0 -1
  1151. package/lib/cjs/render/primitives/VertexTableSplitter.js.map +0 -1
  1152. package/lib/cjs/render-primitives.d.ts +0 -21
  1153. package/lib/cjs/render-primitives.d.ts.map +0 -1
  1154. package/lib/cjs/render-primitives.js +0 -41
  1155. package/lib/cjs/render-primitives.js.map +0 -1
  1156. package/lib/esm/FrontendLoggerCategory.d.ts.map +0 -1
  1157. package/lib/esm/FrontendLoggerCategory.js.map +0 -1
  1158. package/lib/esm/ImageUtil.d.ts.map +0 -1
  1159. package/lib/esm/ImageUtil.js.map +0 -1
  1160. package/lib/esm/ViewRect.d.ts.map +0 -1
  1161. package/lib/esm/ViewRect.js.map +0 -1
  1162. package/lib/esm/WebWorkerManager.d.ts +0 -49
  1163. package/lib/esm/WebWorkerManager.d.ts.map +0 -1
  1164. package/lib/esm/WebWorkerManager.js +0 -150
  1165. package/lib/esm/WebWorkerManager.js.map +0 -1
  1166. package/lib/esm/gltf/GltfModel.d.ts.map +0 -1
  1167. package/lib/esm/gltf/GltfModel.js.map +0 -1
  1168. package/lib/esm/gltf/GltfParser.d.ts.map +0 -1
  1169. package/lib/esm/gltf/GltfParser.js.map +0 -1
  1170. package/lib/esm/gltf/GltfSchema.d.ts.map +0 -1
  1171. package/lib/esm/gltf/GltfSchema.js.map +0 -1
  1172. package/lib/esm/imdl/ImdlGraphicsCreator.d.ts.map +0 -1
  1173. package/lib/esm/imdl/ImdlGraphicsCreator.js.map +0 -1
  1174. package/lib/esm/imdl/ImdlModel.d.ts.map +0 -1
  1175. package/lib/esm/imdl/ImdlModel.js.map +0 -1
  1176. package/lib/esm/imdl/ImdlParser.d.ts.map +0 -1
  1177. package/lib/esm/imdl/ImdlParser.js.map +0 -1
  1178. package/lib/esm/imdl/ImdlSchema.d.ts.map +0 -1
  1179. package/lib/esm/imdl/ImdlSchema.js.map +0 -1
  1180. package/lib/esm/render/RenderMaterial.d.ts.map +0 -1
  1181. package/lib/esm/render/RenderMaterial.js.map +0 -1
  1182. package/lib/esm/render/RenderTexture.d.ts.map +0 -1
  1183. package/lib/esm/render/RenderTexture.js.map +0 -1
  1184. package/lib/esm/render/primitives/AuxChannelTable.d.ts.map +0 -1
  1185. package/lib/esm/render/primitives/AuxChannelTable.js.map +0 -1
  1186. package/lib/esm/render/primitives/DisplayParams.d.ts.map +0 -1
  1187. package/lib/esm/render/primitives/DisplayParams.js.map +0 -1
  1188. package/lib/esm/render/primitives/SurfaceParams.d.ts.map +0 -1
  1189. package/lib/esm/render/primitives/SurfaceParams.js.map +0 -1
  1190. package/lib/esm/render/primitives/VertexTable.d.ts +0 -152
  1191. package/lib/esm/render/primitives/VertexTable.d.ts.map +0 -1
  1192. package/lib/esm/render/primitives/VertexTable.js.map +0 -1
  1193. package/lib/esm/render/primitives/VertexTableSplitter.d.ts.map +0 -1
  1194. package/lib/esm/render/primitives/VertexTableSplitter.js.map +0 -1
  1195. package/lib/esm/render-primitives.d.ts +0 -21
  1196. package/lib/esm/render-primitives.d.ts.map +0 -1
  1197. package/lib/esm/render-primitives.js +0 -25
  1198. package/lib/esm/render-primitives.js.map +0 -1
  1199. /package/lib/cjs/{FrontendLoggerCategory.d.ts → common/FrontendLoggerCategory.d.ts} +0 -0
  1200. /package/lib/cjs/{FrontendLoggerCategory.js → common/FrontendLoggerCategory.js} +0 -0
  1201. /package/lib/cjs/{ImageUtil.d.ts → common/ImageUtil.d.ts} +0 -0
  1202. /package/lib/cjs/{ViewRect.d.ts → common/ViewRect.d.ts} +0 -0
  1203. /package/lib/cjs/{ViewRect.js → common/ViewRect.js} +0 -0
  1204. /package/lib/cjs/{gltf → common/gltf}/GltfModel.js +0 -0
  1205. /package/lib/cjs/{gltf → common/gltf}/GltfParser.d.ts +0 -0
  1206. /package/lib/cjs/{gltf → common/gltf}/GltfParser.js +0 -0
  1207. /package/lib/cjs/{gltf → common/gltf}/GltfSchema.d.ts +0 -0
  1208. /package/lib/cjs/{gltf → common/gltf}/GltfSchema.js +0 -0
  1209. /package/lib/cjs/{render → common/render}/primitives/DisplayParams.d.ts +0 -0
  1210. /package/lib/cjs/{render → common/render}/primitives/DisplayParams.js +0 -0
  1211. /package/lib/cjs/{render → common/render}/primitives/SurfaceParams.js +0 -0
  1212. /package/lib/esm/{FrontendLoggerCategory.d.ts → common/FrontendLoggerCategory.d.ts} +0 -0
  1213. /package/lib/esm/{FrontendLoggerCategory.js → common/FrontendLoggerCategory.js} +0 -0
  1214. /package/lib/esm/{ImageUtil.d.ts → common/ImageUtil.d.ts} +0 -0
  1215. /package/lib/esm/{ViewRect.d.ts → common/ViewRect.d.ts} +0 -0
  1216. /package/lib/esm/{ViewRect.js → common/ViewRect.js} +0 -0
  1217. /package/lib/esm/{gltf → common/gltf}/GltfModel.js +0 -0
  1218. /package/lib/esm/{gltf → common/gltf}/GltfParser.d.ts +0 -0
  1219. /package/lib/esm/{gltf → common/gltf}/GltfParser.js +0 -0
  1220. /package/lib/esm/{gltf → common/gltf}/GltfSchema.d.ts +0 -0
  1221. /package/lib/esm/{gltf → common/gltf}/GltfSchema.js +0 -0
  1222. /package/lib/esm/{render → common/render}/primitives/DisplayParams.d.ts +0 -0
  1223. /package/lib/esm/{render → common/render}/primitives/DisplayParams.js +0 -0
  1224. /package/lib/esm/{render → common/render}/primitives/SurfaceParams.js +0 -0
@@ -3,7 +3,9 @@
3
3
  */
4
4
  import { Id64String } from "@itwin/core-bentley";
5
5
  import { BatchType, Feature, GeometryClass, ModelFeature } from "@itwin/core-common";
6
+ import { HitPriority, ViewAttachmentHitInfo } from "../HitDetail";
6
7
  import { IModelConnection } from "../IModelConnection";
8
+ import type { Viewport } from "../Viewport";
7
9
  /** Describes aspects of a pixel as read from a [[Viewport]].
8
10
  * @see [[Viewport.readPixels]].
9
11
  * @public
@@ -27,6 +29,10 @@ export declare namespace Pixel {
27
29
  readonly iModel?: IModelConnection;
28
30
  /** @internal */
29
31
  readonly tileId?: string;
32
+ /** The Id of the [ViewAttachment]($backend), if any, from which the pixel originated.
33
+ * @beta
34
+ */
35
+ readonly viewAttachmentId?: Id64String;
30
36
  /** @internal */
31
37
  get isClassifier(): boolean;
32
38
  /** @internal */
@@ -38,6 +44,7 @@ export declare namespace Pixel {
38
44
  batchType?: BatchType;
39
45
  iModel?: IModelConnection;
40
46
  tileId?: string;
47
+ viewAttachmentId?: string;
41
48
  });
42
49
  /** The Id of the element that produced the pixel. */
43
50
  get elementId(): Id64String | undefined;
@@ -45,6 +52,56 @@ export declare namespace Pixel {
45
52
  get subCategoryId(): Id64String | undefined;
46
53
  /** The class of geometry that produced the pixel. */
47
54
  get geometryClass(): GeometryClass | undefined;
55
+ /** Computes the [[HitPriority]] of this pixel based on its [[type]] and [[planarity]]. */
56
+ computeHitPriority(): HitPriority;
57
+ /** Convert this pixel to a [[Pixel.HitProps]] suitable for constructing a [[HitDetail]].
58
+ * @param viewport The viewport in which the hit originated.
59
+ */
60
+ toHitProps(viewport: Viewport): Pixel.HitProps;
61
+ }
62
+ /** Describes a subset of [[HitDetailProps]] computed from a [[Pixel.Data]], suitable for constructing a [[HitDetail]].
63
+ * For example, the following function creates a `HitDetail` from a `Pixel.Data` and other hit information:
64
+ * ```ts
65
+ * function makeHitDetail(pixel: Pixel.Data, viewport: ScreenViewport, testPoint: Point3d, hitSource: HitSource, hitPoint: Point3d, distXY: number): HitDetail {
66
+ * return new HitDetail({
67
+ * ...pixel.toHitProps(viewport),
68
+ * viewport, testPoint, hitSource, hitPoint, distXY,
69
+ * };
70
+ * }
71
+ * ```
72
+ * @see [[Data.toHitProps]] to convert a [[Pixel.Data]] to a `HitProps`.
73
+ * @public
74
+ */
75
+ interface HitProps {
76
+ /** The source of the geometry. This may be a persistent element Id, or a transient Id used for, e.g., pickable decorations. */
77
+ sourceId: Id64String;
78
+ /** The hit geometry priority/classification. */
79
+ priority: HitPriority;
80
+ /** The distance in view coordinates between the hit and the near plane. */
81
+ distFraction: number;
82
+ /** The [SubCategory]($backend) to which the hit geometry belongs. */
83
+ subCategoryId?: Id64String;
84
+ /** The class of the hit geometry. */
85
+ geometryClass?: GeometryClass;
86
+ /** The Id of the [[ModelState]] from which the hit originated. */
87
+ modelId?: Id64String;
88
+ /** The IModelConnection from which the hit originated.
89
+ * This should almost always be left undefined, unless the hit is known to have originated from an iModel
90
+ * other than the one associated with the viewport.
91
+ * @internal
92
+ */
93
+ sourceIModel?: IModelConnection;
94
+ /** @internal chiefly for debugging */
95
+ tileId?: string;
96
+ /** True if the hit originated from a reality model classifier.
97
+ * @alpha
98
+ */
99
+ isClassifier?: boolean;
100
+ /** Information about the [ViewAttachment]($backend) within which the hit geometry resides, if any.
101
+ * @note Only [[SheetViewState]]s can have view attachments.
102
+ * @beta
103
+ */
104
+ viewAttachment?: ViewAttachmentHitInfo;
48
105
  }
49
106
  /** Describes the type of geometry that produced the [[Pixel.Data]]. */
50
107
  enum GeometryType {
@@ -1 +1 @@
1
- {"version":3,"file":"Pixel.d.ts","sourceRoot":"","sources":["../../../src/render/Pixel.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACrF,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD;;;;GAIG;AACH,yBAAiB,KAAK,CAAC;IACrB,0DAA0D;IAC1D,MAAa,IAAI;QACf,2CAA2C;QAC3C,SAAgB,OAAO,CAAC,EAAE,OAAO,CAAC;QAClC,SAAgB,OAAO,CAAC,EAAE,UAAU,CAAC;QACrC,sHAAsH;QACtH,SAAgB,gBAAgB,EAAE,MAAM,CAAC;QACzC,oDAAoD;QACpD,SAAgB,IAAI,EAAE,YAAY,CAAC;QACnC,6DAA6D;QAC7D,SAAgB,SAAS,EAAE,SAAS,CAAC;QACrC,gBAAgB;QAChB,SAAgB,SAAS,CAAC,EAAE,SAAS,CAAC;QACtC,yEAAyE;QACzE,SAAgB,MAAM,CAAC,EAAE,gBAAgB,CAAC;QAC1C,gBAAgB;QAChB,SAAgB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChC,gBAAgB;QAChB,IAAW,YAAY,IAAI,OAAO,CAEjC;QAED,gBAAgB;oBACG,IAAI,CAAC,EAAE;YACxB,OAAO,CAAC,EAAE,YAAY,CAAC;YACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;YAC1B,IAAI,CAAC,EAAE,YAAY,CAAC;YACpB,SAAS,CAAC,EAAE,SAAS,CAAC;YACtB,SAAS,CAAC,EAAE,SAAS,CAAC;YACtB,MAAM,CAAC,EAAE,gBAAgB,CAAC;YAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;SACjB;QAYD,qDAAqD;QACrD,IAAW,SAAS,IAAI,UAAU,GAAG,SAAS,CAE7C;QAED,qEAAqE;QACrE,IAAW,aAAa,IAAI,UAAU,GAAG,SAAS,CAEjD;QAED,qDAAqD;QACrD,IAAW,aAAa,IAAI,aAAa,GAAG,SAAS,CAEpD;KACF;IAED,uEAAuE;IACvE,KAAY,YAAY;QACtB,qGAAqG;QACrG,OAAO,IAAA;QACP,8CAA8C;QAC9C,IAAI,IAAA;QACJ,qCAAqC;QACrC,OAAO,IAAA;QACP,yDAAyD;QACzD,MAAM,IAAA;QACN,uDAAuD;QACvD,IAAI,IAAA;QACJ,wEAAwE;QACxE,UAAU,IAAA;KACX;IAED,iFAAiF;IACjF,KAAY,SAAS;QACnB,0GAA0G;QAC1G,OAAO,IAAA;QACP,8CAA8C;QAC9C,IAAI,IAAA;QACJ,2CAA2C;QAC3C,MAAM,IAAA;QACN,+CAA+C;QAC/C,SAAS,IAAA;KACV;IAED;;;OAGG;IACH,KAAY,QAAQ;QAClB,IAAI,IAAI;QACR,wDAAwD;QACxD,OAAO,IAAS;QAChB,mJAAmJ;QACnJ,mBAAmB,IAAS;QAC5B,wCAAwC;QACxC,GAAG,IAAgC;KACpC;IAED;;;OAGG;IACH,UAAiB,MAAM;QACrB,gFAAgF;QAChF,QAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;KACtC;IAED;;OAEG;IACH,KAAY,QAAQ,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,KAAK,IAAI,CAAC;CAC7D"}
1
+ {"version":3,"file":"Pixel.d.ts","sourceRoot":"","sources":["../../../src/render/Pixel.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAQ,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACrF,OAAO,EAAE,WAAW,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C;;;;GAIG;AACH,yBAAiB,KAAK,CAAC;IACrB,0DAA0D;IAC1D,MAAa,IAAI;QACf,2CAA2C;QAC3C,SAAgB,OAAO,CAAC,EAAE,OAAO,CAAC;QAClC,SAAgB,OAAO,CAAC,EAAE,UAAU,CAAC;QACrC,sHAAsH;QACtH,SAAgB,gBAAgB,EAAE,MAAM,CAAC;QACzC,oDAAoD;QACpD,SAAgB,IAAI,EAAE,YAAY,CAAC;QACnC,6DAA6D;QAC7D,SAAgB,SAAS,EAAE,SAAS,CAAC;QACrC,gBAAgB;QAChB,SAAgB,SAAS,CAAC,EAAE,SAAS,CAAC;QACtC,yEAAyE;QACzE,SAAgB,MAAM,CAAC,EAAE,gBAAgB,CAAC;QAC1C,gBAAgB;QAChB,SAAgB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChC;;WAEG;QACH,SAAgB,gBAAgB,CAAC,EAAE,UAAU,CAAC;QAC9C,gBAAgB;QAChB,IAAW,YAAY,IAAI,OAAO,CAEjC;QAED,gBAAgB;oBACG,IAAI,CAAC,EAAE;YACxB,OAAO,CAAC,EAAE,YAAY,CAAC;YACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;YAC1B,IAAI,CAAC,EAAE,YAAY,CAAC;YACpB,SAAS,CAAC,EAAE,SAAS,CAAC;YACtB,SAAS,CAAC,EAAE,SAAS,CAAC;YACtB,MAAM,CAAC,EAAE,gBAAgB,CAAC;YAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;YAChB,gBAAgB,CAAC,EAAE,MAAM,CAAC;SAC3B;QAaD,qDAAqD;QACrD,IAAW,SAAS,IAAI,UAAU,GAAG,SAAS,CAE7C;QAED,qEAAqE;QACrE,IAAW,aAAa,IAAI,UAAU,GAAG,SAAS,CAEjD;QAED,qDAAqD;QACrD,IAAW,aAAa,IAAI,aAAa,GAAG,SAAS,CAEpD;QAED,0FAA0F;QACnF,kBAAkB,IAAI,WAAW;QAexC;;WAEG;QACI,UAAU,CAAC,QAAQ,EAAE,QAAQ,GAAG,KAAK,CAAC,QAAQ;KAqBtD;IAED;;;;;;;;;;;;OAYG;IACH,UAAiB,QAAQ;QACvB,+HAA+H;QAC/H,QAAQ,EAAE,UAAU,CAAC;QACrB,gDAAgD;QAChD,QAAQ,EAAE,WAAW,CAAC;QACtB,2EAA2E;QAC3E,YAAY,EAAE,MAAM,CAAC;QACrB,qEAAqE;QACrE,aAAa,CAAC,EAAE,UAAU,CAAC;QAC3B,qCAAqC;QACrC,aAAa,CAAC,EAAE,aAAa,CAAC;QAC9B,kEAAkE;QAClE,OAAO,CAAC,EAAE,UAAU,CAAC;QACrB;;;;WAIG;QACH,YAAY,CAAC,EAAE,gBAAgB,CAAC;QAChC,sCAAsC;QACtC,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB;;WAEG;QACH,YAAY,CAAC,EAAE,OAAO,CAAC;QACvB;;;WAGG;QACH,cAAc,CAAC,EAAE,qBAAqB,CAAC;KACxC;IAED,uEAAuE;IACvE,KAAY,YAAY;QACtB,qGAAqG;QACrG,OAAO,IAAA;QACP,8CAA8C;QAC9C,IAAI,IAAA;QACJ,qCAAqC;QACrC,OAAO,IAAA;QACP,yDAAyD;QACzD,MAAM,IAAA;QACN,uDAAuD;QACvD,IAAI,IAAA;QACJ,wEAAwE;QACxE,UAAU,IAAA;KACX;IAED,iFAAiF;IACjF,KAAY,SAAS;QACnB,0GAA0G;QAC1G,OAAO,IAAA;QACP,8CAA8C;QAC9C,IAAI,IAAA;QACJ,2CAA2C;QAC3C,MAAM,IAAA;QACN,+CAA+C;QAC/C,SAAS,IAAA;KACV;IAED;;;OAGG;IACH,KAAY,QAAQ;QAClB,IAAI,IAAI;QACR,wDAAwD;QACxD,OAAO,IAAS;QAChB,mJAAmJ;QACnJ,mBAAmB,IAAS;QAC5B,wCAAwC;QACxC,GAAG,IAAgC;KACpC;IAED;;;OAGG;IACH,UAAiB,MAAM;QACrB,gFAAgF;QAChF,QAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;KACtC;IAED;;OAEG;IACH,KAAY,QAAQ,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,KAAK,IAAI,CAAC;CAC7D"}
@@ -5,7 +5,9 @@
5
5
  /** @packageDocumentation
6
6
  * @module Rendering
7
7
  */
8
+ import { Id64 } from "@itwin/core-bentley";
8
9
  import { BatchType, Feature } from "@itwin/core-common";
10
+ import { HitPriority } from "../HitDetail";
9
11
  /** Describes aspects of a pixel as read from a [[Viewport]].
10
12
  * @see [[Viewport.readPixels]].
11
13
  * @public
@@ -29,6 +31,7 @@ export var Pixel;
29
31
  this.planarity = args?.planarity ?? Planarity.Unknown;
30
32
  this.iModel = args?.iModel;
31
33
  this.tileId = args?.tileId;
34
+ this.viewAttachmentId = args?.viewAttachmentId;
32
35
  }
33
36
  /** The Id of the element that produced the pixel. */
34
37
  get elementId() {
@@ -42,6 +45,44 @@ export var Pixel;
42
45
  get geometryClass() {
43
46
  return this.feature?.geometryClass;
44
47
  }
48
+ /** Computes the [[HitPriority]] of this pixel based on its [[type]] and [[planarity]]. */
49
+ computeHitPriority() {
50
+ switch (this.type) {
51
+ case Pixel.GeometryType.Surface:
52
+ return Pixel.Planarity.Planar === this.planarity ? HitPriority.PlanarSurface : HitPriority.NonPlanarSurface;
53
+ case Pixel.GeometryType.Linear:
54
+ return HitPriority.WireEdge;
55
+ case Pixel.GeometryType.Edge:
56
+ return Pixel.Planarity.Planar === this.planarity ? HitPriority.PlanarEdge : HitPriority.NonPlanarEdge;
57
+ case Pixel.GeometryType.Silhouette:
58
+ return HitPriority.SilhouetteEdge;
59
+ default:
60
+ return HitPriority.Unknown;
61
+ }
62
+ }
63
+ /** Convert this pixel to a [[Pixel.HitProps]] suitable for constructing a [[HitDetail]].
64
+ * @param viewport The viewport in which the hit originated.
65
+ */
66
+ toHitProps(viewport) {
67
+ let viewAttachment;
68
+ if (this.viewAttachmentId) {
69
+ const attachmentViewport = viewport.view.getAttachmentViewport(this.viewAttachmentId);
70
+ if (attachmentViewport)
71
+ viewAttachment = { viewport: attachmentViewport, id: this.viewAttachmentId };
72
+ }
73
+ return {
74
+ sourceId: this.elementId ?? Id64.invalid,
75
+ priority: this.computeHitPriority(),
76
+ distFraction: this.distanceFraction,
77
+ subCategoryId: this.subCategoryId,
78
+ geometryClass: this.geometryClass,
79
+ modelId: this.modelId,
80
+ tileId: this.tileId,
81
+ isClassifier: this.isClassifier,
82
+ sourceIModel: this.iModel,
83
+ viewAttachment,
84
+ };
85
+ }
45
86
  }
46
87
  Pixel.Data = Data;
47
88
  /** Describes the type of geometry that produced the [[Pixel.Data]]. */
@@ -1 +1 @@
1
- {"version":3,"file":"Pixel.js","sourceRoot":"","sources":["../../../src/render/Pixel.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAGH,OAAO,EAAE,SAAS,EAAE,OAAO,EAA+B,MAAM,oBAAoB,CAAC;AAGrF;;;;GAIG;AACH,MAAM,KAAW,KAAK,CAmHrB;AAnHD,WAAiB,KAAK;IACpB,0DAA0D;IAC1D,MAAa,IAAI;QAgBf,gBAAgB;QAChB,IAAW,YAAY;YACrB,OAAO,SAAS,KAAK,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,OAAO,KAAK,IAAI,CAAC,SAAS,CAAC;QAC9E,CAAC;QAED,gBAAgB;QAChB,YAAmB,IAQlB;YACC,IAAI,IAAI,EAAE,OAAO;gBACf,IAAI,CAAC,OAAO,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;YAE7G,IAAI,CAAC,OAAO,GAAG,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC;YACtC,IAAI,CAAC,gBAAgB,GAAG,IAAI,EAAE,gBAAgB,IAAI,CAAC,CAAC,CAAC;YACrD,IAAI,CAAC,IAAI,GAAG,IAAI,EAAE,IAAI,IAAI,YAAY,CAAC,OAAO,CAAC;YAC/C,IAAI,CAAC,SAAS,GAAG,IAAI,EAAE,SAAS,IAAI,SAAS,CAAC,OAAO,CAAC;YACtD,IAAI,CAAC,MAAM,GAAG,IAAI,EAAE,MAAM,CAAC;YAC3B,IAAI,CAAC,MAAM,GAAG,IAAI,EAAE,MAAM,CAAC;QAC7B,CAAC;QAED,qDAAqD;QACrD,IAAW,SAAS;YAClB,OAAO,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC;QACjC,CAAC;QAED,qEAAqE;QACrE,IAAW,aAAa;YACtB,OAAO,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC;QACrC,CAAC;QAED,qDAAqD;QACrD,IAAW,aAAa;YACtB,OAAO,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC;QACrC,CAAC;KACF;IAxDY,UAAI,OAwDhB,CAAA;IAED,uEAAuE;IACvE,IAAY,YAaX;IAbD,WAAY,YAAY;QACtB,qGAAqG;QACrG,qDAAO,CAAA;QACP,8CAA8C;QAC9C,+CAAI,CAAA;QACJ,qCAAqC;QACrC,qDAAO,CAAA;QACP,yDAAyD;QACzD,mDAAM,CAAA;QACN,uDAAuD;QACvD,+CAAI,CAAA;QACJ,wEAAwE;QACxE,2DAAU,CAAA;IACZ,CAAC,EAbW,YAAY,GAAZ,kBAAY,KAAZ,kBAAY,QAavB;IAED,iFAAiF;IACjF,IAAY,SASX;IATD,WAAY,SAAS;QACnB,0GAA0G;QAC1G,+CAAO,CAAA;QACP,8CAA8C;QAC9C,yCAAI,CAAA;QACJ,2CAA2C;QAC3C,6CAAM,CAAA;QACN,+CAA+C;QAC/C,mDAAS,CAAA;IACX,CAAC,EATW,SAAS,GAAT,eAAS,KAAT,eAAS,QASpB;IAED;;;OAGG;IACH,IAAY,QAQX;IARD,WAAY,QAAQ;QAClB,uCAAQ,CAAA;QACR,wDAAwD;QACxD,6CAAgB,CAAA;QAChB,mJAAmJ;QACnJ,qEAA4B,CAAA;QAC5B,wCAAwC;QACxC,qCAAmC,CAAA;IACrC,CAAC,EARW,QAAQ,GAAR,cAAQ,KAAR,cAAQ,QAQnB;AAeH,CAAC,EAnHgB,KAAK,KAAL,KAAK,QAmHrB","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 { BatchType, Feature, GeometryClass, ModelFeature } from \"@itwin/core-common\";\r\nimport { IModelConnection } from \"../IModelConnection\";\r\n\r\n/** Describes aspects of a pixel as read from a [[Viewport]].\r\n * @see [[Viewport.readPixels]].\r\n * @public\r\n * @extensions\r\n */\r\nexport namespace Pixel {\r\n /** Describes a single pixel within a [[Pixel.Buffer]]. */\r\n export class Data {\r\n /** The feature that produced the pixel. */\r\n public readonly feature?: Feature;\r\n public readonly modelId?: Id64String;\r\n /** The pixel's depth in [[CoordSystem.Npc]] coordinates (0 to 1), or -1 if depth was not written or not requested. */\r\n public readonly distanceFraction: number;\r\n /** The type of geometry that produced the pixel. */\r\n public readonly type: GeometryType;\r\n /** The planarity of the geometry that produced the pixel. */\r\n public readonly planarity: Planarity;\r\n /** @internal */\r\n public readonly batchType?: BatchType;\r\n /** The iModel from which the geometry producing the pixel originated. */\r\n public readonly iModel?: IModelConnection;\r\n /** @internal */\r\n public readonly tileId?: string;\r\n /** @internal */\r\n public get isClassifier(): boolean {\r\n return undefined !== this.batchType && BatchType.Primary !== this.batchType;\r\n }\r\n\r\n /** @internal */\r\n public constructor(args?: {\r\n feature?: ModelFeature;\r\n distanceFraction?: number;\r\n type?: GeometryType;\r\n planarity?: Planarity;\r\n batchType?: BatchType;\r\n iModel?: IModelConnection;\r\n tileId?: string;\r\n }) {\r\n if (args?.feature)\r\n this.feature = new Feature(args.feature.elementId, args.feature.subCategoryId, args.feature.geometryClass);\r\n\r\n this.modelId = args?.feature?.modelId;\r\n this.distanceFraction = args?.distanceFraction ?? -1;\r\n this.type = args?.type ?? GeometryType.Unknown;\r\n this.planarity = args?.planarity ?? Planarity.Unknown;\r\n this.iModel = args?.iModel;\r\n this.tileId = args?.tileId;\r\n }\r\n\r\n /** The Id of the element that produced the pixel. */\r\n public get elementId(): Id64String | undefined {\r\n return this.feature?.elementId;\r\n }\r\n\r\n /** The Id of the [SubCategory]($backend) that produced the pixel. */\r\n public get subCategoryId(): Id64String | undefined {\r\n return this.feature?.subCategoryId;\r\n }\r\n\r\n /** The class of geometry that produced the pixel. */\r\n public get geometryClass(): GeometryClass | undefined {\r\n return this.feature?.geometryClass;\r\n }\r\n }\r\n\r\n /** Describes the type of geometry that produced the [[Pixel.Data]]. */\r\n export enum GeometryType {\r\n /** [[Pixel.Selector.GeometryAndDistance]] was not specified, or the type could not be determined. */\r\n Unknown, // Geometry was not selected, or type could not be determined\r\n /** No geometry was rendered to this pixel. */\r\n None,\r\n /** A surface produced this pixel. */\r\n Surface,\r\n /** A point primitive or polyline produced this pixel. */\r\n Linear,\r\n /** This pixel was produced by an edge of a surface. */\r\n Edge,\r\n /** This pixel was produced by a silhouette edge of a curved surface. */\r\n Silhouette,\r\n }\r\n\r\n /** Describes the planarity of the foremost geometry which produced the pixel. */\r\n export enum Planarity {\r\n /** [[Pixel.Selector.GeometryAndDistance]] was not specified, or the planarity could not be determined. */\r\n Unknown,\r\n /** No geometry was rendered to this pixel. */\r\n None,\r\n /** Planar geometry produced this pixel. */\r\n Planar,\r\n /** Non-planar geometry produced this pixel. */\r\n NonPlanar,\r\n }\r\n\r\n /**\r\n * Bit-mask by which callers of [[Viewport.readPixels]] specify which aspects are of interest.\r\n * Aspects not specified will be omitted from the returned data.\r\n */\r\n export enum Selector {\r\n None = 0,\r\n /** Select the [[Feature]] which produced each pixel. */\r\n Feature = 1 << 0, // eslint-disable-line @typescript-eslint/no-shadow\r\n /** Select the type and planarity of geometry which produced each pixel as well as the fraction of its distance between the near and far planes. */\r\n GeometryAndDistance = 1 << 2,\r\n /** Select all aspects of each pixel. */\r\n All = GeometryAndDistance | Feature,\r\n }\r\n\r\n /** A rectangular array of pixels as read from a [[Viewport]]'s frame buffer. Each pixel is represented as a [[Pixel.Data]] object.\r\n * The contents of the pixel buffer will be specified using device pixels, not CSS pixels. See [[Viewport.devicePixelRatio]] and [[Viewport.cssPixelsToDevicePixels]].\r\n * @see [[Viewport.readPixels]].\r\n */\r\n export interface Buffer {\r\n /** Retrieve the data associated with the pixel at (x,y) in view coordinates. */\r\n getPixel(x: number, y: number): Data;\r\n }\r\n\r\n /** A function which receives the results of a call to [[Viewport.readPixels]].\r\n * @note The contents of the buffer become invalid once the Receiver function returns. Do not store a reference to it.\r\n */\r\n export type Receiver = (pixels: Buffer | undefined) => void;\r\n}\r\n"]}
1
+ {"version":3,"file":"Pixel.js","sourceRoot":"","sources":["../../../src/render/Pixel.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 { Id64, Id64String } from \"@itwin/core-bentley\";\r\nimport { BatchType, Feature, GeometryClass, ModelFeature } from \"@itwin/core-common\";\r\nimport { HitPriority, ViewAttachmentHitInfo } from \"../HitDetail\";\r\nimport { IModelConnection } from \"../IModelConnection\";\r\nimport type { Viewport } from \"../Viewport\";\r\n\r\n/** Describes aspects of a pixel as read from a [[Viewport]].\r\n * @see [[Viewport.readPixels]].\r\n * @public\r\n * @extensions\r\n */\r\nexport namespace Pixel {\r\n /** Describes a single pixel within a [[Pixel.Buffer]]. */\r\n export class Data {\r\n /** The feature that produced the pixel. */\r\n public readonly feature?: Feature;\r\n public readonly modelId?: Id64String;\r\n /** The pixel's depth in [[CoordSystem.Npc]] coordinates (0 to 1), or -1 if depth was not written or not requested. */\r\n public readonly distanceFraction: number;\r\n /** The type of geometry that produced the pixel. */\r\n public readonly type: GeometryType;\r\n /** The planarity of the geometry that produced the pixel. */\r\n public readonly planarity: Planarity;\r\n /** @internal */\r\n public readonly batchType?: BatchType;\r\n /** The iModel from which the geometry producing the pixel originated. */\r\n public readonly iModel?: IModelConnection;\r\n /** @internal */\r\n public readonly tileId?: string;\r\n /** The Id of the [ViewAttachment]($backend), if any, from which the pixel originated.\r\n * @beta\r\n */\r\n public readonly viewAttachmentId?: Id64String;\r\n /** @internal */\r\n public get isClassifier(): boolean {\r\n return undefined !== this.batchType && BatchType.Primary !== this.batchType;\r\n }\r\n\r\n /** @internal */\r\n public constructor(args?: {\r\n feature?: ModelFeature;\r\n distanceFraction?: number;\r\n type?: GeometryType;\r\n planarity?: Planarity;\r\n batchType?: BatchType;\r\n iModel?: IModelConnection;\r\n tileId?: string;\r\n viewAttachmentId?: string;\r\n }) {\r\n if (args?.feature)\r\n this.feature = new Feature(args.feature.elementId, args.feature.subCategoryId, args.feature.geometryClass);\r\n\r\n this.modelId = args?.feature?.modelId;\r\n this.distanceFraction = args?.distanceFraction ?? -1;\r\n this.type = args?.type ?? GeometryType.Unknown;\r\n this.planarity = args?.planarity ?? Planarity.Unknown;\r\n this.iModel = args?.iModel;\r\n this.tileId = args?.tileId;\r\n this.viewAttachmentId = args?.viewAttachmentId;\r\n }\r\n\r\n /** The Id of the element that produced the pixel. */\r\n public get elementId(): Id64String | undefined {\r\n return this.feature?.elementId;\r\n }\r\n\r\n /** The Id of the [SubCategory]($backend) that produced the pixel. */\r\n public get subCategoryId(): Id64String | undefined {\r\n return this.feature?.subCategoryId;\r\n }\r\n\r\n /** The class of geometry that produced the pixel. */\r\n public get geometryClass(): GeometryClass | undefined {\r\n return this.feature?.geometryClass;\r\n }\r\n\r\n /** Computes the [[HitPriority]] of this pixel based on its [[type]] and [[planarity]]. */\r\n public computeHitPriority(): HitPriority {\r\n switch (this.type) {\r\n case Pixel.GeometryType.Surface:\r\n return Pixel.Planarity.Planar === this.planarity ? HitPriority.PlanarSurface : HitPriority.NonPlanarSurface;\r\n case Pixel.GeometryType.Linear:\r\n return HitPriority.WireEdge;\r\n case Pixel.GeometryType.Edge:\r\n return Pixel.Planarity.Planar === this.planarity ? HitPriority.PlanarEdge : HitPriority.NonPlanarEdge;\r\n case Pixel.GeometryType.Silhouette:\r\n return HitPriority.SilhouetteEdge;\r\n default:\r\n return HitPriority.Unknown;\r\n }\r\n }\r\n\r\n /** Convert this pixel to a [[Pixel.HitProps]] suitable for constructing a [[HitDetail]].\r\n * @param viewport The viewport in which the hit originated.\r\n */\r\n public toHitProps(viewport: Viewport): Pixel.HitProps {\r\n let viewAttachment: ViewAttachmentHitInfo | undefined;\r\n if (this.viewAttachmentId) {\r\n const attachmentViewport = viewport.view.getAttachmentViewport(this.viewAttachmentId);\r\n if (attachmentViewport)\r\n viewAttachment = { viewport: attachmentViewport, id: this.viewAttachmentId };\r\n }\r\n\r\n return {\r\n sourceId: this.elementId ?? Id64.invalid,\r\n priority: this.computeHitPriority(),\r\n distFraction: this.distanceFraction,\r\n subCategoryId: this.subCategoryId,\r\n geometryClass: this.geometryClass,\r\n modelId: this.modelId,\r\n tileId: this.tileId,\r\n isClassifier: this.isClassifier,\r\n sourceIModel: this.iModel,\r\n viewAttachment,\r\n };\r\n }\r\n }\r\n\r\n /** Describes a subset of [[HitDetailProps]] computed from a [[Pixel.Data]], suitable for constructing a [[HitDetail]].\r\n * For example, the following function creates a `HitDetail` from a `Pixel.Data` and other hit information:\r\n * ```ts\r\n * function makeHitDetail(pixel: Pixel.Data, viewport: ScreenViewport, testPoint: Point3d, hitSource: HitSource, hitPoint: Point3d, distXY: number): HitDetail {\r\n * return new HitDetail({\r\n * ...pixel.toHitProps(viewport),\r\n * viewport, testPoint, hitSource, hitPoint, distXY,\r\n * };\r\n * }\r\n * ```\r\n * @see [[Data.toHitProps]] to convert a [[Pixel.Data]] to a `HitProps`.\r\n * @public\r\n */\r\n export interface HitProps {\r\n /** The source of the geometry. This may be a persistent element Id, or a transient Id used for, e.g., pickable decorations. */\r\n sourceId: Id64String;\r\n /** The hit geometry priority/classification. */\r\n priority: HitPriority;\r\n /** The distance in view coordinates between the hit and the near plane. */\r\n distFraction: number;\r\n /** The [SubCategory]($backend) to which the hit geometry belongs. */\r\n subCategoryId?: Id64String;\r\n /** The class of the hit geometry. */\r\n geometryClass?: GeometryClass;\r\n /** The Id of the [[ModelState]] from which the hit originated. */\r\n modelId?: Id64String;\r\n /** The IModelConnection from which the hit originated.\r\n * This should almost always be left undefined, unless the hit is known to have originated from an iModel\r\n * other than the one associated with the viewport.\r\n * @internal\r\n */\r\n sourceIModel?: IModelConnection;\r\n /** @internal chiefly for debugging */\r\n tileId?: string;\r\n /** True if the hit originated from a reality model classifier.\r\n * @alpha\r\n */\r\n isClassifier?: boolean;\r\n /** Information about the [ViewAttachment]($backend) within which the hit geometry resides, if any.\r\n * @note Only [[SheetViewState]]s can have view attachments.\r\n * @beta\r\n */\r\n viewAttachment?: ViewAttachmentHitInfo;\r\n }\r\n\r\n /** Describes the type of geometry that produced the [[Pixel.Data]]. */\r\n export enum GeometryType {\r\n /** [[Pixel.Selector.GeometryAndDistance]] was not specified, or the type could not be determined. */\r\n Unknown, // Geometry was not selected, or type could not be determined\r\n /** No geometry was rendered to this pixel. */\r\n None,\r\n /** A surface produced this pixel. */\r\n Surface,\r\n /** A point primitive or polyline produced this pixel. */\r\n Linear,\r\n /** This pixel was produced by an edge of a surface. */\r\n Edge,\r\n /** This pixel was produced by a silhouette edge of a curved surface. */\r\n Silhouette,\r\n }\r\n\r\n /** Describes the planarity of the foremost geometry which produced the pixel. */\r\n export enum Planarity {\r\n /** [[Pixel.Selector.GeometryAndDistance]] was not specified, or the planarity could not be determined. */\r\n Unknown,\r\n /** No geometry was rendered to this pixel. */\r\n None,\r\n /** Planar geometry produced this pixel. */\r\n Planar,\r\n /** Non-planar geometry produced this pixel. */\r\n NonPlanar,\r\n }\r\n\r\n /**\r\n * Bit-mask by which callers of [[Viewport.readPixels]] specify which aspects are of interest.\r\n * Aspects not specified will be omitted from the returned data.\r\n */\r\n export enum Selector {\r\n None = 0,\r\n /** Select the [[Feature]] which produced each pixel. */\r\n Feature = 1 << 0, // eslint-disable-line @typescript-eslint/no-shadow\r\n /** Select the type and planarity of geometry which produced each pixel as well as the fraction of its distance between the near and far planes. */\r\n GeometryAndDistance = 1 << 2,\r\n /** Select all aspects of each pixel. */\r\n All = GeometryAndDistance | Feature,\r\n }\r\n\r\n /** A rectangular array of pixels as read from a [[Viewport]]'s frame buffer. Each pixel is represented as a [[Pixel.Data]] object.\r\n * The contents of the pixel buffer will be specified using device pixels, not CSS pixels. See [[Viewport.devicePixelRatio]] and [[Viewport.cssPixelsToDevicePixels]].\r\n * @see [[Viewport.readPixels]].\r\n */\r\n export interface Buffer {\r\n /** Retrieve the data associated with the pixel at (x,y) in view coordinates. */\r\n getPixel(x: number, y: number): Data;\r\n }\r\n\r\n /** A function which receives the results of a call to [[Viewport.readPixels]].\r\n * @note The contents of the buffer become invalid once the Receiver function returns. Do not store a reference to it.\r\n */\r\n export type Receiver = (pixels: Buffer | undefined) => void;\r\n}\r\n"]}
@@ -8,7 +8,7 @@
8
8
  import { assert, Uint16ArrayBuilder, UintArrayBuilder } from "@itwin/core-bentley";
9
9
  import { IndexedPolyface, Point2d, Point3d, Range2d, Vector3d, } from "@itwin/core-geometry";
10
10
  import { OctEncodedNormal, QPoint2d, QPoint2dBufferBuilder, QPoint3d, QPoint3dBufferBuilder, } from "@itwin/core-common";
11
- import { Mesh } from "./primitives/mesh/MeshPrimitives";
11
+ import { MeshPrimitiveType } from "../common/render/primitives/MeshPrimitive";
12
12
  function precondition(condition, message) {
13
13
  if (condition)
14
14
  return;
@@ -22,7 +22,7 @@ export var RealityMeshParams;
22
22
  /** @internal */
23
23
  function fromGltfMesh(mesh) {
24
24
  // The specialized reality mesh shaders expect a mesh with uvs and no edges.
25
- if (mesh.primitive.type !== Mesh.PrimitiveType.Mesh || mesh.primitive.edges || !mesh.pointQParams || !mesh.uvQParams || !mesh.points || !mesh.uvs || !mesh.indices)
25
+ if (mesh.primitive.type !== MeshPrimitiveType.Mesh || mesh.primitive.edges || !mesh.pointQParams || !mesh.uvQParams || !mesh.points || !mesh.uvs || !mesh.indices)
26
26
  return undefined;
27
27
  return {
28
28
  indices: mesh.indices,
@@ -1 +1 @@
1
- {"version":3,"file":"RealityMeshParams.js","sourceRoot":"","sources":["../../../src/render/RealityMeshParams.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,EAAE,MAAM,EAAE,kBAAkB,EAAa,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAC9F,OAAO,EACL,eAAe,EAAE,OAAO,EAAE,OAAO,EAAY,OAAO,EAAsB,QAAQ,GACnF,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,gBAAgB,EAAE,QAAQ,EAAkB,qBAAqB,EAAE,QAAQ,EAAkB,qBAAqB,GACnH,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,IAAI,EAAE,MAAM,kCAAkC,CAAC;AAExD,SAAS,YAAY,CAAC,SAAkB,EAAE,OAAgC;IACxE,IAAI,SAAS;QACX,OAAO;IAET,IAAI,QAAQ,KAAK,OAAO,OAAO;QAC7B,OAAO,GAAG,OAAO,EAAE,CAAC;IAEtB,MAAM,IAAI,KAAK,CAAC,gBAAgB,OAAO,EAAE,CAAC,CAAC;AAC7C,CAAC;AAwBD,cAAc;AACd,MAAM,KAAW,iBAAiB,CAkEjC;AAlED,WAAiB,iBAAiB;IAChC,gBAAgB;IAChB,SAAgB,YAAY,CAAC,IAAkB;QAC7C,4EAA4E;QAC5E,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,KAAK,IAAI,CAAC,aAAa,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO;YAChK,OAAO,SAAS,CAAC;QAEnB,OAAO;YACL,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,SAAS,EAAE;gBACT,MAAM,EAAE,IAAI,CAAC,YAAY;gBACzB,MAAM,EAAE,IAAI,CAAC,MAAM;aACpB;YACD,GAAG,EAAE;gBACH,MAAM,EAAE,IAAI,CAAC,SAAS;gBACtB,MAAM,EAAE,IAAI,CAAC,GAAG;aACjB;YACD,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,gBAAgB;YAChB,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,cAAc,EAAE,OAAO;SAC9D,CAAC;IACJ,CAAC;IAnBe,8BAAY,eAmB3B,CAAA;IAED,aAAa;IACb,SAAgB,UAAU,CAAC,MAAyB,EAAE,OAAgF;QACpI,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;QACpD,MAAM,cAAc,GAAG,OAAO,EAAE,WAAW,IAAI,SAAS,KAAK,OAAO,CAAC;QACrE,MAAM,aAAa,GAAG,OAAO,EAAE,UAAU,CAAC;QAE1C,MAAM,QAAQ,GAAG,eAAe,CAAC,MAAM,CAAC,cAAc,EAAE,aAAa,CAAC,CAAC;QACvE,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC;QAChC,MAAM,KAAK,GAAG,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,SAAS,GAAG,OAAO,EAAE,SAAS,CAAC;QACrC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;YACnD,SAAS,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;YAC5E,SAAS,EAAE,eAAe,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YACzC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;SAC1B;QAED,IAAI,cAAc,EAAE;YAClB,MAAM,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;YAC9B,KAAK,MAAM,GAAG,IAAI,OAAO;gBACvB,QAAQ,CAAC,SAAS,CAAC,gBAAgB,CAAC,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC;SACjE;QAED,IAAI,aAAa,EAAE;YACjB,MAAM,EAAE,GAAG,IAAI,OAAO,EAAE,CAAC;YACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC;gBAC3C,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;SAClF;QAED,IAAI,CAAC,GAAG,CAAC,CAAC;QACV,OAAO,CAAC,OAAO,CAAC,CAAC,KAAa,EAAE,EAAE;YAChC,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YAC9B,IAAI,cAAc;gBAChB,QAAQ,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;YAEjC,IAAI,aAAa;gBACf,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YAEhC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;gBACjB,QAAQ,CAAC,cAAc,EAAE,CAAC;QAC9B,CAAC,CAAC,CAAC;QAEH,OAAO,QAAQ,CAAC;IAClB,CAAC;IAzCe,4BAAU,aAyCzB,CAAA;AACH,CAAC,EAlEgB,iBAAiB,KAAjB,iBAAiB,QAkEjC;AA6BD;;;;;;GAMG;AACH,MAAM,OAAO,wBAAwB;IA0BnC,sDAAsD;IACtD,YAAmB,OAAwC;QAL3D,oBAAoB;QACH,SAAI,GAAG,IAAI,QAAQ,EAAE,CAAC;QACtB,SAAI,GAAG,IAAI,QAAQ,EAAE,CAAC;QAIrC,IAAI,WAAW,CAAC;QAChB,IAAI,SAAS,KAAK,OAAO,CAAC,qBAAqB,IAAI,OAAO,CAAC,qBAAqB,GAAG,IAAI;YACrF,WAAW,GAAG,OAAO,CAAC,qBAAqB,GAAG,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC;QAEnF,IAAI,CAAC,OAAO,GAAG,IAAI,gBAAgB,CAAC;YAClC,eAAe,EAAE,OAAO,CAAC,oBAAoB;YAC7C,WAAW;SACZ,CAAC,CAAC;QAEH,IAAI,OAAO,CAAC,WAAW;YACrB,IAAI,CAAC,OAAO,GAAG,IAAI,kBAAkB,CAAC,EAAE,eAAe,EAAE,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAAC;QAE5F,IAAI,CAAC,SAAS,GAAG,IAAI,qBAAqB,CAAC;YACzC,KAAK,EAAE,OAAO,CAAC,aAAa;YAC5B,eAAe,EAAE,OAAO,CAAC,qBAAqB;SAC/C,CAAC,CAAC;QAEH,IAAI,CAAC,GAAG,GAAG,IAAI,qBAAqB,CAAC;YACnC,KAAK,EAAE,OAAO,CAAC,OAAO,IAAI,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YACjD,eAAe,EAAE,OAAO,CAAC,qBAAqB;SAC/C,CAAC,CAAC;IACL,CAAC;IAED;;;;;;OAMG;IACI,oBAAoB,CAAC,QAAgB,EAAE,EAAS,EAAE,MAAe;QACtE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAChD,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACpC,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACjE,OAAO,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAC5D,CAAC;IAED;;OAEG;IACI,SAAS,CAAC,QAAgB,EAAE,EAAS,EAAE,MAAe;QAC3D,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAChD,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;IACjD,CAAC;IAED;;;;;;;;OAQG;IACI,kBAAkB,CAAC,QAAgB,EAAE,EAAS,EAAE,MAAe;QACpE,YAAY,CAAC,CAAC,SAAS,KAAK,MAAM,CAAC,KAAK,CAAC,SAAS,KAAK,IAAI,CAAC,OAAO,CAAC,EAAE,mEAAmE,CAAC,CAAC;QAE3I,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC9B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAClB,IAAI,SAAS,KAAK,MAAM,EAAE;YACxB,MAAM,CAAC,SAAS,KAAK,IAAI,CAAC,OAAO,CAAC,CAAC;YACnC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SAC3B;QAED,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;IACnC,CAAC;IAED,oEAAoE;IAC7D,WAAW,CAAC,EAAU,EAAE,EAAU,EAAE,EAAU;QACnD,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QAClB,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QAClB,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IACpB,CAAC;IAED,4HAA4H;IACrH,OAAO,CAAC,EAAU,EAAE,EAAU,EAAE,EAAU,EAAE,EAAU;QAC3D,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QAC7B,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IAC/B,CAAC;IAED,+DAA+D;IACxD,UAAU,CAAC,OAAyB;QACzC,KAAK,MAAM,KAAK,IAAI,OAAO;YACzB,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC;IAEO,QAAQ,CAAC,KAAa;QAC5B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC;IAED;;OAEG;IACI,MAAM;QACX,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,EAAE,kDAAkD,CAAC,CAAC;QACzH,OAAO;YACL,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE;YAClC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE;YACtB,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,YAAY,EAAE;YACrC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE;SACrC,CAAC;IACJ,CAAC;CACF","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 { assert, Uint16ArrayBuilder, UintArray, UintArrayBuilder } from \"@itwin/core-bentley\";\r\nimport {\r\n IndexedPolyface, Point2d, Point3d, Polyface, Range2d, Range3d, Transform, Vector3d, XAndY, XYAndZ,\r\n} from \"@itwin/core-geometry\";\r\nimport {\r\n OctEncodedNormal, QPoint2d, QPoint2dBuffer, QPoint2dBufferBuilder, QPoint3d, QPoint3dBuffer, QPoint3dBufferBuilder, RenderTexture,\r\n} from \"@itwin/core-common\";\r\nimport { GltfMeshData } from \"../tile/internal\";\r\nimport { Mesh } from \"./primitives/mesh/MeshPrimitives\";\r\n\r\nfunction precondition(condition: boolean, message: string | (() => string)): asserts condition {\r\n if (condition)\r\n return;\r\n\r\n if (\"string\" !== typeof message)\r\n message = message();\r\n\r\n throw new Error(`Logic Error: ${message}`);\r\n}\r\n\r\n/** Geometry for a reality mesh to be submitted to the [[RenderSystem]] for conversion to a [[RenderGraphic]].\r\n * A reality mesh is a simple triangle mesh to which a [RenderTexture]($common) image can be mapped. Sources of reality meshes\r\n * include [[TerrainMeshProvider]]s to which background map imagery is applied, and [ContextRealityModel]($common)s captured using\r\n * [photogrammetry](https://en.wikipedia.org/wiki/Photogrammetry).\r\n * @see [[RealityMeshParamsBuilder]] to incrementally construct a `RealityMeshParams`.\r\n * @public\r\n */\r\nexport interface RealityMeshParams {\r\n /** The 3d position of each vertex in the mesh, indexed by [[indices]]. */\r\n positions: QPoint3dBuffer;\r\n /** The 2d texture coordinates of each vertex in the mesh, indexed by [[indices]]. */\r\n uvs: QPoint2dBuffer;\r\n /** The optional normal vector for each vertex in the mesh, indexed by [[indices]], stored as [OctEncodedNormal]($common)s. */\r\n normals?: Uint16Array;\r\n /** The integer indices of each triangle in the mesh. The array's length must be a multiple of 3. */\r\n indices: UintArray;\r\n /** @alpha unused by terrain meshes */\r\n featureID?: number; // default 0\r\n /** @alpha unused by terrain meshes */\r\n texture?: RenderTexture;\r\n}\r\n\r\n/** @public */\r\nexport namespace RealityMeshParams {\r\n /** @internal */\r\n export function fromGltfMesh(mesh: GltfMeshData): RealityMeshParams | undefined {\r\n // The specialized reality mesh shaders expect a mesh with uvs and no edges.\r\n if (mesh.primitive.type !== Mesh.PrimitiveType.Mesh || mesh.primitive.edges || !mesh.pointQParams || !mesh.uvQParams || !mesh.points || !mesh.uvs || !mesh.indices)\r\n return undefined;\r\n\r\n return {\r\n indices: mesh.indices,\r\n positions: {\r\n params: mesh.pointQParams,\r\n points: mesh.points,\r\n },\r\n uvs: {\r\n params: mesh.uvQParams,\r\n points: mesh.uvs,\r\n },\r\n normals: mesh.normals,\r\n // featureID: 0,\r\n texture: mesh.primitive.displayParams.textureMapping?.texture,\r\n };\r\n }\r\n\r\n /** @alpha */\r\n export function toPolyface(params: RealityMeshParams, options?: { transform?: Transform, wantNormals?: boolean, wantParams?: boolean }): Polyface | undefined {\r\n const { positions, normals, uvs, indices } = params;\r\n const includeNormals = options?.wantNormals && undefined !== normals;\r\n const includeParams = options?.wantParams;\r\n\r\n const polyface = IndexedPolyface.create(includeNormals, includeParams);\r\n const points = positions.points;\r\n const point = new Point3d();\r\n const transform = options?.transform;\r\n for (let i = 0; i < positions.points.length; i += 3) {\r\n positions.params.unquantize(points[i], points[i + 1], points[i + 2], point);\r\n transform?.multiplyPoint3d(point, point);\r\n polyface.addPoint(point);\r\n }\r\n\r\n if (includeNormals) {\r\n const normal = new Vector3d();\r\n for (const oen of normals)\r\n polyface.addNormal(OctEncodedNormal.decodeValue(oen, normal));\r\n }\r\n\r\n if (includeParams) {\r\n const uv = new Point2d();\r\n for (let i = 0; i < uvs.points.length; i += 2)\r\n polyface.addParam(uvs.params.unquantize(uvs.points[i], uvs.points[i + 1], uv));\r\n }\r\n\r\n let j = 0;\r\n indices.forEach((index: number) => {\r\n polyface.addPointIndex(index);\r\n if (includeNormals)\r\n polyface.addNormalIndex(index);\r\n\r\n if (includeParams)\r\n polyface.addParamIndex(index);\r\n\r\n if (0 === (++j % 3))\r\n polyface.terminateFacet();\r\n });\r\n\r\n return polyface;\r\n }\r\n}\r\n\r\n/** Options used to construct a [[RealityMeshParamsBuilder]].\r\n * @beta\r\n */\r\nexport interface RealityMeshParamsBuilderOptions {\r\n /** A bounding box fully containing the positions of all vertices to be included in the mesh.\r\n * This range is used to quantize [[RealityMeshParams.positions]].\r\n */\r\n positionRange: Range3d;\r\n /** A range fully containing the texture coordinates of all vertices to be included in the mesh.\r\n * This range is used to quantize [[RealityMeshParams.uvs]].\r\n * Default: [0.0, 1.0].\r\n */\r\n uvRange?: Range2d;\r\n /** If true, [[RealityMeshParams.normals]] will be populated.\r\n * If you set this to true, you must supply a normal for every vertex when calling [[RealityMeshParamsBuilder.addQuantizedVertex]] or [[RealityMeshParamsBuilder.addUnquantizedVertex]].\r\n */\r\n wantNormals?: boolean;\r\n /** If defined, memory for this number of vertices will be allocated up-front. Set this if you know the minimum number of vertices in the mesh, to\r\n * avoid unnecessary reallocations when adding vertices.\r\n */\r\n initialVertexCapacity?: number;\r\n /** If defined, memory for this number of indices will be allocated up-front. Set this if you know the minimum number of triangles in the mesh, to avoid\r\n * unnecessary reallocations when adding triangles. The number of indices is equal to three times the number of triangles.\r\n */\r\n initialIndexCapacity?: number;\r\n}\r\n\r\n/** Incrementally constructs a [[RealityMeshParams]].\r\n * The following simple example produces a rectangular mesh containing two triangles.\r\n * ```ts\r\n * [[include:Build_Reality_Mesh_Params]]\r\n * ```\r\n * @beta\r\n */\r\nexport class RealityMeshParamsBuilder {\r\n /** The indices of the vertices in each triangle of the mesh.\r\n * @see [[addTriangle]] to add 3 indices describing a single triangle.\r\n * @see [[addQuad]] to add 4 indices describing two triangles sharing an edge.\r\n * @see [[addIndices]] to add any number of indices.\r\n */\r\n public readonly indices: UintArrayBuilder;\r\n /** The 3d position of each vertex in the mesh.\r\n * @see [[addQuantizedVertex]] and [[addUnquantizedVertex]] to add a vertex.\r\n */\r\n public readonly positions: QPoint3dBufferBuilder;\r\n /** The 2d texture coordinates of each vertex in the mesh.\r\n * @see [[addQuantizedVertex]] and [[addUnquantizedVertex]] to add a vertex.\r\n */\r\n public readonly uvs: QPoint2dBufferBuilder;\r\n /** The normal vector of each vertex in the mesh, or `undefined` if [[RealityMeshParamsBuilderOptions.wantNormals]] was not `true` when constructing the builder.\r\n * A normal vector must be supplied to [[addQuantizedVertex]] and [[addUnquantizedVertex]] if and only if [[RealityMeshParamsBuilderOptions.wantNormals]] was\r\n * specified as `true`.\r\n * The vectors are stored as [OctEncodedNormal]($common)s.\r\n */\r\n public normals?: Uint16ArrayBuilder;\r\n\r\n // Scratch variables\r\n private readonly _q3d = new QPoint3d();\r\n private readonly _q2d = new QPoint2d();\r\n\r\n /** Construct a builder from the specified options. */\r\n public constructor(options: RealityMeshParamsBuilderOptions) {\r\n let initialType;\r\n if (undefined !== options.initialVertexCapacity && options.initialVertexCapacity > 0xff)\r\n initialType = options.initialVertexCapacity > 0xffff ? Uint32Array : Uint16Array;\r\n\r\n this.indices = new UintArrayBuilder({\r\n initialCapacity: options.initialIndexCapacity,\r\n initialType,\r\n });\r\n\r\n if (options.wantNormals)\r\n this.normals = new Uint16ArrayBuilder({ initialCapacity: options.initialVertexCapacity });\r\n\r\n this.positions = new QPoint3dBufferBuilder({\r\n range: options.positionRange,\r\n initialCapacity: options.initialVertexCapacity,\r\n });\r\n\r\n this.uvs = new QPoint2dBufferBuilder({\r\n range: options.uvRange ?? new Range2d(0, 0, 1, 1),\r\n initialCapacity: options.initialVertexCapacity,\r\n });\r\n }\r\n\r\n /** Add a vertex to the mesh and return its index in [[positions]].\r\n * @param position The 3d position, which will be quantized to the [[RealityMeshParamsBuilderOptions.positionRange]] supplied to the builder's constructor.\r\n * @param uv The texture coordinates, which will be quantized to the [[RealityMeshParamsBuilderOptions.uvRange]] supplied to the builder's constructor.\r\n * @param the normal vector, to be supplied if and only if [[RealityMeshParamsBuilderOptions.wantNormals]] was `true` when the builder was constructed.\r\n * @see [[addQuantizedVertex]] if your vertex data is already quantized.\r\n * @returns the index of the new vertex in [[positions]].\r\n */\r\n public addUnquantizedVertex(position: XYAndZ, uv: XAndY, normal?: XYAndZ): number {\r\n this._q3d.init(position, this.positions.params);\r\n this._q2d.init(uv, this.uvs.params);\r\n const oen = normal ? OctEncodedNormal.encode(normal) : undefined;\r\n return this.addQuantizedVertex(this._q3d, this._q2d, oen);\r\n }\r\n\r\n /** Original API had weird mix of quantized and unquantized, used by CesiumTerrainProvider.\r\n * @internal\r\n */\r\n public addVertex(position: XYAndZ, uv: XAndY, normal?: number): void {\r\n this._q3d.init(position, this.positions.params);\r\n this.addQuantizedVertex(this._q3d, uv, normal);\r\n }\r\n\r\n /** Add a vertex to the mesh and return its index in [[positions]].\r\n * @param position The 3d position, quantized to the [[RealityMeshParamsBuilderOptions.positionRange]] supplied to the builder's constructor.\r\n * @param uv The texture coordinates, quantized to the [[RealityMeshParamsBuilderOptions.uvRange]] supplied to the builder's constructor.\r\n * @param normal The unsigned 16-bit [OctEncodedNormal]($common) integer representation of the normal vector, to be supplied if and only if\r\n * [[RealityMeshParamsBuilderOptions.wantNormals]] was `true` when the builder was constructed.\r\n * @see [[addUnquantizedVertex]] if your vertex data is not already quantized.\r\n * @returns the index of the new vertex in [[positions]].\r\n * @throws Error if `normal` is `undefined` but `wantNormals` was specified at construction of the builder, or vice-versa.\r\n */\r\n public addQuantizedVertex(position: XYAndZ, uv: XAndY, normal?: number): number {\r\n precondition((undefined === normal) === (undefined === this.normals), \"RealityMeshParams requires all vertices to have normals, or none.\");\r\n\r\n this.positions.push(position);\r\n this.uvs.push(uv);\r\n if (undefined !== normal) {\r\n assert(undefined !== this.normals);\r\n this.normals.push(normal);\r\n }\r\n\r\n return this.positions.length - 1;\r\n }\r\n\r\n /** Add a triangle corresponding to the three specified vertices. */\r\n public addTriangle(i0: number, i1: number, i2: number): void {\r\n this.addIndex(i0);\r\n this.addIndex(i1);\r\n this.addIndex(i2);\r\n }\r\n\r\n /** Add two triangles sharing an edge. This is equivalent to calling `addTriangle(i0, i1, i2); addTriangle(i1, i3, i2);`. */\r\n public addQuad(i0: number, i1: number, i2: number, i3: number): void {\r\n this.addTriangle(i0, i1, i2);\r\n this.addTriangle(i1, i3, i2);\r\n }\r\n\r\n /** Add all of the indices in `indices` to the index buffer. */\r\n public addIndices(indices: Iterable<number>): void {\r\n for (const index of indices)\r\n this.addIndex(index);\r\n }\r\n\r\n private addIndex(index: number): void {\r\n this.indices.push(index);\r\n }\r\n\r\n /** Extract the finished [[RealityMeshParams]].\r\n * @throws Error if the mesh contains no triangles.\r\n */\r\n public finish(): RealityMeshParams {\r\n precondition(this.positions.length >= 3 && this.indices.length >= 3, \"RealityMeshParams requires at least one triangle\");\r\n return {\r\n positions: this.positions.finish(),\r\n uvs: this.uvs.finish(),\r\n normals: this.normals?.toTypedArray(),\r\n indices: this.indices.toTypedArray(),\r\n };\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"RealityMeshParams.js","sourceRoot":"","sources":["../../../src/render/RealityMeshParams.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 { assert, Uint16ArrayBuilder, UintArray, UintArrayBuilder } from \"@itwin/core-bentley\";\r\nimport {\r\n IndexedPolyface, Point2d, Point3d, Polyface, Range2d, Range3d, Transform, Vector3d, XAndY, XYAndZ,\r\n} from \"@itwin/core-geometry\";\r\nimport {\r\n OctEncodedNormal, QPoint2d, QPoint2dBuffer, QPoint2dBufferBuilder, QPoint3d, QPoint3dBuffer, QPoint3dBufferBuilder, RenderTexture,\r\n} from \"@itwin/core-common\";\r\nimport { GltfMeshData } from \"../tile/internal\";\r\nimport { MeshPrimitiveType } from \"../common/render/primitives/MeshPrimitive\";\r\n\r\nfunction precondition(condition: boolean, message: string | (() => string)): asserts condition {\r\n if (condition)\r\n return;\r\n\r\n if (\"string\" !== typeof message)\r\n message = message();\r\n\r\n throw new Error(`Logic Error: ${message}`);\r\n}\r\n\r\n/** Geometry for a reality mesh to be submitted to the [[RenderSystem]] for conversion to a [[RenderGraphic]].\r\n * A reality mesh is a simple triangle mesh to which a [RenderTexture]($common) image can be mapped. Sources of reality meshes\r\n * include [[TerrainMeshProvider]]s to which background map imagery is applied, and [ContextRealityModel]($common)s captured using\r\n * [photogrammetry](https://en.wikipedia.org/wiki/Photogrammetry).\r\n * @see [[RealityMeshParamsBuilder]] to incrementally construct a `RealityMeshParams`.\r\n * @public\r\n */\r\nexport interface RealityMeshParams {\r\n /** The 3d position of each vertex in the mesh, indexed by [[indices]]. */\r\n positions: QPoint3dBuffer;\r\n /** The 2d texture coordinates of each vertex in the mesh, indexed by [[indices]]. */\r\n uvs: QPoint2dBuffer;\r\n /** The optional normal vector for each vertex in the mesh, indexed by [[indices]], stored as [OctEncodedNormal]($common)s. */\r\n normals?: Uint16Array;\r\n /** The integer indices of each triangle in the mesh. The array's length must be a multiple of 3. */\r\n indices: UintArray;\r\n /** @alpha unused by terrain meshes */\r\n featureID?: number; // default 0\r\n /** @alpha unused by terrain meshes */\r\n texture?: RenderTexture;\r\n}\r\n\r\n/** @public */\r\nexport namespace RealityMeshParams {\r\n /** @internal */\r\n export function fromGltfMesh(mesh: GltfMeshData): RealityMeshParams | undefined {\r\n // The specialized reality mesh shaders expect a mesh with uvs and no edges.\r\n if (mesh.primitive.type !== MeshPrimitiveType.Mesh || mesh.primitive.edges || !mesh.pointQParams || !mesh.uvQParams || !mesh.points || !mesh.uvs || !mesh.indices)\r\n return undefined;\r\n\r\n return {\r\n indices: mesh.indices,\r\n positions: {\r\n params: mesh.pointQParams,\r\n points: mesh.points,\r\n },\r\n uvs: {\r\n params: mesh.uvQParams,\r\n points: mesh.uvs,\r\n },\r\n normals: mesh.normals,\r\n // featureID: 0,\r\n texture: mesh.primitive.displayParams.textureMapping?.texture,\r\n };\r\n }\r\n\r\n /** @alpha */\r\n export function toPolyface(params: RealityMeshParams, options?: { transform?: Transform, wantNormals?: boolean, wantParams?: boolean }): Polyface | undefined {\r\n const { positions, normals, uvs, indices } = params;\r\n const includeNormals = options?.wantNormals && undefined !== normals;\r\n const includeParams = options?.wantParams;\r\n\r\n const polyface = IndexedPolyface.create(includeNormals, includeParams);\r\n const points = positions.points;\r\n const point = new Point3d();\r\n const transform = options?.transform;\r\n for (let i = 0; i < positions.points.length; i += 3) {\r\n positions.params.unquantize(points[i], points[i + 1], points[i + 2], point);\r\n transform?.multiplyPoint3d(point, point);\r\n polyface.addPoint(point);\r\n }\r\n\r\n if (includeNormals) {\r\n const normal = new Vector3d();\r\n for (const oen of normals)\r\n polyface.addNormal(OctEncodedNormal.decodeValue(oen, normal));\r\n }\r\n\r\n if (includeParams) {\r\n const uv = new Point2d();\r\n for (let i = 0; i < uvs.points.length; i += 2)\r\n polyface.addParam(uvs.params.unquantize(uvs.points[i], uvs.points[i + 1], uv));\r\n }\r\n\r\n let j = 0;\r\n indices.forEach((index: number) => {\r\n polyface.addPointIndex(index);\r\n if (includeNormals)\r\n polyface.addNormalIndex(index);\r\n\r\n if (includeParams)\r\n polyface.addParamIndex(index);\r\n\r\n if (0 === (++j % 3))\r\n polyface.terminateFacet();\r\n });\r\n\r\n return polyface;\r\n }\r\n}\r\n\r\n/** Options used to construct a [[RealityMeshParamsBuilder]].\r\n * @beta\r\n */\r\nexport interface RealityMeshParamsBuilderOptions {\r\n /** A bounding box fully containing the positions of all vertices to be included in the mesh.\r\n * This range is used to quantize [[RealityMeshParams.positions]].\r\n */\r\n positionRange: Range3d;\r\n /** A range fully containing the texture coordinates of all vertices to be included in the mesh.\r\n * This range is used to quantize [[RealityMeshParams.uvs]].\r\n * Default: [0.0, 1.0].\r\n */\r\n uvRange?: Range2d;\r\n /** If true, [[RealityMeshParams.normals]] will be populated.\r\n * If you set this to true, you must supply a normal for every vertex when calling [[RealityMeshParamsBuilder.addQuantizedVertex]] or [[RealityMeshParamsBuilder.addUnquantizedVertex]].\r\n */\r\n wantNormals?: boolean;\r\n /** If defined, memory for this number of vertices will be allocated up-front. Set this if you know the minimum number of vertices in the mesh, to\r\n * avoid unnecessary reallocations when adding vertices.\r\n */\r\n initialVertexCapacity?: number;\r\n /** If defined, memory for this number of indices will be allocated up-front. Set this if you know the minimum number of triangles in the mesh, to avoid\r\n * unnecessary reallocations when adding triangles. The number of indices is equal to three times the number of triangles.\r\n */\r\n initialIndexCapacity?: number;\r\n}\r\n\r\n/** Incrementally constructs a [[RealityMeshParams]].\r\n * The following simple example produces a rectangular mesh containing two triangles.\r\n * ```ts\r\n * [[include:Build_Reality_Mesh_Params]]\r\n * ```\r\n * @beta\r\n */\r\nexport class RealityMeshParamsBuilder {\r\n /** The indices of the vertices in each triangle of the mesh.\r\n * @see [[addTriangle]] to add 3 indices describing a single triangle.\r\n * @see [[addQuad]] to add 4 indices describing two triangles sharing an edge.\r\n * @see [[addIndices]] to add any number of indices.\r\n */\r\n public readonly indices: UintArrayBuilder;\r\n /** The 3d position of each vertex in the mesh.\r\n * @see [[addQuantizedVertex]] and [[addUnquantizedVertex]] to add a vertex.\r\n */\r\n public readonly positions: QPoint3dBufferBuilder;\r\n /** The 2d texture coordinates of each vertex in the mesh.\r\n * @see [[addQuantizedVertex]] and [[addUnquantizedVertex]] to add a vertex.\r\n */\r\n public readonly uvs: QPoint2dBufferBuilder;\r\n /** The normal vector of each vertex in the mesh, or `undefined` if [[RealityMeshParamsBuilderOptions.wantNormals]] was not `true` when constructing the builder.\r\n * A normal vector must be supplied to [[addQuantizedVertex]] and [[addUnquantizedVertex]] if and only if [[RealityMeshParamsBuilderOptions.wantNormals]] was\r\n * specified as `true`.\r\n * The vectors are stored as [OctEncodedNormal]($common)s.\r\n */\r\n public normals?: Uint16ArrayBuilder;\r\n\r\n // Scratch variables\r\n private readonly _q3d = new QPoint3d();\r\n private readonly _q2d = new QPoint2d();\r\n\r\n /** Construct a builder from the specified options. */\r\n public constructor(options: RealityMeshParamsBuilderOptions) {\r\n let initialType;\r\n if (undefined !== options.initialVertexCapacity && options.initialVertexCapacity > 0xff)\r\n initialType = options.initialVertexCapacity > 0xffff ? Uint32Array : Uint16Array;\r\n\r\n this.indices = new UintArrayBuilder({\r\n initialCapacity: options.initialIndexCapacity,\r\n initialType,\r\n });\r\n\r\n if (options.wantNormals)\r\n this.normals = new Uint16ArrayBuilder({ initialCapacity: options.initialVertexCapacity });\r\n\r\n this.positions = new QPoint3dBufferBuilder({\r\n range: options.positionRange,\r\n initialCapacity: options.initialVertexCapacity,\r\n });\r\n\r\n this.uvs = new QPoint2dBufferBuilder({\r\n range: options.uvRange ?? new Range2d(0, 0, 1, 1),\r\n initialCapacity: options.initialVertexCapacity,\r\n });\r\n }\r\n\r\n /** Add a vertex to the mesh and return its index in [[positions]].\r\n * @param position The 3d position, which will be quantized to the [[RealityMeshParamsBuilderOptions.positionRange]] supplied to the builder's constructor.\r\n * @param uv The texture coordinates, which will be quantized to the [[RealityMeshParamsBuilderOptions.uvRange]] supplied to the builder's constructor.\r\n * @param the normal vector, to be supplied if and only if [[RealityMeshParamsBuilderOptions.wantNormals]] was `true` when the builder was constructed.\r\n * @see [[addQuantizedVertex]] if your vertex data is already quantized.\r\n * @returns the index of the new vertex in [[positions]].\r\n */\r\n public addUnquantizedVertex(position: XYAndZ, uv: XAndY, normal?: XYAndZ): number {\r\n this._q3d.init(position, this.positions.params);\r\n this._q2d.init(uv, this.uvs.params);\r\n const oen = normal ? OctEncodedNormal.encode(normal) : undefined;\r\n return this.addQuantizedVertex(this._q3d, this._q2d, oen);\r\n }\r\n\r\n /** Original API had weird mix of quantized and unquantized, used by CesiumTerrainProvider.\r\n * @internal\r\n */\r\n public addVertex(position: XYAndZ, uv: XAndY, normal?: number): void {\r\n this._q3d.init(position, this.positions.params);\r\n this.addQuantizedVertex(this._q3d, uv, normal);\r\n }\r\n\r\n /** Add a vertex to the mesh and return its index in [[positions]].\r\n * @param position The 3d position, quantized to the [[RealityMeshParamsBuilderOptions.positionRange]] supplied to the builder's constructor.\r\n * @param uv The texture coordinates, quantized to the [[RealityMeshParamsBuilderOptions.uvRange]] supplied to the builder's constructor.\r\n * @param normal The unsigned 16-bit [OctEncodedNormal]($common) integer representation of the normal vector, to be supplied if and only if\r\n * [[RealityMeshParamsBuilderOptions.wantNormals]] was `true` when the builder was constructed.\r\n * @see [[addUnquantizedVertex]] if your vertex data is not already quantized.\r\n * @returns the index of the new vertex in [[positions]].\r\n * @throws Error if `normal` is `undefined` but `wantNormals` was specified at construction of the builder, or vice-versa.\r\n */\r\n public addQuantizedVertex(position: XYAndZ, uv: XAndY, normal?: number): number {\r\n precondition((undefined === normal) === (undefined === this.normals), \"RealityMeshParams requires all vertices to have normals, or none.\");\r\n\r\n this.positions.push(position);\r\n this.uvs.push(uv);\r\n if (undefined !== normal) {\r\n assert(undefined !== this.normals);\r\n this.normals.push(normal);\r\n }\r\n\r\n return this.positions.length - 1;\r\n }\r\n\r\n /** Add a triangle corresponding to the three specified vertices. */\r\n public addTriangle(i0: number, i1: number, i2: number): void {\r\n this.addIndex(i0);\r\n this.addIndex(i1);\r\n this.addIndex(i2);\r\n }\r\n\r\n /** Add two triangles sharing an edge. This is equivalent to calling `addTriangle(i0, i1, i2); addTriangle(i1, i3, i2);`. */\r\n public addQuad(i0: number, i1: number, i2: number, i3: number): void {\r\n this.addTriangle(i0, i1, i2);\r\n this.addTriangle(i1, i3, i2);\r\n }\r\n\r\n /** Add all of the indices in `indices` to the index buffer. */\r\n public addIndices(indices: Iterable<number>): void {\r\n for (const index of indices)\r\n this.addIndex(index);\r\n }\r\n\r\n private addIndex(index: number): void {\r\n this.indices.push(index);\r\n }\r\n\r\n /** Extract the finished [[RealityMeshParams]].\r\n * @throws Error if the mesh contains no triangles.\r\n */\r\n public finish(): RealityMeshParams {\r\n precondition(this.positions.length >= 3 && this.indices.length >= 3, \"RealityMeshParams requires at least one triangle\");\r\n return {\r\n positions: this.positions.finish(),\r\n uvs: this.uvs.finish(),\r\n normals: this.normals?.toTypedArray(),\r\n indices: this.indices.toTypedArray(),\r\n };\r\n }\r\n}\r\n"]}
@@ -9,7 +9,11 @@ import { IModelConnection } from "../IModelConnection";
9
9
  import { MapTileTreeReference, TileTreeReference } from "../tile/internal";
10
10
  import { SceneContext } from "../ViewContext";
11
11
  import { Viewport } from "../Viewport";
12
- import { ViewRect } from "../ViewRect";
12
+ import { MeshParams } from "../common/render/primitives/MeshParams";
13
+ import { PointStringParams } from "../common/render/primitives/PointStringParams";
14
+ import { PolylineParams } from "../common/render/primitives/PolylineParams";
15
+ import { TextureCacheKey } from "../common/render/TextureParams";
16
+ import { ViewRect } from "../common/ViewRect";
13
17
  import { GraphicBranch, GraphicBranchOptions } from "./GraphicBranch";
14
18
  import { BatchOptions, CustomGraphicBuilderOptions, GraphicBuilder, GraphicType, ViewportGraphicBuilderOptions } from "./GraphicBuilder";
15
19
  import { InstancedGraphicParams, PatternGraphicParams } from "./InstancedGraphicParams";
@@ -17,16 +21,13 @@ import { MeshArgs, PolylineArgs } from "./primitives/mesh/MeshPrimitives";
17
21
  import { RealityMeshGraphicParams } from "./RealityMeshGraphicParams";
18
22
  import { RealityMeshParams } from "./RealityMeshParams";
19
23
  import { PointCloudArgs } from "./primitives/PointCloudPrimitive";
20
- import { PointStringParams } from "./primitives/PointStringParams";
21
- import { PolylineParams } from "./primitives/PolylineParams";
22
- import { MeshParams } from "./primitives/VertexTable";
23
24
  import { RenderClipVolume } from "./RenderClipVolume";
24
25
  import { RenderGraphic, RenderGraphicOwner } from "./RenderGraphic";
25
- import { CreateRenderMaterialArgs } from "./RenderMaterial";
26
+ import { CreateRenderMaterialArgs } from "./CreateRenderMaterialArgs";
26
27
  import { RenderMemory } from "./RenderMemory";
27
28
  import { RenderPlanarClassifier } from "./RenderPlanarClassifier";
28
29
  import { RenderTarget } from "./RenderTarget";
29
- import { CreateTextureArgs, CreateTextureFromSourceArgs, TextureCacheKey } from "./RenderTexture";
30
+ import { CreateTextureArgs, CreateTextureFromSourceArgs } from "./CreateTextureArgs";
30
31
  import { ScreenSpaceEffectBuilder, ScreenSpaceEffectBuilderParams } from "./ScreenSpaceEffectBuilder";
31
32
  /** An opaque representation of a texture draped on geometry within a [[Viewport]].
32
33
  * @internal
@@ -217,7 +218,7 @@ export declare abstract class RenderSystem implements IDisposable {
217
218
  abstract get isValid(): boolean;
218
219
  /** @internal */
219
220
  abstract dispose(): void;
220
- /** @internal */
221
+ /** The maximum permitted width or height of a texture supported by this render system. */
221
222
  get maxTextureSize(): number;
222
223
  /** @internal */
223
224
  get supportsCreateImageBitmap(): boolean;
@@ -272,8 +273,19 @@ export declare abstract class RenderSystem implements IDisposable {
272
273
  * @returns undefined if screen-space effects are not supported by this RenderSystem.
273
274
  */
274
275
  createScreenSpaceEffectBuilder(_params: ScreenSpaceEffectBuilderParams): ScreenSpaceEffectBuilder | undefined;
276
+ /** Create a graphic from a low-level representation of a triangle mesh.
277
+ * @param args A description of the mesh.
278
+ * @param instances Repetitions of the mesh to be drawn.
279
+ * @see [[createGraphic]] to obtain a [[GraphicBuilder]] that can assemble a mesh from higher-level primitives.
280
+ */
281
+ createTriMesh(args: MeshArgs, instances?: InstancedGraphicParams): RenderGraphic | undefined;
275
282
  /** @internal */
276
283
  createTriMesh(args: MeshArgs, instances?: InstancedGraphicParams | RenderAreaPattern | Point3d): RenderGraphic | undefined;
284
+ /** Create a graphic from a low-level representation of a set of line strings.
285
+ * @param args A description of the line strings.
286
+ * @param instances Repetitions of the line strings to be drawn.
287
+ */
288
+ createIndexedPolylines(args: PolylineArgs, instances?: InstancedGraphicParams): RenderGraphic | undefined;
277
289
  /** @internal */
278
290
  createIndexedPolylines(args: PolylineArgs, instances?: InstancedGraphicParams | RenderAreaPattern | Point3d): RenderGraphic | undefined;
279
291
  /** @internal */
@@ -334,8 +346,11 @@ export declare abstract class RenderSystem implements IDisposable {
334
346
  * @internal
335
347
  */
336
348
  createAnimationTransformNode(graphic: RenderGraphic, _nodeId: number): RenderGraphic;
337
- /** Create a RenderGraphic consisting of batched [[Feature]]s.
338
- * @internal
349
+ /** Create a "batch" of graphics containing individual [Feature]($common)s.
350
+ * @param graphic The graphic representing the contents of the batch.
351
+ * @param features The features contained within the batch.
352
+ * @param range A volume fully encompassing the batch's geometry.
353
+ * @param options Options customizing the behavior of the batch.
339
354
  */
340
355
  abstract createBatch(graphic: RenderGraphic, features: RenderFeatureTable, range: ElementAlignedBox3d, options?: BatchOptions): RenderGraphic;
341
356
  /** Return a Promise which when resolved indicates that all pending external textures have finished loading from the backend. */
@@ -373,7 +388,6 @@ export declare abstract class RenderSystem implements IDisposable {
373
388
  * @returns A Promise resolving to the created RenderTexture or to undefined if the texture could not be created.
374
389
  * @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]].
375
390
  * @see [[RenderSystem.loadTextureImage]].
376
- * @internal
377
391
  */
378
392
  loadTexture(id: Id64String, iModel: IModelConnection): Promise<RenderTexture | undefined>;
379
393
  /**
@@ -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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"}
@@ -8,14 +8,14 @@
8
8
  import { base64StringToUint8Array } from "@itwin/core-bentley";
9
9
  import { ColorIndex, FeatureIndex, FeatureIndexType, FillFlags, ImageBufferFormat, ImageSource, ImageSourceFormat, isValidImageSourceFormat, QParams3d, QPoint3dList, RenderTexture, TextureTransparency, } from "@itwin/core-common";
10
10
  import { Point2d, Point3d, Range3d, Transform } from "@itwin/core-geometry";
11
- import { imageElementFromImageSource } from "../ImageUtil";
12
11
  import { IModelApp } from "../IModelApp";
13
12
  import { ToolAdmin } from "../tools/ToolAdmin";
13
+ import { imageElementFromImageSource } from "../common/ImageUtil";
14
14
  import { GraphicBranch } from "./GraphicBranch";
15
- import { PointStringParams } from "./primitives/PointStringParams";
16
- import { PolylineParams } from "./primitives/PolylineParams";
17
- import { MeshParams } from "./primitives/VertexTable";
18
15
  import { RenderGraphicOwner } from "./RenderGraphic";
16
+ import { createMeshParams } from "./primitives/VertexTableBuilder";
17
+ import { createPointStringParams } from "./primitives/PointStringParams";
18
+ import { createPolylineParams } from "./primitives/PolylineParams";
19
19
  /* eslint-disable no-restricted-syntax */
20
20
  // cSpell:ignore deserializing subcat uninstanced wiremesh qorigin trimesh
21
21
  /** An opaque representation of a texture draped on geometry within a [[Viewport]].
@@ -104,7 +104,7 @@ export class RenderSystem {
104
104
  if (undefined !== this.options.disabledExtensions)
105
105
  Object.freeze(this.options.disabledExtensions);
106
106
  }
107
- /** @internal */
107
+ /** The maximum permitted width or height of a texture supported by this render system. */
108
108
  get maxTextureSize() { return 0; }
109
109
  /** @internal */
110
110
  get supportsCreateImageBitmap() { return false; }
@@ -156,17 +156,17 @@ export class RenderSystem {
156
156
  }
157
157
  /** @internal */
158
158
  createTriMesh(args, instances) {
159
- const params = MeshParams.create(args);
159
+ const params = createMeshParams(args, this.maxTextureSize);
160
160
  return this.createMesh(params, instances);
161
161
  }
162
162
  /** @internal */
163
163
  createIndexedPolylines(args, instances) {
164
164
  if (args.flags.isDisjoint) {
165
- const pointStringParams = PointStringParams.create(args);
165
+ const pointStringParams = createPointStringParams(args);
166
166
  return undefined !== pointStringParams ? this.createPointString(pointStringParams, instances) : undefined;
167
167
  }
168
168
  else {
169
- const polylineParams = PolylineParams.create(args);
169
+ const polylineParams = createPolylineParams(args);
170
170
  return undefined !== polylineParams ? this.createPolyline(polylineParams, instances) : undefined;
171
171
  }
172
172
  }
@@ -315,7 +315,6 @@ export class RenderSystem {
315
315
  * @returns A Promise resolving to the created RenderTexture or to undefined if the texture could not be created.
316
316
  * @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]].
317
317
  * @see [[RenderSystem.loadTextureImage]].
318
- * @internal
319
318
  */
320
319
  async loadTexture(id, iModel) {
321
320
  let texture = this.findTexture(id.toString(), iModel);