@itwin/core-common 4.0.0-dev.17 → 4.0.0-dev.18

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 (945) hide show
  1. package/lib/cjs/AmbientOcclusion.d.ts +49 -49
  2. package/lib/cjs/AmbientOcclusion.js +55 -55
  3. package/lib/cjs/AmbientOcclusion.js.map +1 -1
  4. package/lib/cjs/AnalysisStyle.d.ts +134 -134
  5. package/lib/cjs/AnalysisStyle.js +165 -165
  6. package/lib/cjs/AnalysisStyle.js.map +1 -1
  7. package/lib/cjs/AuthorizationClient.d.ts +17 -17
  8. package/lib/cjs/AuthorizationClient.js +9 -9
  9. package/lib/cjs/AuthorizationClient.js.map +1 -1
  10. package/lib/cjs/BackendTypes.d.ts +12 -12
  11. package/lib/cjs/BackendTypes.js +9 -9
  12. package/lib/cjs/BackendTypes.js.map +1 -1
  13. package/lib/cjs/BackgroundMapProvider.d.ts +51 -51
  14. package/lib/cjs/BackgroundMapProvider.js +68 -68
  15. package/lib/cjs/BackgroundMapProvider.js.map +1 -1
  16. package/lib/cjs/BackgroundMapSettings.d.ts +136 -136
  17. package/lib/cjs/BackgroundMapSettings.js +156 -156
  18. package/lib/cjs/BackgroundMapSettings.js.map +1 -1
  19. package/lib/cjs/Base64EncodedString.d.ts +32 -32
  20. package/lib/cjs/Base64EncodedString.js +66 -66
  21. package/lib/cjs/Base64EncodedString.js.map +1 -1
  22. package/lib/cjs/BlobReader.d.ts +31 -31
  23. package/lib/cjs/BlobReader.js +84 -84
  24. package/lib/cjs/BlobReader.js.map +1 -1
  25. package/lib/cjs/BriefcaseTypes.d.ts +189 -189
  26. package/lib/cjs/BriefcaseTypes.js +95 -95
  27. package/lib/cjs/BriefcaseTypes.js.map +1 -1
  28. package/lib/cjs/Camera.d.ts +42 -42
  29. package/lib/cjs/Camera.js +62 -62
  30. package/lib/cjs/Camera.js.map +1 -1
  31. package/lib/cjs/ChangedElements.d.ts +85 -85
  32. package/lib/cjs/ChangedElements.js +23 -23
  33. package/lib/cjs/ChangedElements.js.map +1 -1
  34. package/lib/cjs/ChangedEntities.d.ts +45 -45
  35. package/lib/cjs/ChangedEntities.js +9 -9
  36. package/lib/cjs/ChangedEntities.js.map +1 -1
  37. package/lib/cjs/ChangesetProps.d.ts +98 -98
  38. package/lib/cjs/ChangesetProps.js +22 -22
  39. package/lib/cjs/ChangesetProps.js.map +1 -1
  40. package/lib/cjs/ClipStyle.d.ts +89 -89
  41. package/lib/cjs/ClipStyle.js +123 -123
  42. package/lib/cjs/ClipStyle.js.map +1 -1
  43. package/lib/cjs/CloudStorage.d.ts +62 -62
  44. package/lib/cjs/CloudStorage.js +113 -113
  45. package/lib/cjs/CloudStorage.js.map +1 -1
  46. package/lib/cjs/CloudStorageTileCache.d.ts +27 -27
  47. package/lib/cjs/CloudStorageTileCache.js +66 -66
  48. package/lib/cjs/CloudStorageTileCache.js.map +1 -1
  49. package/lib/cjs/Code.d.ts +277 -277
  50. package/lib/cjs/Code.js +269 -269
  51. package/lib/cjs/Code.js.map +1 -1
  52. package/lib/cjs/ColorByName.d.ts +161 -161
  53. package/lib/cjs/ColorByName.js +169 -169
  54. package/lib/cjs/ColorByName.js.map +1 -1
  55. package/lib/cjs/ColorDef.d.ts +208 -208
  56. package/lib/cjs/ColorDef.js +571 -571
  57. package/lib/cjs/ColorDef.js.map +1 -1
  58. package/lib/cjs/CommonLoggerCategory.d.ts +18 -18
  59. package/lib/cjs/CommonLoggerCategory.js +26 -26
  60. package/lib/cjs/CommonLoggerCategory.js.map +1 -1
  61. package/lib/cjs/ConcurrentQuery.d.ts +421 -421
  62. package/lib/cjs/ConcurrentQuery.js +552 -552
  63. package/lib/cjs/ConcurrentQuery.js.map +1 -1
  64. package/lib/cjs/ContextRealityModel.d.ts +303 -303
  65. package/lib/cjs/ContextRealityModel.js +373 -373
  66. package/lib/cjs/ContextRealityModel.js.map +1 -1
  67. package/lib/cjs/DisplayStyleSettings.d.ts +588 -588
  68. package/lib/cjs/DisplayStyleSettings.js +985 -985
  69. package/lib/cjs/DisplayStyleSettings.js.map +1 -1
  70. package/lib/cjs/ECSchemaProps.d.ts +39 -39
  71. package/lib/cjs/ECSchemaProps.js +9 -9
  72. package/lib/cjs/ECSchemaProps.js.map +1 -1
  73. package/lib/cjs/ECSqlReader.d.ts +70 -70
  74. package/lib/cjs/ECSqlReader.js +280 -280
  75. package/lib/cjs/ECSqlReader.js.map +1 -1
  76. package/lib/cjs/ECSqlTypes.d.ts +128 -128
  77. package/lib/cjs/ECSqlTypes.js +189 -189
  78. package/lib/cjs/ECSqlTypes.js.map +1 -1
  79. package/lib/cjs/ElementMesh.d.ts +39 -39
  80. package/lib/cjs/ElementMesh.js +56 -56
  81. package/lib/cjs/ElementMesh.js.map +1 -1
  82. package/lib/cjs/ElementProps.d.ts +483 -483
  83. package/lib/cjs/ElementProps.js +99 -99
  84. package/lib/cjs/ElementProps.js.map +1 -1
  85. package/lib/cjs/EmphasizeElementsProps.d.ts +55 -55
  86. package/lib/cjs/EmphasizeElementsProps.js +25 -25
  87. package/lib/cjs/EmphasizeElementsProps.js.map +1 -1
  88. package/lib/cjs/EntityProps.d.ts +177 -177
  89. package/lib/cjs/EntityProps.js +113 -113
  90. package/lib/cjs/EntityProps.js.map +1 -1
  91. package/lib/cjs/EntityReference.d.ts +51 -51
  92. package/lib/cjs/EntityReference.js +56 -56
  93. package/lib/cjs/EntityReference.js.map +1 -1
  94. package/lib/cjs/Environment.d.ts +61 -61
  95. package/lib/cjs/Environment.js +73 -73
  96. package/lib/cjs/Environment.js.map +1 -1
  97. package/lib/cjs/FeatureIndex.d.ts +39 -39
  98. package/lib/cjs/FeatureIndex.js +63 -63
  99. package/lib/cjs/FeatureIndex.js.map +1 -1
  100. package/lib/cjs/FeatureSymbology.d.ts +444 -444
  101. package/lib/cjs/FeatureSymbology.js +614 -614
  102. package/lib/cjs/FeatureSymbology.js.map +1 -1
  103. package/lib/cjs/FeatureTable.d.ts +141 -141
  104. package/lib/cjs/FeatureTable.js +278 -278
  105. package/lib/cjs/FeatureTable.js.map +1 -1
  106. package/lib/cjs/Fonts.d.ts +51 -51
  107. package/lib/cjs/Fonts.js +53 -53
  108. package/lib/cjs/Fonts.js.map +1 -1
  109. package/lib/cjs/Frustum.d.ts +114 -114
  110. package/lib/cjs/Frustum.js +292 -292
  111. package/lib/cjs/Frustum.js.map +1 -1
  112. package/lib/cjs/GeoCoordinateServices.d.ts +119 -119
  113. package/lib/cjs/GeoCoordinateServices.js +80 -80
  114. package/lib/cjs/GeoCoordinateServices.js.map +1 -1
  115. package/lib/cjs/GeometryContainment.d.ts +28 -28
  116. package/lib/cjs/GeometryContainment.js +9 -9
  117. package/lib/cjs/GeometryContainment.js.map +1 -1
  118. package/lib/cjs/GeometryParams.d.ts +130 -130
  119. package/lib/cjs/GeometryParams.js +174 -174
  120. package/lib/cjs/GeometryParams.js.map +1 -1
  121. package/lib/cjs/GeometrySummary.d.ts +45 -45
  122. package/lib/cjs/GeometrySummary.js +23 -23
  123. package/lib/cjs/GeometrySummary.js.map +1 -1
  124. package/lib/cjs/Gradient.d.ts +139 -139
  125. package/lib/cjs/Gradient.js +455 -455
  126. package/lib/cjs/Gradient.js.map +1 -1
  127. package/lib/cjs/GraphicParams.d.ts +58 -58
  128. package/lib/cjs/GraphicParams.js +85 -85
  129. package/lib/cjs/GraphicParams.js.map +1 -1
  130. package/lib/cjs/GroundPlane.d.ts +52 -52
  131. package/lib/cjs/GroundPlane.js +64 -64
  132. package/lib/cjs/GroundPlane.js.map +1 -1
  133. package/lib/cjs/HSLColor.d.ts +20 -20
  134. package/lib/cjs/HSLColor.js +32 -32
  135. package/lib/cjs/HSLColor.js.map +1 -1
  136. package/lib/cjs/HSVColor.d.ts +30 -30
  137. package/lib/cjs/HSVColor.js +59 -59
  138. package/lib/cjs/HSVColor.js.map +1 -1
  139. package/lib/cjs/HiddenLine.d.ts +97 -97
  140. package/lib/cjs/HiddenLine.js +162 -162
  141. package/lib/cjs/HiddenLine.js.map +1 -1
  142. package/lib/cjs/Hilite.d.ts +50 -50
  143. package/lib/cjs/Hilite.js +64 -64
  144. package/lib/cjs/Hilite.js.map +1 -1
  145. package/lib/cjs/IModel.d.ts +358 -358
  146. package/lib/cjs/IModel.js +347 -347
  147. package/lib/cjs/IModel.js.map +1 -1
  148. package/lib/cjs/IModelError.d.ts +42 -42
  149. package/lib/cjs/IModelError.js +71 -71
  150. package/lib/cjs/IModelError.js.map +1 -1
  151. package/lib/cjs/IModelVersion.d.ts +68 -68
  152. package/lib/cjs/IModelVersion.js +79 -79
  153. package/lib/cjs/IModelVersion.js.map +1 -1
  154. package/lib/cjs/Image.d.ts +86 -86
  155. package/lib/cjs/Image.js +128 -128
  156. package/lib/cjs/Image.js.map +1 -1
  157. package/lib/cjs/IpcAppProps.d.ts +141 -141
  158. package/lib/cjs/IpcAppProps.js +23 -23
  159. package/lib/cjs/IpcAppProps.js.map +1 -1
  160. package/lib/cjs/LightSettings.d.ts +224 -224
  161. package/lib/cjs/LightSettings.js +309 -309
  162. package/lib/cjs/LightSettings.js.map +1 -1
  163. package/lib/cjs/LinePixels.d.ts +34 -34
  164. package/lib/cjs/LinePixels.js +42 -42
  165. package/lib/cjs/LinePixels.js.map +1 -1
  166. package/lib/cjs/Localization.d.ts +113 -113
  167. package/lib/cjs/Localization.js +33 -33
  168. package/lib/cjs/Localization.js.map +1 -1
  169. package/lib/cjs/MapImagerySettings.d.ts +62 -62
  170. package/lib/cjs/MapImagerySettings.js +80 -80
  171. package/lib/cjs/MapImagerySettings.js.map +1 -1
  172. package/lib/cjs/MapLayerSettings.d.ts +272 -272
  173. package/lib/cjs/MapLayerSettings.js +411 -411
  174. package/lib/cjs/MapLayerSettings.js.map +1 -1
  175. package/lib/cjs/MassProperties.d.ts +64 -64
  176. package/lib/cjs/MassProperties.js +23 -23
  177. package/lib/cjs/MassProperties.js.map +1 -1
  178. package/lib/cjs/MaterialProps.d.ts +153 -153
  179. package/lib/cjs/MaterialProps.js +35 -35
  180. package/lib/cjs/MaterialProps.js.map +1 -1
  181. package/lib/cjs/ModelClipGroup.d.ts +67 -67
  182. package/lib/cjs/ModelClipGroup.js +98 -98
  183. package/lib/cjs/ModelClipGroup.js.map +1 -1
  184. package/lib/cjs/ModelGeometryChanges.d.ts +107 -107
  185. package/lib/cjs/ModelGeometryChanges.js +83 -83
  186. package/lib/cjs/ModelGeometryChanges.js.map +1 -1
  187. package/lib/cjs/ModelProps.d.ts +67 -67
  188. package/lib/cjs/ModelProps.js +9 -9
  189. package/lib/cjs/ModelProps.js.map +1 -1
  190. package/lib/cjs/NativeAppProps.d.ts +122 -122
  191. package/lib/cjs/NativeAppProps.js +30 -30
  192. package/lib/cjs/NativeAppProps.js.map +1 -1
  193. package/lib/cjs/OctEncodedNormal.d.ts +33 -33
  194. package/lib/cjs/OctEncodedNormal.js +98 -98
  195. package/lib/cjs/OctEncodedNormal.js.map +1 -1
  196. package/lib/cjs/PlanProjectionSettings.d.ts +47 -47
  197. package/lib/cjs/PlanProjectionSettings.js +63 -63
  198. package/lib/cjs/PlanProjectionSettings.js.map +1 -1
  199. package/lib/cjs/PlanarClipMask.d.ts +177 -177
  200. package/lib/cjs/PlanarClipMask.js +136 -136
  201. package/lib/cjs/PlanarClipMask.js.map +1 -1
  202. package/lib/cjs/QPoint.d.ts +479 -479
  203. package/lib/cjs/QPoint.js +826 -826
  204. package/lib/cjs/QPoint.js.map +1 -1
  205. package/lib/cjs/RealityDataAccessProps.d.ts +41 -41
  206. package/lib/cjs/RealityDataAccessProps.js +19 -19
  207. package/lib/cjs/RealityDataAccessProps.js.map +1 -1
  208. package/lib/cjs/RealityModelDisplaySettings.d.ts +183 -183
  209. package/lib/cjs/RealityModelDisplaySettings.js +142 -142
  210. package/lib/cjs/RealityModelDisplaySettings.js.map +1 -1
  211. package/lib/cjs/Render.d.ts +89 -89
  212. package/lib/cjs/Render.js +177 -177
  213. package/lib/cjs/Render.js.map +1 -1
  214. package/lib/cjs/RenderMaterial.d.ts +58 -58
  215. package/lib/cjs/RenderMaterial.js +76 -76
  216. package/lib/cjs/RenderMaterial.js.map +1 -1
  217. package/lib/cjs/RenderSchedule.d.ts +543 -543
  218. package/lib/cjs/RenderSchedule.js +1002 -1002
  219. package/lib/cjs/RenderTexture.d.ts +70 -70
  220. package/lib/cjs/RenderTexture.js +59 -59
  221. package/lib/cjs/RenderTexture.js.map +1 -1
  222. package/lib/cjs/RgbColor.d.ts +47 -47
  223. package/lib/cjs/RgbColor.js +77 -77
  224. package/lib/cjs/RgbColor.js.map +1 -1
  225. package/lib/cjs/RpcInterface.d.ts +33 -33
  226. package/lib/cjs/RpcInterface.js +137 -137
  227. package/lib/cjs/RpcInterface.js.map +1 -1
  228. package/lib/cjs/RpcManager.d.ts +40 -40
  229. package/lib/cjs/RpcManager.js +55 -55
  230. package/lib/cjs/RpcManager.js.map +1 -1
  231. package/lib/cjs/SessionProps.d.ts +16 -16
  232. package/lib/cjs/SessionProps.js +9 -9
  233. package/lib/cjs/SessionProps.js.map +1 -1
  234. package/lib/cjs/SkyBox.d.ts +215 -215
  235. package/lib/cjs/SkyBox.js +210 -210
  236. package/lib/cjs/SkyBox.js.map +1 -1
  237. package/lib/cjs/Snapping.d.ts +49 -49
  238. package/lib/cjs/Snapping.js +9 -9
  239. package/lib/cjs/Snapping.js.map +1 -1
  240. package/lib/cjs/SolarCalculate.d.ts +27 -27
  241. package/lib/cjs/SolarCalculate.js +211 -211
  242. package/lib/cjs/SolarCalculate.js.map +1 -1
  243. package/lib/cjs/SolarShadows.d.ts +35 -35
  244. package/lib/cjs/SolarShadows.js +62 -62
  245. package/lib/cjs/SolarShadows.js.map +1 -1
  246. package/lib/cjs/SpatialClassification.d.ts +208 -208
  247. package/lib/cjs/SpatialClassification.js +340 -340
  248. package/lib/cjs/SpatialClassification.js.map +1 -1
  249. package/lib/cjs/SubCategoryAppearance.d.ts +91 -91
  250. package/lib/cjs/SubCategoryAppearance.js +96 -96
  251. package/lib/cjs/SubCategoryAppearance.js.map +1 -1
  252. package/lib/cjs/SubCategoryOverride.d.ts +46 -46
  253. package/lib/cjs/SubCategoryOverride.js +104 -104
  254. package/lib/cjs/SubCategoryOverride.js.map +1 -1
  255. package/lib/cjs/TerrainSettings.d.ts +82 -82
  256. package/lib/cjs/TerrainSettings.js +102 -102
  257. package/lib/cjs/TerrainSettings.js.map +1 -1
  258. package/lib/cjs/TextureMapping.d.ts +118 -118
  259. package/lib/cjs/TextureMapping.js +174 -174
  260. package/lib/cjs/TextureMapping.js.map +1 -1
  261. package/lib/cjs/TextureProps.d.ts +65 -65
  262. package/lib/cjs/TextureProps.js +28 -28
  263. package/lib/cjs/TextureProps.js.map +1 -1
  264. package/lib/cjs/ThematicDisplay.d.ts +230 -230
  265. package/lib/cjs/ThematicDisplay.js +344 -344
  266. package/lib/cjs/ThematicDisplay.js.map +1 -1
  267. package/lib/cjs/Thumbnail.d.ts +26 -26
  268. package/lib/cjs/Thumbnail.js +9 -9
  269. package/lib/cjs/Thumbnail.js.map +1 -1
  270. package/lib/cjs/TileProps.d.ts +82 -82
  271. package/lib/cjs/TileProps.js +29 -29
  272. package/lib/cjs/TileProps.js.map +1 -1
  273. package/lib/cjs/Tween.d.ts +191 -191
  274. package/lib/cjs/Tween.js +570 -570
  275. package/lib/cjs/Tween.js.map +1 -1
  276. package/lib/cjs/TxnAction.d.ts +21 -21
  277. package/lib/cjs/TxnAction.js +29 -29
  278. package/lib/cjs/TxnAction.js.map +1 -1
  279. package/lib/cjs/ViewDetails.d.ts +125 -125
  280. package/lib/cjs/ViewDetails.js +166 -166
  281. package/lib/cjs/ViewDetails.js.map +1 -1
  282. package/lib/cjs/ViewFlags.d.ts +287 -287
  283. package/lib/cjs/ViewFlags.js +368 -368
  284. package/lib/cjs/ViewFlags.js.map +1 -1
  285. package/lib/cjs/ViewProps.d.ts +205 -205
  286. package/lib/cjs/ViewProps.js +9 -9
  287. package/lib/cjs/ViewProps.js.map +1 -1
  288. package/lib/cjs/WhiteOnWhiteReversalSettings.d.ts +36 -36
  289. package/lib/cjs/WhiteOnWhiteReversalSettings.js +37 -37
  290. package/lib/cjs/WhiteOnWhiteReversalSettings.js.map +1 -1
  291. package/lib/cjs/core-common.d.ts +244 -244
  292. package/lib/cjs/core-common.js +260 -260
  293. package/lib/cjs/core-common.js.map +1 -1
  294. package/lib/cjs/domains/FunctionalElementProps.d.ts +11 -11
  295. package/lib/cjs/domains/FunctionalElementProps.js +9 -9
  296. package/lib/cjs/domains/FunctionalElementProps.js.map +1 -1
  297. package/lib/cjs/domains/GenericElementProps.d.ts +18 -18
  298. package/lib/cjs/domains/GenericElementProps.js +9 -9
  299. package/lib/cjs/domains/GenericElementProps.js.map +1 -1
  300. package/lib/cjs/geometry/AdditionalTransform.d.ts +84 -84
  301. package/lib/cjs/geometry/AdditionalTransform.js +85 -85
  302. package/lib/cjs/geometry/AdditionalTransform.js.map +1 -1
  303. package/lib/cjs/geometry/AreaPattern.d.ts +82 -82
  304. package/lib/cjs/geometry/AreaPattern.js +204 -204
  305. package/lib/cjs/geometry/AreaPattern.js.map +1 -1
  306. package/lib/cjs/geometry/BoundingSphere.d.ts +27 -27
  307. package/lib/cjs/geometry/BoundingSphere.js +44 -44
  308. package/lib/cjs/geometry/BoundingSphere.js.map +1 -1
  309. package/lib/cjs/geometry/Cartographic.d.ts +137 -137
  310. package/lib/cjs/geometry/Cartographic.js +345 -345
  311. package/lib/cjs/geometry/Cartographic.js.map +1 -1
  312. package/lib/cjs/geometry/CoordinateReferenceSystem.d.ts +269 -269
  313. package/lib/cjs/geometry/CoordinateReferenceSystem.js +261 -261
  314. package/lib/cjs/geometry/CoordinateReferenceSystem.js.map +1 -1
  315. package/lib/cjs/geometry/ElementGeometry.d.ts +402 -402
  316. package/lib/cjs/geometry/ElementGeometry.js +1719 -1719
  317. package/lib/cjs/geometry/ElementGeometry.js.map +1 -1
  318. package/lib/cjs/geometry/ElementGeometryFB.d.ts +2372 -2372
  319. package/lib/cjs/geometry/ElementGeometryFB.js +3814 -3814
  320. package/lib/cjs/geometry/ElementGeometryFB.js.map +1 -1
  321. package/lib/cjs/geometry/FrustumPlanes.d.ts +81 -81
  322. package/lib/cjs/geometry/FrustumPlanes.d.ts.map +1 -1
  323. package/lib/cjs/geometry/FrustumPlanes.js +189 -193
  324. package/lib/cjs/geometry/FrustumPlanes.js.map +1 -1
  325. package/lib/cjs/geometry/GeodeticDatum.d.ts +409 -409
  326. package/lib/cjs/geometry/GeodeticDatum.js +401 -401
  327. package/lib/cjs/geometry/GeodeticDatum.js.map +1 -1
  328. package/lib/cjs/geometry/GeodeticEllipsoid.d.ts +72 -72
  329. package/lib/cjs/geometry/GeodeticEllipsoid.js +72 -72
  330. package/lib/cjs/geometry/GeodeticEllipsoid.js.map +1 -1
  331. package/lib/cjs/geometry/GeometryStream.d.ts +347 -347
  332. package/lib/cjs/geometry/GeometryStream.js +469 -469
  333. package/lib/cjs/geometry/GeometryStream.js.map +1 -1
  334. package/lib/cjs/geometry/ImageGraphic.d.ts +74 -74
  335. package/lib/cjs/geometry/ImageGraphic.js +98 -98
  336. package/lib/cjs/geometry/ImageGraphic.js.map +1 -1
  337. package/lib/cjs/geometry/LineStyle.d.ts +71 -71
  338. package/lib/cjs/geometry/LineStyle.js +129 -129
  339. package/lib/cjs/geometry/LineStyle.js.map +1 -1
  340. package/lib/cjs/geometry/Placement.d.ts +95 -95
  341. package/lib/cjs/geometry/Placement.js +131 -131
  342. package/lib/cjs/geometry/Placement.js.map +1 -1
  343. package/lib/cjs/geometry/Projection.d.ts +251 -251
  344. package/lib/cjs/geometry/Projection.js +198 -198
  345. package/lib/cjs/geometry/Projection.js.map +1 -1
  346. package/lib/cjs/geometry/TextString.d.ts +55 -55
  347. package/lib/cjs/geometry/TextString.js +65 -65
  348. package/lib/cjs/geometry/TextString.js.map +1 -1
  349. package/lib/cjs/ipc/IpcSession.d.ts +23 -23
  350. package/lib/cjs/ipc/IpcSession.js +27 -27
  351. package/lib/cjs/ipc/IpcSession.js.map +1 -1
  352. package/lib/cjs/ipc/IpcSocket.d.ts +96 -96
  353. package/lib/cjs/ipc/IpcSocket.js +16 -16
  354. package/lib/cjs/ipc/IpcSocket.js.map +1 -1
  355. package/lib/cjs/ipc/IpcWebSocket.d.ts +61 -61
  356. package/lib/cjs/ipc/IpcWebSocket.js +151 -151
  357. package/lib/cjs/ipc/IpcWebSocket.js.map +1 -1
  358. package/lib/cjs/ipc/IpcWebSocketTransport.d.ts +15 -15
  359. package/lib/cjs/ipc/IpcWebSocketTransport.js +160 -160
  360. package/lib/cjs/ipc/IpcWebSocketTransport.js.map +1 -1
  361. package/lib/cjs/rpc/DevToolsRpcInterface.d.ts +32 -32
  362. package/lib/cjs/rpc/DevToolsRpcInterface.d.ts.map +1 -1
  363. package/lib/cjs/rpc/DevToolsRpcInterface.js +52 -48
  364. package/lib/cjs/rpc/DevToolsRpcInterface.js.map +1 -1
  365. package/lib/cjs/rpc/IModelReadRpcInterface.d.ts +99 -99
  366. package/lib/cjs/rpc/IModelReadRpcInterface.js +122 -122
  367. package/lib/cjs/rpc/IModelReadRpcInterface.js.map +1 -1
  368. package/lib/cjs/rpc/IModelTileRpcInterface.d.ts +61 -61
  369. package/lib/cjs/rpc/IModelTileRpcInterface.js +96 -96
  370. package/lib/cjs/rpc/IModelTileRpcInterface.js.map +1 -1
  371. package/lib/cjs/rpc/SnapshotIModelRpcInterface.d.ts +23 -23
  372. package/lib/cjs/rpc/SnapshotIModelRpcInterface.js +48 -48
  373. package/lib/cjs/rpc/SnapshotIModelRpcInterface.js.map +1 -1
  374. package/lib/cjs/rpc/TestRpcManager.d.ts +20 -20
  375. package/lib/cjs/rpc/TestRpcManager.js +40 -40
  376. package/lib/cjs/rpc/TestRpcManager.js.map +1 -1
  377. package/lib/cjs/rpc/WipRpcInterface.d.ts +29 -29
  378. package/lib/cjs/rpc/WipRpcInterface.js +40 -40
  379. package/lib/cjs/rpc/WipRpcInterface.js.map +1 -1
  380. package/lib/cjs/rpc/core/RpcConfiguration.d.ts +111 -111
  381. package/lib/cjs/rpc/core/RpcConfiguration.js +191 -191
  382. package/lib/cjs/rpc/core/RpcConfiguration.js.map +1 -1
  383. package/lib/cjs/rpc/core/RpcConstants.d.ts +90 -90
  384. package/lib/cjs/rpc/core/RpcConstants.js +109 -109
  385. package/lib/cjs/rpc/core/RpcConstants.js.map +1 -1
  386. package/lib/cjs/rpc/core/RpcControl.d.ts +54 -54
  387. package/lib/cjs/rpc/core/RpcControl.js +145 -145
  388. package/lib/cjs/rpc/core/RpcControl.js.map +1 -1
  389. package/lib/cjs/rpc/core/RpcInvocation.d.ts +89 -89
  390. package/lib/cjs/rpc/core/RpcInvocation.js +258 -258
  391. package/lib/cjs/rpc/core/RpcInvocation.js.map +1 -1
  392. package/lib/cjs/rpc/core/RpcMarshaling.d.ts +35 -35
  393. package/lib/cjs/rpc/core/RpcMarshaling.js +156 -156
  394. package/lib/cjs/rpc/core/RpcMarshaling.js.map +1 -1
  395. package/lib/cjs/rpc/core/RpcOperation.d.ts +67 -67
  396. package/lib/cjs/rpc/core/RpcOperation.js +134 -134
  397. package/lib/cjs/rpc/core/RpcOperation.js.map +1 -1
  398. package/lib/cjs/rpc/core/RpcPendingQueue.d.ts +21 -21
  399. package/lib/cjs/rpc/core/RpcPendingQueue.js +95 -95
  400. package/lib/cjs/rpc/core/RpcPendingQueue.js.map +1 -1
  401. package/lib/cjs/rpc/core/RpcProtocol.d.ts +132 -132
  402. package/lib/cjs/rpc/core/RpcProtocol.js +127 -127
  403. package/lib/cjs/rpc/core/RpcProtocol.js.map +1 -1
  404. package/lib/cjs/rpc/core/RpcPush.d.ts +68 -68
  405. package/lib/cjs/rpc/core/RpcPush.js +127 -127
  406. package/lib/cjs/rpc/core/RpcPush.js.map +1 -1
  407. package/lib/cjs/rpc/core/RpcRegistry.d.ts +48 -48
  408. package/lib/cjs/rpc/core/RpcRegistry.js +199 -199
  409. package/lib/cjs/rpc/core/RpcRegistry.js.map +1 -1
  410. package/lib/cjs/rpc/core/RpcRequest.d.ts +186 -186
  411. package/lib/cjs/rpc/core/RpcRequest.js +478 -478
  412. package/lib/cjs/rpc/core/RpcRequest.js.map +1 -1
  413. package/lib/cjs/rpc/core/RpcRequestContext.d.ts +14 -14
  414. package/lib/cjs/rpc/core/RpcRequestContext.js +2 -2
  415. package/lib/cjs/rpc/core/RpcRequestContext.js.map +1 -1
  416. package/lib/cjs/rpc/core/RpcRoutingToken.d.ts +12 -12
  417. package/lib/cjs/rpc/core/RpcRoutingToken.js +24 -24
  418. package/lib/cjs/rpc/core/RpcRoutingToken.js.map +1 -1
  419. package/lib/cjs/rpc/core/RpcSessionInvocation.d.ts +10 -10
  420. package/lib/cjs/rpc/core/RpcSessionInvocation.js +60 -60
  421. package/lib/cjs/rpc/core/RpcSessionInvocation.js.map +1 -1
  422. package/lib/cjs/rpc/web/BentleyCloudRpcManager.d.ts +46 -46
  423. package/lib/cjs/rpc/web/BentleyCloudRpcManager.js +73 -73
  424. package/lib/cjs/rpc/web/BentleyCloudRpcManager.js.map +1 -1
  425. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.d.ts +33 -33
  426. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.js +143 -143
  427. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.js.map +1 -1
  428. package/lib/cjs/rpc/web/OpenAPI.d.ts +140 -140
  429. package/lib/cjs/rpc/web/OpenAPI.js +60 -60
  430. package/lib/cjs/rpc/web/OpenAPI.js.map +1 -1
  431. package/lib/cjs/rpc/web/RpcMultipart.d.ts +35 -35
  432. package/lib/cjs/rpc/web/RpcMultipart.js +50 -50
  433. package/lib/cjs/rpc/web/RpcMultipart.js.map +1 -1
  434. package/lib/cjs/rpc/web/WebAppRpcLogging.d.ts +28 -28
  435. package/lib/cjs/rpc/web/WebAppRpcLogging.js +140 -140
  436. package/lib/cjs/rpc/web/WebAppRpcLogging.js.map +1 -1
  437. package/lib/cjs/rpc/web/WebAppRpcProtocol.d.ts +89 -89
  438. package/lib/cjs/rpc/web/WebAppRpcProtocol.js +116 -116
  439. package/lib/cjs/rpc/web/WebAppRpcProtocol.js.map +1 -1
  440. package/lib/cjs/rpc/web/WebAppRpcRequest.d.ts +67 -67
  441. package/lib/cjs/rpc/web/WebAppRpcRequest.js +239 -239
  442. package/lib/cjs/rpc/web/WebAppRpcRequest.js.map +1 -1
  443. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.d.ts +32 -32
  444. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.js +373 -373
  445. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.js.map +1 -1
  446. package/lib/cjs/tile/B3dmTileIO.d.ts +19 -19
  447. package/lib/cjs/tile/B3dmTileIO.js +66 -66
  448. package/lib/cjs/tile/B3dmTileIO.js.map +1 -1
  449. package/lib/cjs/tile/CompositeTileIO.d.ts +15 -15
  450. package/lib/cjs/tile/CompositeTileIO.js +26 -26
  451. package/lib/cjs/tile/CompositeTileIO.js.map +1 -1
  452. package/lib/cjs/tile/ElementGraphics.d.ts +145 -145
  453. package/lib/cjs/tile/ElementGraphics.js +9 -9
  454. package/lib/cjs/tile/ElementGraphics.js.map +1 -1
  455. package/lib/cjs/tile/GltfTileIO.d.ts +45 -45
  456. package/lib/cjs/tile/GltfTileIO.js +109 -109
  457. package/lib/cjs/tile/GltfTileIO.js.map +1 -1
  458. package/lib/cjs/tile/I3dmTileIO.d.ts +20 -20
  459. package/lib/cjs/tile/I3dmTileIO.js +40 -40
  460. package/lib/cjs/tile/I3dmTileIO.js.map +1 -1
  461. package/lib/cjs/tile/IModelTileIO.d.ts +75 -75
  462. package/lib/cjs/tile/IModelTileIO.js +95 -95
  463. package/lib/cjs/tile/IModelTileIO.js.map +1 -1
  464. package/lib/cjs/tile/PntsTileIO.d.ts +17 -17
  465. package/lib/cjs/tile/PntsTileIO.js +26 -26
  466. package/lib/cjs/tile/PntsTileIO.js.map +1 -1
  467. package/lib/cjs/tile/TileIO.d.ts +66 -66
  468. package/lib/cjs/tile/TileIO.js +118 -118
  469. package/lib/cjs/tile/TileIO.js.map +1 -1
  470. package/lib/cjs/tile/TileMetadata.d.ts +228 -228
  471. package/lib/cjs/tile/TileMetadata.js +676 -676
  472. package/lib/cjs/tile/TileMetadata.js.map +1 -1
  473. package/lib/esm/AmbientOcclusion.d.ts +49 -49
  474. package/lib/esm/AmbientOcclusion.js +52 -52
  475. package/lib/esm/AmbientOcclusion.js.map +1 -1
  476. package/lib/esm/AnalysisStyle.d.ts +134 -134
  477. package/lib/esm/AnalysisStyle.js +159 -159
  478. package/lib/esm/AnalysisStyle.js.map +1 -1
  479. package/lib/esm/AuthorizationClient.d.ts +17 -17
  480. package/lib/esm/AuthorizationClient.js +8 -8
  481. package/lib/esm/AuthorizationClient.js.map +1 -1
  482. package/lib/esm/BackendTypes.d.ts +12 -12
  483. package/lib/esm/BackendTypes.js +8 -8
  484. package/lib/esm/BackendTypes.js.map +1 -1
  485. package/lib/esm/BackgroundMapProvider.d.ts +51 -51
  486. package/lib/esm/BackgroundMapProvider.js +64 -64
  487. package/lib/esm/BackgroundMapProvider.js.map +1 -1
  488. package/lib/esm/BackgroundMapSettings.d.ts +136 -136
  489. package/lib/esm/BackgroundMapSettings.js +152 -152
  490. package/lib/esm/BackgroundMapSettings.js.map +1 -1
  491. package/lib/esm/Base64EncodedString.d.ts +32 -32
  492. package/lib/esm/Base64EncodedString.js +63 -63
  493. package/lib/esm/Base64EncodedString.js.map +1 -1
  494. package/lib/esm/BlobReader.d.ts +31 -31
  495. package/lib/esm/BlobReader.js +79 -79
  496. package/lib/esm/BlobReader.js.map +1 -1
  497. package/lib/esm/BriefcaseTypes.d.ts +189 -189
  498. package/lib/esm/BriefcaseTypes.js +92 -92
  499. package/lib/esm/BriefcaseTypes.js.map +1 -1
  500. package/lib/esm/Camera.d.ts +42 -42
  501. package/lib/esm/Camera.js +58 -58
  502. package/lib/esm/Camera.js.map +1 -1
  503. package/lib/esm/ChangedElements.d.ts +85 -85
  504. package/lib/esm/ChangedElements.js +20 -20
  505. package/lib/esm/ChangedElements.js.map +1 -1
  506. package/lib/esm/ChangedEntities.d.ts +45 -45
  507. package/lib/esm/ChangedEntities.js +8 -8
  508. package/lib/esm/ChangedEntities.js.map +1 -1
  509. package/lib/esm/ChangesetProps.d.ts +98 -98
  510. package/lib/esm/ChangesetProps.js +19 -19
  511. package/lib/esm/ChangesetProps.js.map +1 -1
  512. package/lib/esm/ClipStyle.d.ts +89 -89
  513. package/lib/esm/ClipStyle.js +118 -118
  514. package/lib/esm/ClipStyle.js.map +1 -1
  515. package/lib/esm/CloudStorage.d.ts +62 -62
  516. package/lib/esm/CloudStorage.js +109 -109
  517. package/lib/esm/CloudStorage.js.map +1 -1
  518. package/lib/esm/CloudStorageTileCache.d.ts +27 -27
  519. package/lib/esm/CloudStorageTileCache.js +62 -62
  520. package/lib/esm/CloudStorageTileCache.js.map +1 -1
  521. package/lib/esm/Code.d.ts +277 -277
  522. package/lib/esm/Code.js +264 -264
  523. package/lib/esm/Code.js.map +1 -1
  524. package/lib/esm/ColorByName.d.ts +161 -161
  525. package/lib/esm/ColorByName.js +166 -166
  526. package/lib/esm/ColorByName.js.map +1 -1
  527. package/lib/esm/ColorDef.d.ts +208 -208
  528. package/lib/esm/ColorDef.js +567 -567
  529. package/lib/esm/ColorDef.js.map +1 -1
  530. package/lib/esm/CommonLoggerCategory.d.ts +18 -18
  531. package/lib/esm/CommonLoggerCategory.js +23 -23
  532. package/lib/esm/CommonLoggerCategory.js.map +1 -1
  533. package/lib/esm/ConcurrentQuery.d.ts +421 -421
  534. package/lib/esm/ConcurrentQuery.js +545 -545
  535. package/lib/esm/ConcurrentQuery.js.map +1 -1
  536. package/lib/esm/ContextRealityModel.d.ts +303 -303
  537. package/lib/esm/ContextRealityModel.js +368 -368
  538. package/lib/esm/ContextRealityModel.js.map +1 -1
  539. package/lib/esm/DisplayStyleSettings.d.ts +588 -588
  540. package/lib/esm/DisplayStyleSettings.js +980 -980
  541. package/lib/esm/DisplayStyleSettings.js.map +1 -1
  542. package/lib/esm/ECSchemaProps.d.ts +39 -39
  543. package/lib/esm/ECSchemaProps.js +8 -8
  544. package/lib/esm/ECSchemaProps.js.map +1 -1
  545. package/lib/esm/ECSqlReader.d.ts +70 -70
  546. package/lib/esm/ECSqlReader.js +275 -275
  547. package/lib/esm/ECSqlReader.js.map +1 -1
  548. package/lib/esm/ECSqlTypes.d.ts +128 -128
  549. package/lib/esm/ECSqlTypes.js +185 -185
  550. package/lib/esm/ECSqlTypes.js.map +1 -1
  551. package/lib/esm/ElementMesh.d.ts +39 -39
  552. package/lib/esm/ElementMesh.js +52 -52
  553. package/lib/esm/ElementMesh.js.map +1 -1
  554. package/lib/esm/ElementProps.d.ts +483 -483
  555. package/lib/esm/ElementProps.js +92 -92
  556. package/lib/esm/ElementProps.js.map +1 -1
  557. package/lib/esm/EmphasizeElementsProps.d.ts +55 -55
  558. package/lib/esm/EmphasizeElementsProps.js +22 -22
  559. package/lib/esm/EmphasizeElementsProps.js.map +1 -1
  560. package/lib/esm/EntityProps.d.ts +177 -177
  561. package/lib/esm/EntityProps.js +108 -108
  562. package/lib/esm/EntityProps.js.map +1 -1
  563. package/lib/esm/EntityReference.d.ts +51 -51
  564. package/lib/esm/EntityReference.js +52 -52
  565. package/lib/esm/EntityReference.js.map +1 -1
  566. package/lib/esm/Environment.d.ts +61 -61
  567. package/lib/esm/Environment.js +69 -69
  568. package/lib/esm/Environment.js.map +1 -1
  569. package/lib/esm/FeatureIndex.d.ts +39 -39
  570. package/lib/esm/FeatureIndex.js +57 -57
  571. package/lib/esm/FeatureIndex.js.map +1 -1
  572. package/lib/esm/FeatureSymbology.d.ts +444 -444
  573. package/lib/esm/FeatureSymbology.js +609 -609
  574. package/lib/esm/FeatureSymbology.js.map +1 -1
  575. package/lib/esm/FeatureTable.d.ts +141 -141
  576. package/lib/esm/FeatureTable.js +272 -272
  577. package/lib/esm/FeatureTable.js.map +1 -1
  578. package/lib/esm/Fonts.d.ts +51 -51
  579. package/lib/esm/Fonts.js +49 -49
  580. package/lib/esm/Fonts.js.map +1 -1
  581. package/lib/esm/Frustum.d.ts +114 -114
  582. package/lib/esm/Frustum.js +288 -288
  583. package/lib/esm/Frustum.js.map +1 -1
  584. package/lib/esm/GeoCoordinateServices.d.ts +119 -119
  585. package/lib/esm/GeoCoordinateServices.js +76 -76
  586. package/lib/esm/GeoCoordinateServices.js.map +1 -1
  587. package/lib/esm/GeometryContainment.d.ts +28 -28
  588. package/lib/esm/GeometryContainment.js +8 -8
  589. package/lib/esm/GeometryContainment.js.map +1 -1
  590. package/lib/esm/GeometryParams.d.ts +130 -130
  591. package/lib/esm/GeometryParams.js +170 -170
  592. package/lib/esm/GeometryParams.js.map +1 -1
  593. package/lib/esm/GeometrySummary.d.ts +45 -45
  594. package/lib/esm/GeometrySummary.js +20 -20
  595. package/lib/esm/GeometrySummary.js.map +1 -1
  596. package/lib/esm/Gradient.d.ts +139 -139
  597. package/lib/esm/Gradient.js +452 -452
  598. package/lib/esm/Gradient.js.map +1 -1
  599. package/lib/esm/GraphicParams.d.ts +58 -58
  600. package/lib/esm/GraphicParams.js +81 -81
  601. package/lib/esm/GraphicParams.js.map +1 -1
  602. package/lib/esm/GroundPlane.d.ts +52 -52
  603. package/lib/esm/GroundPlane.js +60 -60
  604. package/lib/esm/GroundPlane.js.map +1 -1
  605. package/lib/esm/HSLColor.d.ts +20 -20
  606. package/lib/esm/HSLColor.js +28 -28
  607. package/lib/esm/HSLColor.js.map +1 -1
  608. package/lib/esm/HSVColor.d.ts +30 -30
  609. package/lib/esm/HSVColor.js +55 -55
  610. package/lib/esm/HSVColor.js.map +1 -1
  611. package/lib/esm/HiddenLine.d.ts +97 -97
  612. package/lib/esm/HiddenLine.js +159 -159
  613. package/lib/esm/HiddenLine.js.map +1 -1
  614. package/lib/esm/Hilite.d.ts +50 -50
  615. package/lib/esm/Hilite.js +61 -61
  616. package/lib/esm/Hilite.js.map +1 -1
  617. package/lib/esm/IModel.d.ts +358 -358
  618. package/lib/esm/IModel.js +342 -342
  619. package/lib/esm/IModel.js.map +1 -1
  620. package/lib/esm/IModelError.d.ts +42 -42
  621. package/lib/esm/IModelError.js +56 -56
  622. package/lib/esm/IModelError.js.map +1 -1
  623. package/lib/esm/IModelVersion.d.ts +68 -68
  624. package/lib/esm/IModelVersion.js +75 -75
  625. package/lib/esm/IModelVersion.js.map +1 -1
  626. package/lib/esm/Image.d.ts +86 -86
  627. package/lib/esm/Image.js +120 -120
  628. package/lib/esm/Image.js.map +1 -1
  629. package/lib/esm/IpcAppProps.d.ts +141 -141
  630. package/lib/esm/IpcAppProps.js +19 -19
  631. package/lib/esm/IpcAppProps.js.map +1 -1
  632. package/lib/esm/LightSettings.d.ts +224 -224
  633. package/lib/esm/LightSettings.js +301 -301
  634. package/lib/esm/LightSettings.js.map +1 -1
  635. package/lib/esm/LinePixels.d.ts +34 -34
  636. package/lib/esm/LinePixels.js +39 -39
  637. package/lib/esm/LinePixels.js.map +1 -1
  638. package/lib/esm/Localization.d.ts +113 -113
  639. package/lib/esm/Localization.js +29 -29
  640. package/lib/esm/Localization.js.map +1 -1
  641. package/lib/esm/MapImagerySettings.d.ts +62 -62
  642. package/lib/esm/MapImagerySettings.js +76 -76
  643. package/lib/esm/MapImagerySettings.js.map +1 -1
  644. package/lib/esm/MapLayerSettings.d.ts +272 -272
  645. package/lib/esm/MapLayerSettings.js +403 -403
  646. package/lib/esm/MapLayerSettings.js.map +1 -1
  647. package/lib/esm/MassProperties.d.ts +64 -64
  648. package/lib/esm/MassProperties.js +20 -20
  649. package/lib/esm/MassProperties.js.map +1 -1
  650. package/lib/esm/MaterialProps.d.ts +153 -153
  651. package/lib/esm/MaterialProps.js +32 -32
  652. package/lib/esm/MaterialProps.js.map +1 -1
  653. package/lib/esm/ModelClipGroup.d.ts +67 -67
  654. package/lib/esm/ModelClipGroup.js +93 -93
  655. package/lib/esm/ModelClipGroup.js.map +1 -1
  656. package/lib/esm/ModelGeometryChanges.d.ts +107 -107
  657. package/lib/esm/ModelGeometryChanges.js +80 -80
  658. package/lib/esm/ModelGeometryChanges.js.map +1 -1
  659. package/lib/esm/ModelProps.d.ts +67 -67
  660. package/lib/esm/ModelProps.js +8 -8
  661. package/lib/esm/ModelProps.js.map +1 -1
  662. package/lib/esm/NativeAppProps.d.ts +122 -122
  663. package/lib/esm/NativeAppProps.js +27 -27
  664. package/lib/esm/NativeAppProps.js.map +1 -1
  665. package/lib/esm/OctEncodedNormal.d.ts +33 -33
  666. package/lib/esm/OctEncodedNormal.js +93 -93
  667. package/lib/esm/OctEncodedNormal.js.map +1 -1
  668. package/lib/esm/PlanProjectionSettings.d.ts +47 -47
  669. package/lib/esm/PlanProjectionSettings.js +59 -59
  670. package/lib/esm/PlanProjectionSettings.js.map +1 -1
  671. package/lib/esm/PlanarClipMask.d.ts +177 -177
  672. package/lib/esm/PlanarClipMask.js +132 -132
  673. package/lib/esm/PlanarClipMask.js.map +1 -1
  674. package/lib/esm/QPoint.d.ts +479 -479
  675. package/lib/esm/QPoint.js +815 -815
  676. package/lib/esm/QPoint.js.map +1 -1
  677. package/lib/esm/RealityDataAccessProps.d.ts +41 -41
  678. package/lib/esm/RealityDataAccessProps.js +16 -16
  679. package/lib/esm/RealityDataAccessProps.js.map +1 -1
  680. package/lib/esm/RealityModelDisplaySettings.d.ts +183 -183
  681. package/lib/esm/RealityModelDisplaySettings.js +137 -137
  682. package/lib/esm/RealityModelDisplaySettings.js.map +1 -1
  683. package/lib/esm/Render.d.ts +89 -89
  684. package/lib/esm/Render.js +165 -165
  685. package/lib/esm/Render.js.map +1 -1
  686. package/lib/esm/RenderMaterial.d.ts +58 -58
  687. package/lib/esm/RenderMaterial.js +72 -72
  688. package/lib/esm/RenderMaterial.js.map +1 -1
  689. package/lib/esm/RenderSchedule.d.ts +543 -543
  690. package/lib/esm/RenderSchedule.js +999 -999
  691. package/lib/esm/RenderTexture.d.ts +70 -70
  692. package/lib/esm/RenderTexture.js +55 -55
  693. package/lib/esm/RenderTexture.js.map +1 -1
  694. package/lib/esm/RgbColor.d.ts +47 -47
  695. package/lib/esm/RgbColor.js +73 -73
  696. package/lib/esm/RgbColor.js.map +1 -1
  697. package/lib/esm/RpcInterface.d.ts +33 -33
  698. package/lib/esm/RpcInterface.js +133 -133
  699. package/lib/esm/RpcInterface.js.map +1 -1
  700. package/lib/esm/RpcManager.d.ts +40 -40
  701. package/lib/esm/RpcManager.js +51 -51
  702. package/lib/esm/RpcManager.js.map +1 -1
  703. package/lib/esm/SessionProps.d.ts +16 -16
  704. package/lib/esm/SessionProps.js +8 -8
  705. package/lib/esm/SessionProps.js.map +1 -1
  706. package/lib/esm/SkyBox.d.ts +215 -215
  707. package/lib/esm/SkyBox.js +203 -203
  708. package/lib/esm/SkyBox.js.map +1 -1
  709. package/lib/esm/Snapping.d.ts +49 -49
  710. package/lib/esm/Snapping.js +8 -8
  711. package/lib/esm/Snapping.js.map +1 -1
  712. package/lib/esm/SolarCalculate.d.ts +27 -27
  713. package/lib/esm/SolarCalculate.js +204 -204
  714. package/lib/esm/SolarCalculate.js.map +1 -1
  715. package/lib/esm/SolarShadows.d.ts +35 -35
  716. package/lib/esm/SolarShadows.js +58 -58
  717. package/lib/esm/SolarShadows.js.map +1 -1
  718. package/lib/esm/SpatialClassification.d.ts +208 -208
  719. package/lib/esm/SpatialClassification.js +334 -334
  720. package/lib/esm/SpatialClassification.js.map +1 -1
  721. package/lib/esm/SubCategoryAppearance.d.ts +91 -91
  722. package/lib/esm/SubCategoryAppearance.js +92 -92
  723. package/lib/esm/SubCategoryAppearance.js.map +1 -1
  724. package/lib/esm/SubCategoryOverride.d.ts +46 -46
  725. package/lib/esm/SubCategoryOverride.js +100 -100
  726. package/lib/esm/SubCategoryOverride.js.map +1 -1
  727. package/lib/esm/TerrainSettings.d.ts +82 -82
  728. package/lib/esm/TerrainSettings.js +98 -98
  729. package/lib/esm/TerrainSettings.js.map +1 -1
  730. package/lib/esm/TextureMapping.d.ts +118 -118
  731. package/lib/esm/TextureMapping.js +170 -170
  732. package/lib/esm/TextureMapping.js.map +1 -1
  733. package/lib/esm/TextureProps.d.ts +65 -65
  734. package/lib/esm/TextureProps.js +25 -25
  735. package/lib/esm/TextureProps.js.map +1 -1
  736. package/lib/esm/ThematicDisplay.d.ts +230 -230
  737. package/lib/esm/ThematicDisplay.js +337 -337
  738. package/lib/esm/ThematicDisplay.js.map +1 -1
  739. package/lib/esm/Thumbnail.d.ts +26 -26
  740. package/lib/esm/Thumbnail.js +8 -8
  741. package/lib/esm/Thumbnail.js.map +1 -1
  742. package/lib/esm/TileProps.d.ts +82 -82
  743. package/lib/esm/TileProps.js +25 -25
  744. package/lib/esm/TileProps.js.map +1 -1
  745. package/lib/esm/Tween.d.ts +191 -191
  746. package/lib/esm/Tween.js +565 -565
  747. package/lib/esm/Tween.js.map +1 -1
  748. package/lib/esm/TxnAction.d.ts +21 -21
  749. package/lib/esm/TxnAction.js +26 -26
  750. package/lib/esm/TxnAction.js.map +1 -1
  751. package/lib/esm/ViewDetails.d.ts +125 -125
  752. package/lib/esm/ViewDetails.js +161 -161
  753. package/lib/esm/ViewDetails.js.map +1 -1
  754. package/lib/esm/ViewFlags.d.ts +287 -287
  755. package/lib/esm/ViewFlags.js +364 -364
  756. package/lib/esm/ViewFlags.js.map +1 -1
  757. package/lib/esm/ViewProps.d.ts +205 -205
  758. package/lib/esm/ViewProps.js +8 -8
  759. package/lib/esm/ViewProps.js.map +1 -1
  760. package/lib/esm/WhiteOnWhiteReversalSettings.d.ts +36 -36
  761. package/lib/esm/WhiteOnWhiteReversalSettings.js +33 -33
  762. package/lib/esm/WhiteOnWhiteReversalSettings.js.map +1 -1
  763. package/lib/esm/core-common.d.ts +244 -244
  764. package/lib/esm/core-common.js +248 -248
  765. package/lib/esm/core-common.js.map +1 -1
  766. package/lib/esm/domains/FunctionalElementProps.d.ts +11 -11
  767. package/lib/esm/domains/FunctionalElementProps.js +8 -8
  768. package/lib/esm/domains/FunctionalElementProps.js.map +1 -1
  769. package/lib/esm/domains/GenericElementProps.d.ts +18 -18
  770. package/lib/esm/domains/GenericElementProps.js +8 -8
  771. package/lib/esm/domains/GenericElementProps.js.map +1 -1
  772. package/lib/esm/geometry/AdditionalTransform.d.ts +84 -84
  773. package/lib/esm/geometry/AdditionalTransform.js +80 -80
  774. package/lib/esm/geometry/AdditionalTransform.js.map +1 -1
  775. package/lib/esm/geometry/AreaPattern.d.ts +82 -82
  776. package/lib/esm/geometry/AreaPattern.js +201 -201
  777. package/lib/esm/geometry/AreaPattern.js.map +1 -1
  778. package/lib/esm/geometry/BoundingSphere.d.ts +27 -27
  779. package/lib/esm/geometry/BoundingSphere.js +40 -40
  780. package/lib/esm/geometry/BoundingSphere.js.map +1 -1
  781. package/lib/esm/geometry/Cartographic.d.ts +137 -137
  782. package/lib/esm/geometry/Cartographic.js +340 -340
  783. package/lib/esm/geometry/Cartographic.js.map +1 -1
  784. package/lib/esm/geometry/CoordinateReferenceSystem.d.ts +269 -269
  785. package/lib/esm/geometry/CoordinateReferenceSystem.js +254 -254
  786. package/lib/esm/geometry/CoordinateReferenceSystem.js.map +1 -1
  787. package/lib/esm/geometry/ElementGeometry.d.ts +402 -402
  788. package/lib/esm/geometry/ElementGeometry.js +1716 -1716
  789. package/lib/esm/geometry/ElementGeometry.js.map +1 -1
  790. package/lib/esm/geometry/ElementGeometryFB.d.ts +2372 -2372
  791. package/lib/esm/geometry/ElementGeometryFB.js +3811 -3811
  792. package/lib/esm/geometry/ElementGeometryFB.js.map +1 -1
  793. package/lib/esm/geometry/FrustumPlanes.d.ts +81 -81
  794. package/lib/esm/geometry/FrustumPlanes.d.ts.map +1 -1
  795. package/lib/esm/geometry/FrustumPlanes.js +185 -189
  796. package/lib/esm/geometry/FrustumPlanes.js.map +1 -1
  797. package/lib/esm/geometry/GeodeticDatum.d.ts +409 -409
  798. package/lib/esm/geometry/GeodeticDatum.js +390 -390
  799. package/lib/esm/geometry/GeodeticDatum.js.map +1 -1
  800. package/lib/esm/geometry/GeodeticEllipsoid.d.ts +72 -72
  801. package/lib/esm/geometry/GeodeticEllipsoid.js +68 -68
  802. package/lib/esm/geometry/GeodeticEllipsoid.js.map +1 -1
  803. package/lib/esm/geometry/GeometryStream.d.ts +347 -347
  804. package/lib/esm/geometry/GeometryStream.js +464 -464
  805. package/lib/esm/geometry/GeometryStream.js.map +1 -1
  806. package/lib/esm/geometry/ImageGraphic.d.ts +74 -74
  807. package/lib/esm/geometry/ImageGraphic.js +93 -93
  808. package/lib/esm/geometry/ImageGraphic.js.map +1 -1
  809. package/lib/esm/geometry/LineStyle.d.ts +71 -71
  810. package/lib/esm/geometry/LineStyle.js +126 -126
  811. package/lib/esm/geometry/LineStyle.js.map +1 -1
  812. package/lib/esm/geometry/Placement.d.ts +95 -95
  813. package/lib/esm/geometry/Placement.js +126 -126
  814. package/lib/esm/geometry/Placement.js.map +1 -1
  815. package/lib/esm/geometry/Projection.d.ts +251 -251
  816. package/lib/esm/geometry/Projection.js +192 -192
  817. package/lib/esm/geometry/Projection.js.map +1 -1
  818. package/lib/esm/geometry/TextString.d.ts +55 -55
  819. package/lib/esm/geometry/TextString.js +61 -61
  820. package/lib/esm/geometry/TextString.js.map +1 -1
  821. package/lib/esm/ipc/IpcSession.d.ts +23 -23
  822. package/lib/esm/ipc/IpcSession.js +23 -23
  823. package/lib/esm/ipc/IpcSession.js.map +1 -1
  824. package/lib/esm/ipc/IpcSocket.d.ts +96 -96
  825. package/lib/esm/ipc/IpcSocket.js +12 -12
  826. package/lib/esm/ipc/IpcSocket.js.map +1 -1
  827. package/lib/esm/ipc/IpcWebSocket.d.ts +61 -61
  828. package/lib/esm/ipc/IpcWebSocket.js +145 -145
  829. package/lib/esm/ipc/IpcWebSocket.js.map +1 -1
  830. package/lib/esm/ipc/IpcWebSocketTransport.d.ts +15 -15
  831. package/lib/esm/ipc/IpcWebSocketTransport.js +156 -156
  832. package/lib/esm/ipc/IpcWebSocketTransport.js.map +1 -1
  833. package/lib/esm/rpc/DevToolsRpcInterface.d.ts +32 -32
  834. package/lib/esm/rpc/DevToolsRpcInterface.d.ts.map +1 -1
  835. package/lib/esm/rpc/DevToolsRpcInterface.js +48 -44
  836. package/lib/esm/rpc/DevToolsRpcInterface.js.map +1 -1
  837. package/lib/esm/rpc/IModelReadRpcInterface.d.ts +99 -99
  838. package/lib/esm/rpc/IModelReadRpcInterface.js +117 -117
  839. package/lib/esm/rpc/IModelReadRpcInterface.js.map +1 -1
  840. package/lib/esm/rpc/IModelTileRpcInterface.d.ts +61 -61
  841. package/lib/esm/rpc/IModelTileRpcInterface.js +92 -92
  842. package/lib/esm/rpc/IModelTileRpcInterface.js.map +1 -1
  843. package/lib/esm/rpc/SnapshotIModelRpcInterface.d.ts +23 -23
  844. package/lib/esm/rpc/SnapshotIModelRpcInterface.js +44 -44
  845. package/lib/esm/rpc/SnapshotIModelRpcInterface.js.map +1 -1
  846. package/lib/esm/rpc/TestRpcManager.d.ts +20 -20
  847. package/lib/esm/rpc/TestRpcManager.js +36 -36
  848. package/lib/esm/rpc/TestRpcManager.js.map +1 -1
  849. package/lib/esm/rpc/WipRpcInterface.d.ts +29 -29
  850. package/lib/esm/rpc/WipRpcInterface.js +36 -36
  851. package/lib/esm/rpc/WipRpcInterface.js.map +1 -1
  852. package/lib/esm/rpc/core/RpcConfiguration.d.ts +111 -111
  853. package/lib/esm/rpc/core/RpcConfiguration.js +184 -184
  854. package/lib/esm/rpc/core/RpcConfiguration.js.map +1 -1
  855. package/lib/esm/rpc/core/RpcConstants.d.ts +90 -90
  856. package/lib/esm/rpc/core/RpcConstants.js +106 -106
  857. package/lib/esm/rpc/core/RpcConstants.js.map +1 -1
  858. package/lib/esm/rpc/core/RpcControl.d.ts +54 -54
  859. package/lib/esm/rpc/core/RpcControl.js +138 -138
  860. package/lib/esm/rpc/core/RpcControl.js.map +1 -1
  861. package/lib/esm/rpc/core/RpcInvocation.d.ts +89 -89
  862. package/lib/esm/rpc/core/RpcInvocation.js +254 -254
  863. package/lib/esm/rpc/core/RpcInvocation.js.map +1 -1
  864. package/lib/esm/rpc/core/RpcMarshaling.d.ts +35 -35
  865. package/lib/esm/rpc/core/RpcMarshaling.js +152 -152
  866. package/lib/esm/rpc/core/RpcMarshaling.js.map +1 -1
  867. package/lib/esm/rpc/core/RpcOperation.d.ts +67 -67
  868. package/lib/esm/rpc/core/RpcOperation.js +129 -129
  869. package/lib/esm/rpc/core/RpcOperation.js.map +1 -1
  870. package/lib/esm/rpc/core/RpcPendingQueue.d.ts +21 -21
  871. package/lib/esm/rpc/core/RpcPendingQueue.js +91 -91
  872. package/lib/esm/rpc/core/RpcPendingQueue.js.map +1 -1
  873. package/lib/esm/rpc/core/RpcProtocol.d.ts +132 -132
  874. package/lib/esm/rpc/core/RpcProtocol.js +123 -123
  875. package/lib/esm/rpc/core/RpcProtocol.js.map +1 -1
  876. package/lib/esm/rpc/core/RpcPush.d.ts +68 -68
  877. package/lib/esm/rpc/core/RpcPush.js +119 -119
  878. package/lib/esm/rpc/core/RpcPush.js.map +1 -1
  879. package/lib/esm/rpc/core/RpcRegistry.d.ts +48 -48
  880. package/lib/esm/rpc/core/RpcRegistry.js +195 -195
  881. package/lib/esm/rpc/core/RpcRegistry.js.map +1 -1
  882. package/lib/esm/rpc/core/RpcRequest.d.ts +186 -186
  883. package/lib/esm/rpc/core/RpcRequest.js +473 -473
  884. package/lib/esm/rpc/core/RpcRequest.js.map +1 -1
  885. package/lib/esm/rpc/core/RpcRequestContext.d.ts +14 -14
  886. package/lib/esm/rpc/core/RpcRequestContext.js +1 -1
  887. package/lib/esm/rpc/core/RpcRequestContext.js.map +1 -1
  888. package/lib/esm/rpc/core/RpcRoutingToken.d.ts +12 -12
  889. package/lib/esm/rpc/core/RpcRoutingToken.js +20 -20
  890. package/lib/esm/rpc/core/RpcRoutingToken.js.map +1 -1
  891. package/lib/esm/rpc/core/RpcSessionInvocation.d.ts +10 -10
  892. package/lib/esm/rpc/core/RpcSessionInvocation.js +56 -56
  893. package/lib/esm/rpc/core/RpcSessionInvocation.js.map +1 -1
  894. package/lib/esm/rpc/web/BentleyCloudRpcManager.d.ts +46 -46
  895. package/lib/esm/rpc/web/BentleyCloudRpcManager.js +68 -68
  896. package/lib/esm/rpc/web/BentleyCloudRpcManager.js.map +1 -1
  897. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.d.ts +33 -33
  898. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.js +139 -139
  899. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.js.map +1 -1
  900. package/lib/esm/rpc/web/OpenAPI.d.ts +140 -140
  901. package/lib/esm/rpc/web/OpenAPI.js +56 -56
  902. package/lib/esm/rpc/web/OpenAPI.js.map +1 -1
  903. package/lib/esm/rpc/web/RpcMultipart.d.ts +35 -35
  904. package/lib/esm/rpc/web/RpcMultipart.js +46 -46
  905. package/lib/esm/rpc/web/RpcMultipart.js.map +1 -1
  906. package/lib/esm/rpc/web/WebAppRpcLogging.d.ts +28 -28
  907. package/lib/esm/rpc/web/WebAppRpcLogging.js +136 -136
  908. package/lib/esm/rpc/web/WebAppRpcLogging.js.map +1 -1
  909. package/lib/esm/rpc/web/WebAppRpcProtocol.d.ts +89 -89
  910. package/lib/esm/rpc/web/WebAppRpcProtocol.js +112 -112
  911. package/lib/esm/rpc/web/WebAppRpcProtocol.js.map +1 -1
  912. package/lib/esm/rpc/web/WebAppRpcRequest.d.ts +67 -67
  913. package/lib/esm/rpc/web/WebAppRpcRequest.js +235 -235
  914. package/lib/esm/rpc/web/WebAppRpcRequest.js.map +1 -1
  915. package/lib/esm/rpc/web/multipart/RpcMultipartParser.d.ts +32 -32
  916. package/lib/esm/rpc/web/multipart/RpcMultipartParser.js +369 -369
  917. package/lib/esm/rpc/web/multipart/RpcMultipartParser.js.map +1 -1
  918. package/lib/esm/tile/B3dmTileIO.d.ts +19 -19
  919. package/lib/esm/tile/B3dmTileIO.js +62 -62
  920. package/lib/esm/tile/B3dmTileIO.js.map +1 -1
  921. package/lib/esm/tile/CompositeTileIO.d.ts +15 -15
  922. package/lib/esm/tile/CompositeTileIO.js +22 -22
  923. package/lib/esm/tile/CompositeTileIO.js.map +1 -1
  924. package/lib/esm/tile/ElementGraphics.d.ts +145 -145
  925. package/lib/esm/tile/ElementGraphics.js +8 -8
  926. package/lib/esm/tile/ElementGraphics.js.map +1 -1
  927. package/lib/esm/tile/GltfTileIO.d.ts +45 -45
  928. package/lib/esm/tile/GltfTileIO.js +105 -105
  929. package/lib/esm/tile/GltfTileIO.js.map +1 -1
  930. package/lib/esm/tile/I3dmTileIO.d.ts +20 -20
  931. package/lib/esm/tile/I3dmTileIO.js +36 -36
  932. package/lib/esm/tile/I3dmTileIO.js.map +1 -1
  933. package/lib/esm/tile/IModelTileIO.d.ts +75 -75
  934. package/lib/esm/tile/IModelTileIO.js +90 -90
  935. package/lib/esm/tile/IModelTileIO.js.map +1 -1
  936. package/lib/esm/tile/PntsTileIO.d.ts +17 -17
  937. package/lib/esm/tile/PntsTileIO.js +22 -22
  938. package/lib/esm/tile/PntsTileIO.js.map +1 -1
  939. package/lib/esm/tile/TileIO.d.ts +66 -66
  940. package/lib/esm/tile/TileIO.js +110 -110
  941. package/lib/esm/tile/TileIO.js.map +1 -1
  942. package/lib/esm/tile/TileMetadata.d.ts +228 -228
  943. package/lib/esm/tile/TileMetadata.js +661 -661
  944. package/lib/esm/tile/TileMetadata.js.map +1 -1
  945. package/package.json +7 -7
