@itwin/core-common 3.5.0-dev.4 → 3.5.0-dev.41

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