@itwin/core-common 3.5.0-dev.18 → 3.5.0-dev.20

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 (946) hide show
  1. package/CHANGELOG.md +8 -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 +276 -276
  63. package/lib/cjs/ContextRealityModel.js +358 -358
  64. package/lib/cjs/ContextRealityModel.js.map +1 -1
  65. package/lib/cjs/DisplayStyleSettings.d.ts +584 -584
  66. package/lib/cjs/DisplayStyleSettings.js +981 -981
  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 +476 -476
  78. package/lib/cjs/ElementProps.js +99 -99
  79. package/lib/cjs/ElementProps.js.map +1 -1
  80. package/lib/cjs/EmphasizeElementsProps.d.ts +55 -55
  81. package/lib/cjs/EmphasizeElementsProps.js +25 -25
  82. package/lib/cjs/EmphasizeElementsProps.js.map +1 -1
  83. package/lib/cjs/EntityProps.d.ts +176 -176
  84. package/lib/cjs/EntityProps.js +112 -112
  85. package/lib/cjs/EntityProps.js.map +1 -1
  86. package/lib/cjs/EntityReference.d.ts +52 -0
  87. package/lib/cjs/EntityReference.d.ts.map +1 -0
  88. package/lib/cjs/EntityReference.js +57 -0
  89. package/lib/cjs/EntityReference.js.map +1 -0
  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/RealityModelDisplaySettings.d.ts +118 -118
  208. package/lib/cjs/RealityModelDisplaySettings.js +114 -114
  209. package/lib/cjs/RealityModelDisplaySettings.js.map +1 -1
  210. package/lib/cjs/Render.d.ts +89 -89
  211. package/lib/cjs/Render.js +177 -177
  212. package/lib/cjs/Render.js.map +1 -1
  213. package/lib/cjs/RenderMaterial.d.ts +58 -58
  214. package/lib/cjs/RenderMaterial.js +76 -76
  215. package/lib/cjs/RenderMaterial.js.map +1 -1
  216. package/lib/cjs/RenderSchedule.d.ts +541 -540
  217. package/lib/cjs/RenderSchedule.d.ts.map +1 -1
  218. package/lib/cjs/RenderSchedule.js +1000 -1000
  219. package/lib/cjs/RenderSchedule.js.map +1 -1
  220. package/lib/cjs/RenderTexture.d.ts +70 -70
  221. package/lib/cjs/RenderTexture.js +59 -59
  222. package/lib/cjs/RenderTexture.js.map +1 -1
  223. package/lib/cjs/RgbColor.d.ts +47 -47
  224. package/lib/cjs/RgbColor.js +77 -77
  225. package/lib/cjs/RgbColor.js.map +1 -1
  226. package/lib/cjs/RpcInterface.d.ts +33 -33
  227. package/lib/cjs/RpcInterface.js +137 -137
  228. package/lib/cjs/RpcInterface.js.map +1 -1
  229. package/lib/cjs/RpcManager.d.ts +40 -40
  230. package/lib/cjs/RpcManager.js +55 -55
  231. package/lib/cjs/RpcManager.js.map +1 -1
  232. package/lib/cjs/SessionProps.d.ts +16 -16
  233. package/lib/cjs/SessionProps.js +9 -9
  234. package/lib/cjs/SessionProps.js.map +1 -1
  235. package/lib/cjs/SkyBox.d.ts +215 -215
  236. package/lib/cjs/SkyBox.js +210 -210
  237. package/lib/cjs/SkyBox.js.map +1 -1
  238. package/lib/cjs/Snapping.d.ts +49 -49
  239. package/lib/cjs/Snapping.js +9 -9
  240. package/lib/cjs/Snapping.js.map +1 -1
  241. package/lib/cjs/SolarCalculate.d.ts +27 -27
  242. package/lib/cjs/SolarCalculate.js +211 -211
  243. package/lib/cjs/SolarCalculate.js.map +1 -1
  244. package/lib/cjs/SolarShadows.d.ts +35 -35
  245. package/lib/cjs/SolarShadows.js +62 -62
  246. package/lib/cjs/SolarShadows.js.map +1 -1
  247. package/lib/cjs/SpatialClassification.d.ts +208 -208
  248. package/lib/cjs/SpatialClassification.js +340 -340
  249. package/lib/cjs/SpatialClassification.js.map +1 -1
  250. package/lib/cjs/SubCategoryAppearance.d.ts +91 -91
  251. package/lib/cjs/SubCategoryAppearance.js +96 -96
  252. package/lib/cjs/SubCategoryAppearance.js.map +1 -1
  253. package/lib/cjs/SubCategoryOverride.d.ts +46 -46
  254. package/lib/cjs/SubCategoryOverride.js +104 -104
  255. package/lib/cjs/SubCategoryOverride.js.map +1 -1
  256. package/lib/cjs/TerrainSettings.d.ts +82 -82
  257. package/lib/cjs/TerrainSettings.js +102 -102
  258. package/lib/cjs/TerrainSettings.js.map +1 -1
  259. package/lib/cjs/TextureMapping.d.ts +101 -101
  260. package/lib/cjs/TextureMapping.js +174 -174
  261. package/lib/cjs/TextureMapping.js.map +1 -1
  262. package/lib/cjs/TextureProps.d.ts +65 -65
  263. package/lib/cjs/TextureProps.js +28 -28
  264. package/lib/cjs/TextureProps.js.map +1 -1
  265. package/lib/cjs/ThematicDisplay.d.ts +230 -230
  266. package/lib/cjs/ThematicDisplay.js +344 -344
  267. package/lib/cjs/ThematicDisplay.js.map +1 -1
  268. package/lib/cjs/Thumbnail.d.ts +26 -26
  269. package/lib/cjs/Thumbnail.js +9 -9
  270. package/lib/cjs/Thumbnail.js.map +1 -1
  271. package/lib/cjs/TileProps.d.ts +82 -82
  272. package/lib/cjs/TileProps.js +29 -29
  273. package/lib/cjs/TileProps.js.map +1 -1
  274. package/lib/cjs/Tween.d.ts +191 -191
  275. package/lib/cjs/Tween.js +570 -570
  276. package/lib/cjs/Tween.js.map +1 -1
  277. package/lib/cjs/TxnAction.d.ts +21 -21
  278. package/lib/cjs/TxnAction.js +29 -29
  279. package/lib/cjs/TxnAction.js.map +1 -1
  280. package/lib/cjs/ViewDetails.d.ts +125 -125
  281. package/lib/cjs/ViewDetails.js +158 -158
  282. package/lib/cjs/ViewDetails.js.map +1 -1
  283. package/lib/cjs/ViewFlags.d.ts +291 -291
  284. package/lib/cjs/ViewFlags.js +368 -368
  285. package/lib/cjs/ViewFlags.js.map +1 -1
  286. package/lib/cjs/ViewProps.d.ts +205 -205
  287. package/lib/cjs/ViewProps.js +9 -9
  288. package/lib/cjs/ViewProps.js.map +1 -1
  289. package/lib/cjs/WhiteOnWhiteReversalSettings.d.ts +36 -36
  290. package/lib/cjs/WhiteOnWhiteReversalSettings.js +37 -37
  291. package/lib/cjs/WhiteOnWhiteReversalSettings.js.map +1 -1
  292. package/lib/cjs/core-common.d.ts +242 -241
  293. package/lib/cjs/core-common.d.ts.map +1 -1
  294. package/lib/cjs/core-common.js +258 -257
  295. package/lib/cjs/core-common.js.map +1 -1
  296. package/lib/cjs/domains/FunctionalElementProps.d.ts +11 -11
  297. package/lib/cjs/domains/FunctionalElementProps.js +9 -9
  298. package/lib/cjs/domains/FunctionalElementProps.js.map +1 -1
  299. package/lib/cjs/domains/GenericElementProps.d.ts +18 -18
  300. package/lib/cjs/domains/GenericElementProps.js +9 -9
  301. package/lib/cjs/domains/GenericElementProps.js.map +1 -1
  302. package/lib/cjs/geometry/AdditionalTransform.d.ts +84 -84
  303. package/lib/cjs/geometry/AdditionalTransform.js +85 -85
  304. package/lib/cjs/geometry/AdditionalTransform.js.map +1 -1
  305. package/lib/cjs/geometry/AreaPattern.d.ts +82 -82
  306. package/lib/cjs/geometry/AreaPattern.js +204 -204
  307. package/lib/cjs/geometry/AreaPattern.js.map +1 -1
  308. package/lib/cjs/geometry/BoundingSphere.d.ts +14 -14
  309. package/lib/cjs/geometry/BoundingSphere.js +30 -30
  310. package/lib/cjs/geometry/BoundingSphere.js.map +1 -1
  311. package/lib/cjs/geometry/Cartographic.d.ts +137 -137
  312. package/lib/cjs/geometry/Cartographic.js +345 -345
  313. package/lib/cjs/geometry/Cartographic.js.map +1 -1
  314. package/lib/cjs/geometry/CoordinateReferenceSystem.d.ts +269 -269
  315. package/lib/cjs/geometry/CoordinateReferenceSystem.js +261 -261
  316. package/lib/cjs/geometry/CoordinateReferenceSystem.js.map +1 -1
  317. package/lib/cjs/geometry/ElementGeometry.d.ts +402 -402
  318. package/lib/cjs/geometry/ElementGeometry.js +1719 -1719
  319. package/lib/cjs/geometry/ElementGeometry.js.map +1 -1
  320. package/lib/cjs/geometry/ElementGeometryFB.d.ts +2372 -2372
  321. package/lib/cjs/geometry/ElementGeometryFB.js +3814 -3814
  322. package/lib/cjs/geometry/ElementGeometryFB.js.map +1 -1
  323. package/lib/cjs/geometry/FrustumPlanes.d.ts +32 -32
  324. package/lib/cjs/geometry/FrustumPlanes.js +132 -132
  325. package/lib/cjs/geometry/FrustumPlanes.js.map +1 -1
  326. package/lib/cjs/geometry/GeodeticDatum.d.ts +409 -409
  327. package/lib/cjs/geometry/GeodeticDatum.js +401 -401
  328. package/lib/cjs/geometry/GeodeticDatum.js.map +1 -1
  329. package/lib/cjs/geometry/GeodeticEllipsoid.d.ts +72 -72
  330. package/lib/cjs/geometry/GeodeticEllipsoid.js +72 -72
  331. package/lib/cjs/geometry/GeodeticEllipsoid.js.map +1 -1
  332. package/lib/cjs/geometry/GeometryStream.d.ts +347 -347
  333. package/lib/cjs/geometry/GeometryStream.js +469 -469
  334. package/lib/cjs/geometry/GeometryStream.js.map +1 -1
  335. package/lib/cjs/geometry/ImageGraphic.d.ts +74 -74
  336. package/lib/cjs/geometry/ImageGraphic.js +98 -98
  337. package/lib/cjs/geometry/ImageGraphic.js.map +1 -1
  338. package/lib/cjs/geometry/LineStyle.d.ts +71 -71
  339. package/lib/cjs/geometry/LineStyle.js +129 -129
  340. package/lib/cjs/geometry/LineStyle.js.map +1 -1
  341. package/lib/cjs/geometry/Placement.d.ts +95 -95
  342. package/lib/cjs/geometry/Placement.js +131 -131
  343. package/lib/cjs/geometry/Placement.js.map +1 -1
  344. package/lib/cjs/geometry/Projection.d.ts +251 -251
  345. package/lib/cjs/geometry/Projection.js +198 -198
  346. package/lib/cjs/geometry/Projection.js.map +1 -1
  347. package/lib/cjs/geometry/TextString.d.ts +55 -55
  348. package/lib/cjs/geometry/TextString.js +65 -65
  349. package/lib/cjs/geometry/TextString.js.map +1 -1
  350. package/lib/cjs/ipc/IpcSession.d.ts +23 -23
  351. package/lib/cjs/ipc/IpcSession.js +27 -27
  352. package/lib/cjs/ipc/IpcSession.js.map +1 -1
  353. package/lib/cjs/ipc/IpcSocket.d.ts +96 -96
  354. package/lib/cjs/ipc/IpcSocket.js +16 -16
  355. package/lib/cjs/ipc/IpcSocket.js.map +1 -1
  356. package/lib/cjs/ipc/IpcWebSocket.d.ts +61 -61
  357. package/lib/cjs/ipc/IpcWebSocket.js +151 -151
  358. package/lib/cjs/ipc/IpcWebSocket.js.map +1 -1
  359. package/lib/cjs/ipc/IpcWebSocketTransport.d.ts +15 -15
  360. package/lib/cjs/ipc/IpcWebSocketTransport.js +158 -158
  361. package/lib/cjs/ipc/IpcWebSocketTransport.js.map +1 -1
  362. package/lib/cjs/rpc/DevToolsRpcInterface.d.ts +32 -32
  363. package/lib/cjs/rpc/DevToolsRpcInterface.js +48 -48
  364. package/lib/cjs/rpc/DevToolsRpcInterface.js.map +1 -1
  365. package/lib/cjs/rpc/IModelReadRpcInterface.d.ts +75 -75
  366. package/lib/cjs/rpc/IModelReadRpcInterface.js +115 -115
  367. package/lib/cjs/rpc/IModelReadRpcInterface.js.map +1 -1
  368. package/lib/cjs/rpc/IModelTileRpcInterface.d.ts +61 -61
  369. package/lib/cjs/rpc/IModelTileRpcInterface.js +96 -96
  370. package/lib/cjs/rpc/IModelTileRpcInterface.js.map +1 -1
  371. package/lib/cjs/rpc/SnapshotIModelRpcInterface.d.ts +23 -23
  372. package/lib/cjs/rpc/SnapshotIModelRpcInterface.js +48 -48
  373. package/lib/cjs/rpc/SnapshotIModelRpcInterface.js.map +1 -1
  374. package/lib/cjs/rpc/TestRpcManager.d.ts +20 -20
  375. package/lib/cjs/rpc/TestRpcManager.js +39 -39
  376. package/lib/cjs/rpc/TestRpcManager.js.map +1 -1
  377. package/lib/cjs/rpc/WipRpcInterface.d.ts +29 -29
  378. package/lib/cjs/rpc/WipRpcInterface.js +40 -40
  379. package/lib/cjs/rpc/WipRpcInterface.js.map +1 -1
  380. package/lib/cjs/rpc/core/RpcConfiguration.d.ts +111 -111
  381. package/lib/cjs/rpc/core/RpcConfiguration.js +192 -192
  382. package/lib/cjs/rpc/core/RpcConfiguration.js.map +1 -1
  383. package/lib/cjs/rpc/core/RpcConstants.d.ts +85 -85
  384. package/lib/cjs/rpc/core/RpcConstants.js +103 -103
  385. package/lib/cjs/rpc/core/RpcConstants.js.map +1 -1
  386. package/lib/cjs/rpc/core/RpcControl.d.ts +52 -52
  387. package/lib/cjs/rpc/core/RpcControl.js +149 -149
  388. package/lib/cjs/rpc/core/RpcControl.js.map +1 -1
  389. package/lib/cjs/rpc/core/RpcInvocation.d.ts +89 -89
  390. package/lib/cjs/rpc/core/RpcInvocation.js +257 -257
  391. package/lib/cjs/rpc/core/RpcInvocation.js.map +1 -1
  392. package/lib/cjs/rpc/core/RpcMarshaling.d.ts +36 -36
  393. package/lib/cjs/rpc/core/RpcMarshaling.js +153 -153
  394. package/lib/cjs/rpc/core/RpcMarshaling.js.map +1 -1
  395. package/lib/cjs/rpc/core/RpcOperation.d.ts +67 -67
  396. package/lib/cjs/rpc/core/RpcOperation.js +133 -133
  397. package/lib/cjs/rpc/core/RpcOperation.js.map +1 -1
  398. package/lib/cjs/rpc/core/RpcPendingQueue.d.ts +21 -21
  399. package/lib/cjs/rpc/core/RpcPendingQueue.js +94 -94
  400. package/lib/cjs/rpc/core/RpcPendingQueue.js.map +1 -1
  401. package/lib/cjs/rpc/core/RpcProtocol.d.ts +132 -132
  402. package/lib/cjs/rpc/core/RpcProtocol.js +127 -127
  403. package/lib/cjs/rpc/core/RpcProtocol.js.map +1 -1
  404. package/lib/cjs/rpc/core/RpcPush.d.ts +68 -68
  405. package/lib/cjs/rpc/core/RpcPush.js +127 -127
  406. package/lib/cjs/rpc/core/RpcPush.js.map +1 -1
  407. package/lib/cjs/rpc/core/RpcRegistry.d.ts +48 -48
  408. package/lib/cjs/rpc/core/RpcRegistry.js +198 -198
  409. package/lib/cjs/rpc/core/RpcRegistry.js.map +1 -1
  410. package/lib/cjs/rpc/core/RpcRequest.d.ts +186 -186
  411. package/lib/cjs/rpc/core/RpcRequest.js +477 -477
  412. package/lib/cjs/rpc/core/RpcRequest.js.map +1 -1
  413. package/lib/cjs/rpc/core/RpcRequestContext.d.ts +14 -14
  414. package/lib/cjs/rpc/core/RpcRequestContext.js +2 -2
  415. package/lib/cjs/rpc/core/RpcRequestContext.js.map +1 -1
  416. package/lib/cjs/rpc/core/RpcRoutingToken.d.ts +12 -12
  417. package/lib/cjs/rpc/core/RpcRoutingToken.js +23 -23
  418. package/lib/cjs/rpc/core/RpcRoutingToken.js.map +1 -1
  419. package/lib/cjs/rpc/core/RpcSessionInvocation.d.ts +10 -10
  420. package/lib/cjs/rpc/core/RpcSessionInvocation.js +59 -59
  421. package/lib/cjs/rpc/core/RpcSessionInvocation.js.map +1 -1
  422. package/lib/cjs/rpc/web/BentleyCloudRpcManager.d.ts +46 -46
  423. package/lib/cjs/rpc/web/BentleyCloudRpcManager.js +73 -73
  424. package/lib/cjs/rpc/web/BentleyCloudRpcManager.js.map +1 -1
  425. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.d.ts +33 -33
  426. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.js +142 -142
  427. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.js.map +1 -1
  428. package/lib/cjs/rpc/web/OpenAPI.d.ts +139 -139
  429. package/lib/cjs/rpc/web/OpenAPI.js +60 -60
  430. package/lib/cjs/rpc/web/OpenAPI.js.map +1 -1
  431. package/lib/cjs/rpc/web/RpcMultipart.d.ts +31 -31
  432. package/lib/cjs/rpc/web/RpcMultipart.js +45 -45
  433. package/lib/cjs/rpc/web/RpcMultipart.js.map +1 -1
  434. package/lib/cjs/rpc/web/WebAppRpcLogging.d.ts +17 -17
  435. package/lib/cjs/rpc/web/WebAppRpcLogging.js +140 -140
  436. package/lib/cjs/rpc/web/WebAppRpcLogging.js.map +1 -1
  437. package/lib/cjs/rpc/web/WebAppRpcProtocol.d.ts +86 -86
  438. package/lib/cjs/rpc/web/WebAppRpcProtocol.js +116 -116
  439. package/lib/cjs/rpc/web/WebAppRpcProtocol.js.map +1 -1
  440. package/lib/cjs/rpc/web/WebAppRpcRequest.d.ts +71 -71
  441. package/lib/cjs/rpc/web/WebAppRpcRequest.js +374 -374
  442. package/lib/cjs/rpc/web/WebAppRpcRequest.js.map +1 -1
  443. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.d.ts +33 -33
  444. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.js +359 -359
  445. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.js.map +1 -1
  446. package/lib/cjs/tile/B3dmTileIO.d.ts +19 -19
  447. package/lib/cjs/tile/B3dmTileIO.js +66 -66
  448. package/lib/cjs/tile/B3dmTileIO.js.map +1 -1
  449. package/lib/cjs/tile/CompositeTileIO.d.ts +15 -15
  450. package/lib/cjs/tile/CompositeTileIO.js +26 -26
  451. package/lib/cjs/tile/CompositeTileIO.js.map +1 -1
  452. package/lib/cjs/tile/ElementGraphics.d.ts +145 -134
  453. package/lib/cjs/tile/ElementGraphics.d.ts.map +1 -1
  454. package/lib/cjs/tile/ElementGraphics.js +9 -9
  455. package/lib/cjs/tile/ElementGraphics.js.map +1 -1
  456. package/lib/cjs/tile/GltfTileIO.d.ts +45 -45
  457. package/lib/cjs/tile/GltfTileIO.js +109 -109
  458. package/lib/cjs/tile/GltfTileIO.js.map +1 -1
  459. package/lib/cjs/tile/I3dmTileIO.d.ts +20 -20
  460. package/lib/cjs/tile/I3dmTileIO.js +40 -40
  461. package/lib/cjs/tile/I3dmTileIO.js.map +1 -1
  462. package/lib/cjs/tile/IModelTileIO.d.ts +75 -75
  463. package/lib/cjs/tile/IModelTileIO.js +95 -95
  464. package/lib/cjs/tile/IModelTileIO.js.map +1 -1
  465. package/lib/cjs/tile/PntsTileIO.d.ts +17 -17
  466. package/lib/cjs/tile/PntsTileIO.js +26 -26
  467. package/lib/cjs/tile/PntsTileIO.js.map +1 -1
  468. package/lib/cjs/tile/TileIO.d.ts +66 -66
  469. package/lib/cjs/tile/TileIO.js +118 -118
  470. package/lib/cjs/tile/TileIO.js.map +1 -1
  471. package/lib/cjs/tile/TileMetadata.d.ts +228 -228
  472. package/lib/cjs/tile/TileMetadata.js +676 -676
  473. package/lib/cjs/tile/TileMetadata.js.map +1 -1
  474. package/lib/esm/AmbientOcclusion.d.ts +49 -49
  475. package/lib/esm/AmbientOcclusion.js +52 -52
  476. package/lib/esm/AmbientOcclusion.js.map +1 -1
  477. package/lib/esm/AnalysisStyle.d.ts +134 -134
  478. package/lib/esm/AnalysisStyle.js +159 -159
  479. package/lib/esm/AnalysisStyle.js.map +1 -1
  480. package/lib/esm/AuthorizationClient.d.ts +11 -11
  481. package/lib/esm/AuthorizationClient.js +8 -8
  482. package/lib/esm/AuthorizationClient.js.map +1 -1
  483. package/lib/esm/BackgroundMapProvider.d.ts +51 -51
  484. package/lib/esm/BackgroundMapProvider.js +64 -64
  485. package/lib/esm/BackgroundMapProvider.js.map +1 -1
  486. package/lib/esm/BackgroundMapSettings.d.ts +136 -136
  487. package/lib/esm/BackgroundMapSettings.js +152 -152
  488. package/lib/esm/BackgroundMapSettings.js.map +1 -1
  489. package/lib/esm/Base64EncodedString.d.ts +30 -30
  490. package/lib/esm/Base64EncodedString.js +53 -53
  491. package/lib/esm/Base64EncodedString.js.map +1 -1
  492. package/lib/esm/BlobReader.d.ts +31 -31
  493. package/lib/esm/BlobReader.js +79 -79
  494. package/lib/esm/BlobReader.js.map +1 -1
  495. package/lib/esm/BriefcaseTypes.d.ts +189 -189
  496. package/lib/esm/BriefcaseTypes.js +92 -92
  497. package/lib/esm/BriefcaseTypes.js.map +1 -1
  498. package/lib/esm/Camera.d.ts +42 -42
  499. package/lib/esm/Camera.js +58 -58
  500. package/lib/esm/Camera.js.map +1 -1
  501. package/lib/esm/ChangedElements.d.ts +83 -83
  502. package/lib/esm/ChangedElements.js +18 -18
  503. package/lib/esm/ChangedElements.js.map +1 -1
  504. package/lib/esm/ChangedEntities.d.ts +45 -45
  505. package/lib/esm/ChangedEntities.js +8 -8
  506. package/lib/esm/ChangedEntities.js.map +1 -1
  507. package/lib/esm/ChangesetProps.d.ts +98 -98
  508. package/lib/esm/ChangesetProps.js +19 -19
  509. package/lib/esm/ChangesetProps.js.map +1 -1
  510. package/lib/esm/ClipStyle.d.ts +89 -89
  511. package/lib/esm/ClipStyle.js +118 -118
  512. package/lib/esm/ClipStyle.js.map +1 -1
  513. package/lib/esm/CloudStorage.d.ts +62 -62
  514. package/lib/esm/CloudStorage.js +109 -109
  515. package/lib/esm/CloudStorage.js.map +1 -1
  516. package/lib/esm/CloudStorageTileCache.d.ts +27 -27
  517. package/lib/esm/CloudStorageTileCache.js +62 -62
  518. package/lib/esm/CloudStorageTileCache.js.map +1 -1
  519. package/lib/esm/Code.d.ts +256 -256
  520. package/lib/esm/Code.js +276 -276
  521. package/lib/esm/Code.js.map +1 -1
  522. package/lib/esm/ColorByName.d.ts +161 -161
  523. package/lib/esm/ColorByName.js +166 -166
  524. package/lib/esm/ColorByName.js.map +1 -1
  525. package/lib/esm/ColorDef.d.ts +208 -208
  526. package/lib/esm/ColorDef.js +567 -567
  527. package/lib/esm/ColorDef.js.map +1 -1
  528. package/lib/esm/CommonLoggerCategory.d.ts +18 -18
  529. package/lib/esm/CommonLoggerCategory.js +23 -23
  530. package/lib/esm/CommonLoggerCategory.js.map +1 -1
  531. package/lib/esm/ConcurrentQuery.d.ts +241 -241
  532. package/lib/esm/ConcurrentQuery.js +373 -373
  533. package/lib/esm/ConcurrentQuery.js.map +1 -1
  534. package/lib/esm/ContextRealityModel.d.ts +276 -276
  535. package/lib/esm/ContextRealityModel.js +353 -353
  536. package/lib/esm/ContextRealityModel.js.map +1 -1
  537. package/lib/esm/DisplayStyleSettings.d.ts +584 -584
  538. package/lib/esm/DisplayStyleSettings.js +976 -976
  539. package/lib/esm/DisplayStyleSettings.js.map +1 -1
  540. package/lib/esm/ECSchemaProps.d.ts +39 -39
  541. package/lib/esm/ECSchemaProps.js +8 -8
  542. package/lib/esm/ECSchemaProps.js.map +1 -1
  543. package/lib/esm/ECSqlReader.d.ts +70 -70
  544. package/lib/esm/ECSqlReader.js +275 -275
  545. package/lib/esm/ECSqlReader.js.map +1 -1
  546. package/lib/esm/ECSqlTypes.d.ts +128 -128
  547. package/lib/esm/ECSqlTypes.js +185 -185
  548. package/lib/esm/ECSqlTypes.js.map +1 -1
  549. package/lib/esm/ElementProps.d.ts +476 -476
  550. package/lib/esm/ElementProps.js +92 -92
  551. package/lib/esm/ElementProps.js.map +1 -1
  552. package/lib/esm/EmphasizeElementsProps.d.ts +55 -55
  553. package/lib/esm/EmphasizeElementsProps.js +22 -22
  554. package/lib/esm/EmphasizeElementsProps.js.map +1 -1
  555. package/lib/esm/EntityProps.d.ts +176 -176
  556. package/lib/esm/EntityProps.js +107 -107
  557. package/lib/esm/EntityProps.js.map +1 -1
  558. package/lib/esm/EntityReference.d.ts +52 -0
  559. package/lib/esm/EntityReference.d.ts.map +1 -0
  560. package/lib/esm/EntityReference.js +53 -0
  561. package/lib/esm/EntityReference.js.map +1 -0
  562. package/lib/esm/Environment.d.ts +61 -61
  563. package/lib/esm/Environment.js +69 -69
  564. package/lib/esm/Environment.js.map +1 -1
  565. package/lib/esm/FeatureGates.d.ts +31 -31
  566. package/lib/esm/FeatureGates.js +51 -51
  567. package/lib/esm/FeatureGates.js.map +1 -1
  568. package/lib/esm/FeatureIndex.d.ts +39 -39
  569. package/lib/esm/FeatureIndex.js +57 -57
  570. package/lib/esm/FeatureIndex.js.map +1 -1
  571. package/lib/esm/FeatureSymbology.d.ts +444 -444
  572. package/lib/esm/FeatureSymbology.js +609 -609
  573. package/lib/esm/FeatureSymbology.js.map +1 -1
  574. package/lib/esm/FeatureTable.d.ts +141 -141
  575. package/lib/esm/FeatureTable.js +272 -272
  576. package/lib/esm/FeatureTable.js.map +1 -1
  577. package/lib/esm/Fonts.d.ts +51 -51
  578. package/lib/esm/Fonts.js +49 -49
  579. package/lib/esm/Fonts.js.map +1 -1
  580. package/lib/esm/Frustum.d.ts +114 -114
  581. package/lib/esm/Frustum.js +288 -288
  582. package/lib/esm/Frustum.js.map +1 -1
  583. package/lib/esm/GeoCoordinateServices.d.ts +119 -119
  584. package/lib/esm/GeoCoordinateServices.js +76 -76
  585. package/lib/esm/GeoCoordinateServices.js.map +1 -1
  586. package/lib/esm/GeometryContainment.d.ts +28 -28
  587. package/lib/esm/GeometryContainment.js +8 -8
  588. package/lib/esm/GeometryContainment.js.map +1 -1
  589. package/lib/esm/GeometryParams.d.ts +130 -130
  590. package/lib/esm/GeometryParams.js +170 -170
  591. package/lib/esm/GeometryParams.js.map +1 -1
  592. package/lib/esm/GeometrySummary.d.ts +45 -45
  593. package/lib/esm/GeometrySummary.js +20 -20
  594. package/lib/esm/GeometrySummary.js.map +1 -1
  595. package/lib/esm/Gradient.d.ts +139 -139
  596. package/lib/esm/Gradient.js +452 -452
  597. package/lib/esm/Gradient.js.map +1 -1
  598. package/lib/esm/GraphicParams.d.ts +58 -58
  599. package/lib/esm/GraphicParams.js +81 -81
  600. package/lib/esm/GraphicParams.js.map +1 -1
  601. package/lib/esm/GroundPlane.d.ts +52 -52
  602. package/lib/esm/GroundPlane.js +60 -60
  603. package/lib/esm/GroundPlane.js.map +1 -1
  604. package/lib/esm/HSLColor.d.ts +20 -20
  605. package/lib/esm/HSLColor.js +28 -28
  606. package/lib/esm/HSLColor.js.map +1 -1
  607. package/lib/esm/HSVColor.d.ts +30 -30
  608. package/lib/esm/HSVColor.js +55 -55
  609. package/lib/esm/HSVColor.js.map +1 -1
  610. package/lib/esm/HiddenLine.d.ts +97 -97
  611. package/lib/esm/HiddenLine.js +159 -159
  612. package/lib/esm/HiddenLine.js.map +1 -1
  613. package/lib/esm/Hilite.d.ts +50 -50
  614. package/lib/esm/Hilite.js +61 -61
  615. package/lib/esm/Hilite.js.map +1 -1
  616. package/lib/esm/IModel.d.ts +359 -359
  617. package/lib/esm/IModel.js +342 -342
  618. package/lib/esm/IModel.js.map +1 -1
  619. package/lib/esm/IModelError.d.ts +36 -36
  620. package/lib/esm/IModelError.js +55 -55
  621. package/lib/esm/IModelError.js.map +1 -1
  622. package/lib/esm/IModelVersion.d.ts +68 -68
  623. package/lib/esm/IModelVersion.js +75 -75
  624. package/lib/esm/IModelVersion.js.map +1 -1
  625. package/lib/esm/Image.d.ts +86 -86
  626. package/lib/esm/Image.js +120 -120
  627. package/lib/esm/Image.js.map +1 -1
  628. package/lib/esm/IpcAppProps.d.ts +124 -124
  629. package/lib/esm/IpcAppProps.js +15 -15
  630. package/lib/esm/IpcAppProps.js.map +1 -1
  631. package/lib/esm/LightSettings.d.ts +224 -224
  632. package/lib/esm/LightSettings.js +301 -301
  633. package/lib/esm/LightSettings.js.map +1 -1
  634. package/lib/esm/LinePixels.d.ts +34 -34
  635. package/lib/esm/LinePixels.js +39 -39
  636. package/lib/esm/LinePixels.js.map +1 -1
  637. package/lib/esm/Localization.d.ts +111 -111
  638. package/lib/esm/Localization.js +22 -22
  639. package/lib/esm/Localization.js.map +1 -1
  640. package/lib/esm/MapImagerySettings.d.ts +62 -62
  641. package/lib/esm/MapImagerySettings.js +76 -76
  642. package/lib/esm/MapImagerySettings.js.map +1 -1
  643. package/lib/esm/MapLayerSettings.d.ts +272 -272
  644. package/lib/esm/MapLayerSettings.js +403 -403
  645. package/lib/esm/MapLayerSettings.js.map +1 -1
  646. package/lib/esm/MassProperties.d.ts +64 -64
  647. package/lib/esm/MassProperties.js +20 -20
  648. package/lib/esm/MassProperties.js.map +1 -1
  649. package/lib/esm/MaterialProps.d.ts +118 -118
  650. package/lib/esm/MaterialProps.js +20 -20
  651. package/lib/esm/MaterialProps.js.map +1 -1
  652. package/lib/esm/ModelClipGroup.d.ts +67 -67
  653. package/lib/esm/ModelClipGroup.js +93 -93
  654. package/lib/esm/ModelClipGroup.js.map +1 -1
  655. package/lib/esm/ModelGeometryChanges.d.ts +107 -107
  656. package/lib/esm/ModelGeometryChanges.js +80 -80
  657. package/lib/esm/ModelGeometryChanges.js.map +1 -1
  658. package/lib/esm/ModelProps.d.ts +67 -67
  659. package/lib/esm/ModelProps.js +8 -8
  660. package/lib/esm/ModelProps.js.map +1 -1
  661. package/lib/esm/NativeAppProps.d.ts +122 -122
  662. package/lib/esm/NativeAppProps.js +27 -27
  663. package/lib/esm/NativeAppProps.js.map +1 -1
  664. package/lib/esm/OctEncodedNormal.d.ts +33 -33
  665. package/lib/esm/OctEncodedNormal.js +93 -93
  666. package/lib/esm/OctEncodedNormal.js.map +1 -1
  667. package/lib/esm/PlanProjectionSettings.d.ts +47 -47
  668. package/lib/esm/PlanProjectionSettings.js +59 -59
  669. package/lib/esm/PlanProjectionSettings.js.map +1 -1
  670. package/lib/esm/PlanarClipMask.d.ts +177 -177
  671. package/lib/esm/PlanarClipMask.js +132 -132
  672. package/lib/esm/PlanarClipMask.js.map +1 -1
  673. package/lib/esm/QPoint.d.ts +479 -479
  674. package/lib/esm/QPoint.js +815 -815
  675. package/lib/esm/QPoint.js.map +1 -1
  676. package/lib/esm/RealityDataAccessProps.d.ts +41 -41
  677. package/lib/esm/RealityDataAccessProps.js +16 -16
  678. package/lib/esm/RealityDataAccessProps.js.map +1 -1
  679. package/lib/esm/RealityModelDisplaySettings.d.ts +118 -118
  680. package/lib/esm/RealityModelDisplaySettings.js +109 -109
  681. package/lib/esm/RealityModelDisplaySettings.js.map +1 -1
  682. package/lib/esm/Render.d.ts +89 -89
  683. package/lib/esm/Render.js +165 -165
  684. package/lib/esm/Render.js.map +1 -1
  685. package/lib/esm/RenderMaterial.d.ts +58 -58
  686. package/lib/esm/RenderMaterial.js +72 -72
  687. package/lib/esm/RenderMaterial.js.map +1 -1
  688. package/lib/esm/RenderSchedule.d.ts +541 -540
  689. package/lib/esm/RenderSchedule.d.ts.map +1 -1
  690. package/lib/esm/RenderSchedule.js +997 -997
  691. package/lib/esm/RenderSchedule.js.map +1 -1
  692. package/lib/esm/RenderTexture.d.ts +70 -70
  693. package/lib/esm/RenderTexture.js +55 -55
  694. package/lib/esm/RenderTexture.js.map +1 -1
  695. package/lib/esm/RgbColor.d.ts +47 -47
  696. package/lib/esm/RgbColor.js +73 -73
  697. package/lib/esm/RgbColor.js.map +1 -1
  698. package/lib/esm/RpcInterface.d.ts +33 -33
  699. package/lib/esm/RpcInterface.js +133 -133
  700. package/lib/esm/RpcInterface.js.map +1 -1
  701. package/lib/esm/RpcManager.d.ts +40 -40
  702. package/lib/esm/RpcManager.js +51 -51
  703. package/lib/esm/RpcManager.js.map +1 -1
  704. package/lib/esm/SessionProps.d.ts +16 -16
  705. package/lib/esm/SessionProps.js +8 -8
  706. package/lib/esm/SessionProps.js.map +1 -1
  707. package/lib/esm/SkyBox.d.ts +215 -215
  708. package/lib/esm/SkyBox.js +203 -203
  709. package/lib/esm/SkyBox.js.map +1 -1
  710. package/lib/esm/Snapping.d.ts +49 -49
  711. package/lib/esm/Snapping.js +8 -8
  712. package/lib/esm/Snapping.js.map +1 -1
  713. package/lib/esm/SolarCalculate.d.ts +27 -27
  714. package/lib/esm/SolarCalculate.js +204 -204
  715. package/lib/esm/SolarCalculate.js.map +1 -1
  716. package/lib/esm/SolarShadows.d.ts +35 -35
  717. package/lib/esm/SolarShadows.js +58 -58
  718. package/lib/esm/SolarShadows.js.map +1 -1
  719. package/lib/esm/SpatialClassification.d.ts +208 -208
  720. package/lib/esm/SpatialClassification.js +334 -334
  721. package/lib/esm/SpatialClassification.js.map +1 -1
  722. package/lib/esm/SubCategoryAppearance.d.ts +91 -91
  723. package/lib/esm/SubCategoryAppearance.js +92 -92
  724. package/lib/esm/SubCategoryAppearance.js.map +1 -1
  725. package/lib/esm/SubCategoryOverride.d.ts +46 -46
  726. package/lib/esm/SubCategoryOverride.js +100 -100
  727. package/lib/esm/SubCategoryOverride.js.map +1 -1
  728. package/lib/esm/TerrainSettings.d.ts +82 -82
  729. package/lib/esm/TerrainSettings.js +98 -98
  730. package/lib/esm/TerrainSettings.js.map +1 -1
  731. package/lib/esm/TextureMapping.d.ts +101 -101
  732. package/lib/esm/TextureMapping.js +170 -170
  733. package/lib/esm/TextureMapping.js.map +1 -1
  734. package/lib/esm/TextureProps.d.ts +65 -65
  735. package/lib/esm/TextureProps.js +25 -25
  736. package/lib/esm/TextureProps.js.map +1 -1
  737. package/lib/esm/ThematicDisplay.d.ts +230 -230
  738. package/lib/esm/ThematicDisplay.js +337 -337
  739. package/lib/esm/ThematicDisplay.js.map +1 -1
  740. package/lib/esm/Thumbnail.d.ts +26 -26
  741. package/lib/esm/Thumbnail.js +8 -8
  742. package/lib/esm/Thumbnail.js.map +1 -1
  743. package/lib/esm/TileProps.d.ts +82 -82
  744. package/lib/esm/TileProps.js +25 -25
  745. package/lib/esm/TileProps.js.map +1 -1
  746. package/lib/esm/Tween.d.ts +191 -191
  747. package/lib/esm/Tween.js +565 -565
  748. package/lib/esm/Tween.js.map +1 -1
  749. package/lib/esm/TxnAction.d.ts +21 -21
  750. package/lib/esm/TxnAction.js +26 -26
  751. package/lib/esm/TxnAction.js.map +1 -1
  752. package/lib/esm/ViewDetails.d.ts +125 -125
  753. package/lib/esm/ViewDetails.js +153 -153
  754. package/lib/esm/ViewDetails.js.map +1 -1
  755. package/lib/esm/ViewFlags.d.ts +291 -291
  756. package/lib/esm/ViewFlags.js +364 -364
  757. package/lib/esm/ViewFlags.js.map +1 -1
  758. package/lib/esm/ViewProps.d.ts +205 -205
  759. package/lib/esm/ViewProps.js +8 -8
  760. package/lib/esm/ViewProps.js.map +1 -1
  761. package/lib/esm/WhiteOnWhiteReversalSettings.d.ts +36 -36
  762. package/lib/esm/WhiteOnWhiteReversalSettings.js +33 -33
  763. package/lib/esm/WhiteOnWhiteReversalSettings.js.map +1 -1
  764. package/lib/esm/core-common.d.ts +242 -241
  765. package/lib/esm/core-common.d.ts.map +1 -1
  766. package/lib/esm/core-common.js +246 -245
  767. package/lib/esm/core-common.js.map +1 -1
  768. package/lib/esm/domains/FunctionalElementProps.d.ts +11 -11
  769. package/lib/esm/domains/FunctionalElementProps.js +8 -8
  770. package/lib/esm/domains/FunctionalElementProps.js.map +1 -1
  771. package/lib/esm/domains/GenericElementProps.d.ts +18 -18
  772. package/lib/esm/domains/GenericElementProps.js +8 -8
  773. package/lib/esm/domains/GenericElementProps.js.map +1 -1
  774. package/lib/esm/geometry/AdditionalTransform.d.ts +84 -84
  775. package/lib/esm/geometry/AdditionalTransform.js +80 -80
  776. package/lib/esm/geometry/AdditionalTransform.js.map +1 -1
  777. package/lib/esm/geometry/AreaPattern.d.ts +82 -82
  778. package/lib/esm/geometry/AreaPattern.js +201 -201
  779. package/lib/esm/geometry/AreaPattern.js.map +1 -1
  780. package/lib/esm/geometry/BoundingSphere.d.ts +14 -14
  781. package/lib/esm/geometry/BoundingSphere.js +26 -26
  782. package/lib/esm/geometry/BoundingSphere.js.map +1 -1
  783. package/lib/esm/geometry/Cartographic.d.ts +137 -137
  784. package/lib/esm/geometry/Cartographic.js +340 -340
  785. package/lib/esm/geometry/Cartographic.js.map +1 -1
  786. package/lib/esm/geometry/CoordinateReferenceSystem.d.ts +269 -269
  787. package/lib/esm/geometry/CoordinateReferenceSystem.js +254 -254
  788. package/lib/esm/geometry/CoordinateReferenceSystem.js.map +1 -1
  789. package/lib/esm/geometry/ElementGeometry.d.ts +402 -402
  790. package/lib/esm/geometry/ElementGeometry.js +1716 -1716
  791. package/lib/esm/geometry/ElementGeometry.js.map +1 -1
  792. package/lib/esm/geometry/ElementGeometryFB.d.ts +2372 -2372
  793. package/lib/esm/geometry/ElementGeometryFB.js +3811 -3811
  794. package/lib/esm/geometry/ElementGeometryFB.js.map +1 -1
  795. package/lib/esm/geometry/FrustumPlanes.d.ts +32 -32
  796. package/lib/esm/geometry/FrustumPlanes.js +128 -128
  797. package/lib/esm/geometry/FrustumPlanes.js.map +1 -1
  798. package/lib/esm/geometry/GeodeticDatum.d.ts +409 -409
  799. package/lib/esm/geometry/GeodeticDatum.js +390 -390
  800. package/lib/esm/geometry/GeodeticDatum.js.map +1 -1
  801. package/lib/esm/geometry/GeodeticEllipsoid.d.ts +72 -72
  802. package/lib/esm/geometry/GeodeticEllipsoid.js +68 -68
  803. package/lib/esm/geometry/GeodeticEllipsoid.js.map +1 -1
  804. package/lib/esm/geometry/GeometryStream.d.ts +347 -347
  805. package/lib/esm/geometry/GeometryStream.js +464 -464
  806. package/lib/esm/geometry/GeometryStream.js.map +1 -1
  807. package/lib/esm/geometry/ImageGraphic.d.ts +74 -74
  808. package/lib/esm/geometry/ImageGraphic.js +93 -93
  809. package/lib/esm/geometry/ImageGraphic.js.map +1 -1
  810. package/lib/esm/geometry/LineStyle.d.ts +71 -71
  811. package/lib/esm/geometry/LineStyle.js +126 -126
  812. package/lib/esm/geometry/LineStyle.js.map +1 -1
  813. package/lib/esm/geometry/Placement.d.ts +95 -95
  814. package/lib/esm/geometry/Placement.js +126 -126
  815. package/lib/esm/geometry/Placement.js.map +1 -1
  816. package/lib/esm/geometry/Projection.d.ts +251 -251
  817. package/lib/esm/geometry/Projection.js +192 -192
  818. package/lib/esm/geometry/Projection.js.map +1 -1
  819. package/lib/esm/geometry/TextString.d.ts +55 -55
  820. package/lib/esm/geometry/TextString.js +61 -61
  821. package/lib/esm/geometry/TextString.js.map +1 -1
  822. package/lib/esm/ipc/IpcSession.d.ts +23 -23
  823. package/lib/esm/ipc/IpcSession.js +23 -23
  824. package/lib/esm/ipc/IpcSession.js.map +1 -1
  825. package/lib/esm/ipc/IpcSocket.d.ts +96 -96
  826. package/lib/esm/ipc/IpcSocket.js +12 -12
  827. package/lib/esm/ipc/IpcSocket.js.map +1 -1
  828. package/lib/esm/ipc/IpcWebSocket.d.ts +61 -61
  829. package/lib/esm/ipc/IpcWebSocket.js +145 -145
  830. package/lib/esm/ipc/IpcWebSocket.js.map +1 -1
  831. package/lib/esm/ipc/IpcWebSocketTransport.d.ts +15 -15
  832. package/lib/esm/ipc/IpcWebSocketTransport.js +154 -154
  833. package/lib/esm/ipc/IpcWebSocketTransport.js.map +1 -1
  834. package/lib/esm/rpc/DevToolsRpcInterface.d.ts +32 -32
  835. package/lib/esm/rpc/DevToolsRpcInterface.js +44 -44
  836. package/lib/esm/rpc/DevToolsRpcInterface.js.map +1 -1
  837. package/lib/esm/rpc/IModelReadRpcInterface.d.ts +75 -75
  838. package/lib/esm/rpc/IModelReadRpcInterface.js +110 -110
  839. package/lib/esm/rpc/IModelReadRpcInterface.js.map +1 -1
  840. package/lib/esm/rpc/IModelTileRpcInterface.d.ts +61 -61
  841. package/lib/esm/rpc/IModelTileRpcInterface.js +92 -92
  842. package/lib/esm/rpc/IModelTileRpcInterface.js.map +1 -1
  843. package/lib/esm/rpc/SnapshotIModelRpcInterface.d.ts +23 -23
  844. package/lib/esm/rpc/SnapshotIModelRpcInterface.js +44 -44
  845. package/lib/esm/rpc/SnapshotIModelRpcInterface.js.map +1 -1
  846. package/lib/esm/rpc/TestRpcManager.d.ts +20 -20
  847. package/lib/esm/rpc/TestRpcManager.js +35 -35
  848. package/lib/esm/rpc/TestRpcManager.js.map +1 -1
  849. package/lib/esm/rpc/WipRpcInterface.d.ts +29 -29
  850. package/lib/esm/rpc/WipRpcInterface.js +36 -36
  851. package/lib/esm/rpc/WipRpcInterface.js.map +1 -1
  852. package/lib/esm/rpc/core/RpcConfiguration.d.ts +111 -111
  853. package/lib/esm/rpc/core/RpcConfiguration.js +185 -185
  854. package/lib/esm/rpc/core/RpcConfiguration.js.map +1 -1
  855. package/lib/esm/rpc/core/RpcConstants.d.ts +85 -85
  856. package/lib/esm/rpc/core/RpcConstants.js +100 -100
  857. package/lib/esm/rpc/core/RpcConstants.js.map +1 -1
  858. package/lib/esm/rpc/core/RpcControl.d.ts +52 -52
  859. package/lib/esm/rpc/core/RpcControl.js +142 -142
  860. package/lib/esm/rpc/core/RpcControl.js.map +1 -1
  861. package/lib/esm/rpc/core/RpcInvocation.d.ts +89 -89
  862. package/lib/esm/rpc/core/RpcInvocation.js +253 -253
  863. package/lib/esm/rpc/core/RpcInvocation.js.map +1 -1
  864. package/lib/esm/rpc/core/RpcMarshaling.d.ts +36 -36
  865. package/lib/esm/rpc/core/RpcMarshaling.js +149 -149
  866. package/lib/esm/rpc/core/RpcMarshaling.js.map +1 -1
  867. package/lib/esm/rpc/core/RpcOperation.d.ts +67 -67
  868. package/lib/esm/rpc/core/RpcOperation.js +128 -128
  869. package/lib/esm/rpc/core/RpcOperation.js.map +1 -1
  870. package/lib/esm/rpc/core/RpcPendingQueue.d.ts +21 -21
  871. package/lib/esm/rpc/core/RpcPendingQueue.js +90 -90
  872. package/lib/esm/rpc/core/RpcPendingQueue.js.map +1 -1
  873. package/lib/esm/rpc/core/RpcProtocol.d.ts +132 -132
  874. package/lib/esm/rpc/core/RpcProtocol.js +123 -123
  875. package/lib/esm/rpc/core/RpcProtocol.js.map +1 -1
  876. package/lib/esm/rpc/core/RpcPush.d.ts +68 -68
  877. package/lib/esm/rpc/core/RpcPush.js +119 -119
  878. package/lib/esm/rpc/core/RpcPush.js.map +1 -1
  879. package/lib/esm/rpc/core/RpcRegistry.d.ts +48 -48
  880. package/lib/esm/rpc/core/RpcRegistry.js +194 -194
  881. package/lib/esm/rpc/core/RpcRegistry.js.map +1 -1
  882. package/lib/esm/rpc/core/RpcRequest.d.ts +186 -186
  883. package/lib/esm/rpc/core/RpcRequest.js +472 -472
  884. package/lib/esm/rpc/core/RpcRequest.js.map +1 -1
  885. package/lib/esm/rpc/core/RpcRequestContext.d.ts +14 -14
  886. package/lib/esm/rpc/core/RpcRequestContext.js +1 -1
  887. package/lib/esm/rpc/core/RpcRequestContext.js.map +1 -1
  888. package/lib/esm/rpc/core/RpcRoutingToken.d.ts +12 -12
  889. package/lib/esm/rpc/core/RpcRoutingToken.js +19 -19
  890. package/lib/esm/rpc/core/RpcRoutingToken.js.map +1 -1
  891. package/lib/esm/rpc/core/RpcSessionInvocation.d.ts +10 -10
  892. package/lib/esm/rpc/core/RpcSessionInvocation.js +55 -55
  893. package/lib/esm/rpc/core/RpcSessionInvocation.js.map +1 -1
  894. package/lib/esm/rpc/web/BentleyCloudRpcManager.d.ts +46 -46
  895. package/lib/esm/rpc/web/BentleyCloudRpcManager.js +68 -68
  896. package/lib/esm/rpc/web/BentleyCloudRpcManager.js.map +1 -1
  897. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.d.ts +33 -33
  898. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.js +138 -138
  899. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.js.map +1 -1
  900. package/lib/esm/rpc/web/OpenAPI.d.ts +139 -139
  901. package/lib/esm/rpc/web/OpenAPI.js +56 -56
  902. package/lib/esm/rpc/web/OpenAPI.js.map +1 -1
  903. package/lib/esm/rpc/web/RpcMultipart.d.ts +31 -31
  904. package/lib/esm/rpc/web/RpcMultipart.js +41 -41
  905. package/lib/esm/rpc/web/RpcMultipart.js.map +1 -1
  906. package/lib/esm/rpc/web/WebAppRpcLogging.d.ts +17 -17
  907. package/lib/esm/rpc/web/WebAppRpcLogging.js +136 -136
  908. package/lib/esm/rpc/web/WebAppRpcLogging.js.map +1 -1
  909. package/lib/esm/rpc/web/WebAppRpcProtocol.d.ts +86 -86
  910. package/lib/esm/rpc/web/WebAppRpcProtocol.js +112 -112
  911. package/lib/esm/rpc/web/WebAppRpcProtocol.js.map +1 -1
  912. package/lib/esm/rpc/web/WebAppRpcRequest.d.ts +71 -71
  913. package/lib/esm/rpc/web/WebAppRpcRequest.js +370 -370
  914. package/lib/esm/rpc/web/WebAppRpcRequest.js.map +1 -1
  915. package/lib/esm/rpc/web/multipart/RpcMultipartParser.d.ts +33 -33
  916. package/lib/esm/rpc/web/multipart/RpcMultipartParser.js +355 -355
  917. package/lib/esm/rpc/web/multipart/RpcMultipartParser.js.map +1 -1
  918. package/lib/esm/tile/B3dmTileIO.d.ts +19 -19
  919. package/lib/esm/tile/B3dmTileIO.js +62 -62
  920. package/lib/esm/tile/B3dmTileIO.js.map +1 -1
  921. package/lib/esm/tile/CompositeTileIO.d.ts +15 -15
  922. package/lib/esm/tile/CompositeTileIO.js +22 -22
  923. package/lib/esm/tile/CompositeTileIO.js.map +1 -1
  924. package/lib/esm/tile/ElementGraphics.d.ts +145 -134
  925. package/lib/esm/tile/ElementGraphics.d.ts.map +1 -1
  926. package/lib/esm/tile/ElementGraphics.js +8 -8
  927. package/lib/esm/tile/ElementGraphics.js.map +1 -1
  928. package/lib/esm/tile/GltfTileIO.d.ts +45 -45
  929. package/lib/esm/tile/GltfTileIO.js +105 -105
  930. package/lib/esm/tile/GltfTileIO.js.map +1 -1
  931. package/lib/esm/tile/I3dmTileIO.d.ts +20 -20
  932. package/lib/esm/tile/I3dmTileIO.js +36 -36
  933. package/lib/esm/tile/I3dmTileIO.js.map +1 -1
  934. package/lib/esm/tile/IModelTileIO.d.ts +75 -75
  935. package/lib/esm/tile/IModelTileIO.js +90 -90
  936. package/lib/esm/tile/IModelTileIO.js.map +1 -1
  937. package/lib/esm/tile/PntsTileIO.d.ts +17 -17
  938. package/lib/esm/tile/PntsTileIO.js +22 -22
  939. package/lib/esm/tile/PntsTileIO.js.map +1 -1
  940. package/lib/esm/tile/TileIO.d.ts +66 -66
  941. package/lib/esm/tile/TileIO.js +110 -110
  942. package/lib/esm/tile/TileIO.js.map +1 -1
  943. package/lib/esm/tile/TileMetadata.d.ts +228 -228
  944. package/lib/esm/tile/TileMetadata.js +661 -661
  945. package/lib/esm/tile/TileMetadata.js.map +1 -1
  946. package/package.json +7 -7