@@ -1 +1 @@
1
- {"version":3,"file":"FeatureTable.js","sourceRoot":"","sources":["../../src/FeatureTable.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Rendering\n */\n\nimport { assert, compareNumbers, compareStrings, Id64, Id64String, IndexedValue, IndexMap } from \"@itwin/core-bentley\";\nimport { GeometryClass } from \"./GeometryParams\";\n\n/** Describes a discrete entity within a batched [RenderGraphic]($frontend) that can be\n * grouped with other such entities in a [[FeatureTable]].\n * Features roughly correlate to elements: a [Tile]($frontend)'s graphics combines geometry from every\n * [GeometricElement]($backend) that intersects the tile's volume, so each element produces at least one feature.\n * However, an element's geometry stream can contain geometry belonging to multiple different combinations of [SubCategory]($backend) and\n * [[GeometryClass]], so an individual element may produce more than one feature.\n * @see [[FeatureOverrides]] for customizing the appearance of individual features.\n * @public\n */\nexport class Feature {\n public readonly elementId: string;\n public readonly subCategoryId: string;\n public readonly geometryClass: GeometryClass;\n\n public constructor(elementId: Id64String = Id64.invalid, subCategoryId: Id64String = Id64.invalid, geometryClass: GeometryClass = GeometryClass.Primary) {\n this.elementId = elementId;\n this.subCategoryId = subCategoryId;\n this.geometryClass = geometryClass;\n }\n\n public get isDefined(): boolean { return !Id64.isInvalid(this.elementId) || !Id64.isInvalid(this.subCategoryId) || this.geometryClass !== GeometryClass.Primary; }\n public get isUndefined(): boolean { return !this.isDefined; }\n\n /** Returns true if this feature is equivalent to the supplied feature. */\n public equals(other: Feature): boolean { return 0 === this.compare(other); }\n\n /** Performs ordinal comparison of this feature with another.\n * @param rhs The feature to compare with.\n * @returns zero if the features are equivalent, a negative value if this feature compares as \"less than\" `rhs`, or a positive value if this feature compares \"greater than\" `rhs`.\n */\n public compare(rhs: Feature): number {\n if (this === rhs)\n return 0;\n\n let cmp = compareNumbers(this.geometryClass, rhs.geometryClass);\n if (0 === cmp) {\n cmp = compareStrings(this.elementId, rhs.elementId);\n if (0 === cmp) {\n cmp = compareStrings(this.subCategoryId, rhs.subCategoryId);\n }\n }\n\n return cmp;\n }\n}\n\n/** @internal */\nexport interface PackedFeature {\n elementId: Id64.Uint32Pair;\n subCategoryId: Id64.Uint32Pair;\n geometryClass: GeometryClass;\n animationNodeId: number;\n}\n\n/** Describes the type of a 'batch' of graphics representing multiple [[Feature]]s.\n * The most commonly-encountered batches are Tiles, which can be of either Primary or\n * Classifier type.\n * @public\n * @extensions\n */\nexport enum BatchType {\n /** This batch contains graphics derived from a model's visible geometry. */\n Primary,\n /**\n * This batch contains color volumes which are used to classify a model's visible geometry.\n * The graphics themselves are not rendered to the screen; instead they are rendered to the stencil buffer\n * to resymbolize the primary geometry.\n */\n VolumeClassifier,\n /**\n * This batch contains planar graphics which are used to classify a model's visible geometry.\n * The graphics themselves are not rendered to the screen; instead they are rendered to a texture buffer\n * to resymbolize the primary geometry.\n */\n PlanarClassifier,\n}\n\n/** Defines a look-up table for [[Feature]]s within a batched [RenderGraphic]($frontend). Consecutive 32-bit\n * indices are assigned to each unique Feature. Primitives within the RenderGraphic can\n * use per-vertex indices to specify the distribution of Features within the primitive. The appearance of individual\n * features can be customized using [[FeatureOverrides]]. Typically a [Tile]($frontend) will contain a feature table\n * identifying the elements whose geometry appears within that tile.\n * @see [[FeatureOverrides]] for customizing the appearance of individual features.\n * @public\n */\nexport class FeatureTable extends IndexMap<Feature> {\n public readonly modelId: Id64String;\n public readonly type: BatchType;\n\n /** Construct an empty FeatureTable. */\n public constructor(maxFeatures: number, modelId: Id64String = Id64.invalid, type: BatchType = BatchType.Primary) {\n super((lhs, rhs) => lhs.compare(rhs), maxFeatures);\n this.modelId = modelId;\n this.type = type;\n }\n\n /** Returns the maximum number of [[Feature]]s this FeatureTable can contain. */\n public get maxFeatures(): number { return this._maximumSize; }\n /** @internal */\n public get anyDefined(): boolean { return this.length > 1 || (1 === this.length && this._array[0].value.isDefined); }\n /** Returns true if this FeatureTable contains exactly one [[Feature]]. */\n public get isUniform(): boolean { return 1 === this.length; }\n /** If this FeatureTable contains exactly one [[Feature]], returns that Feature; otherwise returns undefined. */\n public get uniform(): Feature | undefined { return 1 === this.length ? this._array[0].value : undefined; }\n /** Returns true if this FeatureTable is associated with [[BatchType.VolumeClassifier]] geometry. */\n public get isVolumeClassifier(): boolean { return BatchType.VolumeClassifier === this.type; }\n /** Returns true if this FeatureTable is associated with [[BatchType.PlanarClassifier]] geometry. */\n public get isPlanarClassifier(): boolean { return BatchType.PlanarClassifier === this.type; }\n\n /** Returns the Feature corresponding to the specified index, or undefined if the index is not present. */\n public findFeature(index: number): Feature | undefined {\n for (const entry of this._array)\n if (entry.index === index)\n return entry.value;\n\n return undefined;\n }\n\n /** @internal */\n public insertWithIndex(feature: Feature, index: number): void {\n const bound = this.lowerBound(feature);\n assert(!bound.equal);\n assert(!this.isFull);\n const entry = new IndexedValue<Feature>(feature, index);\n this._array.splice(bound.index, 0, entry);\n }\n\n /** @internal */\n public getArray(): Array<IndexedValue<Feature>> { return this._array; }\n}\n\n/** @alpha */\nexport type ComputeNodeId = (elementId: Id64.Uint32Pair, featureIndex: number) => number;\n\n/**\n * An immutable, packed representation of a [[FeatureTable]]. The features are packed into a single array of 32-bit integer values,\n * wherein each feature occupies 3 32-bit integers.\n * @internal\n */\nexport class PackedFeatureTable {\n private readonly _data: Uint32Array;\n public readonly modelId: Id64String;\n public readonly maxFeatures: number;\n public readonly numFeatures: number;\n public readonly anyDefined: boolean;\n public readonly type: BatchType;\n private _animationNodeIds?: Uint8Array | Uint16Array | Uint32Array;\n\n public get byteLength(): number { return this._data.byteLength; }\n public get animationNodeIds(): Readonly<Uint8Array | Uint16Array | Uint32Array> | undefined { return this._animationNodeIds; }\n\n /** Construct a PackedFeatureTable from the packed binary data.\n * This is used internally when deserializing Tiles in iMdl format.\n * @internal\n */\n public constructor(data: Uint32Array, modelId: Id64String, numFeatures: number, maxFeatures: number, type: BatchType, animationNodeIds?: Uint8Array | Uint16Array | Uint32Array) {\n this._data = data;\n this.modelId = modelId;\n this.maxFeatures = maxFeatures;\n this.numFeatures = numFeatures;\n this.type = type;\n this._animationNodeIds = animationNodeIds;\n\n switch (this.numFeatures) {\n case 0:\n this.anyDefined = false;\n break;\n case 1:\n this.anyDefined = this.getFeature(0).isDefined;\n break;\n default:\n this.anyDefined = true;\n break;\n }\n\n assert(this._data.length >= this._subCategoriesOffset);\n assert(this.maxFeatures >= this.numFeatures);\n assert(undefined === this._animationNodeIds || this._animationNodeIds.length === this.numFeatures);\n }\n\n /** Create a packed feature table from a [[FeatureTable]]. */\n public static pack(featureTable: FeatureTable): PackedFeatureTable {\n // We must determine how many subcategories we have ahead of time to compute the size of the Uint32Array, as\n // the array cannot be resized after it is created.\n // We are not too worried about this as FeatureTables created on the front-end will contain few if any features; those obtained from the\n // back-end arrive within tiles already in the packed format.\n const subcategories = new Map<string, number>();\n for (const iv of featureTable.getArray()) {\n const found = subcategories.get(iv.value.subCategoryId.toString());\n if (undefined === found)\n subcategories.set(iv.value.subCategoryId, subcategories.size);\n }\n\n // We need 3 32-bit integers per feature, plus 2 32-bit integers per subcategory.\n const subCategoriesOffset = 3 * featureTable.length;\n const nUint32s = subCategoriesOffset + 2 * subcategories.size;\n const uint32s = new Uint32Array(nUint32s);\n\n for (const iv of featureTable.getArray()) {\n const feature = iv.value;\n const index = iv.index * 3;\n\n let subCategoryIndex = subcategories.get(feature.subCategoryId)!;\n assert(undefined !== subCategoryIndex); // we inserted it above...\n subCategoryIndex |= (feature.geometryClass << 24);\n\n uint32s[index + 0] = Id64.getLowerUint32(feature.elementId);\n uint32s[index + 1] = Id64.getUpperUint32(feature.elementId);\n uint32s[index + 2] = subCategoryIndex;\n }\n\n subcategories.forEach((index: number, id: string, _map) => {\n const index32 = subCategoriesOffset + 2 * index;\n uint32s[index32 + 0] = Id64.getLowerUint32(id);\n uint32s[index32 + 1] = Id64.getUpperUint32(id);\n });\n\n return new PackedFeatureTable(uint32s, featureTable.modelId, featureTable.length, featureTable.maxFeatures, featureTable.type);\n }\n\n /** Retrieve the Feature associated with the specified index. */\n public getFeature(featureIndex: number): Feature {\n const packed = this.getPackedFeature(featureIndex);\n const elemId = Id64.fromUint32Pair(packed.elementId.lower, packed.elementId.upper);\n const subcatId = Id64.fromUint32Pair(packed.subCategoryId.lower, packed.subCategoryId.upper);\n return new Feature(elemId, subcatId, packed.geometryClass);\n }\n\n /** Returns the Feature associated with the specified index, or undefined if the index is out of range. */\n public findFeature(featureIndex: number): Feature | undefined {\n return featureIndex < this.numFeatures ? this.getFeature(featureIndex) : undefined;\n }\n\n /** @internal */\n public getElementIdPair(featureIndex: number, out?: Id64.Uint32Pair): Id64.Uint32Pair {\n out = out ?? { lower: 0, upper: 0 };\n assert(featureIndex < this.numFeatures);\n const offset = 3 * featureIndex;\n out.lower = this._data[offset];\n out.upper = this._data[offset + 1];\n return out;\n }\n\n /** @internal */\n public getSubCategoryIdPair(featureIndex: number): Id64.Uint32Pair {\n const index = 3 * featureIndex;\n let subCatIndex = this._data[index + 2];\n subCatIndex = (subCatIndex & 0x00ffffff) >>> 0;\n subCatIndex = subCatIndex * 2 + this._subCategoriesOffset;\n return { lower: this._data[subCatIndex], upper: this._data[subCatIndex + 1] };\n }\n\n /** @internal */\n public getAnimationNodeId(featureIndex: number): number {\n return undefined !== this._animationNodeIds && featureIndex < this.numFeatures ? this._animationNodeIds[featureIndex] : 0;\n }\n\n /** @internal */\n public getPackedFeature(featureIndex: number): PackedFeature {\n assert(featureIndex < this.numFeatures);\n\n const index32 = 3 * featureIndex;\n const elementId = { lower: this._data[index32], upper: this._data[index32 + 1] };\n\n const subCatIndexAndClass = this._data[index32 + 2];\n const geometryClass = (subCatIndexAndClass >>> 24) & 0xff;\n\n let subCatIndex = (subCatIndexAndClass & 0x00ffffff) >>> 0;\n subCatIndex = subCatIndex * 2 + this._subCategoriesOffset;\n const subCategoryId = { lower: this._data[subCatIndex], upper: this._data[subCatIndex + 1] };\n\n const animationNodeId = this.getAnimationNodeId(featureIndex);\n return { elementId, subCategoryId, geometryClass, animationNodeId };\n }\n\n /** Returns the element ID of the Feature associated with the specified index, or undefined if the index is out of range. */\n public findElementId(featureIndex: number): Id64String | undefined {\n if (featureIndex >= this.numFeatures)\n return undefined;\n else\n return this.readId(3 * featureIndex);\n }\n\n /** Return true if this table contains exactly 1 feature. */\n public get isUniform(): boolean { return 1 === this.numFeatures; }\n\n /** If this table contains exactly 1 feature, return it. */\n public get uniform(): Feature | undefined { return this.isUniform ? this.getFeature(0) : undefined; }\n\n public get isVolumeClassifier(): boolean { return BatchType.VolumeClassifier === this.type; }\n public get isPlanarClassifier(): boolean { return BatchType.VolumeClassifier === this.type; }\n public get isClassifier(): boolean { return this.isVolumeClassifier || this.isPlanarClassifier; }\n\n /** Unpack the features into a [[FeatureTable]]. */\n public unpack(): FeatureTable {\n const table = new FeatureTable(this.maxFeatures, this.modelId);\n for (let i = 0; i < this.numFeatures; i++) {\n const feature = this.getFeature(i);\n table.insertWithIndex(feature, i);\n }\n\n return table;\n }\n\n public populateAnimationNodeIds(computeNodeId: ComputeNodeId, maxNodeId: number): void {\n assert(undefined === this._animationNodeIds);\n assert(maxNodeId > 0);\n\n const pair = { lower: 0, upper: 0 };\n let haveNodes = false;\n const size = this.numFeatures;\n const nodeIds = maxNodeId < 0x100 ? new Uint8Array(size) : (maxNodeId < 0x10000 ? new Uint16Array(size) : new Uint32Array(size));\n for (let i = 0; i < this.numFeatures; i++) {\n this.getElementIdPair(i, pair);\n const nodeId = computeNodeId(pair, i);\n assert(nodeId <= maxNodeId);\n if (0 !== nodeId) {\n nodeIds[i] = nodeId;\n haveNodes = true;\n }\n }\n\n if (haveNodes)\n this._animationNodeIds = nodeIds;\n }\n\n private get _subCategoriesOffset(): number { return this.numFeatures * 3; }\n\n private readId(offset32: number): Id64String {\n return Id64.fromUint32Pair(this._data[offset32], this._data[offset32 + 1]);\n }\n}\n"]}
1
+ {"version":3,"file":"FeatureTable.js","sourceRoot":"","sources":["../../src/FeatureTable.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, compareNumbers, compareStrings, Id64, Id64String, IndexedValue, IndexMap } from \"@itwin/core-bentley\";\r\nimport { GeometryClass } from \"./GeometryParams\";\r\n\r\n/** Describes a discrete entity within a batched [RenderGraphic]($frontend) that can be\r\n * grouped with other such entities in a [[FeatureTable]].\r\n * Features roughly correlate to elements: a [Tile]($frontend)'s graphics combines geometry from every\r\n * [GeometricElement]($backend) that intersects the tile's volume, so each element produces at least one feature.\r\n * However, an element's geometry stream can contain geometry belonging to multiple different combinations of [SubCategory]($backend) and\r\n * [[GeometryClass]], so an individual element may produce more than one feature.\r\n * @see [[FeatureOverrides]] for customizing the appearance of individual features.\r\n * @public\r\n */\r\nexport class Feature {\r\n public readonly elementId: string;\r\n public readonly subCategoryId: string;\r\n public readonly geometryClass: GeometryClass;\r\n\r\n public constructor(elementId: Id64String = Id64.invalid, subCategoryId: Id64String = Id64.invalid, geometryClass: GeometryClass = GeometryClass.Primary) {\r\n this.elementId = elementId;\r\n this.subCategoryId = subCategoryId;\r\n this.geometryClass = geometryClass;\r\n }\r\n\r\n public get isDefined(): boolean { return !Id64.isInvalid(this.elementId) || !Id64.isInvalid(this.subCategoryId) || this.geometryClass !== GeometryClass.Primary; }\r\n public get isUndefined(): boolean { return !this.isDefined; }\r\n\r\n /** Returns true if this feature is equivalent to the supplied feature. */\r\n public equals(other: Feature): boolean { return 0 === this.compare(other); }\r\n\r\n /** Performs ordinal comparison of this feature with another.\r\n * @param rhs The feature to compare with.\r\n * @returns zero if the features are equivalent, a negative value if this feature compares as \"less than\" `rhs`, or a positive value if this feature compares \"greater than\" `rhs`.\r\n */\r\n public compare(rhs: Feature): number {\r\n if (this === rhs)\r\n return 0;\r\n\r\n let cmp = compareNumbers(this.geometryClass, rhs.geometryClass);\r\n if (0 === cmp) {\r\n cmp = compareStrings(this.elementId, rhs.elementId);\r\n if (0 === cmp) {\r\n cmp = compareStrings(this.subCategoryId, rhs.subCategoryId);\r\n }\r\n }\r\n\r\n return cmp;\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport interface PackedFeature {\r\n elementId: Id64.Uint32Pair;\r\n subCategoryId: Id64.Uint32Pair;\r\n geometryClass: GeometryClass;\r\n animationNodeId: number;\r\n}\r\n\r\n/** Describes the type of a 'batch' of graphics representing multiple [[Feature]]s.\r\n * The most commonly-encountered batches are Tiles, which can be of either Primary or\r\n * Classifier type.\r\n * @public\r\n * @extensions\r\n */\r\nexport enum BatchType {\r\n /** This batch contains graphics derived from a model's visible geometry. */\r\n Primary,\r\n /**\r\n * This batch contains color volumes which are used to classify a model's visible geometry.\r\n * The graphics themselves are not rendered to the screen; instead they are rendered to the stencil buffer\r\n * to resymbolize the primary geometry.\r\n */\r\n VolumeClassifier,\r\n /**\r\n * This batch contains planar graphics which are used to classify a model's visible geometry.\r\n * The graphics themselves are not rendered to the screen; instead they are rendered to a texture buffer\r\n * to resymbolize the primary geometry.\r\n */\r\n PlanarClassifier,\r\n}\r\n\r\n/** Defines a look-up table for [[Feature]]s within a batched [RenderGraphic]($frontend). Consecutive 32-bit\r\n * indices are assigned to each unique Feature. Primitives within the RenderGraphic can\r\n * use per-vertex indices to specify the distribution of Features within the primitive. The appearance of individual\r\n * features can be customized using [[FeatureOverrides]]. Typically a [Tile]($frontend) will contain a feature table\r\n * identifying the elements whose geometry appears within that tile.\r\n * @see [[FeatureOverrides]] for customizing the appearance of individual features.\r\n * @public\r\n */\r\nexport class FeatureTable extends IndexMap<Feature> {\r\n public readonly modelId: Id64String;\r\n public readonly type: BatchType;\r\n\r\n /** Construct an empty FeatureTable. */\r\n public constructor(maxFeatures: number, modelId: Id64String = Id64.invalid, type: BatchType = BatchType.Primary) {\r\n super((lhs, rhs) => lhs.compare(rhs), maxFeatures);\r\n this.modelId = modelId;\r\n this.type = type;\r\n }\r\n\r\n /** Returns the maximum number of [[Feature]]s this FeatureTable can contain. */\r\n public get maxFeatures(): number { return this._maximumSize; }\r\n /** @internal */\r\n public get anyDefined(): boolean { return this.length > 1 || (1 === this.length && this._array[0].value.isDefined); }\r\n /** Returns true if this FeatureTable contains exactly one [[Feature]]. */\r\n public get isUniform(): boolean { return 1 === this.length; }\r\n /** If this FeatureTable contains exactly one [[Feature]], returns that Feature; otherwise returns undefined. */\r\n public get uniform(): Feature | undefined { return 1 === this.length ? this._array[0].value : undefined; }\r\n /** Returns true if this FeatureTable is associated with [[BatchType.VolumeClassifier]] geometry. */\r\n public get isVolumeClassifier(): boolean { return BatchType.VolumeClassifier === this.type; }\r\n /** Returns true if this FeatureTable is associated with [[BatchType.PlanarClassifier]] geometry. */\r\n public get isPlanarClassifier(): boolean { return BatchType.PlanarClassifier === this.type; }\r\n\r\n /** Returns the Feature corresponding to the specified index, or undefined if the index is not present. */\r\n public findFeature(index: number): Feature | undefined {\r\n for (const entry of this._array)\r\n if (entry.index === index)\r\n return entry.value;\r\n\r\n return undefined;\r\n }\r\n\r\n /** @internal */\r\n public insertWithIndex(feature: Feature, index: number): void {\r\n const bound = this.lowerBound(feature);\r\n assert(!bound.equal);\r\n assert(!this.isFull);\r\n const entry = new IndexedValue<Feature>(feature, index);\r\n this._array.splice(bound.index, 0, entry);\r\n }\r\n\r\n /** @internal */\r\n public getArray(): Array<IndexedValue<Feature>> { return this._array; }\r\n}\r\n\r\n/** @alpha */\r\nexport type ComputeNodeId = (elementId: Id64.Uint32Pair, featureIndex: number) => number;\r\n\r\n/**\r\n * An immutable, packed representation of a [[FeatureTable]]. The features are packed into a single array of 32-bit integer values,\r\n * wherein each feature occupies 3 32-bit integers.\r\n * @internal\r\n */\r\nexport class PackedFeatureTable {\r\n private readonly _data: Uint32Array;\r\n public readonly modelId: Id64String;\r\n public readonly maxFeatures: number;\r\n public readonly numFeatures: number;\r\n public readonly anyDefined: boolean;\r\n public readonly type: BatchType;\r\n private _animationNodeIds?: Uint8Array | Uint16Array | Uint32Array;\r\n\r\n public get byteLength(): number { return this._data.byteLength; }\r\n public get animationNodeIds(): Readonly<Uint8Array | Uint16Array | Uint32Array> | undefined { return this._animationNodeIds; }\r\n\r\n /** Construct a PackedFeatureTable from the packed binary data.\r\n * This is used internally when deserializing Tiles in iMdl format.\r\n * @internal\r\n */\r\n public constructor(data: Uint32Array, modelId: Id64String, numFeatures: number, maxFeatures: number, type: BatchType, animationNodeIds?: Uint8Array | Uint16Array | Uint32Array) {\r\n this._data = data;\r\n this.modelId = modelId;\r\n this.maxFeatures = maxFeatures;\r\n this.numFeatures = numFeatures;\r\n this.type = type;\r\n this._animationNodeIds = animationNodeIds;\r\n\r\n switch (this.numFeatures) {\r\n case 0:\r\n this.anyDefined = false;\r\n break;\r\n case 1:\r\n this.anyDefined = this.getFeature(0).isDefined;\r\n break;\r\n default:\r\n this.anyDefined = true;\r\n break;\r\n }\r\n\r\n assert(this._data.length >= this._subCategoriesOffset);\r\n assert(this.maxFeatures >= this.numFeatures);\r\n assert(undefined === this._animationNodeIds || this._animationNodeIds.length === this.numFeatures);\r\n }\r\n\r\n /** Create a packed feature table from a [[FeatureTable]]. */\r\n public static pack(featureTable: FeatureTable): PackedFeatureTable {\r\n // We must determine how many subcategories we have ahead of time to compute the size of the Uint32Array, as\r\n // the array cannot be resized after it is created.\r\n // We are not too worried about this as FeatureTables created on the front-end will contain few if any features; those obtained from the\r\n // back-end arrive within tiles already in the packed format.\r\n const subcategories = new Map<string, number>();\r\n for (const iv of featureTable.getArray()) {\r\n const found = subcategories.get(iv.value.subCategoryId.toString());\r\n if (undefined === found)\r\n subcategories.set(iv.value.subCategoryId, subcategories.size);\r\n }\r\n\r\n // We need 3 32-bit integers per feature, plus 2 32-bit integers per subcategory.\r\n const subCategoriesOffset = 3 * featureTable.length;\r\n const nUint32s = subCategoriesOffset + 2 * subcategories.size;\r\n const uint32s = new Uint32Array(nUint32s);\r\n\r\n for (const iv of featureTable.getArray()) {\r\n const feature = iv.value;\r\n const index = iv.index * 3;\r\n\r\n let subCategoryIndex = subcategories.get(feature.subCategoryId)!;\r\n assert(undefined !== subCategoryIndex); // we inserted it above...\r\n subCategoryIndex |= (feature.geometryClass << 24);\r\n\r\n uint32s[index + 0] = Id64.getLowerUint32(feature.elementId);\r\n uint32s[index + 1] = Id64.getUpperUint32(feature.elementId);\r\n uint32s[index + 2] = subCategoryIndex;\r\n }\r\n\r\n subcategories.forEach((index: number, id: string, _map) => {\r\n const index32 = subCategoriesOffset + 2 * index;\r\n uint32s[index32 + 0] = Id64.getLowerUint32(id);\r\n uint32s[index32 + 1] = Id64.getUpperUint32(id);\r\n });\r\n\r\n return new PackedFeatureTable(uint32s, featureTable.modelId, featureTable.length, featureTable.maxFeatures, featureTable.type);\r\n }\r\n\r\n /** Retrieve the Feature associated with the specified index. */\r\n public getFeature(featureIndex: number): Feature {\r\n const packed = this.getPackedFeature(featureIndex);\r\n const elemId = Id64.fromUint32Pair(packed.elementId.lower, packed.elementId.upper);\r\n const subcatId = Id64.fromUint32Pair(packed.subCategoryId.lower, packed.subCategoryId.upper);\r\n return new Feature(elemId, subcatId, packed.geometryClass);\r\n }\r\n\r\n /** Returns the Feature associated with the specified index, or undefined if the index is out of range. */\r\n public findFeature(featureIndex: number): Feature | undefined {\r\n return featureIndex < this.numFeatures ? this.getFeature(featureIndex) : undefined;\r\n }\r\n\r\n /** @internal */\r\n public getElementIdPair(featureIndex: number, out?: Id64.Uint32Pair): Id64.Uint32Pair {\r\n out = out ?? { lower: 0, upper: 0 };\r\n assert(featureIndex < this.numFeatures);\r\n const offset = 3 * featureIndex;\r\n out.lower = this._data[offset];\r\n out.upper = this._data[offset + 1];\r\n return out;\r\n }\r\n\r\n /** @internal */\r\n public getSubCategoryIdPair(featureIndex: number): Id64.Uint32Pair {\r\n const index = 3 * featureIndex;\r\n let subCatIndex = this._data[index + 2];\r\n subCatIndex = (subCatIndex & 0x00ffffff) >>> 0;\r\n subCatIndex = subCatIndex * 2 + this._subCategoriesOffset;\r\n return { lower: this._data[subCatIndex], upper: this._data[subCatIndex + 1] };\r\n }\r\n\r\n /** @internal */\r\n public getAnimationNodeId(featureIndex: number): number {\r\n return undefined !== this._animationNodeIds && featureIndex < this.numFeatures ? this._animationNodeIds[featureIndex] : 0;\r\n }\r\n\r\n /** @internal */\r\n public getPackedFeature(featureIndex: number): PackedFeature {\r\n assert(featureIndex < this.numFeatures);\r\n\r\n const index32 = 3 * featureIndex;\r\n const elementId = { lower: this._data[index32], upper: this._data[index32 + 1] };\r\n\r\n const subCatIndexAndClass = this._data[index32 + 2];\r\n const geometryClass = (subCatIndexAndClass >>> 24) & 0xff;\r\n\r\n let subCatIndex = (subCatIndexAndClass & 0x00ffffff) >>> 0;\r\n subCatIndex = subCatIndex * 2 + this._subCategoriesOffset;\r\n const subCategoryId = { lower: this._data[subCatIndex], upper: this._data[subCatIndex + 1] };\r\n\r\n const animationNodeId = this.getAnimationNodeId(featureIndex);\r\n return { elementId, subCategoryId, geometryClass, animationNodeId };\r\n }\r\n\r\n /** Returns the element ID of the Feature associated with the specified index, or undefined if the index is out of range. */\r\n public findElementId(featureIndex: number): Id64String | undefined {\r\n if (featureIndex >= this.numFeatures)\r\n return undefined;\r\n else\r\n return this.readId(3 * featureIndex);\r\n }\r\n\r\n /** Return true if this table contains exactly 1 feature. */\r\n public get isUniform(): boolean { return 1 === this.numFeatures; }\r\n\r\n /** If this table contains exactly 1 feature, return it. */\r\n public get uniform(): Feature | undefined { return this.isUniform ? this.getFeature(0) : undefined; }\r\n\r\n public get isVolumeClassifier(): boolean { return BatchType.VolumeClassifier === this.type; }\r\n public get isPlanarClassifier(): boolean { return BatchType.VolumeClassifier === this.type; }\r\n public get isClassifier(): boolean { return this.isVolumeClassifier || this.isPlanarClassifier; }\r\n\r\n /** Unpack the features into a [[FeatureTable]]. */\r\n public unpack(): FeatureTable {\r\n const table = new FeatureTable(this.maxFeatures, this.modelId);\r\n for (let i = 0; i < this.numFeatures; i++) {\r\n const feature = this.getFeature(i);\r\n table.insertWithIndex(feature, i);\r\n }\r\n\r\n return table;\r\n }\r\n\r\n public populateAnimationNodeIds(computeNodeId: ComputeNodeId, maxNodeId: number): void {\r\n assert(undefined === this._animationNodeIds);\r\n assert(maxNodeId > 0);\r\n\r\n const pair = { lower: 0, upper: 0 };\r\n let haveNodes = false;\r\n const size = this.numFeatures;\r\n const nodeIds = maxNodeId < 0x100 ? new Uint8Array(size) : (maxNodeId < 0x10000 ? new Uint16Array(size) : new Uint32Array(size));\r\n for (let i = 0; i < this.numFeatures; i++) {\r\n this.getElementIdPair(i, pair);\r\n const nodeId = computeNodeId(pair, i);\r\n assert(nodeId <= maxNodeId);\r\n if (0 !== nodeId) {\r\n nodeIds[i] = nodeId;\r\n haveNodes = true;\r\n }\r\n }\r\n\r\n if (haveNodes)\r\n this._animationNodeIds = nodeIds;\r\n }\r\n\r\n private get _subCategoriesOffset(): number { return this.numFeatures * 3; }\r\n\r\n private readId(offset32: number): Id64String {\r\n return Id64.fromUint32Pair(this._data[offset32], this._data[offset32 + 1]);\r\n }\r\n}\r\n"]}
@@ -1,52 +1,52 @@
1
- /** @packageDocumentation
2
- * @module Symbology
3
- */
4
- /** The type of a font.
5
- * @public
6
- * @extensions
7
- */
8
- export declare enum FontType {
9
- TrueType = 1,
10
- Rsc = 2,
11
- Shx = 3
12
- }
13
- /** An iModel-local identifier for a font.
14
- * @public
15
- * @extensions
16
- */
17
- export declare type FontId = number;
18
- /** The properties of a Font.
19
- * @public
20
- */
21
- export interface FontProps {
22
- /** the Id, within an iModel, of this font. */
23
- id: FontId;
24
- /** The type of font */
25
- type: FontType;
26
- /** The name of the font. */
27
- name: string;
28
- }
29
- /** The properties of a FontMap
30
- * @public
31
- * @extensions
32
- */
33
- export interface FontMapProps {
34
- fonts: FontProps[];
35
- }
36
- /**
37
- * A FontMap holds the set of font names available in an iModel.
38
- * Within the GeometryStream of an Element, a specific font is referenced by its FontId that is local to the iModel.
39
- * This class maps FontIds to FontProps.
40
- * @note The font map is generally established when the iModel is first created to specify the set of fonts available
41
- * for editors. Adding new entries requires that the schema lock be held.
42
- * @public
43
- */
44
- export declare class FontMap {
45
- readonly fonts: Map<number, FontProps>;
46
- constructor(props?: FontMapProps);
47
- addFonts(fonts: FontProps[]): void;
48
- toJSON(): FontMapProps;
49
- /** look up a font by name or number and return its FontProps */
50
- getFont(arg: string | FontId): FontProps | undefined;
51
- }
1
+ /** @packageDocumentation
2
+ * @module Symbology
3
+ */
4
+ /** The type of a font.
5
+ * @public
6
+ * @extensions
7
+ */
8
+ export declare enum FontType {
9
+ TrueType = 1,
10
+ Rsc = 2,
11
+ Shx = 3
12
+ }
13
+ /** An iModel-local identifier for a font.
14
+ * @public
15
+ * @extensions
16
+ */
17
+ export declare type FontId = number;
18
+ /** The properties of a Font.
19
+ * @public
20
+ */
21
+ export interface FontProps {
22
+ /** the Id, within an iModel, of this font. */
23
+ id: FontId;
24
+ /** The type of font */
25
+ type: FontType;
26
+ /** The name of the font. */
27
+ name: string;
28
+ }
29
+ /** The properties of a FontMap
30
+ * @public
31
+ * @extensions
32
+ */
33
+ export interface FontMapProps {
34
+ fonts: FontProps[];
35
+ }
36
+ /**
37
+ * A FontMap holds the set of font names available in an iModel.
38
+ * Within the GeometryStream of an Element, a specific font is referenced by its FontId that is local to the iModel.
39
+ * This class maps FontIds to FontProps.
40
+ * @note The font map is generally established when the iModel is first created to specify the set of fonts available
41
+ * for editors. Adding new entries requires that the schema lock be held.
42
+ * @public
43
+ */
44
+ export declare class FontMap {
45
+ readonly fonts: Map<number, FontProps>;
46
+ constructor(props?: FontMapProps);
47
+ addFonts(fonts: FontProps[]): void;
48
+ toJSON(): FontMapProps;
49
+ /** look up a font by name or number and return its FontProps */
50
+ getFont(arg: string | FontId): FontProps | undefined;
51
+ }
52
52
  //# sourceMappingURL=Fonts.d.ts.map
