@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
@@ -1 +1 @@
1
- {"version":3,"file":"Snapping.js","sourceRoot":"","sources":["../../src/Snapping.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Geometry\n */\n\nimport { Id64Array, Id64String } from \"@itwin/core-bentley\";\nimport { Matrix4dProps, XYZProps } from \"@itwin/core-geometry\";\nimport { GeometryStreamProps } from \"./geometry/GeometryStream\";\nimport { GeometryClass } from \"./GeometryParams\";\nimport { ViewFlagProps } from \"./ViewFlags\";\n\n/** Information required to request a *snap* to a pickable decoration from the front end to the back end.\n * @internal\n */\nexport interface DecorationGeometryProps {\n readonly id: Id64String;\n readonly geometryStream: GeometryStreamProps;\n}\n\n/** Information required to request a *snap* to an element from the front end to the back end.\n * Includes the viewing parameters so that snap can be relative to the view direction, viewing mode, etc.\n * @internal\n */\nexport interface SnapRequestProps {\n id: Id64String;\n testPoint: XYZProps;\n closePoint: XYZProps;\n worldToView: Matrix4dProps;\n viewFlags?: ViewFlagProps;\n snapModes?: number[];\n snapAperture?: number;\n snapDivisor?: number;\n subCategoryId?: Id64String;\n geometryClass?: GeometryClass;\n intersectCandidates?: Id64Array;\n decorationGeometry?: DecorationGeometryProps[];\n}\n\n/** Information returned from the back end to the front end holding the result of a *snap* operation.\n * @internal\n */\nexport interface SnapResponseProps {\n status: number;\n snapMode?: number;\n heat?: number;\n geomType?: number;\n parentGeomType?: number;\n hitPoint?: XYZProps;\n snapPoint?: XYZProps;\n normal?: XYZProps;\n curve?: any;\n intersectCurve?: any;\n intersectId?: string;\n}\n"]}
1
+ {"version":3,"file":"Snapping.js","sourceRoot":"","sources":["../../src/Snapping.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Geometry\r\n */\r\n\r\nimport { Id64Array, Id64String } from \"@itwin/core-bentley\";\r\nimport { Matrix4dProps, XYZProps } from \"@itwin/core-geometry\";\r\nimport { GeometryStreamProps } from \"./geometry/GeometryStream\";\r\nimport { GeometryClass } from \"./GeometryParams\";\r\nimport { ViewFlagProps } from \"./ViewFlags\";\r\n\r\n/** Information required to request a *snap* to a pickable decoration from the front end to the back end.\r\n * @internal\r\n */\r\nexport interface DecorationGeometryProps {\r\n readonly id: Id64String;\r\n readonly geometryStream: GeometryStreamProps;\r\n}\r\n\r\n/** Information required to request a *snap* to an element from the front end to the back end.\r\n * Includes the viewing parameters so that snap can be relative to the view direction, viewing mode, etc.\r\n * @internal\r\n */\r\nexport interface SnapRequestProps {\r\n id: Id64String;\r\n testPoint: XYZProps;\r\n closePoint: XYZProps;\r\n worldToView: Matrix4dProps;\r\n viewFlags?: ViewFlagProps;\r\n snapModes?: number[];\r\n snapAperture?: number;\r\n snapDivisor?: number;\r\n subCategoryId?: Id64String;\r\n geometryClass?: GeometryClass;\r\n intersectCandidates?: Id64Array;\r\n decorationGeometry?: DecorationGeometryProps[];\r\n}\r\n\r\n/** Information returned from the back end to the front end holding the result of a *snap* operation.\r\n * @internal\r\n */\r\nexport interface SnapResponseProps {\r\n status: number;\r\n snapMode?: number;\r\n heat?: number;\r\n geomType?: number;\r\n parentGeomType?: number;\r\n hitPoint?: XYZProps;\r\n snapPoint?: XYZProps;\r\n normal?: XYZProps;\r\n curve?: any;\r\n intersectCurve?: any;\r\n intersectId?: string;\r\n}\r\n"]}
@@ -1,28 +1,28 @@
1
- /** @packageDocumentation
2
- * @module Utils
3
- */
4
- import { Vector3d } from "@itwin/core-geometry";
5
- import { Cartographic } from "./geometry/Cartographic";
6
- /** @public
7
- * calculate solar angles (in radians) based at a given date/time and cartographic location.
8
- */
9
- export declare function calculateSolarAngles(date: Date, location: Cartographic): {
10
- azimuth: number;
11
- elevation: number;
12
- };
13
- /** @public
14
- * calculate solar direction based at a given date/time and cartpgrphic location.
15
- */
16
- export declare function calculateSolarDirection(date: Date, location: Cartographic): Vector3d;
17
- /** @public
18
- * calculate solar direction corresponding to the given azimuth and elevation (altitude) angles in degrees.
19
- */
20
- export declare function calculateSolarDirectionFromAngles(azimuthElevation: {
21
- azimuth: number;
22
- elevation: number;
23
- }): Vector3d;
24
- /** @public
25
- * calculate solar sunrise or sunset for a given day and cartographic location.
26
- */
27
- export declare function calculateSunriseOrSunset(date: Date, location: Cartographic, sunrise: boolean): Date;
1
+ /** @packageDocumentation
2
+ * @module Utils
3
+ */
4
+ import { Vector3d } from "@itwin/core-geometry";
5
+ import { Cartographic } from "./geometry/Cartographic";
6
+ /** @public
7
+ * calculate solar angles (in radians) based at a given date/time and cartographic location.
8
+ */
9
+ export declare function calculateSolarAngles(date: Date, location: Cartographic): {
10
+ azimuth: number;
11
+ elevation: number;
12
+ };
13
+ /** @public
14
+ * calculate solar direction based at a given date/time and cartpgrphic location.
15
+ */
16
+ export declare function calculateSolarDirection(date: Date, location: Cartographic): Vector3d;
17
+ /** @public
18
+ * calculate solar direction corresponding to the given azimuth and elevation (altitude) angles in degrees.
19
+ */
20
+ export declare function calculateSolarDirectionFromAngles(azimuthElevation: {
21
+ azimuth: number;
22
+ elevation: number;
23
+ }): Vector3d;
24
+ /** @public
25
+ * calculate solar sunrise or sunset for a given day and cartographic location.
26
+ */
27
+ export declare function calculateSunriseOrSunset(date: Date, location: Cartographic, sunrise: boolean): Date;
28
28
  //# sourceMappingURL=SolarCalculate.d.ts.map