package/lib/esm/IModel.js CHANGED
@@ -1,343 +1,343 @@
1
- /*---------------------------------------------------------------------------------------------
2
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
- * See LICENSE.md in the project root for license terms and full copyright notice.
4
- *--------------------------------------------------------------------------------------------*/
5
- /** @packageDocumentation
6
- * @module iModels
7
- */
8
- import { assert, BeEvent, GeoServiceStatus, Id64, IModelStatus, OpenMode } from "@itwin/core-bentley";
9
- import { AxisIndex, AxisOrder, Constant, Geometry, Matrix3d, Point3d, Range3d, Transform, Vector3d, YawPitchRollAngles, } from "@itwin/core-geometry";
10
- import { Cartographic } from "./geometry/Cartographic";
11
- import { GeographicCRS } from "./geometry/CoordinateReferenceSystem";
12
- import { IModelError } from "./IModelError";
13
- /** The position and orientation of an iModel on the earth in [ECEF](https://en.wikipedia.org/wiki/ECEF) (Earth Centered Earth Fixed) coordinates
14
- * @note This is an immutable type - all of its properties are frozen.
15
- * @see [GeoLocation of iModels]($docs/learning/GeoLocation.md)
16
- * @public
17
- */
18
- export class EcefLocation {
19
- /** Construct a new EcefLocation. Once constructed, it is frozen and cannot be modified. */
20
- constructor(props) {
21
- this.origin = Point3d.fromJSON(props.origin).freeze();
22
- this.orientation = YawPitchRollAngles.fromJSON(props.orientation).freeze();
23
- if (props.cartographicOrigin)
24
- this.cartographicOrigin = Cartographic.fromRadians({ longitude: props.cartographicOrigin.longitude, latitude: props.cartographicOrigin.latitude, height: props.cartographicOrigin.height }).freeze();
25
- if (props.xVector && props.yVector) {
26
- this.xVector = Vector3d.fromJSON(props.xVector).freeze();
27
- this.yVector = Vector3d.fromJSON(props.yVector).freeze();
28
- }
29
- let matrix;
30
- if (this.xVector && this.yVector) {
31
- const zVector = this.xVector.crossProduct(this.yVector);
32
- if (zVector.normalizeInPlace())
33
- matrix = Matrix3d.createColumns(this.xVector, this.yVector, zVector);
34
- }
35
- if (!matrix)
36
- matrix = this.orientation.toMatrix3d();
37
- this._transform = Transform.createOriginAndMatrix(this.origin, matrix);
38
- this._transform.freeze();
39
- }
40
- /** Get the transform from iModel Spatial coordinates to ECEF from this EcefLocation */
41
- getTransform() { return this._transform; }
42
- /** Returns true if this EcefLocation is not located at the center of the Earth.
43
- * @alpha are locations very close to the center considered valid? What are the specific criteria?
44
- */
45
- get isValid() {
46
- return !this.origin.isZero;
47
- }
48
- /** Construct ECEF Location from cartographic origin with optional known point and angle. */
49
- static createFromCartographicOrigin(origin, point, angle) {
50
- const ecefOrigin = origin.toEcef();
51
- const deltaRadians = 10 / Constant.earthRadiusWGS84.polar;
52
- const northCarto = Cartographic.fromRadians({ longitude: origin.longitude, latitude: origin.latitude + deltaRadians, height: origin.height });
53
- const eastCarto = Cartographic.fromRadians({ longitude: origin.longitude + deltaRadians, latitude: origin.latitude, height: origin.height });
54
- const ecefNorth = northCarto.toEcef();
55
- const ecefEast = eastCarto.toEcef();
56
- const xVector = Vector3d.createStartEnd(ecefOrigin, ecefEast).normalize();
57
- const yVector = Vector3d.createStartEnd(ecefOrigin, ecefNorth).normalize();
58
- const matrix = Matrix3d.createRigidFromColumns(xVector, yVector, AxisOrder.XYZ);
59
- if (angle !== undefined) {
60
- const north = Matrix3d.createRotationAroundAxisIndex(AxisIndex.Z, angle);
61
- matrix.multiplyMatrixMatrix(north, matrix);
62
- }
63
- if (point !== undefined) {
64
- const delta = matrix.multiplyVector(Vector3d.create(-point.x, -point.y, -point.z));
65
- ecefOrigin.addInPlace(delta);
66
- }
67
- return new EcefLocation({ origin: ecefOrigin, orientation: YawPitchRollAngles.createFromMatrix3d(matrix), cartographicOrigin: origin });
68
- }
69
- /** Get the location center of the earth in the iModel coordinate system. */
70
- get earthCenter() {
71
- const matrix = this.orientation.toMatrix3d();
72
- return Point3d.createFrom(matrix.multiplyTransposeXYZ(-this.origin.x, -this.origin.y, -this.origin.z));
73
- }
74
- /** Return true if this location is equivalent to another location within a small tolerance. */
75
- isAlmostEqual(other) {
76
- if (!this.origin.isAlmostEqual(other.origin) || !this.orientation.isAlmostEqual(other.orientation))
77
- return false;
78
- if ((this.xVector === undefined) !== (other.xVector === undefined) || (this.yVector === undefined) !== (other.yVector === undefined))
79
- return false;
80
- if (this.xVector !== undefined && other.xVector !== undefined && !this.xVector.isAlmostEqual(other.xVector))
81
- return false;
82
- if (this.yVector !== undefined && other.yVector !== undefined && !this.yVector.isAlmostEqual(other.yVector))
83
- return false;
84
- const thisCarto = this.cartographicOrigin;
85
- const otherCarto = other.cartographicOrigin;
86
- if (undefined === thisCarto || undefined === otherCarto)
87
- return undefined === thisCarto && undefined === otherCarto;
88
- return thisCarto.equalsEpsilon(otherCarto, Geometry.smallMetricDistance);
89
- }
90
- toJSON() {
91
- const props = {
92
- origin: this.origin.toJSON(),
93
- orientation: this.orientation.toJSON(),
94
- };
95
- if (this.cartographicOrigin)
96
- props.cartographicOrigin = this.cartographicOrigin.toJSON();
97
- if (this.xVector)
98
- props.xVector = this.xVector.toJSON();
99
- if (this.yVector)
100
- props.yVector = this.yVector.toJSON();
101
- return props;
102
- }
103
- }
104
- /** Represents an iModel in JavaScript.
105
- * @see [GeoLocation of iModels]($docs/learning/GeoLocation.md)
106
- * @public
107
- */
108
- export class IModel {
109
- /** @internal */
110
- constructor(tokenProps) {
111
- /** Event raised after [[name]] changes. */
112
- this.onNameChanged = new BeEvent();
113
- /** Event raised after [[rootSubject]] changes. */
114
- this.onRootSubjectChanged = new BeEvent();
115
- /** Event raised after [[projectExtents]] changes. */
116
- this.onProjectExtentsChanged = new BeEvent();
117
- /** Event raised after [[globalOrigin]] changes. */
118
- this.onGlobalOriginChanged = new BeEvent();
119
- /** Event raised after [[ecefLocation]] changes. */
120
- this.onEcefLocationChanged = new BeEvent();
121
- /** Event raised after [[geographicCoordinateSystem]] changes. */
122
- this.onGeographicCoordinateSystemChanged = new BeEvent();
123
- this._openMode = OpenMode.Readonly;
124
- this.changeset = { id: "", index: 0 };
125
- this._fileKey = "";
126
- if (tokenProps) {
127
- this._fileKey = tokenProps.key;
128
- this._iTwinId = tokenProps.iTwinId;
129
- this._iModelId = tokenProps.iModelId;
130
- if (tokenProps.changeset)
131
- this.changeset = tokenProps.changeset;
132
- }
133
- }
134
- /** Name of the iModel */
135
- get name() {
136
- assert(this._name !== undefined);
137
- return this._name;
138
- }
139
- set name(name) {
140
- if (name !== this._name) {
141
- const old = this._name;
142
- this._name = name;
143
- if (undefined !== old)
144
- this.onNameChanged.raiseEvent(old);
145
- }
146
- }
147
- /** The name and description of the root subject of this iModel */
148
- get rootSubject() {
149
- assert(this._rootSubject !== undefined);
150
- return this._rootSubject;
151
- }
152
- set rootSubject(subject) {
153
- if (undefined === this._rootSubject || this._rootSubject.name !== subject.name || this._rootSubject.description !== subject.description) {
154
- const old = this._rootSubject;
155
- this._rootSubject = subject;
156
- if (old)
157
- this.onRootSubjectChanged.raiseEvent(old);
158
- }
159
- }
160
- /**
161
- * The volume, in spatial coordinates, inside which the entire project is contained.
162
- * @note The object returned from this method is frozen. You *must* make a copy before you do anything that might attempt to modify it.
163
- */
164
- get projectExtents() {
165
- assert(undefined !== this._projectExtents);
166
- return this._projectExtents;
167
- }
168
- set projectExtents(extents) {
169
- // Don't allow any axis of the project extents to be less than 1 meter.
170
- const projectExtents = extents.clone();
171
- projectExtents.ensureMinLengths(1.0);
172
- if (!this._projectExtents || !this._projectExtents.isAlmostEqual(projectExtents)) {
173
- const old = this._projectExtents;
174
- projectExtents.freeze();
175
- this._projectExtents = projectExtents;
176
- if (old)
177
- this.onProjectExtentsChanged.raiseEvent(old);
178
- }
179
- }
180
- /** An offset to be applied to all spatial coordinates. */
181
- get globalOrigin() {
182
- assert(this._globalOrigin !== undefined);
183
- return this._globalOrigin;
184
- }
185
- set globalOrigin(org) {
186
- if (!this._globalOrigin || !this._globalOrigin.isAlmostEqual(org)) {
187
- const old = this._globalOrigin;
188
- org.freeze();
189
- this._globalOrigin = org;
190
- if (old)
191
- this.onGlobalOriginChanged.raiseEvent(old);
192
- }
193
- }
194
- /** The [EcefLocation]($docs/learning/glossary#ecefLocation) of the iModel in Earth Centered Earth Fixed coordinates.
195
- * If the iModel property geographicCoordinateSystem is not defined then the ecefLocation provides a geolocation by defining a
196
- * 3D coordinate system relative to the Earth model WGS84. Refer to additional documentation for details. If the geographicCoordinateSystem
197
- * property is defined then the ecefLocation must be used with care. When the geographicCoordinateSystem is defined it indicates the
198
- * iModel cartesian space is the result of a cartographic projection. This implies a flattening of the Earth surface process that
199
- * results in scale, angular or area distortion. The ecefLocation is then an approximation calculated at the center of the project extent.
200
- * If the project is more than 2 kilometer in size, the ecefLocation may represent a poor approximation of the effective
201
- * cartographic projection used and a linear transformation should then be calculated at the exact origin of the data
202
- * it must position.
203
- * @see [GeoLocation of iModels]($docs/learning/GeoLocation.md)
204
- */
205
- get ecefLocation() {
206
- return this._ecefLocation;
207
- }
208
- set ecefLocation(ecefLocation) {
209
- const old = this._ecefLocation;
210
- if (!old && !ecefLocation)
211
- return;
212
- else if (old && ecefLocation && old.isAlmostEqual(ecefLocation))
213
- return;
214
- this._ecefLocation = ecefLocation;
215
- this.onEcefLocationChanged.raiseEvent(old);
216
- }
217
- /** Set the [EcefLocation]($docs/learning/glossary#ecefLocation) for this iModel. */
218
- setEcefLocation(ecef) {
219
- this.ecefLocation = new EcefLocation(ecef);
220
- }
221
- /** The geographic coordinate reference system of the iModel. */
222
- get geographicCoordinateSystem() {
223
- return this._geographicCoordinateSystem;
224
- }
225
- set geographicCoordinateSystem(geoCRS) {
226
- const old = this._geographicCoordinateSystem;
227
- if (!old && !geoCRS)
228
- return;
229
- else if (old && geoCRS && old.equals(geoCRS))
230
- return;
231
- this._geographicCoordinateSystem = geoCRS;
232
- this.onGeographicCoordinateSystemChanged.raiseEvent(old);
233
- }
234
- /** Sets the geographic coordinate reference system from GeographicCRSProps. */
235
- setGeographicCoordinateSystem(geoCRS) {
236
- this.geographicCoordinateSystem = new GeographicCRS(geoCRS);
237
- }
238
- /** @internal */
239
- getConnectionProps() {
240
- return {
241
- name: this.name,
242
- rootSubject: this.rootSubject,
243
- projectExtents: this.projectExtents.toJSON(),
244
- globalOrigin: this.globalOrigin.toJSON(),
245
- ecefLocation: this.ecefLocation,
246
- geographicCoordinateSystem: this.geographicCoordinateSystem,
247
- ...this._getRpcProps(),
248
- };
249
- }
250
- /** @internal */
251
- toJSON() {
252
- return this.getConnectionProps();
253
- }
254
- /** Get the key that was used to open this iModel. This is the value used for Rpc and Ipc communications. */
255
- get key() { return this._fileKey; }
256
- /** The Guid that identifies the iTwin that owns this iModel. */
257
- get iTwinId() { return this._iTwinId; }
258
- /** The Guid that identifies this iModel. */
259
- get iModelId() { return this._iModelId; }
260
- /** The [[OpenMode]] used for this IModel. */
261
- get openMode() { return this._openMode; }
262
- /** Return a token for RPC operations.
263
- * @throws IModelError if the iModel is not open.
264
- */
265
- getRpcProps() {
266
- if (!this.isOpen)
267
- throw new IModelError(IModelStatus.BadRequest, "IModel is not open for rpc");
268
- return this._getRpcProps();
269
- }
270
- /** Returns the iModel's RPC properties.
271
- * @note It is an error to attempt to use these properties as a token for RPC operations if the iModel is not open.
272
- * @internal
273
- */
274
- _getRpcProps() {
275
- return {
276
- key: this._fileKey,
277
- iTwinId: this.iTwinId,
278
- iModelId: this.iModelId,
279
- changeset: this.changeset,
280
- };
281
- }
282
- /** @internal */
283
- initialize(name, props) {
284
- this.name = name;
285
- this.rootSubject = props.rootSubject;
286
- this.projectExtents = Range3d.fromJSON(props.projectExtents);
287
- this.globalOrigin = Point3d.fromJSON(props.globalOrigin);
288
- const ecefLocation = props.ecefLocation ? new EcefLocation(props.ecefLocation) : undefined;
289
- this.ecefLocation = (ecefLocation === null || ecefLocation === void 0 ? void 0 : ecefLocation.isValid) ? ecefLocation : undefined;
290
- this.geographicCoordinateSystem = props.geographicCoordinateSystem ? new GeographicCRS(props.geographicCoordinateSystem) : undefined;
291
- }
292
- /** Get the default subCategoryId for the supplied categoryId */
293
- static getDefaultSubCategoryId(categoryId) {
294
- return Id64.isValid(categoryId) ? Id64.fromLocalAndBriefcaseIds(Id64.getLocalId(categoryId) + 1, Id64.getBriefcaseId(categoryId)) : Id64.invalid;
295
- }
296
- /** True if this iModel has an [EcefLocation]($docs/learning/glossary#ecefLocation). */
297
- get isGeoLocated() { return undefined !== this._ecefLocation; }
298
- /** Get the Transform from this iModel's Spatial coordinates to ECEF coordinates using its [[IModel.ecefLocation]].
299
- * @throws IModelError if [[isGeoLocated]] is false.
300
- */
301
- getEcefTransform() {
302
- if (undefined === this._ecefLocation)
303
- throw new IModelError(GeoServiceStatus.NoGeoLocation, "iModel is not GeoLocated");
304
- return this._ecefLocation.getTransform();
305
- }
306
- /** Convert a point in this iModel's Spatial coordinates to an ECEF point using its [[IModel.ecefLocation]].
307
- * @param spatial A point in the iModel's spatial coordinates
308
- * @param result If defined, use this for output
309
- * @returns A Point3d in ECEF coordinates
310
- * @throws IModelError if [[isGeoLocated]] is false.
311
- */
312
- spatialToEcef(spatial, result) { return this.getEcefTransform().multiplyPoint3d(spatial, result); }
313
- /** Convert a point in ECEF coordinates to a point in this iModel's Spatial coordinates using its [[ecefLocation]].
314
- * @param ecef A point in ECEF coordinates
315
- * @param result If defined, use this for output
316
- * @returns A Point3d in this iModel's spatial coordinates
317
- * @throws IModelError if [[isGeoLocated]] is false.
318
- * @note The resultant point will only be meaningful if the ECEF coordinate is close on the earth to the iModel.
319
- */
320
- ecefToSpatial(ecef, result) { return this.getEcefTransform().multiplyInversePoint3d(ecef, result); }
321
- /** Convert a point in this iModel's Spatial coordinates to a [[Cartographic]] using its [[IModel.ecefLocation]].
322
- * @param spatial A point in the iModel's spatial coordinates
323
- * @param result If defined, use this for output
324
- * @returns A Cartographic location
325
- * @throws IModelError if [[isGeoLocated]] is false.
326
- */
327
- spatialToCartographicFromEcef(spatial, result) { return Cartographic.fromEcef(this.spatialToEcef(spatial), result); }
328
- /** Convert a [[Cartographic]] to a point in this iModel's Spatial coordinates using its [[IModel.ecefLocation]].
329
- * @param cartographic A cartographic location
330
- * @param result If defined, use this for output
331
- * @returns A point in this iModel's spatial coordinates
332
- * @throws IModelError if [[isGeoLocated]] is false.
333
- * @note The resultant point will only be meaningful if the ECEF coordinate is close on the earth to the iModel.
334
- */
335
- cartographicToSpatialFromEcef(cartographic, result) { return this.ecefToSpatial(cartographic.toEcef(result), result); }
336
- }
337
- /** The Id of the repository model. */
338
- IModel.repositoryModelId = "0x1";
339
- /** The Id of the root subject element. */
340
- IModel.rootSubjectId = "0x1";
341
- /** The Id of the dictionary model. */
342
- IModel.dictionaryId = "0x10";
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
+ * See LICENSE.md in the project root for license terms and full copyright notice.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ /** @packageDocumentation
6
+ * @module iModels
7
+ */
8
+ import { assert, BeEvent, GeoServiceStatus, Id64, IModelStatus, OpenMode } from "@itwin/core-bentley";
9
+ import { AxisIndex, AxisOrder, Constant, Geometry, Matrix3d, Point3d, Range3d, Transform, Vector3d, YawPitchRollAngles, } from "@itwin/core-geometry";
10
+ import { Cartographic } from "./geometry/Cartographic";
11
+ import { GeographicCRS } from "./geometry/CoordinateReferenceSystem";
12
+ import { IModelError } from "./IModelError";
13
+ /** The position and orientation of an iModel on the earth in [ECEF](https://en.wikipedia.org/wiki/ECEF) (Earth Centered Earth Fixed) coordinates
14
+ * @note This is an immutable type - all of its properties are frozen.
15
+ * @see [GeoLocation of iModels]($docs/learning/GeoLocation.md)
16
+ * @public
17
+ */
18
+ export class EcefLocation {
19
+ /** Construct a new EcefLocation. Once constructed, it is frozen and cannot be modified. */
20
+ constructor(props) {
21
+ this.origin = Point3d.fromJSON(props.origin).freeze();
22
+ this.orientation = YawPitchRollAngles.fromJSON(props.orientation).freeze();
23
+ if (props.cartographicOrigin)
24
+ this.cartographicOrigin = Cartographic.fromRadians({ longitude: props.cartographicOrigin.longitude, latitude: props.cartographicOrigin.latitude, height: props.cartographicOrigin.height }).freeze();
25
+ if (props.xVector && props.yVector) {
26
+ this.xVector = Vector3d.fromJSON(props.xVector).freeze();
27
+ this.yVector = Vector3d.fromJSON(props.yVector).freeze();
28
+ }
29
+ let matrix;
30
+ if (this.xVector && this.yVector) {
31
+ const zVector = this.xVector.crossProduct(this.yVector);
32
+ if (zVector.normalizeInPlace())
33
+ matrix = Matrix3d.createColumns(this.xVector, this.yVector, zVector);
34
+ }
35
+ if (!matrix)
36
+ matrix = this.orientation.toMatrix3d();
37
+ this._transform = Transform.createOriginAndMatrix(this.origin, matrix);
38
+ this._transform.freeze();
39
+ }
40
+ /** Get the transform from iModel Spatial coordinates to ECEF from this EcefLocation */
41
+ getTransform() { return this._transform; }
42
+ /** Returns true if this EcefLocation is not located at the center of the Earth.
43
+ * @alpha are locations very close to the center considered valid? What are the specific criteria?
44
+ */
45
+ get isValid() {
46
+ return !this.origin.isZero;
47
+ }
48
+ /** Construct ECEF Location from cartographic origin with optional known point and angle. */
49
+ static createFromCartographicOrigin(origin, point, angle) {
50
+ const ecefOrigin = origin.toEcef();
51
+ const deltaRadians = 10 / Constant.earthRadiusWGS84.polar;
52
+ const northCarto = Cartographic.fromRadians({ longitude: origin.longitude, latitude: origin.latitude + deltaRadians, height: origin.height });
53
+ const eastCarto = Cartographic.fromRadians({ longitude: origin.longitude + deltaRadians, latitude: origin.latitude, height: origin.height });
54
+ const ecefNorth = northCarto.toEcef();
55
+ const ecefEast = eastCarto.toEcef();
56
+ const xVector = Vector3d.createStartEnd(ecefOrigin, ecefEast).normalize();
57
+ const yVector = Vector3d.createStartEnd(ecefOrigin, ecefNorth).normalize();
58
+ const matrix = Matrix3d.createRigidFromColumns(xVector, yVector, AxisOrder.XYZ);
59
+ if (angle !== undefined) {
60
+ const north = Matrix3d.createRotationAroundAxisIndex(AxisIndex.Z, angle);
61
+ matrix.multiplyMatrixMatrix(north, matrix);
62
+ }
63
+ if (point !== undefined) {
64
+ const delta = matrix.multiplyVector(Vector3d.create(-point.x, -point.y, -point.z));
65
+ ecefOrigin.addInPlace(delta);
66
+ }
67
+ return new EcefLocation({ origin: ecefOrigin, orientation: YawPitchRollAngles.createFromMatrix3d(matrix), cartographicOrigin: origin });
68
+ }
69
+ /** Get the location center of the earth in the iModel coordinate system. */
70
+ get earthCenter() {
71
+ const matrix = this.orientation.toMatrix3d();
72
+ return Point3d.createFrom(matrix.multiplyTransposeXYZ(-this.origin.x, -this.origin.y, -this.origin.z));
73
+ }
74
+ /** Return true if this location is equivalent to another location within a small tolerance. */
75
+ isAlmostEqual(other) {
76
+ if (!this.origin.isAlmostEqual(other.origin) || !this.orientation.isAlmostEqual(other.orientation))
77
+ return false;
78
+ if ((this.xVector === undefined) !== (other.xVector === undefined) || (this.yVector === undefined) !== (other.yVector === undefined))
79
+ return false;
80
+ if (this.xVector !== undefined && other.xVector !== undefined && !this.xVector.isAlmostEqual(other.xVector))
81
+ return false;
82
+ if (this.yVector !== undefined && other.yVector !== undefined && !this.yVector.isAlmostEqual(other.yVector))
83
+ return false;
84
+ const thisCarto = this.cartographicOrigin;
85
+ const otherCarto = other.cartographicOrigin;
86
+ if (undefined === thisCarto || undefined === otherCarto)
87
+ return undefined === thisCarto && undefined === otherCarto;
88
+ return thisCarto.equalsEpsilon(otherCarto, Geometry.smallMetricDistance);
89
+ }
90
+ toJSON() {
91
+ const props = {
92
+ origin: this.origin.toJSON(),
93
+ orientation: this.orientation.toJSON(),
94
+ };
95
+ if (this.cartographicOrigin)
96
+ props.cartographicOrigin = this.cartographicOrigin.toJSON();
97
+ if (this.xVector)
98
+ props.xVector = this.xVector.toJSON();
99
+ if (this.yVector)
100
+ props.yVector = this.yVector.toJSON();
101
+ return props;
102
+ }
103
+ }
104
+ /** Represents an iModel in JavaScript.
105
+ * @see [GeoLocation of iModels]($docs/learning/GeoLocation.md)
106
+ * @public
107
+ */
108
+ export class IModel {
109
+ /** @internal */
110
+ constructor(tokenProps) {
111
+ /** Event raised after [[name]] changes. */
112
+ this.onNameChanged = new BeEvent();
113
+ /** Event raised after [[rootSubject]] changes. */
114
+ this.onRootSubjectChanged = new BeEvent();
115
+ /** Event raised after [[projectExtents]] changes. */
116
+ this.onProjectExtentsChanged = new BeEvent();
117
+ /** Event raised after [[globalOrigin]] changes. */
118
+ this.onGlobalOriginChanged = new BeEvent();
119
+ /** Event raised after [[ecefLocation]] changes. */
120
+ this.onEcefLocationChanged = new BeEvent();
121
+ /** Event raised after [[geographicCoordinateSystem]] changes. */
122
+ this.onGeographicCoordinateSystemChanged = new BeEvent();
123
+ this._openMode = OpenMode.Readonly;
124
+ this.changeset = { id: "", index: 0 };
125
+ this._fileKey = "";
126
+ if (tokenProps) {
127
+ this._fileKey = tokenProps.key;
128
+ this._iTwinId = tokenProps.iTwinId;
129
+ this._iModelId = tokenProps.iModelId;
130
+ if (tokenProps.changeset)
131
+ this.changeset = tokenProps.changeset;
132
+ }
133
+ }
134
+ /** Name of the iModel */
135
+ get name() {
136
+ assert(this._name !== undefined);
137
+ return this._name;
138
+ }
139
+ set name(name) {
140
+ if (name !== this._name) {
141
+ const old = this._name;
142
+ this._name = name;
143
+ if (undefined !== old)
144
+ this.onNameChanged.raiseEvent(old);
145
+ }
146
+ }
147
+ /** The name and description of the root subject of this iModel */
148
+ get rootSubject() {
149
+ assert(this._rootSubject !== undefined);
150
+ return this._rootSubject;
151
+ }
152
+ set rootSubject(subject) {
153
+ if (undefined === this._rootSubject || this._rootSubject.name !== subject.name || this._rootSubject.description !== subject.description) {
154
+ const old = this._rootSubject;
155
+ this._rootSubject = subject;
156
+ if (old)
157
+ this.onRootSubjectChanged.raiseEvent(old);
158
+ }
159
+ }
160
+ /**
161
+ * The volume, in spatial coordinates, inside which the entire project is contained.
162
+ * @note The object returned from this method is frozen. You *must* make a copy before you do anything that might attempt to modify it.
163
+ */
164
+ get projectExtents() {
165
+ assert(undefined !== this._projectExtents);
166
+ return this._projectExtents;
167
+ }
168
+ set projectExtents(extents) {
169
+ // Don't allow any axis of the project extents to be less than 1 meter.
170
+ const projectExtents = extents.clone();
171
+ projectExtents.ensureMinLengths(1.0);
172
+ if (!this._projectExtents || !this._projectExtents.isAlmostEqual(projectExtents)) {
173
+ const old = this._projectExtents;
174
+ projectExtents.freeze();
175
+ this._projectExtents = projectExtents;
176
+ if (old)
177
+ this.onProjectExtentsChanged.raiseEvent(old);
178
+ }
179
+ }
180
+ /** An offset to be applied to all spatial coordinates. */
181
+ get globalOrigin() {
182
+ assert(this._globalOrigin !== undefined);
183
+ return this._globalOrigin;
184
+ }
185
+ set globalOrigin(org) {
186
+ if (!this._globalOrigin || !this._globalOrigin.isAlmostEqual(org)) {
187
+ const old = this._globalOrigin;
188
+ org.freeze();
189
+ this._globalOrigin = org;
190
+ if (old)
191
+ this.onGlobalOriginChanged.raiseEvent(old);
192
+ }
193
+ }
194
+ /** The [EcefLocation]($docs/learning/glossary#ecefLocation) of the iModel in Earth Centered Earth Fixed coordinates.
195
+ * If the iModel property geographicCoordinateSystem is not defined then the ecefLocation provides a geolocation by defining a
196
+ * 3D coordinate system relative to the Earth model WGS84. Refer to additional documentation for details. If the geographicCoordinateSystem
197
+ * property is defined then the ecefLocation must be used with care. When the geographicCoordinateSystem is defined it indicates the
198
+ * iModel cartesian space is the result of a cartographic projection. This implies a flattening of the Earth surface process that
199
+ * results in scale, angular or area distortion. The ecefLocation is then an approximation calculated at the center of the project extent.
200
+ * If the project is more than 2 kilometer in size, the ecefLocation may represent a poor approximation of the effective
201
+ * cartographic projection used and a linear transformation should then be calculated at the exact origin of the data
202
+ * it must position.
203
+ * @see [GeoLocation of iModels]($docs/learning/GeoLocation.md)
204
+ */
205
+ get ecefLocation() {
206
+ return this._ecefLocation;
207
+ }
208
+ set ecefLocation(ecefLocation) {
209
+ const old = this._ecefLocation;
210
+ if (!old && !ecefLocation)
211
+ return;
212
+ else if (old && ecefLocation && old.isAlmostEqual(ecefLocation))
213
+ return;
214
+ this._ecefLocation = ecefLocation;
215
+ this.onEcefLocationChanged.raiseEvent(old);
216
+ }
217
+ /** Set the [EcefLocation]($docs/learning/glossary#ecefLocation) for this iModel. */
218
+ setEcefLocation(ecef) {
219
+ this.ecefLocation = new EcefLocation(ecef);
220
+ }
221
+ /** The geographic coordinate reference system of the iModel. */
222
+ get geographicCoordinateSystem() {
223
+ return this._geographicCoordinateSystem;
224
+ }
225
+ set geographicCoordinateSystem(geoCRS) {
226
+ const old = this._geographicCoordinateSystem;
227
+ if (!old && !geoCRS)
228
+ return;
229
+ else if (old && geoCRS && old.equals(geoCRS))
230
+ return;
231
+ this._geographicCoordinateSystem = geoCRS;
232
+ this.onGeographicCoordinateSystemChanged.raiseEvent(old);
233
+ }
234
+ /** Sets the geographic coordinate reference system from GeographicCRSProps. */
235
+ setGeographicCoordinateSystem(geoCRS) {
236
+ this.geographicCoordinateSystem = new GeographicCRS(geoCRS);
237
+ }
238
+ /** @internal */
239
+ getConnectionProps() {
240
+ return {
241
+ name: this.name,
242
+ rootSubject: this.rootSubject,
243
+ projectExtents: this.projectExtents.toJSON(),
244
+ globalOrigin: this.globalOrigin.toJSON(),
245
+ ecefLocation: this.ecefLocation,
246
+ geographicCoordinateSystem: this.geographicCoordinateSystem,
247
+ ...this._getRpcProps(),
248
+ };
249
+ }
250
+ /** @internal */
251
+ toJSON() {
252
+ return this.getConnectionProps();
253
+ }
254
+ /** Get the key that was used to open this iModel. This is the value used for Rpc and Ipc communications. */
255
+ get key() { return this._fileKey; }
256
+ /** The Guid that identifies the iTwin that owns this iModel. */
257
+ get iTwinId() { return this._iTwinId; }
258
+ /** The Guid that identifies this iModel. */
259
+ get iModelId() { return this._iModelId; }
260
+ /** The [[OpenMode]] used for this IModel. */
261
+ get openMode() { return this._openMode; }
262
+ /** Return a token for RPC operations.
263
+ * @throws IModelError if the iModel is not open.
264
+ */
265
+ getRpcProps() {
266
+ if (!this.isOpen)
267
+ throw new IModelError(IModelStatus.BadRequest, "IModel is not open for rpc");
268
+ return this._getRpcProps();
269
+ }
270
+ /** Returns the iModel's RPC properties.
271
+ * @note It is an error to attempt to use these properties as a token for RPC operations if the iModel is not open.
272
+ * @internal
273
+ */
274
+ _getRpcProps() {
275
+ return {
276
+ key: this._fileKey,
277
+ iTwinId: this.iTwinId,
278
+ iModelId: this.iModelId,
279
+ changeset: this.changeset,
280
+ };
281
+ }
282
+ /** @internal */
283
+ initialize(name, props) {
284
+ this.name = name;
285
+ this.rootSubject = props.rootSubject;
286
+ this.projectExtents = Range3d.fromJSON(props.projectExtents);
287
+ this.globalOrigin = Point3d.fromJSON(props.globalOrigin);
288
+ const ecefLocation = props.ecefLocation ? new EcefLocation(props.ecefLocation) : undefined;
289
+ this.ecefLocation = (ecefLocation === null || ecefLocation === void 0 ? void 0 : ecefLocation.isValid) ? ecefLocation : undefined;
290
+ this.geographicCoordinateSystem = props.geographicCoordinateSystem ? new GeographicCRS(props.geographicCoordinateSystem) : undefined;
291
+ }
292
+ /** Get the default subCategoryId for the supplied categoryId */
293
+ static getDefaultSubCategoryId(categoryId) {
294
+ return Id64.isValid(categoryId) ? Id64.fromLocalAndBriefcaseIds(Id64.getLocalId(categoryId) + 1, Id64.getBriefcaseId(categoryId)) : Id64.invalid;
295
+ }
296
+ /** True if this iModel has an [EcefLocation]($docs/learning/glossary#ecefLocation). */
297
+ get isGeoLocated() { return undefined !== this._ecefLocation; }
298
+ /** Get the Transform from this iModel's Spatial coordinates to ECEF coordinates using its [[IModel.ecefLocation]].
299
+ * @throws IModelError if [[isGeoLocated]] is false.
300
+ */
301
+ getEcefTransform() {
302
+ if (undefined === this._ecefLocation)
303
+ throw new IModelError(GeoServiceStatus.NoGeoLocation, "iModel is not GeoLocated");
304
+ return this._ecefLocation.getTransform();
305
+ }
306
+ /** Convert a point in this iModel's Spatial coordinates to an ECEF point using its [[IModel.ecefLocation]].
307
+ * @param spatial A point in the iModel's spatial coordinates
308
+ * @param result If defined, use this for output
309
+ * @returns A Point3d in ECEF coordinates
310
+ * @throws IModelError if [[isGeoLocated]] is false.
311
+ */
312
+ spatialToEcef(spatial, result) { return this.getEcefTransform().multiplyPoint3d(spatial, result); }
313
+ /** Convert a point in ECEF coordinates to a point in this iModel's Spatial coordinates using its [[ecefLocation]].
314
+ * @param ecef A point in ECEF coordinates
315
+ * @param result If defined, use this for output
316
+ * @returns A Point3d in this iModel's spatial coordinates
317
+ * @throws IModelError if [[isGeoLocated]] is false.
318
+ * @note The resultant point will only be meaningful if the ECEF coordinate is close on the earth to the iModel.
319
+ */
320
+ ecefToSpatial(ecef, result) { return this.getEcefTransform().multiplyInversePoint3d(ecef, result); }
321
+ /** Convert a point in this iModel's Spatial coordinates to a [[Cartographic]] using its [[IModel.ecefLocation]].
322
+ * @param spatial A point in the iModel's spatial coordinates
323
+ * @param result If defined, use this for output
324
+ * @returns A Cartographic location
325
+ * @throws IModelError if [[isGeoLocated]] is false.
326
+ */
327
+ spatialToCartographicFromEcef(spatial, result) { return Cartographic.fromEcef(this.spatialToEcef(spatial), result); }
328
+ /** Convert a [[Cartographic]] to a point in this iModel's Spatial coordinates using its [[IModel.ecefLocation]].
329
+ * @param cartographic A cartographic location
330
+ * @param result If defined, use this for output
331
+ * @returns A point in this iModel's spatial coordinates
332
+ * @throws IModelError if [[isGeoLocated]] is false.
333
+ * @note The resultant point will only be meaningful if the ECEF coordinate is close on the earth to the iModel.
334
+ */
335
+ cartographicToSpatialFromEcef(cartographic, result) { return this.ecefToSpatial(cartographic.toEcef(result), result); }
336
+ }
337
+ /** The Id of the repository model. */
338
+ IModel.repositoryModelId = "0x1";
339
+ /** The Id of the root subject element. */
340
+ IModel.rootSubjectId = "0x1";
341
+ /** The Id of the dictionary model. */
342
+ IModel.dictionaryId = "0x10";
343
343
  //# sourceMappingURL=IModel.js.map