package/lib/esm/Fonts.js CHANGED
@@ -1,50 +1,50 @@
1
- /*---------------------------------------------------------------------------------------------
2
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
- * See LICENSE.md in the project root for license terms and full copyright notice.
4
- *--------------------------------------------------------------------------------------------*/
5
- /** @packageDocumentation
6
- * @module Symbology
7
- */
8
- /** The type of a font.
9
- * @public
10
- * @extensions
11
- */
12
- export var FontType;
13
- (function (FontType) {
14
- FontType[FontType["TrueType"] = 1] = "TrueType";
15
- FontType[FontType["Rsc"] = 2] = "Rsc";
16
- FontType[FontType["Shx"] = 3] = "Shx";
17
- })(FontType || (FontType = {}));
18
- /**
19
- * A FontMap holds the set of font names available in an iModel.
20
- * Within the GeometryStream of an Element, a specific font is referenced by its FontId that is local to the iModel.
21
- * This class maps FontIds to FontProps.
22
- * @note The font map is generally established when the iModel is first created to specify the set of fonts available
23
- * for editors. Adding new entries requires that the schema lock be held.
24
- * @public
25
- */
26
- export class FontMap {
27
- constructor(props) {
28
- this.fonts = new Map();
29
- if (undefined !== props)
30
- this.addFonts(props.fonts);
31
- }
32
- addFonts(fonts) {
33
- fonts.forEach((font) => this.fonts.set(font.id, font));
34
- }
35
- toJSON() {
36
- const fonts = [];
37
- this.fonts.forEach((font) => fonts.push(font));
38
- return { fonts };
39
- }
40
- /** look up a font by name or number and return its FontProps */
41
- getFont(arg) {
42
- if (typeof arg === "number")
43
- return this.fonts.get(arg);
44
- for (const font of this.fonts.values())
45
- if (font.name === arg)
46
- return font;
47
- return undefined;
48
- }
49
- }
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
+ * See LICENSE.md in the project root for license terms and full copyright notice.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ /** @packageDocumentation
6
+ * @module Symbology
7
+ */
8
+ /** The type of a font.
9
+ * @public
10
+ * @extensions
11
+ */
12
+ export var FontType;
13
+ (function (FontType) {
14
+ FontType[FontType["TrueType"] = 1] = "TrueType";
15
+ FontType[FontType["Rsc"] = 2] = "Rsc";
16
+ FontType[FontType["Shx"] = 3] = "Shx";
17
+ })(FontType || (FontType = {}));
18
+ /**
19
+ * A FontMap holds the set of font names available in an iModel.
20
+ * Within the GeometryStream of an Element, a specific font is referenced by its FontId that is local to the iModel.
21
+ * This class maps FontIds to FontProps.
22
+ * @note The font map is generally established when the iModel is first created to specify the set of fonts available
23
+ * for editors. Adding new entries requires that the schema lock be held.
24
+ * @public
25
+ */
26
+ export class FontMap {
27
+ constructor(props) {
28
+ this.fonts = new Map();
29
+ if (undefined !== props)
30
+ this.addFonts(props.fonts);
31
+ }
32
+ addFonts(fonts) {
33
+ fonts.forEach((font) => this.fonts.set(font.id, font));
34
+ }
35
+ toJSON() {
36
+ const fonts = [];
37
+ this.fonts.forEach((font) => fonts.push(font));
38
+ return { fonts };
39
+ }
40
+ /** look up a font by name or number and return its FontProps */
41
+ getFont(arg) {
42
+ if (typeof arg === "number")
43
+ return this.fonts.get(arg);
44
+ for (const font of this.fonts.values())
45
+ if (font.name === arg)
46
+ return font;
47
+ return undefined;
48
+ }
49
+ }
50
50
  //# sourceMappingURL=Fonts.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Fonts.js","sourceRoot":"","sources":["../../src/Fonts.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH;;;GAGG;AACH,MAAM,CAAN,IAAY,QAA2C;AAAvD,WAAY,QAAQ;IAAG,+CAAY,CAAA;IAAE,qCAAO,CAAA;IAAE,qCAAO,CAAA;AAAC,CAAC,EAA3C,QAAQ,KAAR,QAAQ,QAAmC;AA0BvD;;;;;;;GAOG;AACH,MAAM,OAAO,OAAO;IAElB,YAAY,KAAoB;QADhB,UAAK,GAAG,IAAI,GAAG,EAAqB,CAAC;QAEnD,IAAI,SAAS,KAAK,KAAK;YACrB,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IACM,QAAQ,CAAC,KAAkB;QAChC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC;IACzD,CAAC;IACM,MAAM;QACX,MAAM,KAAK,GAAgB,EAAE,CAAC;QAC9B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC/C,OAAO,EAAE,KAAK,EAAE,CAAC;IACnB,CAAC;IACD,gEAAgE;IACzD,OAAO,CAAC,GAAoB;QACjC,IAAI,OAAO,GAAG,KAAK,QAAQ;YACzB,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAE7B,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;YACpC,IAAI,IAAI,CAAC,IAAI,KAAK,GAAG;gBACnB,OAAO,IAAI,CAAC;QAEhB,OAAO,SAAS,CAAC;IACnB,CAAC;CACF","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Symbology\n */\n\n/** The type of a font.\n * @public\n * @extensions\n */\nexport enum FontType { TrueType = 1, Rsc = 2, Shx = 3 }\n\n/** An iModel-local identifier for a font.\n * @public\n * @extensions\n */\nexport type FontId = number;\n\n/** The properties of a Font.\n * @public\n */\nexport interface FontProps {\n /** the Id, within an iModel, of this font. */\n id: FontId;\n /** The type of font */\n type: FontType;\n /** The name of the font. */\n name: string;\n}\n\n/** The properties of a FontMap\n * @public\n * @extensions\n */\nexport interface FontMapProps { fonts: FontProps[] }\n\n/**\n * A FontMap holds the set of font names available in an iModel.\n * Within the GeometryStream of an Element, a specific font is referenced by its FontId that is local to the iModel.\n * This class maps FontIds to FontProps.\n * @note The font map is generally established when the iModel is first created to specify the set of fonts available\n * for editors. Adding new entries requires that the schema lock be held.\n * @public\n */\nexport class FontMap {\n public readonly fonts = new Map<FontId, FontProps>();\n constructor(props?: FontMapProps) {\n if (undefined !== props)\n this.addFonts(props.fonts);\n }\n public addFonts(fonts: FontProps[]) {\n fonts.forEach((font) => this.fonts.set(font.id, font));\n }\n public toJSON(): FontMapProps {\n const fonts: FontProps[] = [];\n this.fonts.forEach((font) => fonts.push(font));\n return { fonts };\n }\n /** look up a font by name or number and return its FontProps */\n public getFont(arg: string | FontId): FontProps | undefined {\n if (typeof arg === \"number\")\n return this.fonts.get(arg);\n\n for (const font of this.fonts.values())\n if (font.name === arg)\n return font;\n\n return undefined;\n }\n}\n"]}