@@ -1,212 +1,212 @@
1
- "use strict";
2
- /*---------------------------------------------------------------------------------------------
3
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
- * See LICENSE.md in the project root for license terms and full copyright notice.
5
- *--------------------------------------------------------------------------------------------*/
6
- /** @packageDocumentation
7
- * @module Utils
8
- */
9
- Object.defineProperty(exports, "__esModule", { value: true });
10
- exports.calculateSunriseOrSunset = exports.calculateSolarDirectionFromAngles = exports.calculateSolarDirection = exports.calculateSolarAngles = void 0;
11
- const core_geometry_1 = require("@itwin/core-geometry");
12
- // cspell:ignore mrad sinm sint aarg
13
- // Code below loosely translated from https://www.esrl.noaa.gov/gmd/grad/solcalc/
14
- function calcTimeJulianCent(jd) {
15
- const T = (jd - 2451545.0) / 36525.0;
16
- return T;
17
- }
18
- function radToDeg(angleRad) {
19
- return (180.0 * angleRad / Math.PI);
20
- }
21
- function degToRad(angleDeg) {
22
- return (Math.PI * angleDeg / 180.0);
23
- }
24
- function calcGeomMeanLongSun(t) {
25
- let L0 = 280.46646 + t * (36000.76983 + t * (0.0003032));
26
- while (L0 > 360.0) {
27
- L0 -= 360.0;
28
- }
29
- while (L0 < 0.0) {
30
- L0 += 360.0;
31
- }
32
- return L0; // in degrees
33
- }
34
- function calcGeomMeanAnomalySun(t) {
35
- const M = 357.52911 + t * (35999.05029 - 0.0001537 * t);
36
- return M; // in degrees
37
- }
38
- function calcEccentricityEarthOrbit(t) {
39
- const e = 0.016708634 - t * (0.000042037 + 0.0000001267 * t);
40
- return e; // unitless
41
- }
42
- function calcSunEqOfCenter(t) {
43
- const m = calcGeomMeanAnomalySun(t);
44
- const mrad = degToRad(m);
45
- const sinm = Math.sin(mrad);
46
- const sin2m = Math.sin(mrad + mrad);
47
- const sin3m = Math.sin(mrad + mrad + mrad);
48
- const C = sinm * (1.914602 - t * (0.004817 + 0.000014 * t)) + sin2m * (0.019993 - 0.000101 * t) + sin3m * 0.000289;
49
- return C; // in degrees
50
- }
51
- function calcSunTrueLong(t) {
52
- const l0 = calcGeomMeanLongSun(t);
53
- const c = calcSunEqOfCenter(t);
54
- const O = l0 + c;
55
- return O; // in degrees
56
- }
57
- function calcSunApparentLong(t) {
58
- const o = calcSunTrueLong(t);
59
- const omega = 125.04 - 1934.136 * t;
60
- const lambda = o - 0.00569 - 0.00478 * Math.sin(degToRad(omega));
61
- return lambda; // in degrees
62
- }
63
- function calcMeanObliquityOfEcliptic(t) {
64
- const seconds = 21.448 - t * (46.8150 + t * (0.00059 - t * (0.001813)));
65
- const e0 = 23.0 + (26.0 + (seconds / 60.0)) / 60.0;
66
- return e0; // in degrees
67
- }
68
- function calcObliquityCorrection(t) {
69
- const e0 = calcMeanObliquityOfEcliptic(t);
70
- const omega = 125.04 - 1934.136 * t;
71
- const e = e0 + 0.00256 * Math.cos(degToRad(omega));
72
- return e; // in degrees
73
- }
74
- function calcSunDeclination(t) {
75
- const e = calcObliquityCorrection(t);
76
- const lambda = calcSunApparentLong(t);
77
- const sint = Math.sin(degToRad(e)) * Math.sin(degToRad(lambda));
78
- const theta = radToDeg(Math.asin(sint));
79
- return theta; // in degrees
80
- }
81
- function calcEquationOfTime(t) {
82
- const epsilon = calcObliquityCorrection(t);
83
- const l0 = calcGeomMeanLongSun(t);
84
- const e = calcEccentricityEarthOrbit(t);
85
- const m = calcGeomMeanAnomalySun(t);
86
- let y = Math.tan(degToRad(epsilon) / 2.0);
87
- y *= y;
88
- const sin2l0 = Math.sin(2.0 * degToRad(l0));
89
- const sinm = Math.sin(degToRad(m));
90
- const cos2l0 = Math.cos(2.0 * degToRad(l0));
91
- const sin4l0 = Math.sin(4.0 * degToRad(l0));
92
- const sin2m = Math.sin(2.0 * degToRad(m));
93
- const eTime = y * sin2l0 - 2.0 * e * sinm + 4.0 * e * y * sinm * cos2l0 - 0.5 * y * y * sin4l0 - 1.25 * e * e * sin2m;
94
- return radToDeg(eTime) * 4.0; // in minutes of time
95
- }
96
- function calcAzEl(t, localTime, latitude, longitude, zone) {
97
- const eqTime = calcEquationOfTime(t);
98
- const theta = calcSunDeclination(t);
99
- const solarTimeFix = eqTime + 4.0 * longitude - 60.0 * zone;
100
- let trueSolarTime = localTime + solarTimeFix;
101
- while (trueSolarTime > 1440)
102
- trueSolarTime -= 1440;
103
- let hourAngle = trueSolarTime / 4.0 - 180.0;
104
- if (hourAngle < -180) {
105
- hourAngle += 360.0;
106
- }
107
- const haRad = degToRad(hourAngle);
108
- let csz = Math.sin(degToRad(latitude)) * Math.sin(degToRad(theta)) + Math.cos(degToRad(latitude)) * Math.cos(degToRad(theta)) * Math.cos(haRad);
109
- if (csz > 1.0) {
110
- csz = 1.0;
111
- }
112
- else if (csz < -1.0) {
113
- csz = -1.0;
114
- }
115
- const zenith = radToDeg(Math.acos(csz));
116
- const azDenom = (Math.cos(degToRad(latitude)) * Math.sin(degToRad(zenith)));
117
- let azimuth;
118
- if (Math.abs(azDenom) > 0.001) {
119
- let azRad = ((Math.sin(degToRad(latitude)) * Math.cos(degToRad(zenith))) - Math.sin(degToRad(theta))) / azDenom;
120
- if (Math.abs(azRad) > 1.0) {
121
- if (azRad < 0) {
122
- azRad = -1.0;
123
- }
124
- else {
125
- azRad = 1.0;
126
- }
127
- }
128
- azimuth = 180.0 - radToDeg(Math.acos(azRad));
129
- if (hourAngle > 0.0) {
130
- azimuth = -azimuth;
131
- }
132
- }
133
- else {
134
- if (latitude > 0.0) {
135
- azimuth = 180.0;
136
- }
137
- else {
138
- azimuth = 0.0;
139
- }
140
- }
141
- if (azimuth < 0.0) {
142
- azimuth += 360.0;
143
- }
144
- return { azimuth, elevation: 90 - zenith };
145
- }
146
- function calculateJulianDay(date) {
147
- return Math.floor(date.getTime() / 86400000) + 2440587.5; // https://stackoverflow.com/questions/11759992/calculating-jdayjulian-day-in-javascript
148
- }
149
- /** @public
150
- * calculate solar angles (in radians) based at a given date/time and cartographic location.
151
- */
152
- function calculateSolarAngles(date, location) {
153
- const jDay = calculateJulianDay(date);
154
- const latitude = location.latitudeDegrees;
155
- const longitude = location.longitudeDegrees;
156
- const utcMinutes = date.getUTCHours() * 60 + date.getUTCMinutes() + date.getUTCSeconds() / 60;
157
- const zone = Math.floor(.5 + longitude / 15.0); // date.getTimeZoneOffset mixes in DST.
158
- const localMinutes = utcMinutes + zone * 60;
159
- const jTotal = jDay + utcMinutes / 1440.0;
160
- const T = calcTimeJulianCent(jTotal);
161
- return calcAzEl(T, localMinutes, latitude, longitude, zone);
162
- }
163
- exports.calculateSolarAngles = calculateSolarAngles;
164
- /** @public
165
- * calculate solar direction based at a given date/time and cartpgrphic location.
166
- */
167
- function calculateSolarDirection(date, location) {
168
- return calculateSolarDirectionFromAngles(calculateSolarAngles(date, location));
169
- }
170
- exports.calculateSolarDirection = calculateSolarDirection;
171
- /** @public
172
- * calculate solar direction corresponding to the given azimuth and elevation (altitude) angles in degrees.
173
- */
174
- function calculateSolarDirectionFromAngles(azimuthElevation) {
175
- const azimuth = core_geometry_1.Angle.degreesToRadians(azimuthElevation.azimuth);
176
- const elevation = core_geometry_1.Angle.degreesToRadians(azimuthElevation.elevation);
177
- const cosElevation = Math.cos(elevation);
178
- const sinElevation = Math.sin(elevation);
179
- return core_geometry_1.Vector3d.create(-Math.sin(azimuth) * cosElevation, -Math.cos(azimuth) * cosElevation, -sinElevation);
180
- }
181
- exports.calculateSolarDirectionFromAngles = calculateSolarDirectionFromAngles;
182
- function dateFromUtcMinutes(date, utcMinutes) {
183
- const utcHours = Math.floor(utcMinutes / 60.0);
184
- const output = new Date(date);
185
- output.setUTCHours(utcHours);
186
- output.setUTCMinutes(Math.floor(.5 + utcMinutes - 60.0 * utcHours));
187
- output.setUTCSeconds(0);
188
- return output;
189
- }
190
- function calcSunriseUtcMinutes(rise, lat, longitude, jDay) {
191
- const t = calcTimeJulianCent(jDay);
192
- const eqTime = calcEquationOfTime(t);
193
- const solarDec = calcSunDeclination(t);
194
- const latRad = degToRad(lat);
195
- const sdRad = degToRad(solarDec);
196
- const hAarg = (Math.cos(degToRad(90.833)) / (Math.cos(latRad) * Math.cos(sdRad)) - Math.tan(latRad) * Math.tan(sdRad));
197
- const hourAngle = Math.acos(hAarg);
198
- const delta = longitude + radToDeg(rise ? hourAngle : -hourAngle);
199
- return 720 - (4.0 * delta) - eqTime; // in UTC minutes
200
- }
201
- /** @public
202
- * calculate solar sunrise or sunset for a given day and cartographic location.
203
- */
204
- function calculateSunriseOrSunset(date, location, sunrise) {
205
- const jDay = calculateJulianDay(date);
206
- const longitude = location.longitudeDegrees;
207
- const latitude = location.latitudeDegrees;
208
- const utcMinutes = calcSunriseUtcMinutes(sunrise, latitude, longitude, jDay);
209
- return sunrise ? dateFromUtcMinutes(date, utcMinutes) : dateFromUtcMinutes(date, calcSunriseUtcMinutes(sunrise, latitude, longitude, jDay + utcMinutes / 1440));
210
- }
211
- exports.calculateSunriseOrSunset = calculateSunriseOrSunset;
1
+ "use strict";
2
+ /*---------------------------------------------------------------------------------------------
3
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
+ * See LICENSE.md in the project root for license terms and full copyright notice.
5
+ *--------------------------------------------------------------------------------------------*/
6
+ /** @packageDocumentation
7
+ * @module Utils
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.calculateSunriseOrSunset = exports.calculateSolarDirectionFromAngles = exports.calculateSolarDirection = exports.calculateSolarAngles = void 0;
11
+ const core_geometry_1 = require("@itwin/core-geometry");
12
+ // cspell:ignore mrad sinm sint aarg
13
+ // Code below loosely translated from https://www.esrl.noaa.gov/gmd/grad/solcalc/
14
+ function calcTimeJulianCent(jd) {
15
+ const T = (jd - 2451545.0) / 36525.0;
16
+ return T;
17
+ }
18
+ function radToDeg(angleRad) {
19
+ return (180.0 * angleRad / Math.PI);
20
+ }
21
+ function degToRad(angleDeg) {
22
+ return (Math.PI * angleDeg / 180.0);
23
+ }
24
+ function calcGeomMeanLongSun(t) {
25
+ let L0 = 280.46646 + t * (36000.76983 + t * (0.0003032));
26
+ while (L0 > 360.0) {
27
+ L0 -= 360.0;
28
+ }
29
+ while (L0 < 0.0) {
30
+ L0 += 360.0;
31
+ }
32
+ return L0; // in degrees
33
+ }
34
+ function calcGeomMeanAnomalySun(t) {
35
+ const M = 357.52911 + t * (35999.05029 - 0.0001537 * t);
36
+ return M; // in degrees
37
+ }
38
+ function calcEccentricityEarthOrbit(t) {
39
+ const e = 0.016708634 - t * (0.000042037 + 0.0000001267 * t);
40
+ return e; // unitless
41
+ }
42
+ function calcSunEqOfCenter(t) {
43
+ const m = calcGeomMeanAnomalySun(t);
44
+ const mrad = degToRad(m);
45
+ const sinm = Math.sin(mrad);
46
+ const sin2m = Math.sin(mrad + mrad);
47
+ const sin3m = Math.sin(mrad + mrad + mrad);
48
+ const C = sinm * (1.914602 - t * (0.004817 + 0.000014 * t)) + sin2m * (0.019993 - 0.000101 * t) + sin3m * 0.000289;
49
+ return C; // in degrees
50
+ }
51
+ function calcSunTrueLong(t) {
52
+ const l0 = calcGeomMeanLongSun(t);
53
+ const c = calcSunEqOfCenter(t);
54
+ const O = l0 + c;
55
+ return O; // in degrees
56
+ }
57
+ function calcSunApparentLong(t) {
58
+ const o = calcSunTrueLong(t);
59
+ const omega = 125.04 - 1934.136 * t;
60
+ const lambda = o - 0.00569 - 0.00478 * Math.sin(degToRad(omega));
61
+ return lambda; // in degrees
62
+ }
63
+ function calcMeanObliquityOfEcliptic(t) {
64
+ const seconds = 21.448 - t * (46.8150 + t * (0.00059 - t * (0.001813)));
65
+ const e0 = 23.0 + (26.0 + (seconds / 60.0)) / 60.0;
66
+ return e0; // in degrees
67
+ }
68
+ function calcObliquityCorrection(t) {
69
+ const e0 = calcMeanObliquityOfEcliptic(t);
70
+ const omega = 125.04 - 1934.136 * t;
71
+ const e = e0 + 0.00256 * Math.cos(degToRad(omega));
72
+ return e; // in degrees
73
+ }
74
+ function calcSunDeclination(t) {
75
+ const e = calcObliquityCorrection(t);
76
+ const lambda = calcSunApparentLong(t);
77
+ const sint = Math.sin(degToRad(e)) * Math.sin(degToRad(lambda));
78
+ const theta = radToDeg(Math.asin(sint));
79
+ return theta; // in degrees
80
+ }
81
+ function calcEquationOfTime(t) {
82
+ const epsilon = calcObliquityCorrection(t);
83
+ const l0 = calcGeomMeanLongSun(t);
84
+ const e = calcEccentricityEarthOrbit(t);
85
+ const m = calcGeomMeanAnomalySun(t);
86
+ let y = Math.tan(degToRad(epsilon) / 2.0);
87
+ y *= y;
88
+ const sin2l0 = Math.sin(2.0 * degToRad(l0));
89
+ const sinm = Math.sin(degToRad(m));
90
+ const cos2l0 = Math.cos(2.0 * degToRad(l0));
91
+ const sin4l0 = Math.sin(4.0 * degToRad(l0));
92
+ const sin2m = Math.sin(2.0 * degToRad(m));
93
+ const eTime = y * sin2l0 - 2.0 * e * sinm + 4.0 * e * y * sinm * cos2l0 - 0.5 * y * y * sin4l0 - 1.25 * e * e * sin2m;
94
+ return radToDeg(eTime) * 4.0; // in minutes of time
95
+ }
96
+ function calcAzEl(t, localTime, latitude, longitude, zone) {
97
+ const eqTime = calcEquationOfTime(t);
98
+ const theta = calcSunDeclination(t);
99
+ const solarTimeFix = eqTime + 4.0 * longitude - 60.0 * zone;
100
+ let trueSolarTime = localTime + solarTimeFix;
101
+ while (trueSolarTime > 1440)
102
+ trueSolarTime -= 1440;
103
+ let hourAngle = trueSolarTime / 4.0 - 180.0;
104
+ if (hourAngle < -180) {
105
+ hourAngle += 360.0;
106
+ }
107
+ const haRad = degToRad(hourAngle);
108
+ let csz = Math.sin(degToRad(latitude)) * Math.sin(degToRad(theta)) + Math.cos(degToRad(latitude)) * Math.cos(degToRad(theta)) * Math.cos(haRad);
109
+ if (csz > 1.0) {
110
+ csz = 1.0;
111
+ }
112
+ else if (csz < -1.0) {
113
+ csz = -1.0;
114
+ }
115
+ const zenith = radToDeg(Math.acos(csz));
116
+ const azDenom = (Math.cos(degToRad(latitude)) * Math.sin(degToRad(zenith)));
117
+ let azimuth;
118
+ if (Math.abs(azDenom) > 0.001) {
119
+ let azRad = ((Math.sin(degToRad(latitude)) * Math.cos(degToRad(zenith))) - Math.sin(degToRad(theta))) / azDenom;
120
+ if (Math.abs(azRad) > 1.0) {
121
+ if (azRad < 0) {
122
+ azRad = -1.0;
123
+ }
124
+ else {
125
+ azRad = 1.0;
126
+ }
127
+ }
128
+ azimuth = 180.0 - radToDeg(Math.acos(azRad));
129
+ if (hourAngle > 0.0) {
130
+ azimuth = -azimuth;
131
+ }
132
+ }
133
+ else {
134
+ if (latitude > 0.0) {
135
+ azimuth = 180.0;
136
+ }
137
+ else {
138
+ azimuth = 0.0;
139
+ }
140
+ }
141
+ if (azimuth < 0.0) {
142
+ azimuth += 360.0;
143
+ }
144
+ return { azimuth, elevation: 90 - zenith };
145
+ }
146
+ function calculateJulianDay(date) {
147
+ return Math.floor(date.getTime() / 86400000) + 2440587.5; // https://stackoverflow.com/questions/11759992/calculating-jdayjulian-day-in-javascript
148
+ }
149
+ /** @public
150
+ * calculate solar angles (in radians) based at a given date/time and cartographic location.
151
+ */
152
+ function calculateSolarAngles(date, location) {
153
+ const jDay = calculateJulianDay(date);
154
+ const latitude = location.latitudeDegrees;
155
+ const longitude = location.longitudeDegrees;
156
+ const utcMinutes = date.getUTCHours() * 60 + date.getUTCMinutes() + date.getUTCSeconds() / 60;
157
+ const zone = Math.floor(.5 + longitude / 15.0); // date.getTimeZoneOffset mixes in DST.
158
+ const localMinutes = utcMinutes + zone * 60;
159
+ const jTotal = jDay + utcMinutes / 1440.0;
160
+ const T = calcTimeJulianCent(jTotal);
161
+ return calcAzEl(T, localMinutes, latitude, longitude, zone);
162
+ }
163
+ exports.calculateSolarAngles = calculateSolarAngles;
164
+ /** @public
165
+ * calculate solar direction based at a given date/time and cartpgrphic location.
166
+ */
167
+ function calculateSolarDirection(date, location) {
168
+ return calculateSolarDirectionFromAngles(calculateSolarAngles(date, location));
169
+ }
170
+ exports.calculateSolarDirection = calculateSolarDirection;
171
+ /** @public
172
+ * calculate solar direction corresponding to the given azimuth and elevation (altitude) angles in degrees.
173
+ */
174
+ function calculateSolarDirectionFromAngles(azimuthElevation) {
175
+ const azimuth = core_geometry_1.Angle.degreesToRadians(azimuthElevation.azimuth);
176
+ const elevation = core_geometry_1.Angle.degreesToRadians(azimuthElevation.elevation);
177
+ const cosElevation = Math.cos(elevation);
178
+ const sinElevation = Math.sin(elevation);
179
+ return core_geometry_1.Vector3d.create(-Math.sin(azimuth) * cosElevation, -Math.cos(azimuth) * cosElevation, -sinElevation);
180
+ }
181
+ exports.calculateSolarDirectionFromAngles = calculateSolarDirectionFromAngles;
182
+ function dateFromUtcMinutes(date, utcMinutes) {
183
+ const utcHours = Math.floor(utcMinutes / 60.0);
184
+ const output = new Date(date);
185
+ output.setUTCHours(utcHours);
186
+ output.setUTCMinutes(Math.floor(.5 + utcMinutes - 60.0 * utcHours));
187
+ output.setUTCSeconds(0);
188
+ return output;
189
+ }
190
+ function calcSunriseUtcMinutes(rise, lat, longitude, jDay) {
191
+ const t = calcTimeJulianCent(jDay);
192
+ const eqTime = calcEquationOfTime(t);
193
+ const solarDec = calcSunDeclination(t);
194
+ const latRad = degToRad(lat);
195
+ const sdRad = degToRad(solarDec);
196
+ const hAarg = (Math.cos(degToRad(90.833)) / (Math.cos(latRad) * Math.cos(sdRad)) - Math.tan(latRad) * Math.tan(sdRad));
197
+ const hourAngle = Math.acos(hAarg);
198
+ const delta = longitude + radToDeg(rise ? hourAngle : -hourAngle);
199
+ return 720 - (4.0 * delta) - eqTime; // in UTC minutes
200
+ }
201
+ /** @public
202
+ * calculate solar sunrise or sunset for a given day and cartographic location.
203
+ */
204
+ function calculateSunriseOrSunset(date, location, sunrise) {
205
+ const jDay = calculateJulianDay(date);
206
+ const longitude = location.longitudeDegrees;
207
+ const latitude = location.latitudeDegrees;
208
+ const utcMinutes = calcSunriseUtcMinutes(sunrise, latitude, longitude, jDay);
209
+ return sunrise ? dateFromUtcMinutes(date, utcMinutes) : dateFromUtcMinutes(date, calcSunriseUtcMinutes(sunrise, latitude, longitude, jDay + utcMinutes / 1440));
210
+ }
211
+ exports.calculateSunriseOrSunset = calculateSunriseOrSunset;
212
212
  //# sourceMappingURL=SolarCalculate.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SolarCalculate.js","sourceRoot":"","sources":["../../src/SolarCalculate.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Utils\n */\n\nimport { Angle, Vector3d } from \"@itwin/core-geometry\";\nimport { Cartographic } from \"./geometry/Cartographic\";\n\n// cspell:ignore mrad sinm sint aarg\n\n// Code below loosely translated from https://www.esrl.noaa.gov/gmd/grad/solcalc/\nfunction calcTimeJulianCent(jd: number) {\n const T = (jd - 2451545.0) / 36525.0;\n return T;\n}\n\nfunction radToDeg(angleRad: number) {\n return (180.0 * angleRad / Math.PI);\n}\n\nfunction degToRad(angleDeg: number) {\n return (Math.PI * angleDeg / 180.0);\n}\n\nfunction calcGeomMeanLongSun(t: number) {\n let L0 = 280.46646 + t * (36000.76983 + t * (0.0003032));\n while (L0 > 360.0) {\n L0 -= 360.0;\n }\n while (L0 < 0.0) {\n L0 += 360.0;\n }\n return L0;\t\t// in degrees\n}\n\nfunction calcGeomMeanAnomalySun(t: number) {\n const M = 357.52911 + t * (35999.05029 - 0.0001537 * t);\n return M;\t\t// in degrees\n}\n\nfunction calcEccentricityEarthOrbit(t: number) {\n const e = 0.016708634 - t * (0.000042037 + 0.0000001267 * t);\n return e;\t\t// unitless\n}\n\nfunction calcSunEqOfCenter(t: number) {\n const m = calcGeomMeanAnomalySun(t);\n const mrad = degToRad(m);\n const sinm = Math.sin(mrad);\n const sin2m = Math.sin(mrad + mrad);\n const sin3m = Math.sin(mrad + mrad + mrad);\n const C = sinm * (1.914602 - t * (0.004817 + 0.000014 * t)) + sin2m * (0.019993 - 0.000101 * t) + sin3m * 0.000289;\n return C;\t\t// in degrees\n}\n\nfunction calcSunTrueLong(t: number) {\n const l0 = calcGeomMeanLongSun(t);\n const c = calcSunEqOfCenter(t);\n const O = l0 + c;\n return O;\t\t// in degrees\n}\n\nfunction calcSunApparentLong(t: number) {\n const o = calcSunTrueLong(t);\n const omega = 125.04 - 1934.136 * t;\n const lambda = o - 0.00569 - 0.00478 * Math.sin(degToRad(omega));\n return lambda;\t\t// in degrees\n}\n\nfunction calcMeanObliquityOfEcliptic(t: number) {\n const seconds = 21.448 - t * (46.8150 + t * (0.00059 - t * (0.001813)));\n const e0 = 23.0 + (26.0 + (seconds / 60.0)) / 60.0;\n return e0;\t\t// in degrees\n}\n\nfunction calcObliquityCorrection(t: number) {\n const e0 = calcMeanObliquityOfEcliptic(t);\n const omega = 125.04 - 1934.136 * t;\n const e = e0 + 0.00256 * Math.cos(degToRad(omega));\n return e;\t\t// in degrees\n}\n\nfunction calcSunDeclination(t: number) {\n const e = calcObliquityCorrection(t);\n const lambda = calcSunApparentLong(t);\n\n const sint = Math.sin(degToRad(e)) * Math.sin(degToRad(lambda));\n const theta = radToDeg(Math.asin(sint));\n return theta;\t\t// in degrees\n}\n\nfunction calcEquationOfTime(t: number) {\n const epsilon = calcObliquityCorrection(t);\n const l0 = calcGeomMeanLongSun(t);\n const e = calcEccentricityEarthOrbit(t);\n const m = calcGeomMeanAnomalySun(t);\n\n let y = Math.tan(degToRad(epsilon) / 2.0);\n y *= y;\n\n const sin2l0 = Math.sin(2.0 * degToRad(l0));\n const sinm = Math.sin(degToRad(m));\n const cos2l0 = Math.cos(2.0 * degToRad(l0));\n const sin4l0 = Math.sin(4.0 * degToRad(l0));\n const sin2m = Math.sin(2.0 * degToRad(m));\n\n const eTime = y * sin2l0 - 2.0 * e * sinm + 4.0 * e * y * sinm * cos2l0 - 0.5 * y * y * sin4l0 - 1.25 * e * e * sin2m;\n return radToDeg(eTime) * 4.0;\t// in minutes of time\n}\n\nfunction calcAzEl(t: number, localTime: number, latitude: number, longitude: number, zone: number): { azimuth: number, elevation: number } {\n const eqTime = calcEquationOfTime(t);\n const theta = calcSunDeclination(t);\n const solarTimeFix = eqTime + 4.0 * longitude - 60.0 * zone;\n let trueSolarTime = localTime + solarTimeFix;\n while (trueSolarTime > 1440)\n trueSolarTime -= 1440;\n\n let hourAngle = trueSolarTime / 4.0 - 180.0;\n if (hourAngle < -180) {\n hourAngle += 360.0;\n }\n const haRad = degToRad(hourAngle);\n let csz = Math.sin(degToRad(latitude)) * Math.sin(degToRad(theta)) + Math.cos(degToRad(latitude)) * Math.cos(degToRad(theta)) * Math.cos(haRad);\n if (csz > 1.0) {\n csz = 1.0;\n } else if (csz < -1.0) {\n csz = -1.0;\n }\n const zenith = radToDeg(Math.acos(csz));\n const azDenom = (Math.cos(degToRad(latitude)) * Math.sin(degToRad(zenith)));\n let azimuth;\n if (Math.abs(azDenom) > 0.001) {\n let azRad = ((Math.sin(degToRad(latitude)) * Math.cos(degToRad(zenith))) - Math.sin(degToRad(theta))) / azDenom;\n if (Math.abs(azRad) > 1.0) {\n if (azRad < 0) {\n azRad = -1.0;\n } else {\n azRad = 1.0;\n }\n }\n azimuth = 180.0 - radToDeg(Math.acos(azRad));\n if (hourAngle > 0.0) {\n azimuth = -azimuth;\n }\n } else {\n if (latitude > 0.0) {\n azimuth = 180.0;\n } else {\n azimuth = 0.0;\n }\n }\n if (azimuth < 0.0) {\n azimuth += 360.0;\n }\n return { azimuth, elevation: 90 - zenith };\n}\n\nfunction calculateJulianDay(date: Date) {\n return Math.floor(date.getTime() / 86400000) + 2440587.5; // https://stackoverflow.com/questions/11759992/calculating-jdayjulian-day-in-javascript\n}\n\n/** @public\n * calculate solar angles (in radians) based at a given date/time and cartographic location.\n */\nexport function calculateSolarAngles(date: Date, location: Cartographic): { azimuth: number, elevation: number } {\n const jDay = calculateJulianDay(date);\n const latitude = location.latitudeDegrees;\n const longitude = location.longitudeDegrees;\n const utcMinutes = date.getUTCHours() * 60 + date.getUTCMinutes() + date.getUTCSeconds() / 60;\n const zone = Math.floor(.5 + longitude / 15.0); // date.getTimeZoneOffset mixes in DST.\n const localMinutes = utcMinutes + zone * 60;\n const jTotal = jDay + utcMinutes / 1440.0;\n const T = calcTimeJulianCent(jTotal);\n return calcAzEl(T, localMinutes, latitude, longitude, zone);\n}\n\n/** @public\n * calculate solar direction based at a given date/time and cartpgrphic location.\n */\nexport function calculateSolarDirection(date: Date, location: Cartographic): Vector3d {\n return calculateSolarDirectionFromAngles(calculateSolarAngles(date, location));\n}\n\n/** @public\n * calculate solar direction corresponding to the given azimuth and elevation (altitude) angles in degrees.\n */\nexport function calculateSolarDirectionFromAngles(azimuthElevation: { azimuth: number, elevation: number }): Vector3d {\n const azimuth = Angle.degreesToRadians(azimuthElevation.azimuth);\n const elevation = Angle.degreesToRadians(azimuthElevation.elevation);\n const cosElevation = Math.cos(elevation);\n const sinElevation = Math.sin(elevation);\n return Vector3d.create(-Math.sin(azimuth) * cosElevation, -Math.cos(azimuth) * cosElevation, -sinElevation);\n}\n\nfunction dateFromUtcMinutes(date: Date, utcMinutes: number) {\n const utcHours = Math.floor(utcMinutes / 60.0);\n const output = new Date(date);\n output.setUTCHours(utcHours);\n output.setUTCMinutes(Math.floor(.5 + utcMinutes - 60.0 * utcHours));\n output.setUTCSeconds(0);\n return output;\n}\n\nfunction calcSunriseUtcMinutes(rise: boolean, lat: number, longitude: number, jDay: number) {\n const t = calcTimeJulianCent(jDay);\n const eqTime = calcEquationOfTime(t);\n const solarDec = calcSunDeclination(t);\n const latRad = degToRad(lat);\n const sdRad = degToRad(solarDec);\n const hAarg = (Math.cos(degToRad(90.833)) / (Math.cos(latRad) * Math.cos(sdRad)) - Math.tan(latRad) * Math.tan(sdRad));\n const hourAngle = Math.acos(hAarg);\n const delta = longitude + radToDeg(rise ? hourAngle : - hourAngle);\n return 720 - (4.0 * delta) - eqTime;\t// in UTC minutes\n}\n\n/** @public\n * calculate solar sunrise or sunset for a given day and cartographic location.\n */\nexport function calculateSunriseOrSunset(date: Date, location: Cartographic, sunrise: boolean): Date {\n const jDay = calculateJulianDay(date);\n const longitude = location.longitudeDegrees;\n const latitude = location.latitudeDegrees;\n const utcMinutes = calcSunriseUtcMinutes(sunrise, latitude, longitude, jDay);\n return sunrise ? dateFromUtcMinutes(date, utcMinutes) : dateFromUtcMinutes(date, calcSunriseUtcMinutes(sunrise, latitude, longitude, jDay + utcMinutes / 1440));\n}\n"]}
