@itwin/core-common 3.4.2 → 3.4.4

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 (932) hide show
  1. package/CHANGELOG.md +13 -1
  2. package/lib/cjs/AmbientOcclusion.d.ts +49 -49
  3. package/lib/cjs/AmbientOcclusion.js +55 -55
  4. package/lib/cjs/AmbientOcclusion.js.map +1 -1
  5. package/lib/cjs/AnalysisStyle.d.ts +134 -134
  6. package/lib/cjs/AnalysisStyle.js +165 -165
  7. package/lib/cjs/AnalysisStyle.js.map +1 -1
  8. package/lib/cjs/AuthorizationClient.d.ts +11 -11
  9. package/lib/cjs/AuthorizationClient.js +9 -9
  10. package/lib/cjs/AuthorizationClient.js.map +1 -1
  11. package/lib/cjs/BackgroundMapProvider.d.ts +51 -51
  12. package/lib/cjs/BackgroundMapProvider.js +68 -68
  13. package/lib/cjs/BackgroundMapProvider.js.map +1 -1
  14. package/lib/cjs/BackgroundMapSettings.d.ts +136 -136
  15. package/lib/cjs/BackgroundMapSettings.js +156 -156
  16. package/lib/cjs/BackgroundMapSettings.js.map +1 -1
  17. package/lib/cjs/Base64EncodedString.d.ts +30 -30
  18. package/lib/cjs/Base64EncodedString.js +56 -56
  19. package/lib/cjs/Base64EncodedString.js.map +1 -1
  20. package/lib/cjs/BlobReader.d.ts +31 -31
  21. package/lib/cjs/BlobReader.js +84 -84
  22. package/lib/cjs/BlobReader.js.map +1 -1
  23. package/lib/cjs/BriefcaseTypes.d.ts +189 -189
  24. package/lib/cjs/BriefcaseTypes.js +95 -95
  25. package/lib/cjs/BriefcaseTypes.js.map +1 -1
  26. package/lib/cjs/Camera.d.ts +42 -42
  27. package/lib/cjs/Camera.js +62 -62
  28. package/lib/cjs/Camera.js.map +1 -1
  29. package/lib/cjs/ChangedElements.d.ts +83 -83
  30. package/lib/cjs/ChangedElements.js +21 -21
  31. package/lib/cjs/ChangedElements.js.map +1 -1
  32. package/lib/cjs/ChangedEntities.d.ts +45 -45
  33. package/lib/cjs/ChangedEntities.js +9 -9
  34. package/lib/cjs/ChangedEntities.js.map +1 -1
  35. package/lib/cjs/ChangesetProps.d.ts +98 -98
  36. package/lib/cjs/ChangesetProps.js +22 -22
  37. package/lib/cjs/ChangesetProps.js.map +1 -1
  38. package/lib/cjs/ClipStyle.d.ts +89 -89
  39. package/lib/cjs/ClipStyle.js +123 -123
  40. package/lib/cjs/ClipStyle.js.map +1 -1
  41. package/lib/cjs/CloudStorage.d.ts +62 -62
  42. package/lib/cjs/CloudStorage.js +113 -113
  43. package/lib/cjs/CloudStorage.js.map +1 -1
  44. package/lib/cjs/CloudStorageTileCache.d.ts +27 -27
  45. package/lib/cjs/CloudStorageTileCache.js +66 -66
  46. package/lib/cjs/CloudStorageTileCache.js.map +1 -1
  47. package/lib/cjs/Code.d.ts +256 -256
  48. package/lib/cjs/Code.js +281 -281
  49. package/lib/cjs/Code.js.map +1 -1
  50. package/lib/cjs/ColorByName.d.ts +161 -161
  51. package/lib/cjs/ColorByName.js +169 -169
  52. package/lib/cjs/ColorByName.js.map +1 -1
  53. package/lib/cjs/ColorDef.d.ts +208 -208
  54. package/lib/cjs/ColorDef.js +571 -571
  55. package/lib/cjs/ColorDef.js.map +1 -1
  56. package/lib/cjs/CommonLoggerCategory.d.ts +18 -18
  57. package/lib/cjs/CommonLoggerCategory.js +26 -26
  58. package/lib/cjs/CommonLoggerCategory.js.map +1 -1
  59. package/lib/cjs/ConcurrentQuery.d.ts +241 -241
  60. package/lib/cjs/ConcurrentQuery.js +380 -380
  61. package/lib/cjs/ConcurrentQuery.js.map +1 -1
  62. package/lib/cjs/ContextRealityModel.d.ts +255 -255
  63. package/lib/cjs/ContextRealityModel.js +325 -325
  64. package/lib/cjs/ContextRealityModel.js.map +1 -1
  65. package/lib/cjs/DisplayStyleSettings.d.ts +552 -552
  66. package/lib/cjs/DisplayStyleSettings.js +951 -951
  67. package/lib/cjs/DisplayStyleSettings.js.map +1 -1
  68. package/lib/cjs/ECSchemaProps.d.ts +39 -39
  69. package/lib/cjs/ECSchemaProps.js +9 -9
  70. package/lib/cjs/ECSchemaProps.js.map +1 -1
  71. package/lib/cjs/ECSqlReader.d.ts +70 -70
  72. package/lib/cjs/ECSqlReader.js +280 -280
  73. package/lib/cjs/ECSqlReader.js.map +1 -1
  74. package/lib/cjs/ECSqlTypes.d.ts +128 -128
  75. package/lib/cjs/ECSqlTypes.js +189 -189
  76. package/lib/cjs/ECSqlTypes.js.map +1 -1
  77. package/lib/cjs/ElementProps.d.ts +479 -476
  78. package/lib/cjs/ElementProps.d.ts.map +1 -1
  79. package/lib/cjs/ElementProps.js +99 -99
  80. package/lib/cjs/ElementProps.js.map +1 -1
  81. package/lib/cjs/EmphasizeElementsProps.d.ts +55 -55
  82. package/lib/cjs/EmphasizeElementsProps.js +25 -25
  83. package/lib/cjs/EmphasizeElementsProps.js.map +1 -1
  84. package/lib/cjs/EntityProps.d.ts +176 -176
  85. package/lib/cjs/EntityProps.js +112 -112
  86. package/lib/cjs/EntityProps.js.map +1 -1
  87. package/lib/cjs/EntityReference.d.ts +51 -51
  88. package/lib/cjs/EntityReference.js +56 -56
  89. package/lib/cjs/EntityReference.js.map +1 -1
  90. package/lib/cjs/Environment.d.ts +61 -61
  91. package/lib/cjs/Environment.js +73 -73
  92. package/lib/cjs/Environment.js.map +1 -1
  93. package/lib/cjs/FeatureGates.d.ts +31 -31
  94. package/lib/cjs/FeatureGates.js +55 -55
  95. package/lib/cjs/FeatureGates.js.map +1 -1
  96. package/lib/cjs/FeatureIndex.d.ts +39 -39
  97. package/lib/cjs/FeatureIndex.js +63 -63
  98. package/lib/cjs/FeatureIndex.js.map +1 -1
  99. package/lib/cjs/FeatureSymbology.d.ts +444 -444
  100. package/lib/cjs/FeatureSymbology.js +614 -614
  101. package/lib/cjs/FeatureSymbology.js.map +1 -1
  102. package/lib/cjs/FeatureTable.d.ts +141 -141
  103. package/lib/cjs/FeatureTable.js +278 -278
  104. package/lib/cjs/FeatureTable.js.map +1 -1
  105. package/lib/cjs/Fonts.d.ts +51 -51
  106. package/lib/cjs/Fonts.js +53 -53
  107. package/lib/cjs/Fonts.js.map +1 -1
  108. package/lib/cjs/Frustum.d.ts +114 -114
  109. package/lib/cjs/Frustum.js +292 -292
  110. package/lib/cjs/Frustum.js.map +1 -1
  111. package/lib/cjs/GeoCoordinateServices.d.ts +119 -119
  112. package/lib/cjs/GeoCoordinateServices.js +80 -80
  113. package/lib/cjs/GeoCoordinateServices.js.map +1 -1
  114. package/lib/cjs/GeometryContainment.d.ts +28 -28
  115. package/lib/cjs/GeometryContainment.js +9 -9
  116. package/lib/cjs/GeometryContainment.js.map +1 -1
  117. package/lib/cjs/GeometryParams.d.ts +130 -130
  118. package/lib/cjs/GeometryParams.js +174 -174
  119. package/lib/cjs/GeometryParams.js.map +1 -1
  120. package/lib/cjs/GeometrySummary.d.ts +45 -45
  121. package/lib/cjs/GeometrySummary.js +23 -23
  122. package/lib/cjs/GeometrySummary.js.map +1 -1
  123. package/lib/cjs/Gradient.d.ts +139 -139
  124. package/lib/cjs/Gradient.js +455 -455
  125. package/lib/cjs/Gradient.js.map +1 -1
  126. package/lib/cjs/GraphicParams.d.ts +58 -58
  127. package/lib/cjs/GraphicParams.js +85 -85
  128. package/lib/cjs/GraphicParams.js.map +1 -1
  129. package/lib/cjs/GroundPlane.d.ts +52 -52
  130. package/lib/cjs/GroundPlane.js +64 -64
  131. package/lib/cjs/GroundPlane.js.map +1 -1
  132. package/lib/cjs/HSLColor.d.ts +20 -20
  133. package/lib/cjs/HSLColor.js +32 -32
  134. package/lib/cjs/HSLColor.js.map +1 -1
  135. package/lib/cjs/HSVColor.d.ts +30 -30
  136. package/lib/cjs/HSVColor.js +59 -59
  137. package/lib/cjs/HSVColor.js.map +1 -1
  138. package/lib/cjs/HiddenLine.d.ts +97 -97
  139. package/lib/cjs/HiddenLine.js +162 -162
  140. package/lib/cjs/HiddenLine.js.map +1 -1
  141. package/lib/cjs/Hilite.d.ts +50 -50
  142. package/lib/cjs/Hilite.js +64 -64
  143. package/lib/cjs/Hilite.js.map +1 -1
  144. package/lib/cjs/IModel.d.ts +359 -359
  145. package/lib/cjs/IModel.js +347 -347
  146. package/lib/cjs/IModel.js.map +1 -1
  147. package/lib/cjs/IModelError.d.ts +36 -36
  148. package/lib/cjs/IModelError.js +72 -72
  149. package/lib/cjs/IModelError.js.map +1 -1
  150. package/lib/cjs/IModelVersion.d.ts +68 -68
  151. package/lib/cjs/IModelVersion.js +79 -79
  152. package/lib/cjs/IModelVersion.js.map +1 -1
  153. package/lib/cjs/Image.d.ts +86 -86
  154. package/lib/cjs/Image.js +128 -128
  155. package/lib/cjs/Image.js.map +1 -1
  156. package/lib/cjs/IpcAppProps.d.ts +124 -124
  157. package/lib/cjs/IpcAppProps.js +18 -18
  158. package/lib/cjs/IpcAppProps.js.map +1 -1
  159. package/lib/cjs/LightSettings.d.ts +224 -224
  160. package/lib/cjs/LightSettings.js +309 -309
  161. package/lib/cjs/LightSettings.js.map +1 -1
  162. package/lib/cjs/LinePixels.d.ts +34 -34
  163. package/lib/cjs/LinePixels.js +42 -42
  164. package/lib/cjs/LinePixels.js.map +1 -1
  165. package/lib/cjs/Localization.d.ts +111 -111
  166. package/lib/cjs/Localization.js +26 -26
  167. package/lib/cjs/Localization.js.map +1 -1
  168. package/lib/cjs/MapImagerySettings.d.ts +62 -62
  169. package/lib/cjs/MapImagerySettings.js +80 -80
  170. package/lib/cjs/MapImagerySettings.js.map +1 -1
  171. package/lib/cjs/MapLayerSettings.d.ts +272 -272
  172. package/lib/cjs/MapLayerSettings.js +411 -411
  173. package/lib/cjs/MapLayerSettings.js.map +1 -1
  174. package/lib/cjs/MassProperties.d.ts +64 -64
  175. package/lib/cjs/MassProperties.js +23 -23
  176. package/lib/cjs/MassProperties.js.map +1 -1
  177. package/lib/cjs/MaterialProps.d.ts +118 -118
  178. package/lib/cjs/MaterialProps.js +23 -23
  179. package/lib/cjs/MaterialProps.js.map +1 -1
  180. package/lib/cjs/ModelClipGroup.d.ts +67 -67
  181. package/lib/cjs/ModelClipGroup.js +98 -98
  182. package/lib/cjs/ModelClipGroup.js.map +1 -1
  183. package/lib/cjs/ModelGeometryChanges.d.ts +107 -107
  184. package/lib/cjs/ModelGeometryChanges.js +83 -83
  185. package/lib/cjs/ModelGeometryChanges.js.map +1 -1
  186. package/lib/cjs/ModelProps.d.ts +67 -67
  187. package/lib/cjs/ModelProps.js +9 -9
  188. package/lib/cjs/ModelProps.js.map +1 -1
  189. package/lib/cjs/NativeAppProps.d.ts +122 -122
  190. package/lib/cjs/NativeAppProps.js +30 -30
  191. package/lib/cjs/NativeAppProps.js.map +1 -1
  192. package/lib/cjs/OctEncodedNormal.d.ts +33 -33
  193. package/lib/cjs/OctEncodedNormal.js +98 -98
  194. package/lib/cjs/OctEncodedNormal.js.map +1 -1
  195. package/lib/cjs/PlanProjectionSettings.d.ts +47 -47
  196. package/lib/cjs/PlanProjectionSettings.js +63 -63
  197. package/lib/cjs/PlanProjectionSettings.js.map +1 -1
  198. package/lib/cjs/PlanarClipMask.d.ts +177 -177
  199. package/lib/cjs/PlanarClipMask.js +136 -136
  200. package/lib/cjs/PlanarClipMask.js.map +1 -1
  201. package/lib/cjs/QPoint.d.ts +479 -479
  202. package/lib/cjs/QPoint.js +826 -826
  203. package/lib/cjs/QPoint.js.map +1 -1
  204. package/lib/cjs/RealityDataAccessProps.d.ts +41 -41
  205. package/lib/cjs/RealityDataAccessProps.js +19 -19
  206. package/lib/cjs/RealityDataAccessProps.js.map +1 -1
  207. package/lib/cjs/Render.d.ts +89 -89
  208. package/lib/cjs/Render.js +177 -177
  209. package/lib/cjs/Render.js.map +1 -1
  210. package/lib/cjs/RenderMaterial.d.ts +58 -58
  211. package/lib/cjs/RenderMaterial.js +76 -76
  212. package/lib/cjs/RenderMaterial.js.map +1 -1
  213. package/lib/cjs/RenderSchedule.d.ts +541 -541
  214. package/lib/cjs/RenderSchedule.js +1000 -1000
  215. package/lib/cjs/RenderTexture.d.ts +70 -70
  216. package/lib/cjs/RenderTexture.js +59 -59
  217. package/lib/cjs/RenderTexture.js.map +1 -1
  218. package/lib/cjs/RgbColor.d.ts +39 -39
  219. package/lib/cjs/RgbColor.js +67 -67
  220. package/lib/cjs/RgbColor.js.map +1 -1
  221. package/lib/cjs/RpcInterface.d.ts +33 -33
  222. package/lib/cjs/RpcInterface.js +137 -137
  223. package/lib/cjs/RpcInterface.js.map +1 -1
  224. package/lib/cjs/RpcManager.d.ts +40 -40
  225. package/lib/cjs/RpcManager.js +55 -55
  226. package/lib/cjs/RpcManager.js.map +1 -1
  227. package/lib/cjs/SessionProps.d.ts +16 -16
  228. package/lib/cjs/SessionProps.js +9 -9
  229. package/lib/cjs/SessionProps.js.map +1 -1
  230. package/lib/cjs/SkyBox.d.ts +215 -215
  231. package/lib/cjs/SkyBox.js +210 -210
  232. package/lib/cjs/SkyBox.js.map +1 -1
  233. package/lib/cjs/Snapping.d.ts +49 -49
  234. package/lib/cjs/Snapping.js +9 -9
  235. package/lib/cjs/Snapping.js.map +1 -1
  236. package/lib/cjs/SolarCalculate.d.ts +27 -27
  237. package/lib/cjs/SolarCalculate.js +211 -211
  238. package/lib/cjs/SolarCalculate.js.map +1 -1
  239. package/lib/cjs/SolarShadows.d.ts +35 -35
  240. package/lib/cjs/SolarShadows.js +62 -62
  241. package/lib/cjs/SolarShadows.js.map +1 -1
  242. package/lib/cjs/SpatialClassification.d.ts +208 -208
  243. package/lib/cjs/SpatialClassification.js +340 -340
  244. package/lib/cjs/SpatialClassification.js.map +1 -1
  245. package/lib/cjs/SubCategoryAppearance.d.ts +91 -91
  246. package/lib/cjs/SubCategoryAppearance.js +96 -96
  247. package/lib/cjs/SubCategoryAppearance.js.map +1 -1
  248. package/lib/cjs/SubCategoryOverride.d.ts +46 -46
  249. package/lib/cjs/SubCategoryOverride.js +104 -104
  250. package/lib/cjs/SubCategoryOverride.js.map +1 -1
  251. package/lib/cjs/TerrainSettings.d.ts +82 -82
  252. package/lib/cjs/TerrainSettings.js +102 -102
  253. package/lib/cjs/TerrainSettings.js.map +1 -1
  254. package/lib/cjs/TextureMapping.d.ts +101 -101
  255. package/lib/cjs/TextureMapping.js +174 -174
  256. package/lib/cjs/TextureMapping.js.map +1 -1
  257. package/lib/cjs/TextureProps.d.ts +65 -65
  258. package/lib/cjs/TextureProps.js +28 -28
  259. package/lib/cjs/TextureProps.js.map +1 -1
  260. package/lib/cjs/ThematicDisplay.d.ts +230 -230
  261. package/lib/cjs/ThematicDisplay.js +344 -344
  262. package/lib/cjs/ThematicDisplay.js.map +1 -1
  263. package/lib/cjs/Thumbnail.d.ts +26 -26
  264. package/lib/cjs/Thumbnail.js +9 -9
  265. package/lib/cjs/Thumbnail.js.map +1 -1
  266. package/lib/cjs/TileProps.d.ts +82 -82
  267. package/lib/cjs/TileProps.js +29 -29
  268. package/lib/cjs/TileProps.js.map +1 -1
  269. package/lib/cjs/Tween.d.ts +191 -191
  270. package/lib/cjs/Tween.js +570 -570
  271. package/lib/cjs/Tween.js.map +1 -1
  272. package/lib/cjs/TxnAction.d.ts +21 -21
  273. package/lib/cjs/TxnAction.js +29 -29
  274. package/lib/cjs/TxnAction.js.map +1 -1
  275. package/lib/cjs/ViewDetails.d.ts +125 -125
  276. package/lib/cjs/ViewDetails.js +158 -158
  277. package/lib/cjs/ViewDetails.js.map +1 -1
  278. package/lib/cjs/ViewFlags.d.ts +291 -291
  279. package/lib/cjs/ViewFlags.js +368 -368
  280. package/lib/cjs/ViewFlags.js.map +1 -1
  281. package/lib/cjs/ViewProps.d.ts +205 -205
  282. package/lib/cjs/ViewProps.js +9 -9
  283. package/lib/cjs/ViewProps.js.map +1 -1
  284. package/lib/cjs/WhiteOnWhiteReversalSettings.d.ts +36 -36
  285. package/lib/cjs/WhiteOnWhiteReversalSettings.js +37 -37
  286. package/lib/cjs/WhiteOnWhiteReversalSettings.js.map +1 -1
  287. package/lib/cjs/core-common.d.ts +241 -241
  288. package/lib/cjs/core-common.js +257 -257
  289. package/lib/cjs/core-common.js.map +1 -1
  290. package/lib/cjs/domains/FunctionalElementProps.d.ts +11 -11
  291. package/lib/cjs/domains/FunctionalElementProps.js +9 -9
  292. package/lib/cjs/domains/FunctionalElementProps.js.map +1 -1
  293. package/lib/cjs/domains/GenericElementProps.d.ts +18 -18
  294. package/lib/cjs/domains/GenericElementProps.js +9 -9
  295. package/lib/cjs/domains/GenericElementProps.js.map +1 -1
  296. package/lib/cjs/geometry/AdditionalTransform.d.ts +84 -84
  297. package/lib/cjs/geometry/AdditionalTransform.js +85 -85
  298. package/lib/cjs/geometry/AdditionalTransform.js.map +1 -1
  299. package/lib/cjs/geometry/AreaPattern.d.ts +82 -82
  300. package/lib/cjs/geometry/AreaPattern.js +204 -204
  301. package/lib/cjs/geometry/AreaPattern.js.map +1 -1
  302. package/lib/cjs/geometry/BoundingSphere.d.ts +14 -14
  303. package/lib/cjs/geometry/BoundingSphere.js +30 -30
  304. package/lib/cjs/geometry/BoundingSphere.js.map +1 -1
  305. package/lib/cjs/geometry/Cartographic.d.ts +137 -137
  306. package/lib/cjs/geometry/Cartographic.js +345 -345
  307. package/lib/cjs/geometry/Cartographic.js.map +1 -1
  308. package/lib/cjs/geometry/CoordinateReferenceSystem.d.ts +269 -269
  309. package/lib/cjs/geometry/CoordinateReferenceSystem.js +261 -261
  310. package/lib/cjs/geometry/CoordinateReferenceSystem.js.map +1 -1
  311. package/lib/cjs/geometry/ElementGeometry.d.ts +402 -402
  312. package/lib/cjs/geometry/ElementGeometry.js +1719 -1719
  313. package/lib/cjs/geometry/ElementGeometry.js.map +1 -1
  314. package/lib/cjs/geometry/ElementGeometryFB.d.ts +2372 -2372
  315. package/lib/cjs/geometry/ElementGeometryFB.js +3814 -3814
  316. package/lib/cjs/geometry/ElementGeometryFB.js.map +1 -1
  317. package/lib/cjs/geometry/FrustumPlanes.d.ts +32 -32
  318. package/lib/cjs/geometry/FrustumPlanes.js +132 -132
  319. package/lib/cjs/geometry/FrustumPlanes.js.map +1 -1
  320. package/lib/cjs/geometry/GeodeticDatum.d.ts +409 -409
  321. package/lib/cjs/geometry/GeodeticDatum.js +401 -401
  322. package/lib/cjs/geometry/GeodeticDatum.js.map +1 -1
  323. package/lib/cjs/geometry/GeodeticEllipsoid.d.ts +72 -72
  324. package/lib/cjs/geometry/GeodeticEllipsoid.js +72 -72
  325. package/lib/cjs/geometry/GeodeticEllipsoid.js.map +1 -1
  326. package/lib/cjs/geometry/GeometryStream.d.ts +347 -347
  327. package/lib/cjs/geometry/GeometryStream.js +469 -469
  328. package/lib/cjs/geometry/GeometryStream.js.map +1 -1
  329. package/lib/cjs/geometry/ImageGraphic.d.ts +74 -74
  330. package/lib/cjs/geometry/ImageGraphic.js +98 -98
  331. package/lib/cjs/geometry/ImageGraphic.js.map +1 -1
  332. package/lib/cjs/geometry/LineStyle.d.ts +71 -71
  333. package/lib/cjs/geometry/LineStyle.js +129 -129
  334. package/lib/cjs/geometry/LineStyle.js.map +1 -1
  335. package/lib/cjs/geometry/Placement.d.ts +95 -95
  336. package/lib/cjs/geometry/Placement.js +131 -131
  337. package/lib/cjs/geometry/Placement.js.map +1 -1
  338. package/lib/cjs/geometry/Projection.d.ts +251 -251
  339. package/lib/cjs/geometry/Projection.js +198 -198
  340. package/lib/cjs/geometry/Projection.js.map +1 -1
  341. package/lib/cjs/geometry/TextString.d.ts +55 -55
  342. package/lib/cjs/geometry/TextString.js +65 -65
  343. package/lib/cjs/geometry/TextString.js.map +1 -1
  344. package/lib/cjs/ipc/IpcSession.d.ts +23 -23
  345. package/lib/cjs/ipc/IpcSession.js +27 -27
  346. package/lib/cjs/ipc/IpcSession.js.map +1 -1
  347. package/lib/cjs/ipc/IpcSocket.d.ts +96 -96
  348. package/lib/cjs/ipc/IpcSocket.js +16 -16
  349. package/lib/cjs/ipc/IpcSocket.js.map +1 -1
  350. package/lib/cjs/ipc/IpcWebSocket.d.ts +61 -61
  351. package/lib/cjs/ipc/IpcWebSocket.js +151 -151
  352. package/lib/cjs/ipc/IpcWebSocket.js.map +1 -1
  353. package/lib/cjs/ipc/IpcWebSocketTransport.d.ts +15 -15
  354. package/lib/cjs/ipc/IpcWebSocketTransport.js +158 -158
  355. package/lib/cjs/ipc/IpcWebSocketTransport.js.map +1 -1
  356. package/lib/cjs/rpc/DevToolsRpcInterface.d.ts +32 -32
  357. package/lib/cjs/rpc/DevToolsRpcInterface.js +48 -48
  358. package/lib/cjs/rpc/DevToolsRpcInterface.js.map +1 -1
  359. package/lib/cjs/rpc/IModelReadRpcInterface.d.ts +97 -97
  360. package/lib/cjs/rpc/IModelReadRpcInterface.js +119 -119
  361. package/lib/cjs/rpc/IModelReadRpcInterface.js.map +1 -1
  362. package/lib/cjs/rpc/IModelTileRpcInterface.d.ts +61 -61
  363. package/lib/cjs/rpc/IModelTileRpcInterface.js +96 -96
  364. package/lib/cjs/rpc/IModelTileRpcInterface.js.map +1 -1
  365. package/lib/cjs/rpc/SnapshotIModelRpcInterface.d.ts +23 -23
  366. package/lib/cjs/rpc/SnapshotIModelRpcInterface.js +48 -48
  367. package/lib/cjs/rpc/SnapshotIModelRpcInterface.js.map +1 -1
  368. package/lib/cjs/rpc/TestRpcManager.d.ts +20 -20
  369. package/lib/cjs/rpc/TestRpcManager.js +39 -39
  370. package/lib/cjs/rpc/TestRpcManager.js.map +1 -1
  371. package/lib/cjs/rpc/WipRpcInterface.d.ts +29 -29
  372. package/lib/cjs/rpc/WipRpcInterface.js +40 -40
  373. package/lib/cjs/rpc/WipRpcInterface.js.map +1 -1
  374. package/lib/cjs/rpc/core/RpcConfiguration.d.ts +111 -111
  375. package/lib/cjs/rpc/core/RpcConfiguration.js +192 -192
  376. package/lib/cjs/rpc/core/RpcConfiguration.js.map +1 -1
  377. package/lib/cjs/rpc/core/RpcConstants.d.ts +85 -85
  378. package/lib/cjs/rpc/core/RpcConstants.js +103 -103
  379. package/lib/cjs/rpc/core/RpcConstants.js.map +1 -1
  380. package/lib/cjs/rpc/core/RpcControl.d.ts +52 -52
  381. package/lib/cjs/rpc/core/RpcControl.js +149 -149
  382. package/lib/cjs/rpc/core/RpcControl.js.map +1 -1
  383. package/lib/cjs/rpc/core/RpcInvocation.d.ts +89 -89
  384. package/lib/cjs/rpc/core/RpcInvocation.js +257 -257
  385. package/lib/cjs/rpc/core/RpcInvocation.js.map +1 -1
  386. package/lib/cjs/rpc/core/RpcMarshaling.d.ts +36 -36
  387. package/lib/cjs/rpc/core/RpcMarshaling.js +153 -153
  388. package/lib/cjs/rpc/core/RpcMarshaling.js.map +1 -1
  389. package/lib/cjs/rpc/core/RpcOperation.d.ts +67 -67
  390. package/lib/cjs/rpc/core/RpcOperation.js +133 -133
  391. package/lib/cjs/rpc/core/RpcOperation.js.map +1 -1
  392. package/lib/cjs/rpc/core/RpcPendingQueue.d.ts +21 -21
  393. package/lib/cjs/rpc/core/RpcPendingQueue.js +94 -94
  394. package/lib/cjs/rpc/core/RpcPendingQueue.js.map +1 -1
  395. package/lib/cjs/rpc/core/RpcProtocol.d.ts +132 -132
  396. package/lib/cjs/rpc/core/RpcProtocol.js +127 -127
  397. package/lib/cjs/rpc/core/RpcProtocol.js.map +1 -1
  398. package/lib/cjs/rpc/core/RpcPush.d.ts +68 -68
  399. package/lib/cjs/rpc/core/RpcPush.js +127 -127
  400. package/lib/cjs/rpc/core/RpcPush.js.map +1 -1
  401. package/lib/cjs/rpc/core/RpcRegistry.d.ts +48 -48
  402. package/lib/cjs/rpc/core/RpcRegistry.js +198 -198
  403. package/lib/cjs/rpc/core/RpcRegistry.js.map +1 -1
  404. package/lib/cjs/rpc/core/RpcRequest.d.ts +186 -186
  405. package/lib/cjs/rpc/core/RpcRequest.js +477 -477
  406. package/lib/cjs/rpc/core/RpcRequest.js.map +1 -1
  407. package/lib/cjs/rpc/core/RpcRequestContext.d.ts +14 -14
  408. package/lib/cjs/rpc/core/RpcRequestContext.js +2 -2
  409. package/lib/cjs/rpc/core/RpcRequestContext.js.map +1 -1
  410. package/lib/cjs/rpc/core/RpcRoutingToken.d.ts +12 -12
  411. package/lib/cjs/rpc/core/RpcRoutingToken.js +23 -23
  412. package/lib/cjs/rpc/core/RpcRoutingToken.js.map +1 -1
  413. package/lib/cjs/rpc/core/RpcSessionInvocation.d.ts +10 -10
  414. package/lib/cjs/rpc/core/RpcSessionInvocation.js +59 -59
  415. package/lib/cjs/rpc/core/RpcSessionInvocation.js.map +1 -1
  416. package/lib/cjs/rpc/web/BentleyCloudRpcManager.d.ts +46 -46
  417. package/lib/cjs/rpc/web/BentleyCloudRpcManager.js +73 -73
  418. package/lib/cjs/rpc/web/BentleyCloudRpcManager.js.map +1 -1
  419. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.d.ts +33 -33
  420. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.js +142 -142
  421. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.js.map +1 -1
  422. package/lib/cjs/rpc/web/OpenAPI.d.ts +139 -139
  423. package/lib/cjs/rpc/web/OpenAPI.js +60 -60
  424. package/lib/cjs/rpc/web/OpenAPI.js.map +1 -1
  425. package/lib/cjs/rpc/web/RpcMultipart.d.ts +31 -31
  426. package/lib/cjs/rpc/web/RpcMultipart.js +45 -45
  427. package/lib/cjs/rpc/web/RpcMultipart.js.map +1 -1
  428. package/lib/cjs/rpc/web/WebAppRpcLogging.d.ts +17 -17
  429. package/lib/cjs/rpc/web/WebAppRpcLogging.js +140 -140
  430. package/lib/cjs/rpc/web/WebAppRpcLogging.js.map +1 -1
  431. package/lib/cjs/rpc/web/WebAppRpcProtocol.d.ts +86 -86
  432. package/lib/cjs/rpc/web/WebAppRpcProtocol.js +116 -116
  433. package/lib/cjs/rpc/web/WebAppRpcProtocol.js.map +1 -1
  434. package/lib/cjs/rpc/web/WebAppRpcRequest.d.ts +71 -71
  435. package/lib/cjs/rpc/web/WebAppRpcRequest.js +374 -374
  436. package/lib/cjs/rpc/web/WebAppRpcRequest.js.map +1 -1
  437. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.d.ts +33 -33
  438. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.js +359 -359
  439. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.js.map +1 -1
  440. package/lib/cjs/tile/B3dmTileIO.d.ts +19 -19
  441. package/lib/cjs/tile/B3dmTileIO.js +66 -66
  442. package/lib/cjs/tile/B3dmTileIO.js.map +1 -1
  443. package/lib/cjs/tile/CompositeTileIO.d.ts +15 -15
  444. package/lib/cjs/tile/CompositeTileIO.js +26 -26
  445. package/lib/cjs/tile/CompositeTileIO.js.map +1 -1
  446. package/lib/cjs/tile/ElementGraphics.d.ts +134 -134
  447. package/lib/cjs/tile/ElementGraphics.js +9 -9
  448. package/lib/cjs/tile/ElementGraphics.js.map +1 -1
  449. package/lib/cjs/tile/GltfTileIO.d.ts +45 -45
  450. package/lib/cjs/tile/GltfTileIO.js +109 -109
  451. package/lib/cjs/tile/GltfTileIO.js.map +1 -1
  452. package/lib/cjs/tile/I3dmTileIO.d.ts +20 -20
  453. package/lib/cjs/tile/I3dmTileIO.js +40 -40
  454. package/lib/cjs/tile/I3dmTileIO.js.map +1 -1
  455. package/lib/cjs/tile/IModelTileIO.d.ts +75 -75
  456. package/lib/cjs/tile/IModelTileIO.js +95 -95
  457. package/lib/cjs/tile/IModelTileIO.js.map +1 -1
  458. package/lib/cjs/tile/PntsTileIO.d.ts +17 -17
  459. package/lib/cjs/tile/PntsTileIO.js +26 -26
  460. package/lib/cjs/tile/PntsTileIO.js.map +1 -1
  461. package/lib/cjs/tile/TileIO.d.ts +66 -66
  462. package/lib/cjs/tile/TileIO.js +118 -118
  463. package/lib/cjs/tile/TileIO.js.map +1 -1
  464. package/lib/cjs/tile/TileMetadata.d.ts +228 -228
  465. package/lib/cjs/tile/TileMetadata.js +676 -676
  466. package/lib/cjs/tile/TileMetadata.js.map +1 -1
  467. package/lib/esm/AmbientOcclusion.d.ts +49 -49
  468. package/lib/esm/AmbientOcclusion.js +52 -52
  469. package/lib/esm/AmbientOcclusion.js.map +1 -1
  470. package/lib/esm/AnalysisStyle.d.ts +134 -134
  471. package/lib/esm/AnalysisStyle.js +159 -159
  472. package/lib/esm/AnalysisStyle.js.map +1 -1
  473. package/lib/esm/AuthorizationClient.d.ts +11 -11
  474. package/lib/esm/AuthorizationClient.js +8 -8
  475. package/lib/esm/AuthorizationClient.js.map +1 -1
  476. package/lib/esm/BackgroundMapProvider.d.ts +51 -51
  477. package/lib/esm/BackgroundMapProvider.js +64 -64
  478. package/lib/esm/BackgroundMapProvider.js.map +1 -1
  479. package/lib/esm/BackgroundMapSettings.d.ts +136 -136
  480. package/lib/esm/BackgroundMapSettings.js +152 -152
  481. package/lib/esm/BackgroundMapSettings.js.map +1 -1
  482. package/lib/esm/Base64EncodedString.d.ts +30 -30
  483. package/lib/esm/Base64EncodedString.js +53 -53
  484. package/lib/esm/Base64EncodedString.js.map +1 -1
  485. package/lib/esm/BlobReader.d.ts +31 -31
  486. package/lib/esm/BlobReader.js +79 -79
  487. package/lib/esm/BlobReader.js.map +1 -1
  488. package/lib/esm/BriefcaseTypes.d.ts +189 -189
  489. package/lib/esm/BriefcaseTypes.js +92 -92
  490. package/lib/esm/BriefcaseTypes.js.map +1 -1
  491. package/lib/esm/Camera.d.ts +42 -42
  492. package/lib/esm/Camera.js +58 -58
  493. package/lib/esm/Camera.js.map +1 -1
  494. package/lib/esm/ChangedElements.d.ts +83 -83
  495. package/lib/esm/ChangedElements.js +18 -18
  496. package/lib/esm/ChangedElements.js.map +1 -1
  497. package/lib/esm/ChangedEntities.d.ts +45 -45
  498. package/lib/esm/ChangedEntities.js +8 -8
  499. package/lib/esm/ChangedEntities.js.map +1 -1
  500. package/lib/esm/ChangesetProps.d.ts +98 -98
  501. package/lib/esm/ChangesetProps.js +19 -19
  502. package/lib/esm/ChangesetProps.js.map +1 -1
  503. package/lib/esm/ClipStyle.d.ts +89 -89
  504. package/lib/esm/ClipStyle.js +118 -118
  505. package/lib/esm/ClipStyle.js.map +1 -1
  506. package/lib/esm/CloudStorage.d.ts +62 -62
  507. package/lib/esm/CloudStorage.js +109 -109
  508. package/lib/esm/CloudStorage.js.map +1 -1
  509. package/lib/esm/CloudStorageTileCache.d.ts +27 -27
  510. package/lib/esm/CloudStorageTileCache.js +62 -62
  511. package/lib/esm/CloudStorageTileCache.js.map +1 -1
  512. package/lib/esm/Code.d.ts +256 -256
  513. package/lib/esm/Code.js +276 -276
  514. package/lib/esm/Code.js.map +1 -1
  515. package/lib/esm/ColorByName.d.ts +161 -161
  516. package/lib/esm/ColorByName.js +166 -166
  517. package/lib/esm/ColorByName.js.map +1 -1
  518. package/lib/esm/ColorDef.d.ts +208 -208
  519. package/lib/esm/ColorDef.js +567 -567
  520. package/lib/esm/ColorDef.js.map +1 -1
  521. package/lib/esm/CommonLoggerCategory.d.ts +18 -18
  522. package/lib/esm/CommonLoggerCategory.js +23 -23
  523. package/lib/esm/CommonLoggerCategory.js.map +1 -1
  524. package/lib/esm/ConcurrentQuery.d.ts +241 -241
  525. package/lib/esm/ConcurrentQuery.js +373 -373
  526. package/lib/esm/ConcurrentQuery.js.map +1 -1
  527. package/lib/esm/ContextRealityModel.d.ts +255 -255
  528. package/lib/esm/ContextRealityModel.js +320 -320
  529. package/lib/esm/ContextRealityModel.js.map +1 -1
  530. package/lib/esm/DisplayStyleSettings.d.ts +552 -552
  531. package/lib/esm/DisplayStyleSettings.js +946 -946
  532. package/lib/esm/DisplayStyleSettings.js.map +1 -1
  533. package/lib/esm/ECSchemaProps.d.ts +39 -39
  534. package/lib/esm/ECSchemaProps.js +8 -8
  535. package/lib/esm/ECSchemaProps.js.map +1 -1
  536. package/lib/esm/ECSqlReader.d.ts +70 -70
  537. package/lib/esm/ECSqlReader.js +275 -275
  538. package/lib/esm/ECSqlReader.js.map +1 -1
  539. package/lib/esm/ECSqlTypes.d.ts +128 -128
  540. package/lib/esm/ECSqlTypes.js +185 -185
  541. package/lib/esm/ECSqlTypes.js.map +1 -1
  542. package/lib/esm/ElementProps.d.ts +479 -476
  543. package/lib/esm/ElementProps.d.ts.map +1 -1
  544. package/lib/esm/ElementProps.js +92 -92
  545. package/lib/esm/ElementProps.js.map +1 -1
  546. package/lib/esm/EmphasizeElementsProps.d.ts +55 -55
  547. package/lib/esm/EmphasizeElementsProps.js +22 -22
  548. package/lib/esm/EmphasizeElementsProps.js.map +1 -1
  549. package/lib/esm/EntityProps.d.ts +176 -176
  550. package/lib/esm/EntityProps.js +107 -107
  551. package/lib/esm/EntityProps.js.map +1 -1
  552. package/lib/esm/EntityReference.d.ts +51 -51
  553. package/lib/esm/EntityReference.js +52 -52
  554. package/lib/esm/EntityReference.js.map +1 -1
  555. package/lib/esm/Environment.d.ts +61 -61
  556. package/lib/esm/Environment.js +69 -69
  557. package/lib/esm/Environment.js.map +1 -1
  558. package/lib/esm/FeatureGates.d.ts +31 -31
  559. package/lib/esm/FeatureGates.js +51 -51
  560. package/lib/esm/FeatureGates.js.map +1 -1
  561. package/lib/esm/FeatureIndex.d.ts +39 -39
  562. package/lib/esm/FeatureIndex.js +57 -57
  563. package/lib/esm/FeatureIndex.js.map +1 -1
  564. package/lib/esm/FeatureSymbology.d.ts +444 -444
  565. package/lib/esm/FeatureSymbology.js +609 -609
  566. package/lib/esm/FeatureSymbology.js.map +1 -1
  567. package/lib/esm/FeatureTable.d.ts +141 -141
  568. package/lib/esm/FeatureTable.js +272 -272
  569. package/lib/esm/FeatureTable.js.map +1 -1
  570. package/lib/esm/Fonts.d.ts +51 -51
  571. package/lib/esm/Fonts.js +49 -49
  572. package/lib/esm/Fonts.js.map +1 -1
  573. package/lib/esm/Frustum.d.ts +114 -114
  574. package/lib/esm/Frustum.js +288 -288
  575. package/lib/esm/Frustum.js.map +1 -1
  576. package/lib/esm/GeoCoordinateServices.d.ts +119 -119
  577. package/lib/esm/GeoCoordinateServices.js +76 -76
  578. package/lib/esm/GeoCoordinateServices.js.map +1 -1
  579. package/lib/esm/GeometryContainment.d.ts +28 -28
  580. package/lib/esm/GeometryContainment.js +8 -8
  581. package/lib/esm/GeometryContainment.js.map +1 -1
  582. package/lib/esm/GeometryParams.d.ts +130 -130
  583. package/lib/esm/GeometryParams.js +170 -170
  584. package/lib/esm/GeometryParams.js.map +1 -1
  585. package/lib/esm/GeometrySummary.d.ts +45 -45
  586. package/lib/esm/GeometrySummary.js +20 -20
  587. package/lib/esm/GeometrySummary.js.map +1 -1
  588. package/lib/esm/Gradient.d.ts +139 -139
  589. package/lib/esm/Gradient.js +452 -452
  590. package/lib/esm/Gradient.js.map +1 -1
  591. package/lib/esm/GraphicParams.d.ts +58 -58
  592. package/lib/esm/GraphicParams.js +81 -81
  593. package/lib/esm/GraphicParams.js.map +1 -1
  594. package/lib/esm/GroundPlane.d.ts +52 -52
  595. package/lib/esm/GroundPlane.js +60 -60
  596. package/lib/esm/GroundPlane.js.map +1 -1
  597. package/lib/esm/HSLColor.d.ts +20 -20
  598. package/lib/esm/HSLColor.js +28 -28
  599. package/lib/esm/HSLColor.js.map +1 -1
  600. package/lib/esm/HSVColor.d.ts +30 -30
  601. package/lib/esm/HSVColor.js +55 -55
  602. package/lib/esm/HSVColor.js.map +1 -1
  603. package/lib/esm/HiddenLine.d.ts +97 -97
  604. package/lib/esm/HiddenLine.js +159 -159
  605. package/lib/esm/HiddenLine.js.map +1 -1
  606. package/lib/esm/Hilite.d.ts +50 -50
  607. package/lib/esm/Hilite.js +61 -61
  608. package/lib/esm/Hilite.js.map +1 -1
  609. package/lib/esm/IModel.d.ts +359 -359
  610. package/lib/esm/IModel.js +342 -342
  611. package/lib/esm/IModel.js.map +1 -1
  612. package/lib/esm/IModelError.d.ts +36 -36
  613. package/lib/esm/IModelError.js +55 -55
  614. package/lib/esm/IModelError.js.map +1 -1
  615. package/lib/esm/IModelVersion.d.ts +68 -68
  616. package/lib/esm/IModelVersion.js +75 -75
  617. package/lib/esm/IModelVersion.js.map +1 -1
  618. package/lib/esm/Image.d.ts +86 -86
  619. package/lib/esm/Image.js +120 -120
  620. package/lib/esm/Image.js.map +1 -1
  621. package/lib/esm/IpcAppProps.d.ts +124 -124
  622. package/lib/esm/IpcAppProps.js +15 -15
  623. package/lib/esm/IpcAppProps.js.map +1 -1
  624. package/lib/esm/LightSettings.d.ts +224 -224
  625. package/lib/esm/LightSettings.js +301 -301
  626. package/lib/esm/LightSettings.js.map +1 -1
  627. package/lib/esm/LinePixels.d.ts +34 -34
  628. package/lib/esm/LinePixels.js +39 -39
  629. package/lib/esm/LinePixels.js.map +1 -1
  630. package/lib/esm/Localization.d.ts +111 -111
  631. package/lib/esm/Localization.js +22 -22
  632. package/lib/esm/Localization.js.map +1 -1
  633. package/lib/esm/MapImagerySettings.d.ts +62 -62
  634. package/lib/esm/MapImagerySettings.js +76 -76
  635. package/lib/esm/MapImagerySettings.js.map +1 -1
  636. package/lib/esm/MapLayerSettings.d.ts +272 -272
  637. package/lib/esm/MapLayerSettings.js +403 -403
  638. package/lib/esm/MapLayerSettings.js.map +1 -1
  639. package/lib/esm/MassProperties.d.ts +64 -64
  640. package/lib/esm/MassProperties.js +20 -20
  641. package/lib/esm/MassProperties.js.map +1 -1
  642. package/lib/esm/MaterialProps.d.ts +118 -118
  643. package/lib/esm/MaterialProps.js +20 -20
  644. package/lib/esm/MaterialProps.js.map +1 -1
  645. package/lib/esm/ModelClipGroup.d.ts +67 -67
  646. package/lib/esm/ModelClipGroup.js +93 -93
  647. package/lib/esm/ModelClipGroup.js.map +1 -1
  648. package/lib/esm/ModelGeometryChanges.d.ts +107 -107
  649. package/lib/esm/ModelGeometryChanges.js +80 -80
  650. package/lib/esm/ModelGeometryChanges.js.map +1 -1
  651. package/lib/esm/ModelProps.d.ts +67 -67
  652. package/lib/esm/ModelProps.js +8 -8
  653. package/lib/esm/ModelProps.js.map +1 -1
  654. package/lib/esm/NativeAppProps.d.ts +122 -122
  655. package/lib/esm/NativeAppProps.js +27 -27
  656. package/lib/esm/NativeAppProps.js.map +1 -1
  657. package/lib/esm/OctEncodedNormal.d.ts +33 -33
  658. package/lib/esm/OctEncodedNormal.js +93 -93
  659. package/lib/esm/OctEncodedNormal.js.map +1 -1
  660. package/lib/esm/PlanProjectionSettings.d.ts +47 -47
  661. package/lib/esm/PlanProjectionSettings.js +59 -59
  662. package/lib/esm/PlanProjectionSettings.js.map +1 -1
  663. package/lib/esm/PlanarClipMask.d.ts +177 -177
  664. package/lib/esm/PlanarClipMask.js +132 -132
  665. package/lib/esm/PlanarClipMask.js.map +1 -1
  666. package/lib/esm/QPoint.d.ts +479 -479
  667. package/lib/esm/QPoint.js +815 -815
  668. package/lib/esm/QPoint.js.map +1 -1
  669. package/lib/esm/RealityDataAccessProps.d.ts +41 -41
  670. package/lib/esm/RealityDataAccessProps.js +16 -16
  671. package/lib/esm/RealityDataAccessProps.js.map +1 -1
  672. package/lib/esm/Render.d.ts +89 -89
  673. package/lib/esm/Render.js +165 -165
  674. package/lib/esm/Render.js.map +1 -1
  675. package/lib/esm/RenderMaterial.d.ts +58 -58
  676. package/lib/esm/RenderMaterial.js +72 -72
  677. package/lib/esm/RenderMaterial.js.map +1 -1
  678. package/lib/esm/RenderSchedule.d.ts +541 -541
  679. package/lib/esm/RenderSchedule.js +997 -997
  680. package/lib/esm/RenderTexture.d.ts +70 -70
  681. package/lib/esm/RenderTexture.js +55 -55
  682. package/lib/esm/RenderTexture.js.map +1 -1
  683. package/lib/esm/RgbColor.d.ts +39 -39
  684. package/lib/esm/RgbColor.js +63 -63
  685. package/lib/esm/RgbColor.js.map +1 -1
  686. package/lib/esm/RpcInterface.d.ts +33 -33
  687. package/lib/esm/RpcInterface.js +133 -133
  688. package/lib/esm/RpcInterface.js.map +1 -1
  689. package/lib/esm/RpcManager.d.ts +40 -40
  690. package/lib/esm/RpcManager.js +51 -51
  691. package/lib/esm/RpcManager.js.map +1 -1
  692. package/lib/esm/SessionProps.d.ts +16 -16
  693. package/lib/esm/SessionProps.js +8 -8
  694. package/lib/esm/SessionProps.js.map +1 -1
  695. package/lib/esm/SkyBox.d.ts +215 -215
  696. package/lib/esm/SkyBox.js +203 -203
  697. package/lib/esm/SkyBox.js.map +1 -1
  698. package/lib/esm/Snapping.d.ts +49 -49
  699. package/lib/esm/Snapping.js +8 -8
  700. package/lib/esm/Snapping.js.map +1 -1
  701. package/lib/esm/SolarCalculate.d.ts +27 -27
  702. package/lib/esm/SolarCalculate.js +204 -204
  703. package/lib/esm/SolarCalculate.js.map +1 -1
  704. package/lib/esm/SolarShadows.d.ts +35 -35
  705. package/lib/esm/SolarShadows.js +58 -58
  706. package/lib/esm/SolarShadows.js.map +1 -1
  707. package/lib/esm/SpatialClassification.d.ts +208 -208
  708. package/lib/esm/SpatialClassification.js +334 -334
  709. package/lib/esm/SpatialClassification.js.map +1 -1
  710. package/lib/esm/SubCategoryAppearance.d.ts +91 -91
  711. package/lib/esm/SubCategoryAppearance.js +92 -92
  712. package/lib/esm/SubCategoryAppearance.js.map +1 -1
  713. package/lib/esm/SubCategoryOverride.d.ts +46 -46
  714. package/lib/esm/SubCategoryOverride.js +100 -100
  715. package/lib/esm/SubCategoryOverride.js.map +1 -1
  716. package/lib/esm/TerrainSettings.d.ts +82 -82
  717. package/lib/esm/TerrainSettings.js +98 -98
  718. package/lib/esm/TerrainSettings.js.map +1 -1
  719. package/lib/esm/TextureMapping.d.ts +101 -101
  720. package/lib/esm/TextureMapping.js +170 -170
  721. package/lib/esm/TextureMapping.js.map +1 -1
  722. package/lib/esm/TextureProps.d.ts +65 -65
  723. package/lib/esm/TextureProps.js +25 -25
  724. package/lib/esm/TextureProps.js.map +1 -1
  725. package/lib/esm/ThematicDisplay.d.ts +230 -230
  726. package/lib/esm/ThematicDisplay.js +337 -337
  727. package/lib/esm/ThematicDisplay.js.map +1 -1
  728. package/lib/esm/Thumbnail.d.ts +26 -26
  729. package/lib/esm/Thumbnail.js +8 -8
  730. package/lib/esm/Thumbnail.js.map +1 -1
  731. package/lib/esm/TileProps.d.ts +82 -82
  732. package/lib/esm/TileProps.js +25 -25
  733. package/lib/esm/TileProps.js.map +1 -1
  734. package/lib/esm/Tween.d.ts +191 -191
  735. package/lib/esm/Tween.js +565 -565
  736. package/lib/esm/Tween.js.map +1 -1
  737. package/lib/esm/TxnAction.d.ts +21 -21
  738. package/lib/esm/TxnAction.js +26 -26
  739. package/lib/esm/TxnAction.js.map +1 -1
  740. package/lib/esm/ViewDetails.d.ts +125 -125
  741. package/lib/esm/ViewDetails.js +153 -153
  742. package/lib/esm/ViewDetails.js.map +1 -1
  743. package/lib/esm/ViewFlags.d.ts +291 -291
  744. package/lib/esm/ViewFlags.js +364 -364
  745. package/lib/esm/ViewFlags.js.map +1 -1
  746. package/lib/esm/ViewProps.d.ts +205 -205
  747. package/lib/esm/ViewProps.js +8 -8
  748. package/lib/esm/ViewProps.js.map +1 -1
  749. package/lib/esm/WhiteOnWhiteReversalSettings.d.ts +36 -36
  750. package/lib/esm/WhiteOnWhiteReversalSettings.js +33 -33
  751. package/lib/esm/WhiteOnWhiteReversalSettings.js.map +1 -1
  752. package/lib/esm/core-common.d.ts +241 -241
  753. package/lib/esm/core-common.js +245 -245
  754. package/lib/esm/core-common.js.map +1 -1
  755. package/lib/esm/domains/FunctionalElementProps.d.ts +11 -11
  756. package/lib/esm/domains/FunctionalElementProps.js +8 -8
  757. package/lib/esm/domains/FunctionalElementProps.js.map +1 -1
  758. package/lib/esm/domains/GenericElementProps.d.ts +18 -18
  759. package/lib/esm/domains/GenericElementProps.js +8 -8
  760. package/lib/esm/domains/GenericElementProps.js.map +1 -1
  761. package/lib/esm/geometry/AdditionalTransform.d.ts +84 -84
  762. package/lib/esm/geometry/AdditionalTransform.js +80 -80
  763. package/lib/esm/geometry/AdditionalTransform.js.map +1 -1
  764. package/lib/esm/geometry/AreaPattern.d.ts +82 -82
  765. package/lib/esm/geometry/AreaPattern.js +201 -201
  766. package/lib/esm/geometry/AreaPattern.js.map +1 -1
  767. package/lib/esm/geometry/BoundingSphere.d.ts +14 -14
  768. package/lib/esm/geometry/BoundingSphere.js +26 -26
  769. package/lib/esm/geometry/BoundingSphere.js.map +1 -1
  770. package/lib/esm/geometry/Cartographic.d.ts +137 -137
  771. package/lib/esm/geometry/Cartographic.js +340 -340
  772. package/lib/esm/geometry/Cartographic.js.map +1 -1
  773. package/lib/esm/geometry/CoordinateReferenceSystem.d.ts +269 -269
  774. package/lib/esm/geometry/CoordinateReferenceSystem.js +254 -254
  775. package/lib/esm/geometry/CoordinateReferenceSystem.js.map +1 -1
  776. package/lib/esm/geometry/ElementGeometry.d.ts +402 -402
  777. package/lib/esm/geometry/ElementGeometry.js +1716 -1716
  778. package/lib/esm/geometry/ElementGeometry.js.map +1 -1
  779. package/lib/esm/geometry/ElementGeometryFB.d.ts +2372 -2372
  780. package/lib/esm/geometry/ElementGeometryFB.js +3811 -3811
  781. package/lib/esm/geometry/ElementGeometryFB.js.map +1 -1
  782. package/lib/esm/geometry/FrustumPlanes.d.ts +32 -32
  783. package/lib/esm/geometry/FrustumPlanes.js +128 -128
  784. package/lib/esm/geometry/FrustumPlanes.js.map +1 -1
  785. package/lib/esm/geometry/GeodeticDatum.d.ts +409 -409
  786. package/lib/esm/geometry/GeodeticDatum.js +390 -390
  787. package/lib/esm/geometry/GeodeticDatum.js.map +1 -1
  788. package/lib/esm/geometry/GeodeticEllipsoid.d.ts +72 -72
  789. package/lib/esm/geometry/GeodeticEllipsoid.js +68 -68
  790. package/lib/esm/geometry/GeodeticEllipsoid.js.map +1 -1
  791. package/lib/esm/geometry/GeometryStream.d.ts +347 -347
  792. package/lib/esm/geometry/GeometryStream.js +464 -464
  793. package/lib/esm/geometry/GeometryStream.js.map +1 -1
  794. package/lib/esm/geometry/ImageGraphic.d.ts +74 -74
  795. package/lib/esm/geometry/ImageGraphic.js +93 -93
  796. package/lib/esm/geometry/ImageGraphic.js.map +1 -1
  797. package/lib/esm/geometry/LineStyle.d.ts +71 -71
  798. package/lib/esm/geometry/LineStyle.js +126 -126
  799. package/lib/esm/geometry/LineStyle.js.map +1 -1
  800. package/lib/esm/geometry/Placement.d.ts +95 -95
  801. package/lib/esm/geometry/Placement.js +126 -126
  802. package/lib/esm/geometry/Placement.js.map +1 -1
  803. package/lib/esm/geometry/Projection.d.ts +251 -251
  804. package/lib/esm/geometry/Projection.js +192 -192
  805. package/lib/esm/geometry/Projection.js.map +1 -1
  806. package/lib/esm/geometry/TextString.d.ts +55 -55
  807. package/lib/esm/geometry/TextString.js +61 -61
  808. package/lib/esm/geometry/TextString.js.map +1 -1
  809. package/lib/esm/ipc/IpcSession.d.ts +23 -23
  810. package/lib/esm/ipc/IpcSession.js +23 -23
  811. package/lib/esm/ipc/IpcSession.js.map +1 -1
  812. package/lib/esm/ipc/IpcSocket.d.ts +96 -96
  813. package/lib/esm/ipc/IpcSocket.js +12 -12
  814. package/lib/esm/ipc/IpcSocket.js.map +1 -1
  815. package/lib/esm/ipc/IpcWebSocket.d.ts +61 -61
  816. package/lib/esm/ipc/IpcWebSocket.js +145 -145
  817. package/lib/esm/ipc/IpcWebSocket.js.map +1 -1
  818. package/lib/esm/ipc/IpcWebSocketTransport.d.ts +15 -15
  819. package/lib/esm/ipc/IpcWebSocketTransport.js +154 -154
  820. package/lib/esm/ipc/IpcWebSocketTransport.js.map +1 -1
  821. package/lib/esm/rpc/DevToolsRpcInterface.d.ts +32 -32
  822. package/lib/esm/rpc/DevToolsRpcInterface.js +44 -44
  823. package/lib/esm/rpc/DevToolsRpcInterface.js.map +1 -1
  824. package/lib/esm/rpc/IModelReadRpcInterface.d.ts +97 -97
  825. package/lib/esm/rpc/IModelReadRpcInterface.js +114 -114
  826. package/lib/esm/rpc/IModelReadRpcInterface.js.map +1 -1
  827. package/lib/esm/rpc/IModelTileRpcInterface.d.ts +61 -61
  828. package/lib/esm/rpc/IModelTileRpcInterface.js +92 -92
  829. package/lib/esm/rpc/IModelTileRpcInterface.js.map +1 -1
  830. package/lib/esm/rpc/SnapshotIModelRpcInterface.d.ts +23 -23
  831. package/lib/esm/rpc/SnapshotIModelRpcInterface.js +44 -44
  832. package/lib/esm/rpc/SnapshotIModelRpcInterface.js.map +1 -1
  833. package/lib/esm/rpc/TestRpcManager.d.ts +20 -20
  834. package/lib/esm/rpc/TestRpcManager.js +35 -35
  835. package/lib/esm/rpc/TestRpcManager.js.map +1 -1
  836. package/lib/esm/rpc/WipRpcInterface.d.ts +29 -29
  837. package/lib/esm/rpc/WipRpcInterface.js +36 -36
  838. package/lib/esm/rpc/WipRpcInterface.js.map +1 -1
  839. package/lib/esm/rpc/core/RpcConfiguration.d.ts +111 -111
  840. package/lib/esm/rpc/core/RpcConfiguration.js +185 -185
  841. package/lib/esm/rpc/core/RpcConfiguration.js.map +1 -1
  842. package/lib/esm/rpc/core/RpcConstants.d.ts +85 -85
  843. package/lib/esm/rpc/core/RpcConstants.js +100 -100
  844. package/lib/esm/rpc/core/RpcConstants.js.map +1 -1
  845. package/lib/esm/rpc/core/RpcControl.d.ts +52 -52
  846. package/lib/esm/rpc/core/RpcControl.js +142 -142
  847. package/lib/esm/rpc/core/RpcControl.js.map +1 -1
  848. package/lib/esm/rpc/core/RpcInvocation.d.ts +89 -89
  849. package/lib/esm/rpc/core/RpcInvocation.js +253 -253
  850. package/lib/esm/rpc/core/RpcInvocation.js.map +1 -1
  851. package/lib/esm/rpc/core/RpcMarshaling.d.ts +36 -36
  852. package/lib/esm/rpc/core/RpcMarshaling.js +149 -149
  853. package/lib/esm/rpc/core/RpcMarshaling.js.map +1 -1
  854. package/lib/esm/rpc/core/RpcOperation.d.ts +67 -67
  855. package/lib/esm/rpc/core/RpcOperation.js +128 -128
  856. package/lib/esm/rpc/core/RpcOperation.js.map +1 -1
  857. package/lib/esm/rpc/core/RpcPendingQueue.d.ts +21 -21
  858. package/lib/esm/rpc/core/RpcPendingQueue.js +90 -90
  859. package/lib/esm/rpc/core/RpcPendingQueue.js.map +1 -1
  860. package/lib/esm/rpc/core/RpcProtocol.d.ts +132 -132
  861. package/lib/esm/rpc/core/RpcProtocol.js +123 -123
  862. package/lib/esm/rpc/core/RpcProtocol.js.map +1 -1
  863. package/lib/esm/rpc/core/RpcPush.d.ts +68 -68
  864. package/lib/esm/rpc/core/RpcPush.js +119 -119
  865. package/lib/esm/rpc/core/RpcPush.js.map +1 -1
  866. package/lib/esm/rpc/core/RpcRegistry.d.ts +48 -48
  867. package/lib/esm/rpc/core/RpcRegistry.js +194 -194
  868. package/lib/esm/rpc/core/RpcRegistry.js.map +1 -1
  869. package/lib/esm/rpc/core/RpcRequest.d.ts +186 -186
  870. package/lib/esm/rpc/core/RpcRequest.js +472 -472
  871. package/lib/esm/rpc/core/RpcRequest.js.map +1 -1
  872. package/lib/esm/rpc/core/RpcRequestContext.d.ts +14 -14
  873. package/lib/esm/rpc/core/RpcRequestContext.js +1 -1
  874. package/lib/esm/rpc/core/RpcRequestContext.js.map +1 -1
  875. package/lib/esm/rpc/core/RpcRoutingToken.d.ts +12 -12
  876. package/lib/esm/rpc/core/RpcRoutingToken.js +19 -19
  877. package/lib/esm/rpc/core/RpcRoutingToken.js.map +1 -1
  878. package/lib/esm/rpc/core/RpcSessionInvocation.d.ts +10 -10
  879. package/lib/esm/rpc/core/RpcSessionInvocation.js +55 -55
  880. package/lib/esm/rpc/core/RpcSessionInvocation.js.map +1 -1
  881. package/lib/esm/rpc/web/BentleyCloudRpcManager.d.ts +46 -46
  882. package/lib/esm/rpc/web/BentleyCloudRpcManager.js +68 -68
  883. package/lib/esm/rpc/web/BentleyCloudRpcManager.js.map +1 -1
  884. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.d.ts +33 -33
  885. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.js +138 -138
  886. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.js.map +1 -1
  887. package/lib/esm/rpc/web/OpenAPI.d.ts +139 -139
  888. package/lib/esm/rpc/web/OpenAPI.js +56 -56
  889. package/lib/esm/rpc/web/OpenAPI.js.map +1 -1
  890. package/lib/esm/rpc/web/RpcMultipart.d.ts +31 -31
  891. package/lib/esm/rpc/web/RpcMultipart.js +41 -41
  892. package/lib/esm/rpc/web/RpcMultipart.js.map +1 -1
  893. package/lib/esm/rpc/web/WebAppRpcLogging.d.ts +17 -17
  894. package/lib/esm/rpc/web/WebAppRpcLogging.js +136 -136
  895. package/lib/esm/rpc/web/WebAppRpcLogging.js.map +1 -1
  896. package/lib/esm/rpc/web/WebAppRpcProtocol.d.ts +86 -86
  897. package/lib/esm/rpc/web/WebAppRpcProtocol.js +112 -112
  898. package/lib/esm/rpc/web/WebAppRpcProtocol.js.map +1 -1
  899. package/lib/esm/rpc/web/WebAppRpcRequest.d.ts +71 -71
  900. package/lib/esm/rpc/web/WebAppRpcRequest.js +370 -370
  901. package/lib/esm/rpc/web/WebAppRpcRequest.js.map +1 -1
  902. package/lib/esm/rpc/web/multipart/RpcMultipartParser.d.ts +33 -33
  903. package/lib/esm/rpc/web/multipart/RpcMultipartParser.js +355 -355
  904. package/lib/esm/rpc/web/multipart/RpcMultipartParser.js.map +1 -1
  905. package/lib/esm/tile/B3dmTileIO.d.ts +19 -19
  906. package/lib/esm/tile/B3dmTileIO.js +62 -62
  907. package/lib/esm/tile/B3dmTileIO.js.map +1 -1
  908. package/lib/esm/tile/CompositeTileIO.d.ts +15 -15
  909. package/lib/esm/tile/CompositeTileIO.js +22 -22
  910. package/lib/esm/tile/CompositeTileIO.js.map +1 -1
  911. package/lib/esm/tile/ElementGraphics.d.ts +134 -134
  912. package/lib/esm/tile/ElementGraphics.js +8 -8
  913. package/lib/esm/tile/ElementGraphics.js.map +1 -1
  914. package/lib/esm/tile/GltfTileIO.d.ts +45 -45
  915. package/lib/esm/tile/GltfTileIO.js +105 -105
  916. package/lib/esm/tile/GltfTileIO.js.map +1 -1
  917. package/lib/esm/tile/I3dmTileIO.d.ts +20 -20
  918. package/lib/esm/tile/I3dmTileIO.js +36 -36
  919. package/lib/esm/tile/I3dmTileIO.js.map +1 -1
  920. package/lib/esm/tile/IModelTileIO.d.ts +75 -75
  921. package/lib/esm/tile/IModelTileIO.js +90 -90
  922. package/lib/esm/tile/IModelTileIO.js.map +1 -1
  923. package/lib/esm/tile/PntsTileIO.d.ts +17 -17
  924. package/lib/esm/tile/PntsTileIO.js +22 -22
  925. package/lib/esm/tile/PntsTileIO.js.map +1 -1
  926. package/lib/esm/tile/TileIO.d.ts +66 -66
  927. package/lib/esm/tile/TileIO.js +110 -110
  928. package/lib/esm/tile/TileIO.js.map +1 -1
  929. package/lib/esm/tile/TileMetadata.d.ts +228 -228
  930. package/lib/esm/tile/TileMetadata.js +661 -661
  931. package/lib/esm/tile/TileMetadata.js.map +1 -1
  932. 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":["/*---------------------------------------------------------------------------------------------\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
+ {"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,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/cjs/Fonts.js CHANGED
@@ -1,54 +1,54 @@
1
- "use strict";
2
- /*---------------------------------------------------------------------------------------------
3
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
- * See LICENSE.md in the project root for license terms and full copyright notice.
5
- *--------------------------------------------------------------------------------------------*/
6
- /** @packageDocumentation
7
- * @module Symbology
8
- */
9
- Object.defineProperty(exports, "__esModule", { value: true });
10
- exports.FontMap = exports.FontType = void 0;
11
- /** The type of a font.
12
- * @public
13
- * @extensions
14
- */
15
- var FontType;
16
- (function (FontType) {
17
- FontType[FontType["TrueType"] = 1] = "TrueType";
18
- FontType[FontType["Rsc"] = 2] = "Rsc";
19
- FontType[FontType["Shx"] = 3] = "Shx";
20
- })(FontType = exports.FontType || (exports.FontType = {}));
21
- /**
22
- * A FontMap holds the set of font names available in an iModel.
23
- * Within the GeometryStream of an Element, a specific font is referenced by its FontId that is local to the iModel.
24
- * This class maps FontIds to FontProps.
25
- * @note The font map is generally established when the iModel is first created to specify the set of fonts available
26
- * for editors. Adding new entries requires that the schema lock be held.
27
- * @public
28
- */
29
- class FontMap {
30
- constructor(props) {
31
- this.fonts = new Map();
32
- if (undefined !== props)
33
- this.addFonts(props.fonts);
34
- }
35
- addFonts(fonts) {
36
- fonts.forEach((font) => this.fonts.set(font.id, font));
37
- }
38
- toJSON() {
39
- const fonts = [];
40
- this.fonts.forEach((font) => fonts.push(font));
41
- return { fonts };
42
- }
43
- /** look up a font by name or number and return its FontProps */
44
- getFont(arg) {
45
- if (typeof arg === "number")
46
- return this.fonts.get(arg);
47
- for (const font of this.fonts.values())
48
- if (font.name === arg)
49
- return font;
50
- return undefined;
51
- }
52
- }
53
- exports.FontMap = FontMap;
1
+ "use strict";
2
+ /*---------------------------------------------------------------------------------------------
3
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
+ * See LICENSE.md in the project root for license terms and full copyright notice.
5
+ *--------------------------------------------------------------------------------------------*/
6
+ /** @packageDocumentation
7
+ * @module Symbology
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.FontMap = exports.FontType = void 0;
11
+ /** The type of a font.
12
+ * @public
13
+ * @extensions
14
+ */
15
+ var FontType;
16
+ (function (FontType) {
17
+ FontType[FontType["TrueType"] = 1] = "TrueType";
18
+ FontType[FontType["Rsc"] = 2] = "Rsc";
19
+ FontType[FontType["Shx"] = 3] = "Shx";
20
+ })(FontType = exports.FontType || (exports.FontType = {}));
21
+ /**
22
+ * A FontMap holds the set of font names available in an iModel.
23
+ * Within the GeometryStream of an Element, a specific font is referenced by its FontId that is local to the iModel.
24
+ * This class maps FontIds to FontProps.
25
+ * @note The font map is generally established when the iModel is first created to specify the set of fonts available
26
+ * for editors. Adding new entries requires that the schema lock be held.
27
+ * @public
28
+ */
29
+ class FontMap {
30
+ constructor(props) {
31
+ this.fonts = new Map();
32
+ if (undefined !== props)
33
+ this.addFonts(props.fonts);
34
+ }
35
+ addFonts(fonts) {
36
+ fonts.forEach((font) => this.fonts.set(font.id, font));
37
+ }
38
+ toJSON() {
39
+ const fonts = [];
40
+ this.fonts.forEach((font) => fonts.push(font));
41
+ return { fonts };
42
+ }
43
+ /** look up a font by name or number and return its FontProps */
44
+ getFont(arg) {
45
+ if (typeof arg === "number")
46
+ return this.fonts.get(arg);
47
+ for (const font of this.fonts.values())
48
+ if (font.name === arg)
49
+ return font;
50
+ return undefined;
51
+ }
52
+ }
53
+ exports.FontMap = FontMap;
54
54
  //# 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,IAAY,QAA2C;AAAvD,WAAY,QAAQ;IAAG,+CAAY,CAAA;IAAE,qCAAO,CAAA;IAAE,qCAAO,CAAA;AAAC,CAAC,EAA3C,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAAmC;AA0BvD;;;;;;;GAOG;AACH,MAAa,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;AAzBD,0BAyBC","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
+ {"version":3,"file":"Fonts.js","sourceRoot":"","sources":["../../src/Fonts.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH;;;GAGG;AACH,IAAY,QAA2C;AAAvD,WAAY,QAAQ;IAAG,+CAAY,CAAA;IAAE,qCAAO,CAAA;IAAE,qCAAO,CAAA;AAAC,CAAC,EAA3C,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAAmC;AA0BvD;;;;;;;GAOG;AACH,MAAa,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;AAzBD,0BAyBC","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,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