1
+ {"version":3,"file":"Fonts.js","sourceRoot":"","sources":["../../src/Fonts.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH;;;GAGG;AACH,MAAM,CAAN,IAAY,QAA2C;AAAvD,WAAY,QAAQ;IAAG,+CAAY,CAAA;IAAE,qCAAO,CAAA;IAAE,qCAAO,CAAA;AAAC,CAAC,EAA3C,QAAQ,KAAR,QAAQ,QAAmC;AA0BvD;;;;;;;GAOG;AACH,MAAM,OAAO,OAAO;IAElB,YAAY,KAAoB;QADhB,UAAK,GAAG,IAAI,GAAG,EAAqB,CAAC;QAEnD,IAAI,SAAS,KAAK,KAAK;YACrB,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IACM,QAAQ,CAAC,KAAkB;QAChC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC;IACzD,CAAC;IACM,MAAM;QACX,MAAM,KAAK,GAAgB,EAAE,CAAC;QAC9B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC/C,OAAO,EAAE,KAAK,EAAE,CAAC;IACnB,CAAC;IACD,gEAAgE;IACzD,OAAO,CAAC,GAAoB;QACjC,IAAI,OAAO,GAAG,KAAK,QAAQ;YACzB,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAE7B,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;YACpC,IAAI,IAAI,CAAC,IAAI,KAAK,GAAG;gBACnB,OAAO,IAAI,CAAC;QAEhB,OAAO,SAAS,CAAC;IACnB,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 Symbology\r\n */\r\n\r\n/** The type of a font.\r\n * @public\r\n * @extensions\r\n */\r\nexport enum FontType { TrueType = 1, Rsc = 2, Shx = 3 }\r\n\r\n/** An iModel-local identifier for a font.\r\n * @public\r\n * @extensions\r\n */\r\nexport type FontId = number;\r\n\r\n/** The properties of a Font.\r\n * @public\r\n */\r\nexport interface FontProps {\r\n /** the Id, within an iModel, of this font. */\r\n id: FontId;\r\n /** The type of font */\r\n type: FontType;\r\n /** The name of the font. */\r\n name: string;\r\n}\r\n\r\n/** The properties of a FontMap\r\n * @public\r\n * @extensions\r\n */\r\nexport interface FontMapProps { fonts: FontProps[] }\r\n\r\n/**\r\n * A FontMap holds the set of font names available in an iModel.\r\n * Within the GeometryStream of an Element, a specific font is referenced by its FontId that is local to the iModel.\r\n * This class maps FontIds to FontProps.\r\n * @note The font map is generally established when the iModel is first created to specify the set of fonts available\r\n * for editors. Adding new entries requires that the schema lock be held.\r\n * @public\r\n */\r\nexport class FontMap {\r\n public readonly fonts = new Map<FontId, FontProps>();\r\n constructor(props?: FontMapProps) {\r\n if (undefined !== props)\r\n this.addFonts(props.fonts);\r\n }\r\n public addFonts(fonts: FontProps[]) {\r\n fonts.forEach((font) => this.fonts.set(font.id, font));\r\n }\r\n public toJSON(): FontMapProps {\r\n const fonts: FontProps[] = [];\r\n this.fonts.forEach((font) => fonts.push(font));\r\n return { fonts };\r\n }\r\n /** look up a font by name or number and return its FontProps */\r\n public getFont(arg: string | FontId): FontProps | undefined {\r\n if (typeof arg === \"number\")\r\n return this.fonts.get(arg);\r\n\r\n for (const font of this.fonts.values())\r\n if (font.name === arg)\r\n return font;\r\n\r\n return undefined;\r\n }\r\n}\r\n"]}
@@ -1,115 +1,115 @@
1
- /** @packageDocumentation
2
- * @module Views
3
- */
4
- import { ConvexClipPlaneSet, LowAndHighXY, LowAndHighXYZ, Map4d, Matrix3d, Plane3dByOriginAndUnitNormal, Point3d, Range3d, Transform, XYAndZ } from "@itwin/core-geometry";
5
- /** The 8 corners of the [Normalized Plane Coordinate]($docs/learning/glossary.md#npc) cube.
6
- * @public
7
- * @extensions
8
- */
9
- export declare enum Npc {
10
- /** Left bottom rear */
11
- _000 = 0,
12
- /** Right bottom rear */
13
- _100 = 1,
14
- /** Left top rear */
15
- _010 = 2,
16
- /** Right top rear */
17
- _110 = 3,
18
- /** Left bottom front */
19
- _001 = 4,
20
- /** Right bottom front */
21
- _101 = 5,
22
- /** Left top front */
23
- _011 = 6,
24
- /** Right top front */
25
- _111 = 7,
26
- LeftBottomRear = 0,
27
- RightBottomRear = 1,
28
- LeftTopRear = 2,
29
- RightTopRear = 3,
30
- LeftBottomFront = 4,
31
- RightBottomFront = 5,
32
- LeftTopFront = 6,
33
- RightTopFront = 7,
34
- /** useful for sizing arrays */
35
- CORNER_COUNT = 8
36
- }
37
- /** The 8 corners of an [[Npc]] Frustum.
38
- * @public
39
- */
40
- export declare const NpcCorners: Point3d[];
41
- /** The center point of the [Normalized Plane Coordinate]($docs/learning/glossary.md#npc) cube.
42
- * @public
43
- */
44
- export declare const NpcCenter: Point3d;
45
- /** The region of physical (3d) space that appears in a view. It forms the field-of-view of a camera.
46
- * It is stored as 8 points, in [[Npc]] order, that must define a truncated pyramid.
47
- * @public
48
- */
49
- export declare class Frustum {
50
- /** Array of the 8 points of this Frustum. */
51
- readonly points: Point3d[];
52
- /** Constructor for Frustum. Members are initialized to the Npc cube. */
53
- constructor();
54
- /** Initialize this Frustum to the 8 corners of the NPC cube. */
55
- initNpc(): this;
56
- /** Get a corner Point from this Frustum. */
57
- getCorner(i: number): Point3d;
58
- /** Get the point at the center of this Frustum (halfway between RightTopFront and LeftBottomRear. */
59
- getCenter(): Point3d;
60
- /** Get the distance between two corners of this Frustum. */
61
- distance(corner1: number, corner2: number): number;
62
- /** Get the ratio of the length of the diagonal of the front plane to the diagonal of the back plane. */
63
- getFraction(): number;
64
- /** Multiply all the points of this Frustum by a Transform, in place. */
65
- multiply(trans: Transform): void;
66
- /** Offset all of the points of this Frustum by a vector. */
67
- translate(offset: XYAndZ): void;
68
- /** Transform all the points of this Frustum and return the result in another Frustum. */
69
- transformBy(trans: Transform, result?: Frustum): Frustum;
70
- /** Calculate a bounding range from the 8 points in this Frustum. */
71
- toRange(range?: Range3d): Range3d;
72
- /** Make a copy of this Frustum.
73
- * @param result Optional Frustum for copy. If undefined allocate a new Frustum.
74
- */
75
- clone(result?: Frustum): Frustum;
76
- /** Set the points of this Frustum to be copies of the points in another Frustum. */
77
- setFrom(other: Frustum): void;
78
- /** Set the points of this frustum from array of corner points in NPC order. */
79
- setFromCorners(corners: Point3d[]): void;
80
- /** Scale this Frustum, in place, about its center by a scale factor. */
81
- scaleAboutCenter(scale: number): void;
82
- /** The point at the center of the front face of this frustum */
83
- get frontCenter(): Point3d;
84
- /** The point at the center of the rear face of this frustum */
85
- get rearCenter(): Point3d;
86
- /** Scale this frustum's XY (viewing) plane about its center */
87
- scaleXYAboutCenter(scale: number): void;
88
- /** Create a Map4d that converts world coordinates to/from [[Npc]] coordinates of this Frustum. */
89
- toMap4d(): Map4d | undefined;
90
- /** Get the rotation matrix to the frame of this frustum. This is equivalent to the view rotation matrix. */
91
- getRotation(result?: Matrix3d): Matrix3d | undefined;
92
- /** Get the eye point - undefined if parallel projection */
93
- getEyePoint(result?: Point3d): Point3d | undefined;
94
- /** Invalidate this Frustum by setting all 8 points to zero. */
95
- invalidate(): void;
96
- /** Return true if this Frustum is equal to another Frustum */
97
- equals(rhs: Frustum): boolean;
98
- /** Return true if all of the points in this Frustum are *almost* the same as the points in another Frustum.
99
- * @see [[equals]], [XYZ.isAlmostEqual]($geometry)
100
- */
101
- isSame(other: Frustum): boolean;
102
- /** Initialize this Frustum from a Range */
103
- initFromRange(range: LowAndHighXYZ | LowAndHighXY): void;
104
- /** Create a new Frustum from a Range3d */
105
- static fromRange(range: LowAndHighXYZ | LowAndHighXY, out?: Frustum): Frustum;
106
- /** Return true if this Frustum has a mirror (is not in the correct order.) */
107
- get hasMirror(): boolean;
108
- /** Make sure the frustum point order does not include mirroring. If so, reverse the order. */
109
- fixPointOrder(): void;
110
- /** Get a convex set of clipping planes bounding the region contained by this Frustum. */
111
- getRangePlanes(clipFront: boolean, clipBack: boolean, expandPlaneDistance: number): ConvexClipPlaneSet;
112
- /** Get a (convex) polygon that represents the intersection of this frustum with a plane, or undefined if no intersection exists */
113
- getIntersectionWithPlane(plane: Plane3dByOriginAndUnitNormal): Point3d[] | undefined;
114
- }
1
+ /** @packageDocumentation
2
+ * @module Views
3
+ */
4
+ import { ConvexClipPlaneSet, LowAndHighXY, LowAndHighXYZ, Map4d, Matrix3d, Plane3dByOriginAndUnitNormal, Point3d, Range3d, Transform, XYAndZ } from "@itwin/core-geometry";
5
+ /** The 8 corners of the [Normalized Plane Coordinate]($docs/learning/glossary.md#npc) cube.
6
+ * @public
7
+ * @extensions
8
+ */
9
+ export declare enum Npc {
10
+ /** Left bottom rear */
11
+ _000 = 0,
12
+ /** Right bottom rear */
13
+ _100 = 1,
14
+ /** Left top rear */
15
+ _010 = 2,
16
+ /** Right top rear */
17
+ _110 = 3,
18
+ /** Left bottom front */
19
+ _001 = 4,
20
+ /** Right bottom front */
21
+ _101 = 5,
22
+ /** Left top front */
23
+ _011 = 6,
24
+ /** Right top front */
25
+ _111 = 7,
26
+ LeftBottomRear = 0,
27
+ RightBottomRear = 1,
28
+ LeftTopRear = 2,
29
+ RightTopRear = 3,
30
+ LeftBottomFront = 4,
31
+ RightBottomFront = 5,
32
+ LeftTopFront = 6,
33
+ RightTopFront = 7,
34
+ /** useful for sizing arrays */
35
+ CORNER_COUNT = 8
36
+ }
37
+ /** The 8 corners of an [[Npc]] Frustum.
38
+ * @public
39
+ */
40
+ export declare const NpcCorners: Point3d[];
41
+ /** The center point of the [Normalized Plane Coordinate]($docs/learning/glossary.md#npc) cube.
42
+ * @public
43
+ */
44
+ export declare const NpcCenter: Point3d;
45
+ /** The region of physical (3d) space that appears in a view. It forms the field-of-view of a camera.
46
+ * It is stored as 8 points, in [[Npc]] order, that must define a truncated pyramid.
47
+ * @public
48
+ */
49
+ export declare class Frustum {
50
+ /** Array of the 8 points of this Frustum. */
51
+ readonly points: Point3d[];
52
+ /** Constructor for Frustum. Members are initialized to the Npc cube. */
53
+ constructor();
54
+ /** Initialize this Frustum to the 8 corners of the NPC cube. */
55
+ initNpc(): this;
56
+ /** Get a corner Point from this Frustum. */
57
+ getCorner(i: number): Point3d;
58
+ /** Get the point at the center of this Frustum (halfway between RightTopFront and LeftBottomRear. */
59
+ getCenter(): Point3d;
60
+ /** Get the distance between two corners of this Frustum. */
61
+ distance(corner1: number, corner2: number): number;
62
+ /** Get the ratio of the length of the diagonal of the front plane to the diagonal of the back plane. */
63
+ getFraction(): number;
64
+ /** Multiply all the points of this Frustum by a Transform, in place. */
65
+ multiply(trans: Transform): void;
66
+ /** Offset all of the points of this Frustum by a vector. */
67
+ translate(offset: XYAndZ): void;
68
+ /** Transform all the points of this Frustum and return the result in another Frustum. */
69
+ transformBy(trans: Transform, result?: Frustum): Frustum;
70
+ /** Calculate a bounding range from the 8 points in this Frustum. */
71
+ toRange(range?: Range3d): Range3d;
72
+ /** Make a copy of this Frustum.
73
+ * @param result Optional Frustum for copy. If undefined allocate a new Frustum.
74
+ */
75
+ clone(result?: Frustum): Frustum;
76
+ /** Set the points of this Frustum to be copies of the points in another Frustum. */
77
+ setFrom(other: Frustum): void;
78
+ /** Set the points of this frustum from array of corner points in NPC order. */
79
+ setFromCorners(corners: Point3d[]): void;
80
+ /** Scale this Frustum, in place, about its center by a scale factor. */
81
+ scaleAboutCenter(scale: number): void;
82
+ /** The point at the center of the front face of this frustum */
83
+ get frontCenter(): Point3d;
84
+ /** The point at the center of the rear face of this frustum */
85
+ get rearCenter(): Point3d;
86
+ /** Scale this frustum's XY (viewing) plane about its center */
87
+ scaleXYAboutCenter(scale: number): void;
88
+ /** Create a Map4d that converts world coordinates to/from [[Npc]] coordinates of this Frustum. */
89
+ toMap4d(): Map4d | undefined;
90
+ /** Get the rotation matrix to the frame of this frustum. This is equivalent to the view rotation matrix. */
91
+ getRotation(result?: Matrix3d): Matrix3d | undefined;
92
+ /** Get the eye point - undefined if parallel projection */
93
+ getEyePoint(result?: Point3d): Point3d | undefined;
94
+ /** Invalidate this Frustum by setting all 8 points to zero. */
95
+ invalidate(): void;
96
+ /** Return true if this Frustum is equal to another Frustum */
97
+ equals(rhs: Frustum): boolean;
98
+ /** Return true if all of the points in this Frustum are *almost* the same as the points in another Frustum.
99
+ * @see [[equals]], [XYZ.isAlmostEqual]($geometry)
100
+ */
101
+ isSame(other: Frustum): boolean;
102
+ /** Initialize this Frustum from a Range */
103
+ initFromRange(range: LowAndHighXYZ | LowAndHighXY): void;
104
+ /** Create a new Frustum from a Range3d */
105
+ static fromRange(range: LowAndHighXYZ | LowAndHighXY, out?: Frustum): Frustum;
106
+ /** Return true if this Frustum has a mirror (is not in the correct order.) */
107
+ get hasMirror(): boolean;
108
+ /** Make sure the frustum point order does not include mirroring. If so, reverse the order. */
109
+ fixPointOrder(): void;
110
+ /** Get a convex set of clipping planes bounding the region contained by this Frustum. */
111
+ getRangePlanes(clipFront: boolean, clipBack: boolean, expandPlaneDistance: number): ConvexClipPlaneSet;
112
+ /** Get a (convex) polygon that represents the intersection of this frustum with a plane, or undefined if no intersection exists */
113
+ getIntersectionWithPlane(plane: Plane3dByOriginAndUnitNormal): Point3d[] | undefined;
114
+ }
115
115
  //# sourceMappingURL=Frustum.d.ts.map