1
+ {"version":3,"file":"SolarCalculate.js","sourceRoot":"","sources":["../../src/SolarCalculate.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Utils\r\n */\r\n\r\nimport { Angle, Vector3d } from \"@itwin/core-geometry\";\r\nimport { Cartographic } from \"./geometry/Cartographic\";\r\n\r\n// cspell:ignore mrad sinm sint aarg\r\n\r\n// Code below loosely translated from https://www.esrl.noaa.gov/gmd/grad/solcalc/\r\nfunction calcTimeJulianCent(jd: number) {\r\n const T = (jd - 2451545.0) / 36525.0;\r\n return T;\r\n}\r\n\r\nfunction radToDeg(angleRad: number) {\r\n return (180.0 * angleRad / Math.PI);\r\n}\r\n\r\nfunction degToRad(angleDeg: number) {\r\n return (Math.PI * angleDeg / 180.0);\r\n}\r\n\r\nfunction calcGeomMeanLongSun(t: number) {\r\n let L0 = 280.46646 + t * (36000.76983 + t * (0.0003032));\r\n while (L0 > 360.0) {\r\n L0 -= 360.0;\r\n }\r\n while (L0 < 0.0) {\r\n L0 += 360.0;\r\n }\r\n return L0;\t\t// in degrees\r\n}\r\n\r\nfunction calcGeomMeanAnomalySun(t: number) {\r\n const M = 357.52911 + t * (35999.05029 - 0.0001537 * t);\r\n return M;\t\t// in degrees\r\n}\r\n\r\nfunction calcEccentricityEarthOrbit(t: number) {\r\n const e = 0.016708634 - t * (0.000042037 + 0.0000001267 * t);\r\n return e;\t\t// unitless\r\n}\r\n\r\nfunction calcSunEqOfCenter(t: number) {\r\n const m = calcGeomMeanAnomalySun(t);\r\n const mrad = degToRad(m);\r\n const sinm = Math.sin(mrad);\r\n const sin2m = Math.sin(mrad + mrad);\r\n const sin3m = Math.sin(mrad + mrad + mrad);\r\n const C = sinm * (1.914602 - t * (0.004817 + 0.000014 * t)) + sin2m * (0.019993 - 0.000101 * t) + sin3m * 0.000289;\r\n return C;\t\t// in degrees\r\n}\r\n\r\nfunction calcSunTrueLong(t: number) {\r\n const l0 = calcGeomMeanLongSun(t);\r\n const c = calcSunEqOfCenter(t);\r\n const O = l0 + c;\r\n return O;\t\t// in degrees\r\n}\r\n\r\nfunction calcSunApparentLong(t: number) {\r\n const o = calcSunTrueLong(t);\r\n const omega = 125.04 - 1934.136 * t;\r\n const lambda = o - 0.00569 - 0.00478 * Math.sin(degToRad(omega));\r\n return lambda;\t\t// in degrees\r\n}\r\n\r\nfunction calcMeanObliquityOfEcliptic(t: number) {\r\n const seconds = 21.448 - t * (46.8150 + t * (0.00059 - t * (0.001813)));\r\n const e0 = 23.0 + (26.0 + (seconds / 60.0)) / 60.0;\r\n return e0;\t\t// in degrees\r\n}\r\n\r\nfunction calcObliquityCorrection(t: number) {\r\n const e0 = calcMeanObliquityOfEcliptic(t);\r\n const omega = 125.04 - 1934.136 * t;\r\n const e = e0 + 0.00256 * Math.cos(degToRad(omega));\r\n return e;\t\t// in degrees\r\n}\r\n\r\nfunction calcSunDeclination(t: number) {\r\n const e = calcObliquityCorrection(t);\r\n const lambda = calcSunApparentLong(t);\r\n\r\n const sint = Math.sin(degToRad(e)) * Math.sin(degToRad(lambda));\r\n const theta = radToDeg(Math.asin(sint));\r\n return theta;\t\t// in degrees\r\n}\r\n\r\nfunction calcEquationOfTime(t: number) {\r\n const epsilon = calcObliquityCorrection(t);\r\n const l0 = calcGeomMeanLongSun(t);\r\n const e = calcEccentricityEarthOrbit(t);\r\n const m = calcGeomMeanAnomalySun(t);\r\n\r\n let y = Math.tan(degToRad(epsilon) / 2.0);\r\n y *= y;\r\n\r\n const sin2l0 = Math.sin(2.0 * degToRad(l0));\r\n const sinm = Math.sin(degToRad(m));\r\n const cos2l0 = Math.cos(2.0 * degToRad(l0));\r\n const sin4l0 = Math.sin(4.0 * degToRad(l0));\r\n const sin2m = Math.sin(2.0 * degToRad(m));\r\n\r\n const eTime = y * sin2l0 - 2.0 * e * sinm + 4.0 * e * y * sinm * cos2l0 - 0.5 * y * y * sin4l0 - 1.25 * e * e * sin2m;\r\n return radToDeg(eTime) * 4.0;\t// in minutes of time\r\n}\r\n\r\nfunction calcAzEl(t: number, localTime: number, latitude: number, longitude: number, zone: number): { azimuth: number, elevation: number } {\r\n const eqTime = calcEquationOfTime(t);\r\n const theta = calcSunDeclination(t);\r\n const solarTimeFix = eqTime + 4.0 * longitude - 60.0 * zone;\r\n let trueSolarTime = localTime + solarTimeFix;\r\n while (trueSolarTime > 1440)\r\n trueSolarTime -= 1440;\r\n\r\n let hourAngle = trueSolarTime / 4.0 - 180.0;\r\n if (hourAngle < -180) {\r\n hourAngle += 360.0;\r\n }\r\n const haRad = degToRad(hourAngle);\r\n let csz = Math.sin(degToRad(latitude)) * Math.sin(degToRad(theta)) + Math.cos(degToRad(latitude)) * Math.cos(degToRad(theta)) * Math.cos(haRad);\r\n if (csz > 1.0) {\r\n csz = 1.0;\r\n } else if (csz < -1.0) {\r\n csz = -1.0;\r\n }\r\n const zenith = radToDeg(Math.acos(csz));\r\n const azDenom = (Math.cos(degToRad(latitude)) * Math.sin(degToRad(zenith)));\r\n let azimuth;\r\n if (Math.abs(azDenom) > 0.001) {\r\n let azRad = ((Math.sin(degToRad(latitude)) * Math.cos(degToRad(zenith))) - Math.sin(degToRad(theta))) / azDenom;\r\n if (Math.abs(azRad) > 1.0) {\r\n if (azRad < 0) {\r\n azRad = -1.0;\r\n } else {\r\n azRad = 1.0;\r\n }\r\n }\r\n azimuth = 180.0 - radToDeg(Math.acos(azRad));\r\n if (hourAngle > 0.0) {\r\n azimuth = -azimuth;\r\n }\r\n } else {\r\n if (latitude > 0.0) {\r\n azimuth = 180.0;\r\n } else {\r\n azimuth = 0.0;\r\n }\r\n }\r\n if (azimuth < 0.0) {\r\n azimuth += 360.0;\r\n }\r\n return { azimuth, elevation: 90 - zenith };\r\n}\r\n\r\nfunction calculateJulianDay(date: Date) {\r\n return Math.floor(date.getTime() / 86400000) + 2440587.5; // https://stackoverflow.com/questions/11759992/calculating-jdayjulian-day-in-javascript\r\n}\r\n\r\n/** @public\r\n * calculate solar angles (in radians) based at a given date/time and cartographic location.\r\n */\r\nexport function calculateSolarAngles(date: Date, location: Cartographic): { azimuth: number, elevation: number } {\r\n const jDay = calculateJulianDay(date);\r\n const latitude = location.latitudeDegrees;\r\n const longitude = location.longitudeDegrees;\r\n const utcMinutes = date.getUTCHours() * 60 + date.getUTCMinutes() + date.getUTCSeconds() / 60;\r\n const zone = Math.floor(.5 + longitude / 15.0); // date.getTimeZoneOffset mixes in DST.\r\n const localMinutes = utcMinutes + zone * 60;\r\n const jTotal = jDay + utcMinutes / 1440.0;\r\n const T = calcTimeJulianCent(jTotal);\r\n return calcAzEl(T, localMinutes, latitude, longitude, zone);\r\n}\r\n\r\n/** @public\r\n * calculate solar direction based at a given date/time and cartpgrphic location.\r\n */\r\nexport function calculateSolarDirection(date: Date, location: Cartographic): Vector3d {\r\n return calculateSolarDirectionFromAngles(calculateSolarAngles(date, location));\r\n}\r\n\r\n/** @public\r\n * calculate solar direction corresponding to the given azimuth and elevation (altitude) angles in degrees.\r\n */\r\nexport function calculateSolarDirectionFromAngles(azimuthElevation: { azimuth: number, elevation: number }): Vector3d {\r\n const azimuth = Angle.degreesToRadians(azimuthElevation.azimuth);\r\n const elevation = Angle.degreesToRadians(azimuthElevation.elevation);\r\n const cosElevation = Math.cos(elevation);\r\n const sinElevation = Math.sin(elevation);\r\n return Vector3d.create(-Math.sin(azimuth) * cosElevation, -Math.cos(azimuth) * cosElevation, -sinElevation);\r\n}\r\n\r\nfunction dateFromUtcMinutes(date: Date, utcMinutes: number) {\r\n const utcHours = Math.floor(utcMinutes / 60.0);\r\n const output = new Date(date);\r\n output.setUTCHours(utcHours);\r\n output.setUTCMinutes(Math.floor(.5 + utcMinutes - 60.0 * utcHours));\r\n output.setUTCSeconds(0);\r\n return output;\r\n}\r\n\r\nfunction calcSunriseUtcMinutes(rise: boolean, lat: number, longitude: number, jDay: number) {\r\n const t = calcTimeJulianCent(jDay);\r\n const eqTime = calcEquationOfTime(t);\r\n const solarDec = calcSunDeclination(t);\r\n const latRad = degToRad(lat);\r\n const sdRad = degToRad(solarDec);\r\n const hAarg = (Math.cos(degToRad(90.833)) / (Math.cos(latRad) * Math.cos(sdRad)) - Math.tan(latRad) * Math.tan(sdRad));\r\n const hourAngle = Math.acos(hAarg);\r\n const delta = longitude + radToDeg(rise ? hourAngle : - hourAngle);\r\n return 720 - (4.0 * delta) - eqTime;\t// in UTC minutes\r\n}\r\n\r\n/** @public\r\n * calculate solar sunrise or sunset for a given day and cartographic location.\r\n */\r\nexport function calculateSunriseOrSunset(date: Date, location: Cartographic, sunrise: boolean): Date {\r\n const jDay = calculateJulianDay(date);\r\n const longitude = location.longitudeDegrees;\r\n const latitude = location.latitudeDegrees;\r\n const utcMinutes = calcSunriseUtcMinutes(sunrise, latitude, longitude, jDay);\r\n return sunrise ? dateFromUtcMinutes(date, utcMinutes) : dateFromUtcMinutes(date, calcSunriseUtcMinutes(sunrise, latitude, longitude, jDay + utcMinutes / 1440));\r\n}\r\n"]}