@itwin/core-common 4.0.0-dev.52 → 4.0.0-dev.55

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 (890) hide show
  1. package/lib/cjs/AmbientOcclusion.d.ts +49 -49
  2. package/lib/cjs/AmbientOcclusion.js +55 -55
  3. package/lib/cjs/AnalysisStyle.d.ts +134 -134
  4. package/lib/cjs/AnalysisStyle.js +165 -165
  5. package/lib/cjs/AnalysisStyle.js.map +1 -1
  6. package/lib/cjs/AuthorizationClient.d.ts +17 -17
  7. package/lib/cjs/AuthorizationClient.js +9 -9
  8. package/lib/cjs/BackendTypes.d.ts +13 -12
  9. package/lib/cjs/BackendTypes.d.ts.map +1 -1
  10. package/lib/cjs/BackendTypes.js +9 -9
  11. package/lib/cjs/BackgroundMapProvider.d.ts +51 -51
  12. package/lib/cjs/BackgroundMapProvider.d.ts.map +1 -1
  13. package/lib/cjs/BackgroundMapProvider.js +67 -67
  14. package/lib/cjs/BackgroundMapSettings.d.ts +136 -136
  15. package/lib/cjs/BackgroundMapSettings.d.ts.map +1 -1
  16. package/lib/cjs/BackgroundMapSettings.js +154 -154
  17. package/lib/cjs/BackgroundMapSettings.js.map +1 -1
  18. package/lib/cjs/Base64EncodedString.d.ts +32 -32
  19. package/lib/cjs/Base64EncodedString.d.ts.map +1 -1
  20. package/lib/cjs/Base64EncodedString.js +66 -66
  21. package/lib/cjs/Base64EncodedString.js.map +1 -1
  22. package/lib/cjs/BlobReader.d.ts +31 -31
  23. package/lib/cjs/BlobReader.js +84 -84
  24. package/lib/cjs/BriefcaseTypes.d.ts +191 -191
  25. package/lib/cjs/BriefcaseTypes.d.ts.map +1 -1
  26. package/lib/cjs/BriefcaseTypes.js +95 -95
  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 +85 -85
  31. package/lib/cjs/ChangedElements.js +23 -23
  32. package/lib/cjs/ChangedEntities.d.ts +45 -45
  33. package/lib/cjs/ChangedEntities.d.ts.map +1 -1
  34. package/lib/cjs/ChangedEntities.js +9 -9
  35. package/lib/cjs/ChangesetProps.d.ts +98 -98
  36. package/lib/cjs/ChangesetProps.d.ts.map +1 -1
  37. package/lib/cjs/ChangesetProps.js +22 -22
  38. package/lib/cjs/ClipStyle.d.ts +89 -89
  39. package/lib/cjs/ClipStyle.js +121 -121
  40. package/lib/cjs/ClipStyle.js.map +1 -1
  41. package/lib/cjs/CloudStorage.d.ts +62 -62
  42. package/lib/cjs/CloudStorage.js +113 -113
  43. package/lib/cjs/CloudStorage.js.map +1 -1
  44. package/lib/cjs/CloudStorageTileCache.d.ts +27 -27
  45. package/lib/cjs/CloudStorageTileCache.js +65 -65
  46. package/lib/cjs/CloudStorageTileCache.js.map +1 -1
  47. package/lib/cjs/Code.d.ts +277 -277
  48. package/lib/cjs/Code.d.ts.map +1 -1
  49. package/lib/cjs/Code.js +268 -268
  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/ColorDef.d.ts +210 -210
  54. package/lib/cjs/ColorDef.d.ts.map +1 -1
  55. package/lib/cjs/ColorDef.js +572 -572
  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/ConcurrentQuery.d.ts +421 -421
  60. package/lib/cjs/ConcurrentQuery.d.ts.map +1 -1
  61. package/lib/cjs/ConcurrentQuery.js +552 -552
  62. package/lib/cjs/ContextRealityModel.d.ts +303 -303
  63. package/lib/cjs/ContextRealityModel.js +371 -371
  64. package/lib/cjs/DisplayStyleSettings.d.ts +588 -588
  65. package/lib/cjs/DisplayStyleSettings.js +981 -981
  66. package/lib/cjs/DisplayStyleSettings.js.map +1 -1
  67. package/lib/cjs/ECSchemaProps.d.ts +39 -39
  68. package/lib/cjs/ECSchemaProps.js +9 -9
  69. package/lib/cjs/ECSqlReader.d.ts +70 -70
  70. package/lib/cjs/ECSqlReader.d.ts.map +1 -1
  71. package/lib/cjs/ECSqlReader.js +280 -280
  72. package/lib/cjs/ECSqlReader.js.map +1 -1
  73. package/lib/cjs/ECSqlTypes.d.ts +128 -128
  74. package/lib/cjs/ECSqlTypes.js +189 -189
  75. package/lib/cjs/ElementMesh.d.ts +39 -39
  76. package/lib/cjs/ElementMesh.js +56 -56
  77. package/lib/cjs/ElementProps.d.ts +483 -483
  78. package/lib/cjs/ElementProps.d.ts.map +1 -1
  79. package/lib/cjs/ElementProps.js +99 -99
  80. package/lib/cjs/ElementProps.js.map +1 -1
  81. package/lib/cjs/EmphasizeElementsProps.d.ts +55 -55
  82. package/lib/cjs/EmphasizeElementsProps.js +25 -25
  83. package/lib/cjs/EntityProps.d.ts +177 -177
  84. package/lib/cjs/EntityProps.d.ts.map +1 -1
  85. package/lib/cjs/EntityProps.js +113 -113
  86. package/lib/cjs/EntityReference.d.ts +51 -51
  87. package/lib/cjs/EntityReference.d.ts.map +1 -1
  88. package/lib/cjs/EntityReference.js +56 -56
  89. package/lib/cjs/Environment.d.ts +61 -61
  90. package/lib/cjs/Environment.d.ts.map +1 -1
  91. package/lib/cjs/Environment.js +70 -70
  92. package/lib/cjs/Environment.js.map +1 -1
  93. package/lib/cjs/FeatureIndex.d.ts +39 -39
  94. package/lib/cjs/FeatureIndex.js +63 -63
  95. package/lib/cjs/FeatureIndex.js.map +1 -1
  96. package/lib/cjs/FeatureSymbology.d.ts +449 -449
  97. package/lib/cjs/FeatureSymbology.d.ts.map +1 -1
  98. package/lib/cjs/FeatureSymbology.js +618 -618
  99. package/lib/cjs/FeatureSymbology.js.map +1 -1
  100. package/lib/cjs/FeatureTable.d.ts +248 -248
  101. package/lib/cjs/FeatureTable.d.ts.map +1 -1
  102. package/lib/cjs/FeatureTable.js +470 -470
  103. package/lib/cjs/FeatureTable.js.map +1 -1
  104. package/lib/cjs/Fonts.d.ts +51 -51
  105. package/lib/cjs/Fonts.d.ts.map +1 -1
  106. package/lib/cjs/Fonts.js +53 -53
  107. package/lib/cjs/Frustum.d.ts +114 -114
  108. package/lib/cjs/Frustum.js +292 -292
  109. package/lib/cjs/GeoCoordinateServices.d.ts +123 -119
  110. package/lib/cjs/GeoCoordinateServices.d.ts.map +1 -1
  111. package/lib/cjs/GeoCoordinateServices.js +81 -80
  112. package/lib/cjs/GeoCoordinateServices.js.map +1 -1
  113. package/lib/cjs/GeometryContainment.d.ts +28 -28
  114. package/lib/cjs/GeometryContainment.js +9 -9
  115. package/lib/cjs/GeometryParams.d.ts +130 -130
  116. package/lib/cjs/GeometryParams.js +174 -174
  117. package/lib/cjs/GeometrySummary.d.ts +45 -45
  118. package/lib/cjs/GeometrySummary.js +23 -23
  119. package/lib/cjs/Gradient.d.ts +139 -139
  120. package/lib/cjs/Gradient.js +453 -453
  121. package/lib/cjs/Gradient.js.map +1 -1
  122. package/lib/cjs/GraphicParams.d.ts +58 -58
  123. package/lib/cjs/GraphicParams.js +85 -85
  124. package/lib/cjs/GroundPlane.d.ts +52 -52
  125. package/lib/cjs/GroundPlane.d.ts.map +1 -1
  126. package/lib/cjs/GroundPlane.js +63 -63
  127. package/lib/cjs/GroundPlane.js.map +1 -1
  128. package/lib/cjs/HSLColor.d.ts +20 -20
  129. package/lib/cjs/HSLColor.js +32 -32
  130. package/lib/cjs/HSVColor.d.ts +30 -30
  131. package/lib/cjs/HSVColor.js +59 -59
  132. package/lib/cjs/HiddenLine.d.ts +97 -97
  133. package/lib/cjs/HiddenLine.js +160 -160
  134. package/lib/cjs/HiddenLine.js.map +1 -1
  135. package/lib/cjs/Hilite.d.ts +50 -50
  136. package/lib/cjs/Hilite.js +64 -64
  137. package/lib/cjs/Hilite.js.map +1 -1
  138. package/lib/cjs/IModel.d.ts +358 -358
  139. package/lib/cjs/IModel.d.ts.map +1 -1
  140. package/lib/cjs/IModel.js +347 -347
  141. package/lib/cjs/IModel.js.map +1 -1
  142. package/lib/cjs/IModelError.d.ts +42 -42
  143. package/lib/cjs/IModelError.d.ts.map +1 -1
  144. package/lib/cjs/IModelError.js +71 -71
  145. package/lib/cjs/IModelVersion.d.ts +68 -68
  146. package/lib/cjs/IModelVersion.d.ts.map +1 -1
  147. package/lib/cjs/IModelVersion.js +79 -79
  148. package/lib/cjs/Image.d.ts +86 -86
  149. package/lib/cjs/Image.js +128 -128
  150. package/lib/cjs/Image.js.map +1 -1
  151. package/lib/cjs/IpcAppProps.d.ts +141 -141
  152. package/lib/cjs/IpcAppProps.js +23 -23
  153. package/lib/cjs/LightSettings.d.ts +224 -224
  154. package/lib/cjs/LightSettings.js +304 -304
  155. package/lib/cjs/LightSettings.js.map +1 -1
  156. package/lib/cjs/LinePixels.d.ts +34 -34
  157. package/lib/cjs/LinePixels.js +42 -42
  158. package/lib/cjs/Localization.d.ts +113 -113
  159. package/lib/cjs/Localization.js +33 -33
  160. package/lib/cjs/MapImagerySettings.d.ts +62 -62
  161. package/lib/cjs/MapImagerySettings.d.ts.map +1 -1
  162. package/lib/cjs/MapImagerySettings.js +80 -80
  163. package/lib/cjs/MapLayerSettings.d.ts +272 -272
  164. package/lib/cjs/MapLayerSettings.d.ts.map +1 -1
  165. package/lib/cjs/MapLayerSettings.js +407 -407
  166. package/lib/cjs/MapLayerSettings.js.map +1 -1
  167. package/lib/cjs/MassProperties.d.ts +64 -64
  168. package/lib/cjs/MassProperties.js +23 -23
  169. package/lib/cjs/MaterialProps.d.ts +153 -153
  170. package/lib/cjs/MaterialProps.d.ts.map +1 -1
  171. package/lib/cjs/MaterialProps.js +35 -35
  172. package/lib/cjs/ModelClipGroup.d.ts +67 -67
  173. package/lib/cjs/ModelClipGroup.js +96 -96
  174. package/lib/cjs/ModelGeometryChanges.d.ts +107 -107
  175. package/lib/cjs/ModelGeometryChanges.d.ts.map +1 -1
  176. package/lib/cjs/ModelGeometryChanges.js +83 -83
  177. package/lib/cjs/ModelProps.d.ts +67 -67
  178. package/lib/cjs/ModelProps.js +9 -9
  179. package/lib/cjs/NativeAppProps.d.ts +122 -122
  180. package/lib/cjs/NativeAppProps.d.ts.map +1 -1
  181. package/lib/cjs/NativeAppProps.js +30 -30
  182. package/lib/cjs/OctEncodedNormal.d.ts +33 -33
  183. package/lib/cjs/OctEncodedNormal.js +98 -98
  184. package/lib/cjs/PlanProjectionSettings.d.ts +47 -47
  185. package/lib/cjs/PlanProjectionSettings.js +63 -63
  186. package/lib/cjs/PlanProjectionSettings.js.map +1 -1
  187. package/lib/cjs/PlanarClipMask.d.ts +177 -177
  188. package/lib/cjs/PlanarClipMask.js +136 -136
  189. package/lib/cjs/PlanarClipMask.js.map +1 -1
  190. package/lib/cjs/QPoint.d.ts +479 -479
  191. package/lib/cjs/QPoint.js +824 -824
  192. package/lib/cjs/QPoint.js.map +1 -1
  193. package/lib/cjs/RealityDataAccessProps.d.ts +41 -41
  194. package/lib/cjs/RealityDataAccessProps.js +19 -19
  195. package/lib/cjs/RealityModelDisplaySettings.d.ts +183 -183
  196. package/lib/cjs/RealityModelDisplaySettings.d.ts.map +1 -1
  197. package/lib/cjs/RealityModelDisplaySettings.js +141 -141
  198. package/lib/cjs/RealityModelDisplaySettings.js.map +1 -1
  199. package/lib/cjs/Render.d.ts +89 -89
  200. package/lib/cjs/Render.js +177 -177
  201. package/lib/cjs/RenderMaterial.d.ts +58 -58
  202. package/lib/cjs/RenderMaterial.js +75 -75
  203. package/lib/cjs/RenderMaterial.js.map +1 -1
  204. package/lib/cjs/RenderSchedule.d.ts +543 -543
  205. package/lib/cjs/RenderSchedule.js +992 -992
  206. package/lib/cjs/RenderSchedule.js.map +1 -1
  207. package/lib/cjs/RenderTexture.d.ts +70 -70
  208. package/lib/cjs/RenderTexture.d.ts.map +1 -1
  209. package/lib/cjs/RenderTexture.js +59 -59
  210. package/lib/cjs/RenderTexture.js.map +1 -1
  211. package/lib/cjs/RgbColor.d.ts +47 -47
  212. package/lib/cjs/RgbColor.js +77 -77
  213. package/lib/cjs/RpcInterface.d.ts +33 -33
  214. package/lib/cjs/RpcInterface.d.ts.map +1 -1
  215. package/lib/cjs/RpcInterface.js +137 -137
  216. package/lib/cjs/RpcInterface.js.map +1 -1
  217. package/lib/cjs/RpcManager.d.ts +40 -40
  218. package/lib/cjs/RpcManager.js +55 -55
  219. package/lib/cjs/SessionProps.d.ts +16 -16
  220. package/lib/cjs/SessionProps.js +9 -9
  221. package/lib/cjs/SkyBox.d.ts +215 -215
  222. package/lib/cjs/SkyBox.d.ts.map +1 -1
  223. package/lib/cjs/SkyBox.js +209 -209
  224. package/lib/cjs/SkyBox.js.map +1 -1
  225. package/lib/cjs/Snapping.d.ts +49 -49
  226. package/lib/cjs/Snapping.js +9 -9
  227. package/lib/cjs/SolarCalculate.d.ts +27 -27
  228. package/lib/cjs/SolarCalculate.js +211 -211
  229. package/lib/cjs/SolarShadows.d.ts +35 -35
  230. package/lib/cjs/SolarShadows.js +61 -61
  231. package/lib/cjs/SolarShadows.js.map +1 -1
  232. package/lib/cjs/SpatialClassification.d.ts +208 -208
  233. package/lib/cjs/SpatialClassification.js +339 -339
  234. package/lib/cjs/SubCategoryAppearance.d.ts +91 -91
  235. package/lib/cjs/SubCategoryAppearance.js +96 -96
  236. package/lib/cjs/SubCategoryAppearance.js.map +1 -1
  237. package/lib/cjs/SubCategoryOverride.d.ts +46 -46
  238. package/lib/cjs/SubCategoryOverride.js +104 -104
  239. package/lib/cjs/SubCategoryOverride.js.map +1 -1
  240. package/lib/cjs/TerrainSettings.d.ts +82 -82
  241. package/lib/cjs/TerrainSettings.d.ts.map +1 -1
  242. package/lib/cjs/TerrainSettings.js +100 -100
  243. package/lib/cjs/TerrainSettings.js.map +1 -1
  244. package/lib/cjs/TextureMapping.d.ts +118 -118
  245. package/lib/cjs/TextureMapping.js +173 -173
  246. package/lib/cjs/TextureProps.d.ts +65 -65
  247. package/lib/cjs/TextureProps.js +28 -28
  248. package/lib/cjs/ThematicDisplay.d.ts +230 -230
  249. package/lib/cjs/ThematicDisplay.js +343 -343
  250. package/lib/cjs/ThematicDisplay.js.map +1 -1
  251. package/lib/cjs/Thumbnail.d.ts +26 -26
  252. package/lib/cjs/Thumbnail.js +9 -9
  253. package/lib/cjs/TileProps.d.ts +82 -82
  254. package/lib/cjs/TileProps.js +29 -29
  255. package/lib/cjs/Tween.d.ts +191 -191
  256. package/lib/cjs/Tween.d.ts.map +1 -1
  257. package/lib/cjs/Tween.js +570 -570
  258. package/lib/cjs/TxnAction.d.ts +21 -21
  259. package/lib/cjs/TxnAction.js +29 -29
  260. package/lib/cjs/ViewDetails.d.ts +125 -125
  261. package/lib/cjs/ViewDetails.js +166 -166
  262. package/lib/cjs/ViewDetails.js.map +1 -1
  263. package/lib/cjs/ViewFlags.d.ts +287 -287
  264. package/lib/cjs/ViewFlags.d.ts.map +1 -1
  265. package/lib/cjs/ViewFlags.js +367 -367
  266. package/lib/cjs/ViewFlags.js.map +1 -1
  267. package/lib/cjs/ViewProps.d.ts +205 -205
  268. package/lib/cjs/ViewProps.js +9 -9
  269. package/lib/cjs/WhiteOnWhiteReversalSettings.d.ts +36 -36
  270. package/lib/cjs/WhiteOnWhiteReversalSettings.js +37 -37
  271. package/lib/cjs/WhiteOnWhiteReversalSettings.js.map +1 -1
  272. package/lib/cjs/core-common.d.ts +245 -245
  273. package/lib/cjs/core-common.js +265 -261
  274. package/lib/cjs/core-common.js.map +1 -1
  275. package/lib/cjs/domains/FunctionalElementProps.d.ts +11 -11
  276. package/lib/cjs/domains/FunctionalElementProps.js +9 -9
  277. package/lib/cjs/domains/GenericElementProps.d.ts +18 -18
  278. package/lib/cjs/domains/GenericElementProps.js +9 -9
  279. package/lib/cjs/geometry/AdditionalTransform.d.ts +84 -84
  280. package/lib/cjs/geometry/AdditionalTransform.js +85 -85
  281. package/lib/cjs/geometry/AreaPattern.d.ts +82 -82
  282. package/lib/cjs/geometry/AreaPattern.js +203 -203
  283. package/lib/cjs/geometry/BoundingSphere.d.ts +27 -27
  284. package/lib/cjs/geometry/BoundingSphere.js +44 -44
  285. package/lib/cjs/geometry/Cartographic.d.ts +137 -137
  286. package/lib/cjs/geometry/Cartographic.js +345 -345
  287. package/lib/cjs/geometry/Cartographic.js.map +1 -1
  288. package/lib/cjs/geometry/CoordinateReferenceSystem.d.ts +269 -269
  289. package/lib/cjs/geometry/CoordinateReferenceSystem.d.ts.map +1 -1
  290. package/lib/cjs/geometry/CoordinateReferenceSystem.js +260 -260
  291. package/lib/cjs/geometry/ElementGeometry.d.ts +402 -402
  292. package/lib/cjs/geometry/ElementGeometry.d.ts.map +1 -1
  293. package/lib/cjs/geometry/ElementGeometry.js +1719 -1719
  294. package/lib/cjs/geometry/ElementGeometryFB.d.ts +2372 -2372
  295. package/lib/cjs/geometry/ElementGeometryFB.js +3814 -3814
  296. package/lib/cjs/geometry/ElementGeometryFB.js.map +1 -1
  297. package/lib/cjs/geometry/FrustumPlanes.d.ts +81 -81
  298. package/lib/cjs/geometry/FrustumPlanes.js +189 -189
  299. package/lib/cjs/geometry/GeodeticDatum.d.ts +409 -409
  300. package/lib/cjs/geometry/GeodeticDatum.d.ts.map +1 -1
  301. package/lib/cjs/geometry/GeodeticDatum.js +400 -400
  302. package/lib/cjs/geometry/GeodeticEllipsoid.d.ts +72 -72
  303. package/lib/cjs/geometry/GeodeticEllipsoid.js +71 -71
  304. package/lib/cjs/geometry/GeometryStream.d.ts +347 -347
  305. package/lib/cjs/geometry/GeometryStream.d.ts.map +1 -1
  306. package/lib/cjs/geometry/GeometryStream.js +468 -468
  307. package/lib/cjs/geometry/ImageGraphic.d.ts +74 -74
  308. package/lib/cjs/geometry/ImageGraphic.d.ts.map +1 -1
  309. package/lib/cjs/geometry/ImageGraphic.js +98 -98
  310. package/lib/cjs/geometry/LineStyle.d.ts +71 -71
  311. package/lib/cjs/geometry/LineStyle.js +129 -129
  312. package/lib/cjs/geometry/Placement.d.ts +95 -95
  313. package/lib/cjs/geometry/Placement.d.ts.map +1 -1
  314. package/lib/cjs/geometry/Placement.js +131 -131
  315. package/lib/cjs/geometry/Projection.d.ts +251 -251
  316. package/lib/cjs/geometry/Projection.d.ts.map +1 -1
  317. package/lib/cjs/geometry/Projection.js +198 -198
  318. package/lib/cjs/geometry/Projection.js.map +1 -1
  319. package/lib/cjs/geometry/TextString.d.ts +55 -55
  320. package/lib/cjs/geometry/TextString.js +65 -65
  321. package/lib/cjs/geometry/TextString.js.map +1 -1
  322. package/lib/cjs/ipc/IpcSession.d.ts +23 -23
  323. package/lib/cjs/ipc/IpcSession.js +27 -27
  324. package/lib/cjs/ipc/IpcSocket.d.ts +96 -96
  325. package/lib/cjs/ipc/IpcSocket.d.ts.map +1 -1
  326. package/lib/cjs/ipc/IpcSocket.js +16 -16
  327. package/lib/cjs/ipc/IpcWebSocket.d.ts +61 -61
  328. package/lib/cjs/ipc/IpcWebSocket.js +150 -150
  329. package/lib/cjs/ipc/IpcWebSocket.js.map +1 -1
  330. package/lib/cjs/ipc/IpcWebSocketTransport.d.ts +15 -15
  331. package/lib/cjs/ipc/IpcWebSocketTransport.js +160 -160
  332. package/lib/cjs/ipc/IpcWebSocketTransport.js.map +1 -1
  333. package/lib/cjs/rpc/DevToolsRpcInterface.d.ts +32 -32
  334. package/lib/cjs/rpc/DevToolsRpcInterface.js +52 -52
  335. package/lib/cjs/rpc/DevToolsRpcInterface.js.map +1 -1
  336. package/lib/cjs/rpc/IModelReadRpcInterface.d.ts +99 -99
  337. package/lib/cjs/rpc/IModelReadRpcInterface.js +122 -122
  338. package/lib/cjs/rpc/IModelReadRpcInterface.js.map +1 -1
  339. package/lib/cjs/rpc/IModelTileRpcInterface.d.ts +61 -61
  340. package/lib/cjs/rpc/IModelTileRpcInterface.js +97 -96
  341. package/lib/cjs/rpc/IModelTileRpcInterface.js.map +1 -1
  342. package/lib/cjs/rpc/SnapshotIModelRpcInterface.d.ts +23 -23
  343. package/lib/cjs/rpc/SnapshotIModelRpcInterface.js +48 -48
  344. package/lib/cjs/rpc/SnapshotIModelRpcInterface.js.map +1 -1
  345. package/lib/cjs/rpc/TestRpcManager.d.ts +20 -20
  346. package/lib/cjs/rpc/TestRpcManager.js +40 -40
  347. package/lib/cjs/rpc/WipRpcInterface.d.ts +29 -29
  348. package/lib/cjs/rpc/WipRpcInterface.js +40 -40
  349. package/lib/cjs/rpc/WipRpcInterface.js.map +1 -1
  350. package/lib/cjs/rpc/core/RpcConfiguration.d.ts +111 -111
  351. package/lib/cjs/rpc/core/RpcConfiguration.d.ts.map +1 -1
  352. package/lib/cjs/rpc/core/RpcConfiguration.js +191 -191
  353. package/lib/cjs/rpc/core/RpcConfiguration.js.map +1 -1
  354. package/lib/cjs/rpc/core/RpcConstants.d.ts +90 -90
  355. package/lib/cjs/rpc/core/RpcConstants.js +109 -109
  356. package/lib/cjs/rpc/core/RpcControl.d.ts +54 -54
  357. package/lib/cjs/rpc/core/RpcControl.js +150 -145
  358. package/lib/cjs/rpc/core/RpcControl.js.map +1 -1
  359. package/lib/cjs/rpc/core/RpcInvocation.d.ts +89 -89
  360. package/lib/cjs/rpc/core/RpcInvocation.d.ts.map +1 -1
  361. package/lib/cjs/rpc/core/RpcInvocation.js +256 -256
  362. package/lib/cjs/rpc/core/RpcInvocation.js.map +1 -1
  363. package/lib/cjs/rpc/core/RpcMarshaling.d.ts +35 -35
  364. package/lib/cjs/rpc/core/RpcMarshaling.js +156 -156
  365. package/lib/cjs/rpc/core/RpcOperation.d.ts +67 -67
  366. package/lib/cjs/rpc/core/RpcOperation.d.ts.map +1 -1
  367. package/lib/cjs/rpc/core/RpcOperation.js +135 -134
  368. package/lib/cjs/rpc/core/RpcOperation.js.map +1 -1
  369. package/lib/cjs/rpc/core/RpcPendingQueue.d.ts +21 -21
  370. package/lib/cjs/rpc/core/RpcPendingQueue.js +94 -94
  371. package/lib/cjs/rpc/core/RpcPendingQueue.js.map +1 -1
  372. package/lib/cjs/rpc/core/RpcProtocol.d.ts +132 -132
  373. package/lib/cjs/rpc/core/RpcProtocol.d.ts.map +1 -1
  374. package/lib/cjs/rpc/core/RpcProtocol.js +127 -127
  375. package/lib/cjs/rpc/core/RpcProtocol.js.map +1 -1
  376. package/lib/cjs/rpc/core/RpcPush.d.ts +68 -68
  377. package/lib/cjs/rpc/core/RpcPush.d.ts.map +1 -1
  378. package/lib/cjs/rpc/core/RpcPush.js +127 -127
  379. package/lib/cjs/rpc/core/RpcPush.js.map +1 -1
  380. package/lib/cjs/rpc/core/RpcRegistry.d.ts +48 -48
  381. package/lib/cjs/rpc/core/RpcRegistry.js +198 -198
  382. package/lib/cjs/rpc/core/RpcRequest.d.ts +186 -186
  383. package/lib/cjs/rpc/core/RpcRequest.d.ts.map +1 -1
  384. package/lib/cjs/rpc/core/RpcRequest.js +478 -478
  385. package/lib/cjs/rpc/core/RpcRequest.js.map +1 -1
  386. package/lib/cjs/rpc/core/RpcRequestContext.d.ts +14 -14
  387. package/lib/cjs/rpc/core/RpcRequestContext.js +2 -2
  388. package/lib/cjs/rpc/core/RpcRoutingToken.d.ts +12 -12
  389. package/lib/cjs/rpc/core/RpcRoutingToken.js +24 -24
  390. package/lib/cjs/rpc/core/RpcRoutingToken.js.map +1 -1
  391. package/lib/cjs/rpc/core/RpcSessionInvocation.d.ts +10 -10
  392. package/lib/cjs/rpc/core/RpcSessionInvocation.js +60 -60
  393. package/lib/cjs/rpc/core/RpcSessionInvocation.js.map +1 -1
  394. package/lib/cjs/rpc/web/BentleyCloudRpcManager.d.ts +46 -46
  395. package/lib/cjs/rpc/web/BentleyCloudRpcManager.js +73 -73
  396. package/lib/cjs/rpc/web/BentleyCloudRpcManager.js.map +1 -1
  397. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.d.ts +33 -33
  398. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.js +141 -141
  399. package/lib/cjs/rpc/web/OpenAPI.d.ts +140 -140
  400. package/lib/cjs/rpc/web/OpenAPI.js +60 -60
  401. package/lib/cjs/rpc/web/OpenAPI.js.map +1 -1
  402. package/lib/cjs/rpc/web/RpcMultipart.d.ts +35 -35
  403. package/lib/cjs/rpc/web/RpcMultipart.js +50 -50
  404. package/lib/cjs/rpc/web/RpcMultipart.js.map +1 -1
  405. package/lib/cjs/rpc/web/WebAppRpcLogging.d.ts +28 -28
  406. package/lib/cjs/rpc/web/WebAppRpcLogging.js +140 -140
  407. package/lib/cjs/rpc/web/WebAppRpcProtocol.d.ts +89 -89
  408. package/lib/cjs/rpc/web/WebAppRpcProtocol.js +116 -116
  409. package/lib/cjs/rpc/web/WebAppRpcProtocol.js.map +1 -1
  410. package/lib/cjs/rpc/web/WebAppRpcRequest.d.ts +67 -67
  411. package/lib/cjs/rpc/web/WebAppRpcRequest.d.ts.map +1 -1
  412. package/lib/cjs/rpc/web/WebAppRpcRequest.js +239 -239
  413. package/lib/cjs/rpc/web/WebAppRpcRequest.js.map +1 -1
  414. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.d.ts +32 -32
  415. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.js +373 -373
  416. package/lib/cjs/tile/B3dmTileIO.d.ts +19 -19
  417. package/lib/cjs/tile/B3dmTileIO.js +66 -66
  418. package/lib/cjs/tile/B3dmTileIO.js.map +1 -1
  419. package/lib/cjs/tile/CompositeTileIO.d.ts +15 -15
  420. package/lib/cjs/tile/CompositeTileIO.js +26 -26
  421. package/lib/cjs/tile/CompositeTileIO.js.map +1 -1
  422. package/lib/cjs/tile/ElementGraphics.d.ts +145 -145
  423. package/lib/cjs/tile/ElementGraphics.d.ts.map +1 -1
  424. package/lib/cjs/tile/ElementGraphics.js +9 -9
  425. package/lib/cjs/tile/GltfTileIO.d.ts +45 -45
  426. package/lib/cjs/tile/GltfTileIO.d.ts.map +1 -1
  427. package/lib/cjs/tile/GltfTileIO.js +109 -109
  428. package/lib/cjs/tile/GltfTileIO.js.map +1 -1
  429. package/lib/cjs/tile/I3dmTileIO.d.ts +20 -20
  430. package/lib/cjs/tile/I3dmTileIO.js +40 -40
  431. package/lib/cjs/tile/I3dmTileIO.js.map +1 -1
  432. package/lib/cjs/tile/IModelTileIO.d.ts +77 -77
  433. package/lib/cjs/tile/IModelTileIO.js +97 -97
  434. package/lib/cjs/tile/IModelTileIO.js.map +1 -1
  435. package/lib/cjs/tile/PntsTileIO.d.ts +17 -17
  436. package/lib/cjs/tile/PntsTileIO.js +26 -26
  437. package/lib/cjs/tile/PntsTileIO.js.map +1 -1
  438. package/lib/cjs/tile/TileIO.d.ts +66 -66
  439. package/lib/cjs/tile/TileIO.js +118 -118
  440. package/lib/cjs/tile/TileMetadata.d.ts +228 -228
  441. package/lib/cjs/tile/TileMetadata.d.ts.map +1 -1
  442. package/lib/cjs/tile/TileMetadata.js +675 -675
  443. package/lib/cjs/tile/TileMetadata.js.map +1 -1
  444. package/lib/cjs/tile/Tileset3dSchema.d.ts +96 -96
  445. package/lib/cjs/tile/Tileset3dSchema.js +9 -9
  446. package/lib/esm/AmbientOcclusion.d.ts +49 -49
  447. package/lib/esm/AmbientOcclusion.js +52 -52
  448. package/lib/esm/AnalysisStyle.d.ts +134 -134
  449. package/lib/esm/AnalysisStyle.js +160 -159
  450. package/lib/esm/AnalysisStyle.js.map +1 -1
  451. package/lib/esm/AuthorizationClient.d.ts +17 -17
  452. package/lib/esm/AuthorizationClient.js +8 -8
  453. package/lib/esm/BackendTypes.d.ts +13 -12
  454. package/lib/esm/BackendTypes.d.ts.map +1 -1
  455. package/lib/esm/BackendTypes.js +8 -8
  456. package/lib/esm/BackgroundMapProvider.d.ts +51 -51
  457. package/lib/esm/BackgroundMapProvider.d.ts.map +1 -1
  458. package/lib/esm/BackgroundMapProvider.js +63 -63
  459. package/lib/esm/BackgroundMapSettings.d.ts +136 -136
  460. package/lib/esm/BackgroundMapSettings.d.ts.map +1 -1
  461. package/lib/esm/BackgroundMapSettings.js +150 -150
  462. package/lib/esm/BackgroundMapSettings.js.map +1 -1
  463. package/lib/esm/Base64EncodedString.d.ts +32 -32
  464. package/lib/esm/Base64EncodedString.d.ts.map +1 -1
  465. package/lib/esm/Base64EncodedString.js +63 -63
  466. package/lib/esm/Base64EncodedString.js.map +1 -1
  467. package/lib/esm/BlobReader.d.ts +31 -31
  468. package/lib/esm/BlobReader.js +79 -79
  469. package/lib/esm/BriefcaseTypes.d.ts +191 -191
  470. package/lib/esm/BriefcaseTypes.d.ts.map +1 -1
  471. package/lib/esm/BriefcaseTypes.js +92 -92
  472. package/lib/esm/Camera.d.ts +42 -42
  473. package/lib/esm/Camera.js +58 -58
  474. package/lib/esm/Camera.js.map +1 -1
  475. package/lib/esm/ChangedElements.d.ts +85 -85
  476. package/lib/esm/ChangedElements.js +20 -20
  477. package/lib/esm/ChangedEntities.d.ts +45 -45
  478. package/lib/esm/ChangedEntities.d.ts.map +1 -1
  479. package/lib/esm/ChangedEntities.js +8 -8
  480. package/lib/esm/ChangesetProps.d.ts +98 -98
  481. package/lib/esm/ChangesetProps.d.ts.map +1 -1
  482. package/lib/esm/ChangesetProps.js +19 -19
  483. package/lib/esm/ClipStyle.d.ts +89 -89
  484. package/lib/esm/ClipStyle.js +118 -116
  485. package/lib/esm/ClipStyle.js.map +1 -1
  486. package/lib/esm/CloudStorage.d.ts +62 -62
  487. package/lib/esm/CloudStorage.js +109 -109
  488. package/lib/esm/CloudStorage.js.map +1 -1
  489. package/lib/esm/CloudStorageTileCache.d.ts +27 -27
  490. package/lib/esm/CloudStorageTileCache.js +61 -61
  491. package/lib/esm/CloudStorageTileCache.js.map +1 -1
  492. package/lib/esm/Code.d.ts +277 -277
  493. package/lib/esm/Code.d.ts.map +1 -1
  494. package/lib/esm/Code.js +263 -263
  495. package/lib/esm/Code.js.map +1 -1
  496. package/lib/esm/ColorByName.d.ts +161 -161
  497. package/lib/esm/ColorByName.js +166 -166
  498. package/lib/esm/ColorDef.d.ts +210 -210
  499. package/lib/esm/ColorDef.d.ts.map +1 -1
  500. package/lib/esm/ColorDef.js +569 -568
  501. package/lib/esm/ColorDef.js.map +1 -1
  502. package/lib/esm/CommonLoggerCategory.d.ts +18 -18
  503. package/lib/esm/CommonLoggerCategory.js +23 -23
  504. package/lib/esm/ConcurrentQuery.d.ts +421 -421
  505. package/lib/esm/ConcurrentQuery.d.ts.map +1 -1
  506. package/lib/esm/ConcurrentQuery.js +545 -545
  507. package/lib/esm/ContextRealityModel.d.ts +303 -303
  508. package/lib/esm/ContextRealityModel.js +366 -366
  509. package/lib/esm/DisplayStyleSettings.d.ts +588 -588
  510. package/lib/esm/DisplayStyleSettings.js +976 -976
  511. package/lib/esm/DisplayStyleSettings.js.map +1 -1
  512. package/lib/esm/ECSchemaProps.d.ts +39 -39
  513. package/lib/esm/ECSchemaProps.js +8 -8
  514. package/lib/esm/ECSqlReader.d.ts +70 -70
  515. package/lib/esm/ECSqlReader.d.ts.map +1 -1
  516. package/lib/esm/ECSqlReader.js +276 -275
  517. package/lib/esm/ECSqlReader.js.map +1 -1
  518. package/lib/esm/ECSqlTypes.d.ts +128 -128
  519. package/lib/esm/ECSqlTypes.js +185 -185
  520. package/lib/esm/ElementMesh.d.ts +39 -39
  521. package/lib/esm/ElementMesh.js +52 -52
  522. package/lib/esm/ElementProps.d.ts +483 -483
  523. package/lib/esm/ElementProps.d.ts.map +1 -1
  524. package/lib/esm/ElementProps.js +93 -92
  525. package/lib/esm/ElementProps.js.map +1 -1
  526. package/lib/esm/EmphasizeElementsProps.d.ts +55 -55
  527. package/lib/esm/EmphasizeElementsProps.js +22 -22
  528. package/lib/esm/EntityProps.d.ts +177 -177
  529. package/lib/esm/EntityProps.d.ts.map +1 -1
  530. package/lib/esm/EntityProps.js +108 -108
  531. package/lib/esm/EntityReference.d.ts +51 -51
  532. package/lib/esm/EntityReference.d.ts.map +1 -1
  533. package/lib/esm/EntityReference.js +52 -52
  534. package/lib/esm/Environment.d.ts +61 -61
  535. package/lib/esm/Environment.d.ts.map +1 -1
  536. package/lib/esm/Environment.js +67 -66
  537. package/lib/esm/Environment.js.map +1 -1
  538. package/lib/esm/FeatureIndex.d.ts +39 -39
  539. package/lib/esm/FeatureIndex.js +57 -57
  540. package/lib/esm/FeatureIndex.js.map +1 -1
  541. package/lib/esm/FeatureSymbology.d.ts +449 -449
  542. package/lib/esm/FeatureSymbology.d.ts.map +1 -1
  543. package/lib/esm/FeatureSymbology.js +615 -613
  544. package/lib/esm/FeatureSymbology.js.map +1 -1
  545. package/lib/esm/FeatureTable.d.ts +248 -248
  546. package/lib/esm/FeatureTable.d.ts.map +1 -1
  547. package/lib/esm/FeatureTable.js +462 -462
  548. package/lib/esm/FeatureTable.js.map +1 -1
  549. package/lib/esm/Fonts.d.ts +51 -51
  550. package/lib/esm/Fonts.d.ts.map +1 -1
  551. package/lib/esm/Fonts.js +49 -49
  552. package/lib/esm/Frustum.d.ts +114 -114
  553. package/lib/esm/Frustum.js +288 -288
  554. package/lib/esm/GeoCoordinateServices.d.ts +123 -119
  555. package/lib/esm/GeoCoordinateServices.d.ts.map +1 -1
  556. package/lib/esm/GeoCoordinateServices.js +77 -76
  557. package/lib/esm/GeoCoordinateServices.js.map +1 -1
  558. package/lib/esm/GeometryContainment.d.ts +28 -28
  559. package/lib/esm/GeometryContainment.js +8 -8
  560. package/lib/esm/GeometryParams.d.ts +130 -130
  561. package/lib/esm/GeometryParams.js +170 -170
  562. package/lib/esm/GeometrySummary.d.ts +45 -45
  563. package/lib/esm/GeometrySummary.js +20 -20
  564. package/lib/esm/Gradient.d.ts +139 -139
  565. package/lib/esm/Gradient.js +450 -450
  566. package/lib/esm/Gradient.js.map +1 -1
  567. package/lib/esm/GraphicParams.d.ts +58 -58
  568. package/lib/esm/GraphicParams.js +81 -81
  569. package/lib/esm/GroundPlane.d.ts +52 -52
  570. package/lib/esm/GroundPlane.d.ts.map +1 -1
  571. package/lib/esm/GroundPlane.js +60 -59
  572. package/lib/esm/GroundPlane.js.map +1 -1
  573. package/lib/esm/HSLColor.d.ts +20 -20
  574. package/lib/esm/HSLColor.js +28 -28
  575. package/lib/esm/HSVColor.d.ts +30 -30
  576. package/lib/esm/HSVColor.js +55 -55
  577. package/lib/esm/HiddenLine.d.ts +97 -97
  578. package/lib/esm/HiddenLine.js +157 -157
  579. package/lib/esm/HiddenLine.js.map +1 -1
  580. package/lib/esm/Hilite.d.ts +50 -50
  581. package/lib/esm/Hilite.js +61 -61
  582. package/lib/esm/Hilite.js.map +1 -1
  583. package/lib/esm/IModel.d.ts +358 -358
  584. package/lib/esm/IModel.d.ts.map +1 -1
  585. package/lib/esm/IModel.js +343 -342
  586. package/lib/esm/IModel.js.map +1 -1
  587. package/lib/esm/IModelError.d.ts +42 -42
  588. package/lib/esm/IModelError.d.ts.map +1 -1
  589. package/lib/esm/IModelError.js +56 -56
  590. package/lib/esm/IModelVersion.d.ts +68 -68
  591. package/lib/esm/IModelVersion.d.ts.map +1 -1
  592. package/lib/esm/IModelVersion.js +75 -75
  593. package/lib/esm/Image.d.ts +86 -86
  594. package/lib/esm/Image.js +120 -120
  595. package/lib/esm/Image.js.map +1 -1
  596. package/lib/esm/IpcAppProps.d.ts +141 -141
  597. package/lib/esm/IpcAppProps.js +19 -19
  598. package/lib/esm/LightSettings.d.ts +224 -224
  599. package/lib/esm/LightSettings.js +297 -296
  600. package/lib/esm/LightSettings.js.map +1 -1
  601. package/lib/esm/LinePixels.d.ts +34 -34
  602. package/lib/esm/LinePixels.js +39 -39
  603. package/lib/esm/Localization.d.ts +113 -113
  604. package/lib/esm/Localization.js +29 -29
  605. package/lib/esm/MapImagerySettings.d.ts +62 -62
  606. package/lib/esm/MapImagerySettings.d.ts.map +1 -1
  607. package/lib/esm/MapImagerySettings.js +76 -76
  608. package/lib/esm/MapLayerSettings.d.ts +272 -272
  609. package/lib/esm/MapLayerSettings.d.ts.map +1 -1
  610. package/lib/esm/MapLayerSettings.js +399 -399
  611. package/lib/esm/MapLayerSettings.js.map +1 -1
  612. package/lib/esm/MassProperties.d.ts +64 -64
  613. package/lib/esm/MassProperties.js +20 -20
  614. package/lib/esm/MaterialProps.d.ts +153 -153
  615. package/lib/esm/MaterialProps.d.ts.map +1 -1
  616. package/lib/esm/MaterialProps.js +32 -32
  617. package/lib/esm/ModelClipGroup.d.ts +67 -67
  618. package/lib/esm/ModelClipGroup.js +91 -91
  619. package/lib/esm/ModelGeometryChanges.d.ts +107 -107
  620. package/lib/esm/ModelGeometryChanges.d.ts.map +1 -1
  621. package/lib/esm/ModelGeometryChanges.js +80 -80
  622. package/lib/esm/ModelProps.d.ts +67 -67
  623. package/lib/esm/ModelProps.js +8 -8
  624. package/lib/esm/NativeAppProps.d.ts +122 -122
  625. package/lib/esm/NativeAppProps.d.ts.map +1 -1
  626. package/lib/esm/NativeAppProps.js +27 -27
  627. package/lib/esm/OctEncodedNormal.d.ts +33 -33
  628. package/lib/esm/OctEncodedNormal.js +93 -93
  629. package/lib/esm/PlanProjectionSettings.d.ts +47 -47
  630. package/lib/esm/PlanProjectionSettings.js +59 -59
  631. package/lib/esm/PlanProjectionSettings.js.map +1 -1
  632. package/lib/esm/PlanarClipMask.d.ts +177 -177
  633. package/lib/esm/PlanarClipMask.js +133 -132
  634. package/lib/esm/PlanarClipMask.js.map +1 -1
  635. package/lib/esm/QPoint.d.ts +479 -479
  636. package/lib/esm/QPoint.js +813 -813
  637. package/lib/esm/QPoint.js.map +1 -1
  638. package/lib/esm/RealityDataAccessProps.d.ts +41 -41
  639. package/lib/esm/RealityDataAccessProps.js +16 -16
  640. package/lib/esm/RealityModelDisplaySettings.d.ts +183 -183
  641. package/lib/esm/RealityModelDisplaySettings.d.ts.map +1 -1
  642. package/lib/esm/RealityModelDisplaySettings.js +138 -136
  643. package/lib/esm/RealityModelDisplaySettings.js.map +1 -1
  644. package/lib/esm/Render.d.ts +89 -89
  645. package/lib/esm/Render.js +165 -165
  646. package/lib/esm/RenderMaterial.d.ts +58 -58
  647. package/lib/esm/RenderMaterial.js +71 -71
  648. package/lib/esm/RenderMaterial.js.map +1 -1
  649. package/lib/esm/RenderSchedule.d.ts +543 -543
  650. package/lib/esm/RenderSchedule.js +989 -989
  651. package/lib/esm/RenderSchedule.js.map +1 -1
  652. package/lib/esm/RenderTexture.d.ts +70 -70
  653. package/lib/esm/RenderTexture.d.ts.map +1 -1
  654. package/lib/esm/RenderTexture.js +55 -55
  655. package/lib/esm/RenderTexture.js.map +1 -1
  656. package/lib/esm/RgbColor.d.ts +47 -47
  657. package/lib/esm/RgbColor.js +73 -73
  658. package/lib/esm/RpcInterface.d.ts +33 -33
  659. package/lib/esm/RpcInterface.d.ts.map +1 -1
  660. package/lib/esm/RpcInterface.js +133 -133
  661. package/lib/esm/RpcInterface.js.map +1 -1
  662. package/lib/esm/RpcManager.d.ts +40 -40
  663. package/lib/esm/RpcManager.js +51 -51
  664. package/lib/esm/SessionProps.d.ts +16 -16
  665. package/lib/esm/SessionProps.js +8 -8
  666. package/lib/esm/SkyBox.d.ts +215 -215
  667. package/lib/esm/SkyBox.d.ts.map +1 -1
  668. package/lib/esm/SkyBox.js +204 -202
  669. package/lib/esm/SkyBox.js.map +1 -1
  670. package/lib/esm/Snapping.d.ts +49 -49
  671. package/lib/esm/Snapping.js +8 -8
  672. package/lib/esm/SolarCalculate.d.ts +27 -27
  673. package/lib/esm/SolarCalculate.js +204 -204
  674. package/lib/esm/SolarShadows.d.ts +35 -35
  675. package/lib/esm/SolarShadows.js +58 -57
  676. package/lib/esm/SolarShadows.js.map +1 -1
  677. package/lib/esm/SpatialClassification.d.ts +208 -208
  678. package/lib/esm/SpatialClassification.js +333 -333
  679. package/lib/esm/SubCategoryAppearance.d.ts +91 -91
  680. package/lib/esm/SubCategoryAppearance.js +93 -92
  681. package/lib/esm/SubCategoryAppearance.js.map +1 -1
  682. package/lib/esm/SubCategoryOverride.d.ts +46 -46
  683. package/lib/esm/SubCategoryOverride.js +101 -100
  684. package/lib/esm/SubCategoryOverride.js.map +1 -1
  685. package/lib/esm/TerrainSettings.d.ts +82 -82
  686. package/lib/esm/TerrainSettings.d.ts.map +1 -1
  687. package/lib/esm/TerrainSettings.js +96 -96
  688. package/lib/esm/TerrainSettings.js.map +1 -1
  689. package/lib/esm/TextureMapping.d.ts +118 -118
  690. package/lib/esm/TextureMapping.js +169 -169
  691. package/lib/esm/TextureProps.d.ts +65 -65
  692. package/lib/esm/TextureProps.js +25 -25
  693. package/lib/esm/ThematicDisplay.d.ts +230 -230
  694. package/lib/esm/ThematicDisplay.js +337 -336
  695. package/lib/esm/ThematicDisplay.js.map +1 -1
  696. package/lib/esm/Thumbnail.d.ts +26 -26
  697. package/lib/esm/Thumbnail.js +8 -8
  698. package/lib/esm/TileProps.d.ts +82 -82
  699. package/lib/esm/TileProps.js +25 -25
  700. package/lib/esm/Tween.d.ts +191 -191
  701. package/lib/esm/Tween.d.ts.map +1 -1
  702. package/lib/esm/Tween.js +565 -565
  703. package/lib/esm/TxnAction.d.ts +21 -21
  704. package/lib/esm/TxnAction.js +26 -26
  705. package/lib/esm/ViewDetails.d.ts +125 -125
  706. package/lib/esm/ViewDetails.js +162 -161
  707. package/lib/esm/ViewDetails.js.map +1 -1
  708. package/lib/esm/ViewFlags.d.ts +287 -287
  709. package/lib/esm/ViewFlags.d.ts.map +1 -1
  710. package/lib/esm/ViewFlags.js +364 -363
  711. package/lib/esm/ViewFlags.js.map +1 -1
  712. package/lib/esm/ViewProps.d.ts +205 -205
  713. package/lib/esm/ViewProps.js +8 -8
  714. package/lib/esm/WhiteOnWhiteReversalSettings.d.ts +36 -36
  715. package/lib/esm/WhiteOnWhiteReversalSettings.js +34 -33
  716. package/lib/esm/WhiteOnWhiteReversalSettings.js.map +1 -1
  717. package/lib/esm/core-common.d.ts +245 -245
  718. package/lib/esm/core-common.js +249 -249
  719. package/lib/esm/domains/FunctionalElementProps.d.ts +11 -11
  720. package/lib/esm/domains/FunctionalElementProps.js +8 -8
  721. package/lib/esm/domains/GenericElementProps.d.ts +18 -18
  722. package/lib/esm/domains/GenericElementProps.js +8 -8
  723. package/lib/esm/geometry/AdditionalTransform.d.ts +84 -84
  724. package/lib/esm/geometry/AdditionalTransform.js +80 -80
  725. package/lib/esm/geometry/AreaPattern.d.ts +82 -82
  726. package/lib/esm/geometry/AreaPattern.js +200 -200
  727. package/lib/esm/geometry/BoundingSphere.d.ts +27 -27
  728. package/lib/esm/geometry/BoundingSphere.js +40 -40
  729. package/lib/esm/geometry/Cartographic.d.ts +137 -137
  730. package/lib/esm/geometry/Cartographic.js +341 -340
  731. package/lib/esm/geometry/Cartographic.js.map +1 -1
  732. package/lib/esm/geometry/CoordinateReferenceSystem.d.ts +269 -269
  733. package/lib/esm/geometry/CoordinateReferenceSystem.d.ts.map +1 -1
  734. package/lib/esm/geometry/CoordinateReferenceSystem.js +253 -253
  735. package/lib/esm/geometry/ElementGeometry.d.ts +402 -402
  736. package/lib/esm/geometry/ElementGeometry.d.ts.map +1 -1
  737. package/lib/esm/geometry/ElementGeometry.js +1716 -1716
  738. package/lib/esm/geometry/ElementGeometryFB.d.ts +2372 -2372
  739. package/lib/esm/geometry/ElementGeometryFB.js +3811 -3811
  740. package/lib/esm/geometry/ElementGeometryFB.js.map +1 -1
  741. package/lib/esm/geometry/FrustumPlanes.d.ts +81 -81
  742. package/lib/esm/geometry/FrustumPlanes.js +185 -185
  743. package/lib/esm/geometry/GeodeticDatum.d.ts +409 -409
  744. package/lib/esm/geometry/GeodeticDatum.d.ts.map +1 -1
  745. package/lib/esm/geometry/GeodeticDatum.js +389 -389
  746. package/lib/esm/geometry/GeodeticEllipsoid.d.ts +72 -72
  747. package/lib/esm/geometry/GeodeticEllipsoid.js +67 -67
  748. package/lib/esm/geometry/GeometryStream.d.ts +347 -347
  749. package/lib/esm/geometry/GeometryStream.d.ts.map +1 -1
  750. package/lib/esm/geometry/GeometryStream.js +463 -463
  751. package/lib/esm/geometry/ImageGraphic.d.ts +74 -74
  752. package/lib/esm/geometry/ImageGraphic.d.ts.map +1 -1
  753. package/lib/esm/geometry/ImageGraphic.js +93 -93
  754. package/lib/esm/geometry/LineStyle.d.ts +71 -71
  755. package/lib/esm/geometry/LineStyle.js +126 -126
  756. package/lib/esm/geometry/Placement.d.ts +95 -95
  757. package/lib/esm/geometry/Placement.d.ts.map +1 -1
  758. package/lib/esm/geometry/Placement.js +126 -126
  759. package/lib/esm/geometry/Projection.d.ts +251 -251
  760. package/lib/esm/geometry/Projection.d.ts.map +1 -1
  761. package/lib/esm/geometry/Projection.js +192 -192
  762. package/lib/esm/geometry/Projection.js.map +1 -1
  763. package/lib/esm/geometry/TextString.d.ts +55 -55
  764. package/lib/esm/geometry/TextString.js +61 -61
  765. package/lib/esm/geometry/TextString.js.map +1 -1
  766. package/lib/esm/ipc/IpcSession.d.ts +23 -23
  767. package/lib/esm/ipc/IpcSession.js +23 -23
  768. package/lib/esm/ipc/IpcSocket.d.ts +96 -96
  769. package/lib/esm/ipc/IpcSocket.d.ts.map +1 -1
  770. package/lib/esm/ipc/IpcSocket.js +12 -12
  771. package/lib/esm/ipc/IpcWebSocket.d.ts +61 -61
  772. package/lib/esm/ipc/IpcWebSocket.js +145 -144
  773. package/lib/esm/ipc/IpcWebSocket.js.map +1 -1
  774. package/lib/esm/ipc/IpcWebSocketTransport.d.ts +15 -15
  775. package/lib/esm/ipc/IpcWebSocketTransport.js +156 -156
  776. package/lib/esm/ipc/IpcWebSocketTransport.js.map +1 -1
  777. package/lib/esm/rpc/DevToolsRpcInterface.d.ts +32 -32
  778. package/lib/esm/rpc/DevToolsRpcInterface.js +49 -48
  779. package/lib/esm/rpc/DevToolsRpcInterface.js.map +1 -1
  780. package/lib/esm/rpc/IModelReadRpcInterface.d.ts +99 -99
  781. package/lib/esm/rpc/IModelReadRpcInterface.js +118 -117
  782. package/lib/esm/rpc/IModelReadRpcInterface.js.map +1 -1
  783. package/lib/esm/rpc/IModelTileRpcInterface.d.ts +61 -61
  784. package/lib/esm/rpc/IModelTileRpcInterface.js +94 -92
  785. package/lib/esm/rpc/IModelTileRpcInterface.js.map +1 -1
  786. package/lib/esm/rpc/SnapshotIModelRpcInterface.d.ts +23 -23
  787. package/lib/esm/rpc/SnapshotIModelRpcInterface.js +45 -44
  788. package/lib/esm/rpc/SnapshotIModelRpcInterface.js.map +1 -1
  789. package/lib/esm/rpc/TestRpcManager.d.ts +20 -20
  790. package/lib/esm/rpc/TestRpcManager.js +36 -36
  791. package/lib/esm/rpc/WipRpcInterface.d.ts +29 -29
  792. package/lib/esm/rpc/WipRpcInterface.js +37 -36
  793. package/lib/esm/rpc/WipRpcInterface.js.map +1 -1
  794. package/lib/esm/rpc/core/RpcConfiguration.d.ts +111 -111
  795. package/lib/esm/rpc/core/RpcConfiguration.d.ts.map +1 -1
  796. package/lib/esm/rpc/core/RpcConfiguration.js +185 -184
  797. package/lib/esm/rpc/core/RpcConfiguration.js.map +1 -1
  798. package/lib/esm/rpc/core/RpcConstants.d.ts +90 -90
  799. package/lib/esm/rpc/core/RpcConstants.js +106 -106
  800. package/lib/esm/rpc/core/RpcControl.d.ts +54 -54
  801. package/lib/esm/rpc/core/RpcControl.js +144 -138
  802. package/lib/esm/rpc/core/RpcControl.js.map +1 -1
  803. package/lib/esm/rpc/core/RpcInvocation.d.ts +89 -89
  804. package/lib/esm/rpc/core/RpcInvocation.d.ts.map +1 -1
  805. package/lib/esm/rpc/core/RpcInvocation.js +253 -252
  806. package/lib/esm/rpc/core/RpcInvocation.js.map +1 -1
  807. package/lib/esm/rpc/core/RpcMarshaling.d.ts +35 -35
  808. package/lib/esm/rpc/core/RpcMarshaling.js +152 -152
  809. package/lib/esm/rpc/core/RpcOperation.d.ts +67 -67
  810. package/lib/esm/rpc/core/RpcOperation.d.ts.map +1 -1
  811. package/lib/esm/rpc/core/RpcOperation.js +130 -129
  812. package/lib/esm/rpc/core/RpcOperation.js.map +1 -1
  813. package/lib/esm/rpc/core/RpcPendingQueue.d.ts +21 -21
  814. package/lib/esm/rpc/core/RpcPendingQueue.js +90 -90
  815. package/lib/esm/rpc/core/RpcPendingQueue.js.map +1 -1
  816. package/lib/esm/rpc/core/RpcProtocol.d.ts +132 -132
  817. package/lib/esm/rpc/core/RpcProtocol.d.ts.map +1 -1
  818. package/lib/esm/rpc/core/RpcProtocol.js +124 -123
  819. package/lib/esm/rpc/core/RpcProtocol.js.map +1 -1
  820. package/lib/esm/rpc/core/RpcPush.d.ts +68 -68
  821. package/lib/esm/rpc/core/RpcPush.d.ts.map +1 -1
  822. package/lib/esm/rpc/core/RpcPush.js +121 -119
  823. package/lib/esm/rpc/core/RpcPush.js.map +1 -1
  824. package/lib/esm/rpc/core/RpcRegistry.d.ts +48 -48
  825. package/lib/esm/rpc/core/RpcRegistry.js +194 -194
  826. package/lib/esm/rpc/core/RpcRequest.d.ts +186 -186
  827. package/lib/esm/rpc/core/RpcRequest.d.ts.map +1 -1
  828. package/lib/esm/rpc/core/RpcRequest.js +474 -473
  829. package/lib/esm/rpc/core/RpcRequest.js.map +1 -1
  830. package/lib/esm/rpc/core/RpcRequestContext.d.ts +14 -14
  831. package/lib/esm/rpc/core/RpcRequestContext.js +1 -1
  832. package/lib/esm/rpc/core/RpcRoutingToken.d.ts +12 -12
  833. package/lib/esm/rpc/core/RpcRoutingToken.js +21 -20
  834. package/lib/esm/rpc/core/RpcRoutingToken.js.map +1 -1
  835. package/lib/esm/rpc/core/RpcSessionInvocation.d.ts +10 -10
  836. package/lib/esm/rpc/core/RpcSessionInvocation.js +56 -56
  837. package/lib/esm/rpc/core/RpcSessionInvocation.js.map +1 -1
  838. package/lib/esm/rpc/web/BentleyCloudRpcManager.d.ts +46 -46
  839. package/lib/esm/rpc/web/BentleyCloudRpcManager.js +69 -68
  840. package/lib/esm/rpc/web/BentleyCloudRpcManager.js.map +1 -1
  841. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.d.ts +33 -33
  842. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.js +137 -137
  843. package/lib/esm/rpc/web/OpenAPI.d.ts +140 -140
  844. package/lib/esm/rpc/web/OpenAPI.js +56 -56
  845. package/lib/esm/rpc/web/OpenAPI.js.map +1 -1
  846. package/lib/esm/rpc/web/RpcMultipart.d.ts +35 -35
  847. package/lib/esm/rpc/web/RpcMultipart.js +47 -46
  848. package/lib/esm/rpc/web/RpcMultipart.js.map +1 -1
  849. package/lib/esm/rpc/web/WebAppRpcLogging.d.ts +28 -28
  850. package/lib/esm/rpc/web/WebAppRpcLogging.js +136 -136
  851. package/lib/esm/rpc/web/WebAppRpcProtocol.d.ts +89 -89
  852. package/lib/esm/rpc/web/WebAppRpcProtocol.js +112 -112
  853. package/lib/esm/rpc/web/WebAppRpcProtocol.js.map +1 -1
  854. package/lib/esm/rpc/web/WebAppRpcRequest.d.ts +67 -67
  855. package/lib/esm/rpc/web/WebAppRpcRequest.d.ts.map +1 -1
  856. package/lib/esm/rpc/web/WebAppRpcRequest.js +236 -235
  857. package/lib/esm/rpc/web/WebAppRpcRequest.js.map +1 -1
  858. package/lib/esm/rpc/web/multipart/RpcMultipartParser.d.ts +32 -32
  859. package/lib/esm/rpc/web/multipart/RpcMultipartParser.js +369 -369
  860. package/lib/esm/tile/B3dmTileIO.d.ts +19 -19
  861. package/lib/esm/tile/B3dmTileIO.js +62 -62
  862. package/lib/esm/tile/B3dmTileIO.js.map +1 -1
  863. package/lib/esm/tile/CompositeTileIO.d.ts +15 -15
  864. package/lib/esm/tile/CompositeTileIO.js +22 -22
  865. package/lib/esm/tile/CompositeTileIO.js.map +1 -1
  866. package/lib/esm/tile/ElementGraphics.d.ts +145 -145
  867. package/lib/esm/tile/ElementGraphics.d.ts.map +1 -1
  868. package/lib/esm/tile/ElementGraphics.js +8 -8
  869. package/lib/esm/tile/GltfTileIO.d.ts +45 -45
  870. package/lib/esm/tile/GltfTileIO.d.ts.map +1 -1
  871. package/lib/esm/tile/GltfTileIO.js +105 -105
  872. package/lib/esm/tile/GltfTileIO.js.map +1 -1
  873. package/lib/esm/tile/I3dmTileIO.d.ts +20 -20
  874. package/lib/esm/tile/I3dmTileIO.js +36 -36
  875. package/lib/esm/tile/I3dmTileIO.js.map +1 -1
  876. package/lib/esm/tile/IModelTileIO.d.ts +77 -77
  877. package/lib/esm/tile/IModelTileIO.js +93 -92
  878. package/lib/esm/tile/IModelTileIO.js.map +1 -1
  879. package/lib/esm/tile/PntsTileIO.d.ts +17 -17
  880. package/lib/esm/tile/PntsTileIO.js +22 -22
  881. package/lib/esm/tile/PntsTileIO.js.map +1 -1
  882. package/lib/esm/tile/TileIO.d.ts +66 -66
  883. package/lib/esm/tile/TileIO.js +110 -110
  884. package/lib/esm/tile/TileMetadata.d.ts +228 -228
  885. package/lib/esm/tile/TileMetadata.d.ts.map +1 -1
  886. package/lib/esm/tile/TileMetadata.js +660 -660
  887. package/lib/esm/tile/TileMetadata.js.map +1 -1
  888. package/lib/esm/tile/Tileset3dSchema.d.ts +96 -96
  889. package/lib/esm/tile/Tileset3dSchema.js +8 -8
  890. package/package.json +8 -8
@@ -1 +1 @@
1
- {"version":3,"file":"Gradient.js","sourceRoot":"","sources":["../../src/Gradient.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 Symbology\r\n */\r\n\r\nimport { assert } from \"@itwin/core-bentley\";\r\nimport { Angle, AngleProps } from \"@itwin/core-geometry\";\r\nimport { ColorDef, ColorDefProps } from \"./ColorDef\";\r\nimport { ImageBuffer, ImageBufferFormat } from \"./Image\";\r\nimport { ThematicGradientColorScheme, ThematicGradientMode, ThematicGradientSettings, ThematicGradientSettingsProps } from \"./ThematicDisplay\";\r\n\r\n/** Namespace containing types for defining a color gradient, often used for filled planar regions.\r\n * @see [[GeometryParams]]\r\n * @see [[GraphicParams]]\r\n * @public\r\n */\r\nexport namespace Gradient {\r\n /** Flags applied to a [[Gradient.Symb]]. */\r\n export enum Flags {\r\n /** No flags. */\r\n None = 0,\r\n /** Reverse the order of the gradient keys. */\r\n Invert = 1,\r\n /** Draw an outline around the surface to which the gradient is applied. */\r\n Outline = 2,\r\n }\r\n\r\n /** Enumerates the modes by which a [[Gradient.Symb]]'s keys are applied to create an image. */\r\n export enum Mode {\r\n None = 0,\r\n Linear = 1,\r\n Curved = 2,\r\n Cylindrical = 3,\r\n Spherical = 4,\r\n Hemispherical = 5,\r\n /** For a gradient created based for [[ThematicDisplay]]. */\r\n Thematic = 6,\r\n }\r\n\r\n /** Gradient fraction value to [[ColorDef]] pair */\r\n export interface KeyColorProps {\r\n /** Fraction from 0.0 to 1.0 to denote position along gradient */\r\n value: number;\r\n /** Color value for given fraction */\r\n color: ColorDefProps;\r\n }\r\n\r\n /** Gradient fraction value to [[ColorDef]] pair\r\n * @see [[Gradient.KeyColorProps]]\r\n */\r\n export class KeyColor {\r\n public value: number;\r\n public color: ColorDef;\r\n public constructor(json: KeyColorProps) {\r\n this.value = json.value;\r\n this.color = ColorDef.fromJSON(json.color);\r\n }\r\n }\r\n\r\n /** Compare two KeyColor objects for equality. Returns true if equal. */\r\n export function keyColorEquals(a: KeyColor, b: KeyColor): boolean {\r\n return (a.value === b.value) && a.color.equals(b.color);\r\n }\r\n\r\n /** Multi-color area fill defined by a range of colors that vary by position */\r\n export interface SymbProps {\r\n /** Gradient type, must be set to something other than [[Gradient.Mode.None]] to display fill */\r\n mode: Mode;\r\n /** Gradient flags to enable outline display and invert color fractions, Flags.None if undefined */\r\n flags?: Flags;\r\n /** Gradient rotation angle, 0.0 if undefined */\r\n angle?: AngleProps;\r\n /** Gradient tint value from 0.0 to 1.0, only used when [[Gradient.KeyColorProps]] size is 1, 0.0 if undefined */\r\n tint?: number;\r\n /** Gradient shift value from 0.0 to 1.0, 0.0 if undefined */\r\n shift?: number;\r\n /** Gradient fraction value/color pairs, 1 minimum (uses tint for 2nd color), 8 maximum */\r\n keys: KeyColorProps[];\r\n /** Settings applicable to [[ThematicDisplay]]. */\r\n thematicSettings?: ThematicGradientSettingsProps;\r\n }\r\n\r\n /** Arguments supplied to [[Gradient.Symb.produceImage]].\r\n * @public\r\n */\r\n export interface ProduceImageArgs {\r\n /** The desired width of the image in pixels. Must be an integer greater than zero. */\r\n width: number;\r\n /** The desired height of the image in pixels. Must be an integer greater than zero. */\r\n height: number;\r\n /** If true and the gradient uses [[Gradient.Mode.Thematic]], the margin color specified by [[ThematicGradientSettings.marginColor]] will be included\r\n * in the top and bottom rows of the image; otherwise only the gradient colors will be included in the image.\r\n */\r\n includeThematicMargin?: boolean;\r\n }\r\n\r\n /** Multi-color area fill defined by a range of colors that vary by position.\r\n * Gradient fill can be applied to planar regions.\r\n * @see [[Gradient.SymbProps]]\r\n */\r\n export class Symb {\r\n public mode = Mode.None;\r\n public flags: Flags = Flags.None;\r\n public angle?: Angle;\r\n public tint?: number;\r\n public shift: number = 0;\r\n public thematicSettings?: ThematicGradientSettings;\r\n public keys: KeyColor[] = [];\r\n\r\n /** create a GradientSymb from a json object. */\r\n public static fromJSON(json?: SymbProps) {\r\n const result = new Symb();\r\n if (!json)\r\n return result;\r\n result.mode = json.mode;\r\n result.flags = (json.flags === undefined) ? Flags.None : json.flags;\r\n result.angle = json.angle ? Angle.fromJSON(json.angle) : undefined;\r\n result.tint = json.tint;\r\n result.shift = json.shift ? json.shift : 0;\r\n json.keys.forEach((key) => result.keys.push(new KeyColor(key)));\r\n result.thematicSettings = (json.thematicSettings === undefined) ? undefined : ThematicGradientSettings.fromJSON(json.thematicSettings);\r\n\r\n return result;\r\n }\r\n\r\n private static _fixedSchemeKeys = [\r\n // NB: these color values are ordered as rbg. Note how the components are applied below.\r\n [[0.0, 0, 255, 0], [0.25, 0, 255, 255], [0.5, 0, 0, 255], [0.75, 255, 0, 255], [1.0, 255, 0, 0]], // Blue Red.\r\n [[0.0, 255, 0, 0], [0.25, 255, 0, 255], [0.5, 0, 0, 255], [0.75, 0, 255, 255], [1.0, 0, 255, 0]], // Red blue.\r\n [[0.0, 0, 0, 0], [1.0, 255, 255, 255]], // Monochrome.\r\n [[0.0, 152, 148, 188], [0.5, 204, 160, 204], [1.0, 152, 72, 128]], // Based off of the topographic gradients in Point Clouds.\r\n [[0.0, 0, 255, 0], [0.2, 72, 96, 160], [0.4, 152, 96, 160], [0.6, 128, 32, 104], [0.7, 148, 180, 128], [1.0, 240, 240, 240]], // Based off of the sea-mountain gradient in Point Clouds.\r\n ];\r\n private static _fixedCustomKeys = [[0.0, 255, 0, 0], [1.0, 0, 255, 0]];\r\n\r\n /** Create for [[ThematicDisplay]]. */\r\n public static createThematic(settings: ThematicGradientSettings) {\r\n const result = new Symb();\r\n result.mode = Mode.Thematic;\r\n result.thematicSettings = settings;\r\n\r\n if (settings.colorScheme < ThematicGradientColorScheme.Custom) {\r\n for (const keyValue of Gradient.Symb._fixedSchemeKeys[settings.colorScheme])\r\n result.keys.push(new KeyColor({ value: keyValue[0], color: ColorDef.computeTbgrFromComponents(keyValue[1], keyValue[3], keyValue[2]) }));\r\n } else { // custom color scheme; must use custom keys\r\n assert(settings.customKeys.length > 1, \"Custom thematic mode requires at least two keys to be defined\");\r\n if (settings.customKeys.length > 1) {\r\n settings.customKeys.forEach((keyColor) => result.keys.push(keyColor));\r\n } else { // if custom color keys are not specified properly, revert to some basic key scheme and assert\r\n for (const keyValue of Gradient.Symb._fixedCustomKeys)\r\n result.keys.push(new KeyColor({ value: keyValue[0], color: ColorDef.from(keyValue[1], keyValue[3], keyValue[2]).toJSON() }));\r\n }\r\n }\r\n return result;\r\n }\r\n\r\n public toJSON(): SymbProps {\r\n return {\r\n ...this,\r\n thematicSettings: this.thematicSettings?.toJSON(),\r\n keys: this.keys.map((key) => ({ value: key.value, color: key.color.toJSON() })),\r\n };\r\n }\r\n\r\n public clone(): Symb {\r\n return Symb.fromJSON(this.toJSON());\r\n }\r\n\r\n /** Returns true if this symbology is equal to another, false otherwise. */\r\n public equals(other: Symb): boolean {\r\n return Symb.compareSymb(this, other) === 0;\r\n }\r\n\r\n /** Compares two gradient symbologies. Used for ordering Gradient.Symb objects.\r\n * @param lhs First gradient to compare\r\n * @param rhs Second gradient to compare\r\n * @returns 0 if lhs is equivalent to rhs, a negative number if lhs compares less than rhs, or a positive number if lhs compares greater than rhs.\r\n */\r\n public static compareSymb(lhs: Gradient.Symb, rhs: Gradient.Symb): number {\r\n if (lhs === rhs)\r\n return 0; // Same pointer\r\n if (lhs.mode !== rhs.mode)\r\n return lhs.mode - rhs.mode;\r\n if (lhs.flags !== rhs.flags)\r\n if (lhs.flags === undefined)\r\n return -1;\r\n else if (rhs.flags === undefined)\r\n return 1;\r\n else\r\n return lhs.flags - rhs.flags;\r\n if (lhs.tint !== rhs.tint)\r\n if (lhs.tint === undefined)\r\n return -1;\r\n else if (rhs.tint === undefined)\r\n return 1;\r\n else\r\n return lhs.tint - rhs.tint;\r\n if (lhs.shift !== rhs.shift)\r\n if (lhs.shift === undefined)\r\n return -1;\r\n else if (rhs.shift === undefined)\r\n return 1;\r\n else\r\n return lhs.shift - rhs.shift;\r\n if ((lhs.angle === undefined) !== (rhs.angle === undefined))\r\n if (lhs.angle === undefined)\r\n return -1;\r\n else\r\n return 1;\r\n if (lhs.angle && !lhs.angle.isAlmostEqualNoPeriodShift(rhs.angle!))\r\n return lhs.angle.radians - rhs.angle!.radians;\r\n if (lhs.keys.length !== rhs.keys.length)\r\n return lhs.keys.length - rhs.keys.length;\r\n for (let i = 0; i < lhs.keys.length; i++) {\r\n if (lhs.keys[i].value !== rhs.keys[i].value)\r\n return lhs.keys[i].value - rhs.keys[i].value;\r\n if (!lhs.keys[i].color.equals(rhs.keys[i].color))\r\n return lhs.keys[i].color.tbgr - rhs.keys[i].color.tbgr;\r\n }\r\n if (lhs.thematicSettings !== rhs.thematicSettings)\r\n if (undefined === lhs.thematicSettings)\r\n return -1;\r\n else if (undefined === rhs.thematicSettings)\r\n return 1;\r\n else {\r\n const thematicCompareResult = ThematicGradientSettings.compare(lhs.thematicSettings, rhs.thematicSettings);\r\n if (0 !== thematicCompareResult)\r\n return thematicCompareResult;\r\n }\r\n return 0;\r\n }\r\n\r\n /** Compare this symbology to another.\r\n * @see [[Gradient.Symb.compareSymb]]\r\n */\r\n public compare(other: Symb): number {\r\n return Gradient.Symb.compareSymb(this, other);\r\n }\r\n\r\n /**\r\n * Ensure the value given is within the range of 0 to 255,\r\n * and truncate the value to only the 8 least significant bits.\r\n */\r\n private roundToByte(num: number): number {\r\n return Math.min(num + .5, 255.0) & 0xFF;\r\n }\r\n\r\n /** Maps a value to an RGBA value adjusted from a color present in this symbology's array. */\r\n public mapColor(value: number) {\r\n if (value < 0)\r\n value = 0;\r\n else if (value > 1)\r\n value = 1;\r\n\r\n if ((this.flags & Flags.Invert) !== 0)\r\n value = 1 - value;\r\n\r\n let idx = 0;\r\n let d;\r\n let w0;\r\n let w1;\r\n if (this.keys.length <= 2) {\r\n w0 = 1.0 - value;\r\n w1 = value;\r\n } else { // locate value in map, blend corresponding colors\r\n while (idx < (this.keys.length - 2) && value > this.keys[idx + 1].value)\r\n idx++;\r\n\r\n d = this.keys[idx + 1].value - this.keys[idx].value;\r\n w1 = d < 0.0001 ? 0.0 : (value - this.keys[idx].value) / d;\r\n w0 = 1.0 - w1;\r\n }\r\n\r\n const color0 = this.keys[idx].color;\r\n const color1 = this.keys[idx + 1].color;\r\n const colors0 = color0.colors;\r\n const colors1 = color1.colors;\r\n const red = w0 * colors0.r + w1 * colors1.r;\r\n const green = w0 * colors0.g + w1 * colors1.g;\r\n const blue = w0 * colors0.b + w1 * colors1.b;\r\n const transparency = w0 * colors0.t + w1 * colors1.t;\r\n\r\n return ColorDef.from(this.roundToByte(red), this.roundToByte(green), this.roundToByte(blue), this.roundToByte(transparency));\r\n }\r\n\r\n public get hasTranslucency(): boolean {\r\n for (const key of this.keys) {\r\n if (!key.color.isOpaque)\r\n return true;\r\n }\r\n\r\n return false;\r\n }\r\n\r\n /** Returns true if the [[Gradient.Flags.Outline]] flag is set. */\r\n public get isOutlined(): boolean { return 0 !== (this.flags & Flags.Outline); }\r\n\r\n /** This function (for internal use only) provides the WebGL renderer with a thematic image that its shaders\r\n * can use properly with various thematic rendering techniques.\r\n * If you want a regular gradient image, use the method [[Gradient.Symb.getImage]].\r\n * @internal\r\n */\r\n public getThematicImageForRenderer(maxDimension: number): ImageBuffer {\r\n assert(Mode.Thematic === this.mode, \"getThematicImageForRenderer only is used for thematic display.\");\r\n\r\n let settings = this.thematicSettings;\r\n if (settings === undefined) {\r\n settings = ThematicGradientSettings.defaults;\r\n }\r\n\r\n const stepCount = Math.min(settings.stepCount, maxDimension);\r\n const dimension = (ThematicGradientMode.Smooth === settings.mode) ? maxDimension : stepCount;\r\n const image = new Uint8Array(1 * dimension * 4);\r\n let currentIdx = image.length - 1;\r\n\r\n function addColor(color: ColorDef) {\r\n image[currentIdx--] = color.getAlpha();\r\n image[currentIdx--] = color.colors.b;\r\n image[currentIdx--] = color.colors.g;\r\n image[currentIdx--] = color.colors.r;\r\n }\r\n\r\n switch (settings.mode) {\r\n case ThematicGradientMode.Smooth: {\r\n for (let j = 0; j < dimension; j++) {\r\n const f = (1 - j / (dimension));\r\n addColor(this.mapColor(f));\r\n }\r\n break;\r\n }\r\n\r\n case ThematicGradientMode.SteppedWithDelimiter:\r\n case ThematicGradientMode.IsoLines:\r\n // The work to generate the delimiter lines and isolines is done completely in the shader.\r\n // Therefore, we just fall through here and use a regular stepped gradient.\r\n case ThematicGradientMode.Stepped: {\r\n assert(settings.stepCount > 1, \"Step count must be at least two to generate renderer gradient for thematic display\");\r\n for (let j = 0; j < dimension; j++) {\r\n // If we use Smooth's approach to generate the gradient...\r\n // We would get these values for stepCount five: 0 .2 .4 .6 .8\r\n // We really want these values: 0 .25 .5 .75 1\r\n // This preserves an exact color mapping of a n-step gradient when stepCount also equals n.\r\n // stepCount must be at least two for this. The thematic API enforces stepCount of at least 2.\r\n const f = (1 - j / (dimension - 1));\r\n addColor(this.mapColor(f));\r\n }\r\n break;\r\n }\r\n }\r\n\r\n assert(-1 === currentIdx);\r\n const imageBuffer = ImageBuffer.create(image, ImageBufferFormat.Rgba, 1);\r\n assert(undefined !== imageBuffer);\r\n return imageBuffer;\r\n }\r\n\r\n /** Produces a bitmap image from this gradient.\r\n * @param width Width of the image\r\n * @param height Height of the image\r\n * @note If this gradient uses [[Gradient.Mode.Thematic]], then the width of the image will be 1 and the margin color will be included in the top and bottom rows.\r\n * @see [[produceImage]] for more customization.\r\n */\r\n public getImage(width: number, height: number): ImageBuffer {\r\n if (this.mode === Mode.Thematic)\r\n width = 1;\r\n\r\n return this.produceImage({ width, height, includeThematicMargin: true });\r\n }\r\n\r\n /** Produces a bitmap image from this gradient. */\r\n public produceImage(args: ProduceImageArgs): ImageBuffer {\r\n const { width, height, includeThematicMargin } = { ...args };\r\n\r\n const thisAngle = (this.angle === undefined) ? 0 : this.angle.radians;\r\n const cosA = Math.cos(thisAngle);\r\n const sinA = Math.sin(thisAngle);\r\n const image = new Uint8Array(width * height * 4);\r\n let currentIdx = image.length - 1;\r\n const shift = Math.min(1.0, Math.abs(this.shift));\r\n\r\n switch (this.mode) {\r\n case Mode.Linear:\r\n case Mode.Cylindrical: {\r\n const xs = 0.5 - 0.25 * shift * cosA;\r\n const ys = 0.5 - 0.25 * shift * sinA;\r\n let dMax;\r\n let dMin = dMax = 0.0;\r\n let d;\r\n for (let j = 0; j < 2; j++) {\r\n for (let i = 0; i < 2; i++) {\r\n d = (i - xs) * cosA + (j - ys) * sinA;\r\n if (d < dMin)\r\n dMin = d;\r\n if (d > dMax)\r\n dMax = d;\r\n }\r\n }\r\n for (let j = 0; j < height; j++) {\r\n const y = j / height - ys;\r\n for (let i = 0; i < width; i++) {\r\n const x = i / width - xs;\r\n d = x * cosA + y * sinA;\r\n let f;\r\n if (this.mode === Mode.Linear) {\r\n if (d > 0)\r\n f = 0.5 + 0.5 * d / dMax;\r\n else\r\n f = 0.5 - 0.5 * d / dMin;\r\n } else {\r\n if (d > 0)\r\n f = Math.sin(Math.PI / 2 * (1.0 - d / dMax));\r\n else\r\n f = Math.sin(Math.PI / 2 * (1.0 - d / dMin));\r\n }\r\n const color = this.mapColor(f);\r\n image[currentIdx--] = color.getAlpha();\r\n image[currentIdx--] = color.colors.b;\r\n image[currentIdx--] = color.colors.g;\r\n image[currentIdx--] = color.colors.r;\r\n }\r\n }\r\n break;\r\n }\r\n case Mode.Curved: {\r\n const xs = 0.5 + 0.5 * sinA - 0.25 * shift * cosA;\r\n const ys = 0.5 - 0.5 * cosA - 0.25 * shift * sinA;\r\n for (let j = 0; j < height; j++) {\r\n const y = j / height - ys;\r\n for (let i = 0; i < width; i++) {\r\n const x = i / width - xs;\r\n const xr = 0.8 * (x * cosA + y * sinA);\r\n const yr = y * cosA - x * sinA;\r\n const f = Math.sin(Math.PI / 2 * (1 - Math.sqrt(xr * xr + yr * yr)));\r\n const color = this.mapColor(f);\r\n image[currentIdx--] = color.getAlpha();\r\n image[currentIdx--] = color.colors.b;\r\n image[currentIdx--] = color.colors.g;\r\n image[currentIdx--] = color.colors.r;\r\n }\r\n }\r\n break;\r\n }\r\n case Mode.Spherical: {\r\n const r = 0.5 + 0.125 * Math.sin(2.0 * thisAngle);\r\n const xs = 0.5 * shift * (cosA + sinA) * r;\r\n const ys = 0.5 * shift * (sinA - cosA) * r;\r\n for (let j = 0; j < height; j++) {\r\n const y = ys + j / height - 0.5;\r\n for (let i = 0; i < width; i++) {\r\n const x = xs + i / width - 0.5;\r\n const f = Math.sin(Math.PI / 2 * (1.0 - Math.sqrt(x * x + y * y) / r));\r\n const color = this.mapColor(f);\r\n image[currentIdx--] = color.getAlpha();\r\n image[currentIdx--] = color.colors.b;\r\n image[currentIdx--] = color.colors.g;\r\n image[currentIdx--] = color.colors.r;\r\n }\r\n }\r\n break;\r\n }\r\n case Mode.Hemispherical: {\r\n const xs = 0.5 + 0.5 * sinA - 0.5 * shift * cosA;\r\n const ys = 0.5 - 0.5 * cosA - 0.5 * shift * sinA;\r\n for (let j = 0; j < height; j++) {\r\n const y = j / height - ys;\r\n for (let i = 0; i < width; i++) {\r\n const x = i / width - xs;\r\n const f = Math.sin(Math.PI / 2 * (1.0 - Math.sqrt(x * x + y * y)));\r\n const color = this.mapColor(f);\r\n image[currentIdx--] = color.getAlpha();\r\n image[currentIdx--] = color.colors.b;\r\n image[currentIdx--] = color.colors.g;\r\n image[currentIdx--] = color.colors.r;\r\n }\r\n }\r\n break;\r\n }\r\n case Mode.Thematic: {\r\n const settings = this.thematicSettings ?? ThematicGradientSettings.defaults;\r\n\r\n for (let j = 0; j < height; j++) {\r\n let f = 1 - j / height;\r\n let color: ColorDef;\r\n\r\n if (includeThematicMargin && (f < ThematicGradientSettings.margin || f > ThematicGradientSettings.contentMax)) {\r\n color = settings.marginColor;\r\n } else {\r\n f = (f - ThematicGradientSettings.margin) / (ThematicGradientSettings.contentRange);\r\n switch (settings.mode) {\r\n case ThematicGradientMode.SteppedWithDelimiter:\r\n case ThematicGradientMode.IsoLines:\r\n case ThematicGradientMode.Stepped: {\r\n if (settings.stepCount > 1) {\r\n const fStep = Math.floor(f * settings.stepCount - 0.00001) / (settings.stepCount - 1);\r\n color = this.mapColor(fStep);\r\n }\r\n break;\r\n }\r\n case ThematicGradientMode.Smooth:\r\n color = this.mapColor(f);\r\n break;\r\n }\r\n }\r\n\r\n for (let i = 0; i < width; i++) {\r\n image[currentIdx--] = color!.getAlpha();\r\n image[currentIdx--] = color!.colors.b;\r\n image[currentIdx--] = color!.colors.g;\r\n image[currentIdx--] = color!.colors.r;\r\n }\r\n }\r\n }\r\n }\r\n\r\n assert(-1 === currentIdx);\r\n const imageBuffer = ImageBuffer.create(image, ImageBufferFormat.Rgba, width);\r\n assert(undefined !== imageBuffer);\r\n return imageBuffer;\r\n }\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"Gradient.js","sourceRoot":"","sources":["../../src/Gradient.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,sDAA6C;AAC7C,wDAAyD;AACzD,yCAAqD;AACrD,mCAAyD;AACzD,uDAA+I;AAE/I;;;;GAIG;AACH,IAAiB,QAAQ,CAwfxB;AAxfD,WAAiB,QAAQ;IACvB,4CAA4C;IAC5C,IAAY,KAOX;IAPD,WAAY,KAAK;QACf,gBAAgB;QAChB,iCAAQ,CAAA;QACR,8CAA8C;QAC9C,qCAAU,CAAA;QACV,2EAA2E;QAC3E,uCAAW,CAAA;IACb,CAAC,EAPW,KAAK,GAAL,cAAK,KAAL,cAAK,QAOhB;IAED,+FAA+F;IAC/F,IAAY,IASX;IATD,WAAY,IAAI;QACd,+BAAQ,CAAA;QACR,mCAAU,CAAA;QACV,mCAAU,CAAA;QACV,6CAAe,CAAA;QACf,yCAAa,CAAA;QACb,iDAAiB,CAAA;QACjB,4DAA4D;QAC5D,uCAAY,CAAA;IACd,CAAC,EATW,IAAI,GAAJ,aAAI,KAAJ,aAAI,QASf;IAUD;;OAEG;IACH,MAAa,QAAQ;QAGnB,YAAmB,IAAmB;YACpC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;YACxB,IAAI,CAAC,KAAK,GAAG,mBAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC7C,CAAC;KACF;IAPY,iBAAQ,WAOpB,CAAA;IAED,wEAAwE;IACxE,SAAgB,cAAc,CAAC,CAAW,EAAE,CAAW;QACrD,OAAO,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAC1D,CAAC;IAFe,uBAAc,iBAE7B,CAAA;IAkCD;;;OAGG;IACH,MAAa,IAAI;QAAjB;YACS,SAAI,GAAG,IAAI,CAAC,IAAI,CAAC;YACjB,UAAK,GAAU,KAAK,CAAC,IAAI,CAAC;YAG1B,UAAK,GAAW,CAAC,CAAC;YAElB,SAAI,GAAe,EAAE,CAAC;QA4Z/B,CAAC;QA1ZC,gDAAgD;QACzC,MAAM,CAAC,QAAQ,CAAC,IAAgB;YACrC,MAAM,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YAC1B,IAAI,CAAC,IAAI;gBACP,OAAO,MAAM,CAAC;YAChB,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;YACxB,MAAM,CAAC,KAAK,GAAG,CAAC,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;YACpE,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,qBAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACnE,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;YACxB,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3C,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAChE,MAAM,CAAC,gBAAgB,GAAG,CAAC,IAAI,CAAC,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,0CAAwB,CAAC,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YAEvI,OAAO,MAAM,CAAC;QAChB,CAAC;QAYD,sCAAsC;QAC/B,MAAM,CAAC,cAAc,CAAC,QAAkC;YAC7D,MAAM,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YAC1B,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC;YAC5B,MAAM,CAAC,gBAAgB,GAAG,QAAQ,CAAC;YAEnC,IAAI,QAAQ,CAAC,WAAW,GAAG,6CAA2B,CAAC,MAAM,EAAE;gBAC7D,KAAK,MAAM,QAAQ,IAAI,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,WAAW,CAAC;oBACzE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,mBAAQ,CAAC,yBAAyB,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;aAC5I;iBAAM,EAAE,4CAA4C;gBACnD,IAAA,qBAAM,EAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,+DAA+D,CAAC,CAAC;gBACxG,IAAI,QAAQ,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE;oBAClC,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;iBACvE;qBAAM,EAAE,8FAA8F;oBACrG,KAAK,MAAM,QAAQ,IAAI,QAAQ,CAAC,IAAI,CAAC,gBAAgB;wBACnD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,mBAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC;iBAChI;aACF;YACD,OAAO,MAAM,CAAC;QAChB,CAAC;QAEM,MAAM;YACX,OAAO;gBACL,GAAG,IAAI;gBACP,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,EAAE,MAAM,EAAE;gBACjD,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;aAChF,CAAC;QACJ,CAAC;QAEM,KAAK;YACV,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QACtC,CAAC;QAED,2EAA2E;QACpE,MAAM,CAAC,KAAW;YACvB,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7C,CAAC;QAED;;;;WAIG;QACI,MAAM,CAAC,WAAW,CAAC,GAAkB,EAAE,GAAkB;YAC9D,IAAI,GAAG,KAAK,GAAG;gBACb,OAAO,CAAC,CAAC,CAAC,eAAe;YAC3B,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,IAAI;gBACvB,OAAO,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;YAC7B,IAAI,GAAG,CAAC,KAAK,KAAK,GAAG,CAAC,KAAK;gBACzB,IAAI,GAAG,CAAC,KAAK,KAAK,SAAS;oBACzB,OAAO,CAAC,CAAC,CAAC;qBACP,IAAI,GAAG,CAAC,KAAK,KAAK,SAAS;oBAC9B,OAAO,CAAC,CAAC;;oBAET,OAAO,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC;YACjC,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,IAAI;gBACvB,IAAI,GAAG,CAAC,IAAI,KAAK,SAAS;oBACxB,OAAO,CAAC,CAAC,CAAC;qBACP,IAAI,GAAG,CAAC,IAAI,KAAK,SAAS;oBAC7B,OAAO,CAAC,CAAC;;oBAET,OAAO,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;YAC/B,IAAI,GAAG,CAAC,KAAK,KAAK,GAAG,CAAC,KAAK;gBACzB,IAAI,GAAG,CAAC,KAAK,KAAK,SAAS;oBACzB,OAAO,CAAC,CAAC,CAAC;qBACP,IAAI,GAAG,CAAC,KAAK,KAAK,SAAS;oBAC9B,OAAO,CAAC,CAAC;;oBAET,OAAO,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC;YACjC,IAAI,CAAC,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC;gBACzD,IAAI,GAAG,CAAC,KAAK,KAAK,SAAS;oBACzB,OAAO,CAAC,CAAC,CAAC;;oBAEV,OAAO,CAAC,CAAC;YACb,IAAI,GAAG,CAAC,KAAK,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,0BAA0B,CAAC,GAAG,CAAC,KAAM,CAAC;gBAChE,OAAO,GAAG,CAAC,KAAK,CAAC,OAAO,GAAG,GAAG,CAAC,KAAM,CAAC,OAAO,CAAC;YAChD,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,MAAM;gBACrC,OAAO,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC;YAC3C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACxC,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK;oBACzC,OAAO,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;gBAC/C,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;oBAC9C,OAAO,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC;aAC1D;YACD,IAAI,GAAG,CAAC,gBAAgB,KAAK,GAAG,CAAC,gBAAgB;gBAC/C,IAAI,SAAS,KAAK,GAAG,CAAC,gBAAgB;oBACpC,OAAO,CAAC,CAAC,CAAC;qBACP,IAAI,SAAS,KAAK,GAAG,CAAC,gBAAgB;oBACzC,OAAO,CAAC,CAAC;qBACN;oBACH,MAAM,qBAAqB,GAAG,0CAAwB,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,GAAG,CAAC,gBAAgB,CAAC,CAAC;oBAC3G,IAAI,CAAC,KAAK,qBAAqB;wBAC7B,OAAO,qBAAqB,CAAC;iBAChC;YACH,OAAO,CAAC,CAAC;QACX,CAAC;QAED;;WAEG;QACI,OAAO,CAAC,KAAW;YACxB,OAAO,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAChD,CAAC;QAED;;;WAGG;QACK,WAAW,CAAC,GAAW;YAC7B,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,EAAE,EAAE,KAAK,CAAC,GAAG,IAAI,CAAC;QAC1C,CAAC;QAED,6FAA6F;QACtF,QAAQ,CAAC,KAAa;YAC3B,IAAI,KAAK,GAAG,CAAC;gBACX,KAAK,GAAG,CAAC,CAAC;iBACP,IAAI,KAAK,GAAG,CAAC;gBAChB,KAAK,GAAG,CAAC,CAAC;YAEZ,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;gBACnC,KAAK,GAAG,CAAC,GAAG,KAAK,CAAC;YAEpB,IAAI,GAAG,GAAG,CAAC,CAAC;YACZ,IAAI,CAAC,CAAC;YACN,IAAI,EAAE,CAAC;YACP,IAAI,EAAE,CAAC;YACP,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,EAAE;gBACzB,EAAE,GAAG,GAAG,GAAG,KAAK,CAAC;gBACjB,EAAE,GAAG,KAAK,CAAC;aACZ;iBAAM,EAAG,kDAAkD;gBAC1D,OAAO,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK;oBACrE,GAAG,EAAE,CAAC;gBAER,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC;gBACpD,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAC3D,EAAE,GAAG,GAAG,GAAG,EAAE,CAAC;aACf;YAED,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC;YACpC,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC;YACxC,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC;YAC9B,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC;YAC9B,MAAM,GAAG,GAAG,EAAE,GAAG,OAAO,CAAC,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC;YAC5C,MAAM,KAAK,GAAG,EAAE,GAAG,OAAO,CAAC,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC;YAC9C,MAAM,IAAI,GAAG,EAAE,GAAG,OAAO,CAAC,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC;YAC7C,MAAM,YAAY,GAAG,EAAE,GAAG,OAAO,CAAC,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC;YAErD,OAAO,mBAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,CAAC;QAC/H,CAAC;QAED,IAAW,eAAe;YACxB,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,IAAI,EAAE;gBAC3B,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ;oBACrB,OAAO,IAAI,CAAC;aACf;YAED,OAAO,KAAK,CAAC;QACf,CAAC;QAED,kEAAkE;QAClE,IAAW,UAAU,KAAc,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAE/E;;;;WAIG;QACI,2BAA2B,CAAC,YAAoB;YACrD,IAAA,qBAAM,EAAC,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,IAAI,EAAE,gEAAgE,CAAC,CAAC;YAEtG,IAAI,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC;YACrC,IAAI,QAAQ,KAAK,SAAS,EAAE;gBAC1B,QAAQ,GAAG,0CAAwB,CAAC,QAAQ,CAAC;aAC9C;YAED,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;YAC7D,MAAM,SAAS,GAAG,CAAC,sCAAoB,CAAC,MAAM,KAAK,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC;YAC7F,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,CAAC,GAAG,SAAS,GAAG,CAAC,CAAC,CAAC;YAChD,IAAI,UAAU,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;YAElC,SAAS,QAAQ,CAAC,KAAe;gBAC/B,KAAK,CAAC,UAAU,EAAE,CAAC,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;gBACvC,KAAK,CAAC,UAAU,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;gBACrC,KAAK,CAAC,UAAU,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;gBACrC,KAAK,CAAC,UAAU,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;YACvC,CAAC;YAED,QAAQ,QAAQ,CAAC,IAAI,EAAE;gBACrB,KAAK,sCAAoB,CAAC,MAAM,CAAC,CAAC;oBAChC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,EAAE,CAAC,EAAE,EAAE;wBAClC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;wBAChC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;qBAC5B;oBACD,MAAM;iBACP;gBAED,KAAK,sCAAoB,CAAC,oBAAoB,CAAC;gBAC/C,KAAK,sCAAoB,CAAC,QAAQ,CAAC;gBACnC,0FAA0F;gBAC1F,2EAA2E;gBAC3E,KAAK,sCAAoB,CAAC,OAAO,CAAC,CAAC;oBACjC,IAAA,qBAAM,EAAC,QAAQ,CAAC,SAAS,GAAG,CAAC,EAAE,oFAAoF,CAAC,CAAC;oBACrH,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,EAAE,CAAC,EAAE,EAAE;wBAClC,0DAA0D;wBAC1D,sEAAsE;wBACtE,sEAAsE;wBACtE,2FAA2F;wBAC3F,+FAA+F;wBAC/F,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC;wBACpC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;qBAC5B;oBACD,MAAM;iBACP;aACF;YAED,IAAA,qBAAM,EAAC,CAAC,CAAC,KAAK,UAAU,CAAC,CAAC;YAC1B,MAAM,WAAW,GAAG,mBAAW,CAAC,MAAM,CAAC,KAAK,EAAE,yBAAiB,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;YACzE,IAAA,qBAAM,EAAC,SAAS,KAAK,WAAW,CAAC,CAAC;YAClC,OAAO,WAAW,CAAC;QACrB,CAAC;QAED;;;;;WAKG;QACI,QAAQ,CAAC,KAAa,EAAE,MAAc;YAC3C,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,QAAQ;gBAC7B,KAAK,GAAG,CAAC,CAAC;YAEZ,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,qBAAqB,EAAE,IAAI,EAAE,CAAC,CAAC;QAC3E,CAAC;QAED,kDAAkD;QAC3C,YAAY,CAAC,IAAsB;YACxC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,qBAAqB,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,CAAC;YAE7D,MAAM,SAAS,GAAG,CAAC,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;YACtE,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YACjC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YACjC,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,KAAK,GAAG,MAAM,GAAG,CAAC,CAAC,CAAC;YACjD,IAAI,UAAU,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;YAClC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;YAElD,QAAQ,IAAI,CAAC,IAAI,EAAE;gBACjB,KAAK,IAAI,CAAC,MAAM,CAAC;gBACjB,KAAK,IAAI,CAAC,WAAW,CAAC,CAAC;oBACrB,MAAM,EAAE,GAAG,GAAG,GAAG,IAAI,GAAG,KAAK,GAAG,IAAI,CAAC;oBACrC,MAAM,EAAE,GAAG,GAAG,GAAG,IAAI,GAAG,KAAK,GAAG,IAAI,CAAC;oBACrC,IAAI,IAAI,CAAC;oBACT,IAAI,IAAI,GAAG,IAAI,GAAG,GAAG,CAAC;oBACtB,IAAI,CAAC,CAAC;oBACN,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;wBAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;4BAC1B,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC;4BACtC,IAAI,CAAC,GAAG,IAAI;gCACV,IAAI,GAAG,CAAC,CAAC;4BACX,IAAI,CAAC,GAAG,IAAI;gCACV,IAAI,GAAG,CAAC,CAAC;yBACZ;qBACF;oBACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE;wBAC/B,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,EAAE,CAAC;wBAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE;4BAC9B,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,GAAG,EAAE,CAAC;4BACzB,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC;4BACxB,IAAI,CAAC,CAAC;4BACN,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,MAAM,EAAE;gCAC7B,IAAI,CAAC,GAAG,CAAC;oCACP,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC;;oCAEzB,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC;6BAC5B;iCAAM;gCACL,IAAI,CAAC,GAAG,CAAC;oCACP,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;;oCAE7C,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;6BAChD;4BACD,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;4BAC/B,KAAK,CAAC,UAAU,EAAE,CAAC,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;4BACvC,KAAK,CAAC,UAAU,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;4BACrC,KAAK,CAAC,UAAU,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;4BACrC,KAAK,CAAC,UAAU,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;yBACtC;qBACF;oBACD,MAAM;iBACP;gBACD,KAAK,IAAI,CAAC,MAAM,CAAC,CAAC;oBAChB,MAAM,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,GAAG,IAAI,CAAC;oBAClD,MAAM,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,GAAG,IAAI,CAAC;oBAClD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE;wBAC/B,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,EAAE,CAAC;wBAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE;4BAC9B,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,GAAG,EAAE,CAAC;4BACzB,MAAM,EAAE,GAAG,GAAG,GAAG,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;4BACvC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC;4BAC/B,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;4BACrE,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;4BAC/B,KAAK,CAAC,UAAU,EAAE,CAAC,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;4BACvC,KAAK,CAAC,UAAU,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;4BACrC,KAAK,CAAC,UAAU,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;4BACrC,KAAK,CAAC,UAAU,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;yBACtC;qBACF;oBACD,MAAM;iBACP;gBACD,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC;oBACnB,MAAM,CAAC,GAAG,GAAG,GAAG,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,SAAS,CAAC,CAAC;oBAClD,MAAM,EAAE,GAAG,GAAG,GAAG,KAAK,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;oBAC3C,MAAM,EAAE,GAAG,GAAG,GAAG,KAAK,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;oBAC3C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE;wBAC/B,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,MAAM,GAAG,GAAG,CAAC;wBAChC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE;4BAC9B,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,KAAK,GAAG,GAAG,CAAC;4BAC/B,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;4BACvE,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;4BAC/B,KAAK,CAAC,UAAU,EAAE,CAAC,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;4BACvC,KAAK,CAAC,UAAU,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;4BACrC,KAAK,CAAC,UAAU,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;4BACrC,KAAK,CAAC,UAAU,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;yBACtC;qBACF;oBACD,MAAM;iBACP;gBACD,KAAK,IAAI,CAAC,aAAa,CAAC,CAAC;oBACvB,MAAM,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,GAAG,GAAG,GAAG,KAAK,GAAG,IAAI,CAAC;oBACjD,MAAM,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,GAAG,GAAG,GAAG,KAAK,GAAG,IAAI,CAAC;oBACjD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE;wBAC/B,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,EAAE,CAAC;wBAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE;4BAC9B,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,GAAG,EAAE,CAAC;4BACzB,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;4BACnE,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;4BAC/B,KAAK,CAAC,UAAU,EAAE,CAAC,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;4BACvC,KAAK,CAAC,UAAU,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;4BACrC,KAAK,CAAC,UAAU,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;4BACrC,KAAK,CAAC,UAAU,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;yBACtC;qBACF;oBACD,MAAM;iBACP;gBACD,KAAK,IAAI,CAAC,QAAQ,CAAC,CAAC;oBAClB,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,IAAI,0CAAwB,CAAC,QAAQ,CAAC;oBAE5E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE;wBAC/B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC;wBACvB,IAAI,KAAe,CAAC;wBAEpB,IAAI,qBAAqB,IAAI,CAAC,CAAC,GAAG,0CAAwB,CAAC,MAAM,IAAI,CAAC,GAAG,0CAAwB,CAAC,UAAU,CAAC,EAAE;4BAC7G,KAAK,GAAG,QAAQ,CAAC,WAAW,CAAC;yBAC9B;6BAAM;4BACL,CAAC,GAAG,CAAC,CAAC,GAAG,0CAAwB,CAAC,MAAM,CAAC,GAAG,CAAC,0CAAwB,CAAC,YAAY,CAAC,CAAC;4BACpF,QAAQ,QAAQ,CAAC,IAAI,EAAE;gCACrB,KAAK,sCAAoB,CAAC,oBAAoB,CAAC;gCAC/C,KAAK,sCAAoB,CAAC,QAAQ,CAAC;gCACnC,KAAK,sCAAoB,CAAC,OAAO,CAAC,CAAC;oCACjC,IAAI,QAAQ,CAAC,SAAS,GAAG,CAAC,EAAE;wCAC1B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,QAAQ,CAAC,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;wCACtF,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;qCAC9B;oCACD,MAAM;iCACP;gCACD,KAAK,sCAAoB,CAAC,MAAM;oCAC9B,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;oCACzB,MAAM;6BACT;yBACF;wBAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE;4BAC9B,KAAK,CAAC,UAAU,EAAE,CAAC,GAAG,KAAM,CAAC,QAAQ,EAAE,CAAC;4BACxC,KAAK,CAAC,UAAU,EAAE,CAAC,GAAG,KAAM,CAAC,MAAM,CAAC,CAAC,CAAC;4BACtC,KAAK,CAAC,UAAU,EAAE,CAAC,GAAG,KAAM,CAAC,MAAM,CAAC,CAAC,CAAC;4BACtC,KAAK,CAAC,UAAU,EAAE,CAAC,GAAG,KAAM,CAAC,MAAM,CAAC,CAAC,CAAC;yBACvC;qBACF;iBACF;aACF;YAED,IAAA,qBAAM,EAAC,CAAC,CAAC,KAAK,UAAU,CAAC,CAAC;YAC1B,MAAM,WAAW,GAAG,mBAAW,CAAC,MAAM,CAAC,KAAK,EAAE,yBAAiB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAC7E,IAAA,qBAAM,EAAC,SAAS,KAAK,WAAW,CAAC,CAAC;YAClC,OAAO,WAAW,CAAC;QACrB,CAAC;;IAzYc,qBAAgB,GAAG;QAChC,yFAAyF;QACzF,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAChG,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;QAChG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QACtC,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;QACjE,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,EAAE,0DAA0D;KACzL,AAP8B,CAO7B;IACa,qBAAgB,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,AAAvC,CAAwC;IAjC5D,aAAI,OAmahB,CAAA;AACH,CAAC,EAxfgB,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAwfxB","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Symbology\r\n */\r\n\r\nimport { assert } from \"@itwin/core-bentley\";\r\nimport { Angle, AngleProps } from \"@itwin/core-geometry\";\r\nimport { ColorDef, ColorDefProps } from \"./ColorDef\";\r\nimport { ImageBuffer, ImageBufferFormat } from \"./Image\";\r\nimport { ThematicGradientColorScheme, ThematicGradientMode, ThematicGradientSettings, ThematicGradientSettingsProps } from \"./ThematicDisplay\";\r\n\r\n/** Namespace containing types for defining a color gradient, often used for filled planar regions.\r\n * @see [[GeometryParams]]\r\n * @see [[GraphicParams]]\r\n * @public\r\n */\r\nexport namespace Gradient {\r\n /** Flags applied to a [[Gradient.Symb]]. */\r\n export enum Flags {\r\n /** No flags. */\r\n None = 0,\r\n /** Reverse the order of the gradient keys. */\r\n Invert = 1,\r\n /** Draw an outline around the surface to which the gradient is applied. */\r\n Outline = 2,\r\n }\r\n\r\n /** Enumerates the modes by which a [[Gradient.Symb]]'s keys are applied to create an image. */\r\n export enum Mode {\r\n None = 0,\r\n Linear = 1,\r\n Curved = 2,\r\n Cylindrical = 3,\r\n Spherical = 4,\r\n Hemispherical = 5,\r\n /** For a gradient created based for [[ThematicDisplay]]. */\r\n Thematic = 6,\r\n }\r\n\r\n /** Gradient fraction value to [[ColorDef]] pair */\r\n export interface KeyColorProps {\r\n /** Fraction from 0.0 to 1.0 to denote position along gradient */\r\n value: number;\r\n /** Color value for given fraction */\r\n color: ColorDefProps;\r\n }\r\n\r\n /** Gradient fraction value to [[ColorDef]] pair\r\n * @see [[Gradient.KeyColorProps]]\r\n */\r\n export class KeyColor {\r\n public value: number;\r\n public color: ColorDef;\r\n public constructor(json: KeyColorProps) {\r\n this.value = json.value;\r\n this.color = ColorDef.fromJSON(json.color);\r\n }\r\n }\r\n\r\n /** Compare two KeyColor objects for equality. Returns true if equal. */\r\n export function keyColorEquals(a: KeyColor, b: KeyColor): boolean {\r\n return (a.value === b.value) && a.color.equals(b.color);\r\n }\r\n\r\n /** Multi-color area fill defined by a range of colors that vary by position */\r\n export interface SymbProps {\r\n /** Gradient type, must be set to something other than [[Gradient.Mode.None]] to display fill */\r\n mode: Mode;\r\n /** Gradient flags to enable outline display and invert color fractions, Flags.None if undefined */\r\n flags?: Flags;\r\n /** Gradient rotation angle, 0.0 if undefined */\r\n angle?: AngleProps;\r\n /** Gradient tint value from 0.0 to 1.0, only used when [[Gradient.KeyColorProps]] size is 1, 0.0 if undefined */\r\n tint?: number;\r\n /** Gradient shift value from 0.0 to 1.0, 0.0 if undefined */\r\n shift?: number;\r\n /** Gradient fraction value/color pairs, 1 minimum (uses tint for 2nd color), 8 maximum */\r\n keys: KeyColorProps[];\r\n /** Settings applicable to [[ThematicDisplay]]. */\r\n thematicSettings?: ThematicGradientSettingsProps;\r\n }\r\n\r\n /** Arguments supplied to [[Gradient.Symb.produceImage]].\r\n * @public\r\n */\r\n export interface ProduceImageArgs {\r\n /** The desired width of the image in pixels. Must be an integer greater than zero. */\r\n width: number;\r\n /** The desired height of the image in pixels. Must be an integer greater than zero. */\r\n height: number;\r\n /** If true and the gradient uses [[Gradient.Mode.Thematic]], the margin color specified by [[ThematicGradientSettings.marginColor]] will be included\r\n * in the top and bottom rows of the image; otherwise only the gradient colors will be included in the image.\r\n */\r\n includeThematicMargin?: boolean;\r\n }\r\n\r\n /** Multi-color area fill defined by a range of colors that vary by position.\r\n * Gradient fill can be applied to planar regions.\r\n * @see [[Gradient.SymbProps]]\r\n */\r\n export class Symb {\r\n public mode = Mode.None;\r\n public flags: Flags = Flags.None;\r\n public angle?: Angle;\r\n public tint?: number;\r\n public shift: number = 0;\r\n public thematicSettings?: ThematicGradientSettings;\r\n public keys: KeyColor[] = [];\r\n\r\n /** create a GradientSymb from a json object. */\r\n public static fromJSON(json?: SymbProps) {\r\n const result = new Symb();\r\n if (!json)\r\n return result;\r\n result.mode = json.mode;\r\n result.flags = (json.flags === undefined) ? Flags.None : json.flags;\r\n result.angle = json.angle ? Angle.fromJSON(json.angle) : undefined;\r\n result.tint = json.tint;\r\n result.shift = json.shift ? json.shift : 0;\r\n json.keys.forEach((key) => result.keys.push(new KeyColor(key)));\r\n result.thematicSettings = (json.thematicSettings === undefined) ? undefined : ThematicGradientSettings.fromJSON(json.thematicSettings);\r\n\r\n return result;\r\n }\r\n\r\n private static _fixedSchemeKeys = [\r\n // NB: these color values are ordered as rbg. Note how the components are applied below.\r\n [[0.0, 0, 255, 0], [0.25, 0, 255, 255], [0.5, 0, 0, 255], [0.75, 255, 0, 255], [1.0, 255, 0, 0]], // Blue Red.\r\n [[0.0, 255, 0, 0], [0.25, 255, 0, 255], [0.5, 0, 0, 255], [0.75, 0, 255, 255], [1.0, 0, 255, 0]], // Red blue.\r\n [[0.0, 0, 0, 0], [1.0, 255, 255, 255]], // Monochrome.\r\n [[0.0, 152, 148, 188], [0.5, 204, 160, 204], [1.0, 152, 72, 128]], // Based off of the topographic gradients in Point Clouds.\r\n [[0.0, 0, 255, 0], [0.2, 72, 96, 160], [0.4, 152, 96, 160], [0.6, 128, 32, 104], [0.7, 148, 180, 128], [1.0, 240, 240, 240]], // Based off of the sea-mountain gradient in Point Clouds.\r\n ];\r\n private static _fixedCustomKeys = [[0.0, 255, 0, 0], [1.0, 0, 255, 0]];\r\n\r\n /** Create for [[ThematicDisplay]]. */\r\n public static createThematic(settings: ThematicGradientSettings) {\r\n const result = new Symb();\r\n result.mode = Mode.Thematic;\r\n result.thematicSettings = settings;\r\n\r\n if (settings.colorScheme < ThematicGradientColorScheme.Custom) {\r\n for (const keyValue of Gradient.Symb._fixedSchemeKeys[settings.colorScheme])\r\n result.keys.push(new KeyColor({ value: keyValue[0], color: ColorDef.computeTbgrFromComponents(keyValue[1], keyValue[3], keyValue[2]) }));\r\n } else { // custom color scheme; must use custom keys\r\n assert(settings.customKeys.length > 1, \"Custom thematic mode requires at least two keys to be defined\");\r\n if (settings.customKeys.length > 1) {\r\n settings.customKeys.forEach((keyColor) => result.keys.push(keyColor));\r\n } else { // if custom color keys are not specified properly, revert to some basic key scheme and assert\r\n for (const keyValue of Gradient.Symb._fixedCustomKeys)\r\n result.keys.push(new KeyColor({ value: keyValue[0], color: ColorDef.from(keyValue[1], keyValue[3], keyValue[2]).toJSON() }));\r\n }\r\n }\r\n return result;\r\n }\r\n\r\n public toJSON(): SymbProps {\r\n return {\r\n ...this,\r\n thematicSettings: this.thematicSettings?.toJSON(),\r\n keys: this.keys.map((key) => ({ value: key.value, color: key.color.toJSON() })),\r\n };\r\n }\r\n\r\n public clone(): Symb {\r\n return Symb.fromJSON(this.toJSON());\r\n }\r\n\r\n /** Returns true if this symbology is equal to another, false otherwise. */\r\n public equals(other: Symb): boolean {\r\n return Symb.compareSymb(this, other) === 0;\r\n }\r\n\r\n /** Compares two gradient symbologies. Used for ordering Gradient.Symb objects.\r\n * @param lhs First gradient to compare\r\n * @param rhs Second gradient to compare\r\n * @returns 0 if lhs is equivalent to rhs, a negative number if lhs compares less than rhs, or a positive number if lhs compares greater than rhs.\r\n */\r\n public static compareSymb(lhs: Gradient.Symb, rhs: Gradient.Symb): number {\r\n if (lhs === rhs)\r\n return 0; // Same pointer\r\n if (lhs.mode !== rhs.mode)\r\n return lhs.mode - rhs.mode;\r\n if (lhs.flags !== rhs.flags)\r\n if (lhs.flags === undefined)\r\n return -1;\r\n else if (rhs.flags === undefined)\r\n return 1;\r\n else\r\n return lhs.flags - rhs.flags;\r\n if (lhs.tint !== rhs.tint)\r\n if (lhs.tint === undefined)\r\n return -1;\r\n else if (rhs.tint === undefined)\r\n return 1;\r\n else\r\n return lhs.tint - rhs.tint;\r\n if (lhs.shift !== rhs.shift)\r\n if (lhs.shift === undefined)\r\n return -1;\r\n else if (rhs.shift === undefined)\r\n return 1;\r\n else\r\n return lhs.shift - rhs.shift;\r\n if ((lhs.angle === undefined) !== (rhs.angle === undefined))\r\n if (lhs.angle === undefined)\r\n return -1;\r\n else\r\n return 1;\r\n if (lhs.angle && !lhs.angle.isAlmostEqualNoPeriodShift(rhs.angle!))\r\n return lhs.angle.radians - rhs.angle!.radians;\r\n if (lhs.keys.length !== rhs.keys.length)\r\n return lhs.keys.length - rhs.keys.length;\r\n for (let i = 0; i < lhs.keys.length; i++) {\r\n if (lhs.keys[i].value !== rhs.keys[i].value)\r\n return lhs.keys[i].value - rhs.keys[i].value;\r\n if (!lhs.keys[i].color.equals(rhs.keys[i].color))\r\n return lhs.keys[i].color.tbgr - rhs.keys[i].color.tbgr;\r\n }\r\n if (lhs.thematicSettings !== rhs.thematicSettings)\r\n if (undefined === lhs.thematicSettings)\r\n return -1;\r\n else if (undefined === rhs.thematicSettings)\r\n return 1;\r\n else {\r\n const thematicCompareResult = ThematicGradientSettings.compare(lhs.thematicSettings, rhs.thematicSettings);\r\n if (0 !== thematicCompareResult)\r\n return thematicCompareResult;\r\n }\r\n return 0;\r\n }\r\n\r\n /** Compare this symbology to another.\r\n * @see [[Gradient.Symb.compareSymb]]\r\n */\r\n public compare(other: Symb): number {\r\n return Gradient.Symb.compareSymb(this, other);\r\n }\r\n\r\n /**\r\n * Ensure the value given is within the range of 0 to 255,\r\n * and truncate the value to only the 8 least significant bits.\r\n */\r\n private roundToByte(num: number): number {\r\n return Math.min(num + .5, 255.0) & 0xFF;\r\n }\r\n\r\n /** Maps a value to an RGBA value adjusted from a color present in this symbology's array. */\r\n public mapColor(value: number) {\r\n if (value < 0)\r\n value = 0;\r\n else if (value > 1)\r\n value = 1;\r\n\r\n if ((this.flags & Flags.Invert) !== 0)\r\n value = 1 - value;\r\n\r\n let idx = 0;\r\n let d;\r\n let w0;\r\n let w1;\r\n if (this.keys.length <= 2) {\r\n w0 = 1.0 - value;\r\n w1 = value;\r\n } else { // locate value in map, blend corresponding colors\r\n while (idx < (this.keys.length - 2) && value > this.keys[idx + 1].value)\r\n idx++;\r\n\r\n d = this.keys[idx + 1].value - this.keys[idx].value;\r\n w1 = d < 0.0001 ? 0.0 : (value - this.keys[idx].value) / d;\r\n w0 = 1.0 - w1;\r\n }\r\n\r\n const color0 = this.keys[idx].color;\r\n const color1 = this.keys[idx + 1].color;\r\n const colors0 = color0.colors;\r\n const colors1 = color1.colors;\r\n const red = w0 * colors0.r + w1 * colors1.r;\r\n const green = w0 * colors0.g + w1 * colors1.g;\r\n const blue = w0 * colors0.b + w1 * colors1.b;\r\n const transparency = w0 * colors0.t + w1 * colors1.t;\r\n\r\n return ColorDef.from(this.roundToByte(red), this.roundToByte(green), this.roundToByte(blue), this.roundToByte(transparency));\r\n }\r\n\r\n public get hasTranslucency(): boolean {\r\n for (const key of this.keys) {\r\n if (!key.color.isOpaque)\r\n return true;\r\n }\r\n\r\n return false;\r\n }\r\n\r\n /** Returns true if the [[Gradient.Flags.Outline]] flag is set. */\r\n public get isOutlined(): boolean { return 0 !== (this.flags & Flags.Outline); }\r\n\r\n /** This function (for internal use only) provides the WebGL renderer with a thematic image that its shaders\r\n * can use properly with various thematic rendering techniques.\r\n * If you want a regular gradient image, use the method [[Gradient.Symb.getImage]].\r\n * @internal\r\n */\r\n public getThematicImageForRenderer(maxDimension: number): ImageBuffer {\r\n assert(Mode.Thematic === this.mode, \"getThematicImageForRenderer only is used for thematic display.\");\r\n\r\n let settings = this.thematicSettings;\r\n if (settings === undefined) {\r\n settings = ThematicGradientSettings.defaults;\r\n }\r\n\r\n const stepCount = Math.min(settings.stepCount, maxDimension);\r\n const dimension = (ThematicGradientMode.Smooth === settings.mode) ? maxDimension : stepCount;\r\n const image = new Uint8Array(1 * dimension * 4);\r\n let currentIdx = image.length - 1;\r\n\r\n function addColor(color: ColorDef) {\r\n image[currentIdx--] = color.getAlpha();\r\n image[currentIdx--] = color.colors.b;\r\n image[currentIdx--] = color.colors.g;\r\n image[currentIdx--] = color.colors.r;\r\n }\r\n\r\n switch (settings.mode) {\r\n case ThematicGradientMode.Smooth: {\r\n for (let j = 0; j < dimension; j++) {\r\n const f = (1 - j / (dimension));\r\n addColor(this.mapColor(f));\r\n }\r\n break;\r\n }\r\n\r\n case ThematicGradientMode.SteppedWithDelimiter:\r\n case ThematicGradientMode.IsoLines:\r\n // The work to generate the delimiter lines and isolines is done completely in the shader.\r\n // Therefore, we just fall through here and use a regular stepped gradient.\r\n case ThematicGradientMode.Stepped: {\r\n assert(settings.stepCount > 1, \"Step count must be at least two to generate renderer gradient for thematic display\");\r\n for (let j = 0; j < dimension; j++) {\r\n // If we use Smooth's approach to generate the gradient...\r\n // We would get these values for stepCount five: 0 .2 .4 .6 .8\r\n // We really want these values: 0 .25 .5 .75 1\r\n // This preserves an exact color mapping of a n-step gradient when stepCount also equals n.\r\n // stepCount must be at least two for this. The thematic API enforces stepCount of at least 2.\r\n const f = (1 - j / (dimension - 1));\r\n addColor(this.mapColor(f));\r\n }\r\n break;\r\n }\r\n }\r\n\r\n assert(-1 === currentIdx);\r\n const imageBuffer = ImageBuffer.create(image, ImageBufferFormat.Rgba, 1);\r\n assert(undefined !== imageBuffer);\r\n return imageBuffer;\r\n }\r\n\r\n /** Produces a bitmap image from this gradient.\r\n * @param width Width of the image\r\n * @param height Height of the image\r\n * @note If this gradient uses [[Gradient.Mode.Thematic]], then the width of the image will be 1 and the margin color will be included in the top and bottom rows.\r\n * @see [[produceImage]] for more customization.\r\n */\r\n public getImage(width: number, height: number): ImageBuffer {\r\n if (this.mode === Mode.Thematic)\r\n width = 1;\r\n\r\n return this.produceImage({ width, height, includeThematicMargin: true });\r\n }\r\n\r\n /** Produces a bitmap image from this gradient. */\r\n public produceImage(args: ProduceImageArgs): ImageBuffer {\r\n const { width, height, includeThematicMargin } = { ...args };\r\n\r\n const thisAngle = (this.angle === undefined) ? 0 : this.angle.radians;\r\n const cosA = Math.cos(thisAngle);\r\n const sinA = Math.sin(thisAngle);\r\n const image = new Uint8Array(width * height * 4);\r\n let currentIdx = image.length - 1;\r\n const shift = Math.min(1.0, Math.abs(this.shift));\r\n\r\n switch (this.mode) {\r\n case Mode.Linear:\r\n case Mode.Cylindrical: {\r\n const xs = 0.5 - 0.25 * shift * cosA;\r\n const ys = 0.5 - 0.25 * shift * sinA;\r\n let dMax;\r\n let dMin = dMax = 0.0;\r\n let d;\r\n for (let j = 0; j < 2; j++) {\r\n for (let i = 0; i < 2; i++) {\r\n d = (i - xs) * cosA + (j - ys) * sinA;\r\n if (d < dMin)\r\n dMin = d;\r\n if (d > dMax)\r\n dMax = d;\r\n }\r\n }\r\n for (let j = 0; j < height; j++) {\r\n const y = j / height - ys;\r\n for (let i = 0; i < width; i++) {\r\n const x = i / width - xs;\r\n d = x * cosA + y * sinA;\r\n let f;\r\n if (this.mode === Mode.Linear) {\r\n if (d > 0)\r\n f = 0.5 + 0.5 * d / dMax;\r\n else\r\n f = 0.5 - 0.5 * d / dMin;\r\n } else {\r\n if (d > 0)\r\n f = Math.sin(Math.PI / 2 * (1.0 - d / dMax));\r\n else\r\n f = Math.sin(Math.PI / 2 * (1.0 - d / dMin));\r\n }\r\n const color = this.mapColor(f);\r\n image[currentIdx--] = color.getAlpha();\r\n image[currentIdx--] = color.colors.b;\r\n image[currentIdx--] = color.colors.g;\r\n image[currentIdx--] = color.colors.r;\r\n }\r\n }\r\n break;\r\n }\r\n case Mode.Curved: {\r\n const xs = 0.5 + 0.5 * sinA - 0.25 * shift * cosA;\r\n const ys = 0.5 - 0.5 * cosA - 0.25 * shift * sinA;\r\n for (let j = 0; j < height; j++) {\r\n const y = j / height - ys;\r\n for (let i = 0; i < width; i++) {\r\n const x = i / width - xs;\r\n const xr = 0.8 * (x * cosA + y * sinA);\r\n const yr = y * cosA - x * sinA;\r\n const f = Math.sin(Math.PI / 2 * (1 - Math.sqrt(xr * xr + yr * yr)));\r\n const color = this.mapColor(f);\r\n image[currentIdx--] = color.getAlpha();\r\n image[currentIdx--] = color.colors.b;\r\n image[currentIdx--] = color.colors.g;\r\n image[currentIdx--] = color.colors.r;\r\n }\r\n }\r\n break;\r\n }\r\n case Mode.Spherical: {\r\n const r = 0.5 + 0.125 * Math.sin(2.0 * thisAngle);\r\n const xs = 0.5 * shift * (cosA + sinA) * r;\r\n const ys = 0.5 * shift * (sinA - cosA) * r;\r\n for (let j = 0; j < height; j++) {\r\n const y = ys + j / height - 0.5;\r\n for (let i = 0; i < width; i++) {\r\n const x = xs + i / width - 0.5;\r\n const f = Math.sin(Math.PI / 2 * (1.0 - Math.sqrt(x * x + y * y) / r));\r\n const color = this.mapColor(f);\r\n image[currentIdx--] = color.getAlpha();\r\n image[currentIdx--] = color.colors.b;\r\n image[currentIdx--] = color.colors.g;\r\n image[currentIdx--] = color.colors.r;\r\n }\r\n }\r\n break;\r\n }\r\n case Mode.Hemispherical: {\r\n const xs = 0.5 + 0.5 * sinA - 0.5 * shift * cosA;\r\n const ys = 0.5 - 0.5 * cosA - 0.5 * shift * sinA;\r\n for (let j = 0; j < height; j++) {\r\n const y = j / height - ys;\r\n for (let i = 0; i < width; i++) {\r\n const x = i / width - xs;\r\n const f = Math.sin(Math.PI / 2 * (1.0 - Math.sqrt(x * x + y * y)));\r\n const color = this.mapColor(f);\r\n image[currentIdx--] = color.getAlpha();\r\n image[currentIdx--] = color.colors.b;\r\n image[currentIdx--] = color.colors.g;\r\n image[currentIdx--] = color.colors.r;\r\n }\r\n }\r\n break;\r\n }\r\n case Mode.Thematic: {\r\n const settings = this.thematicSettings ?? ThematicGradientSettings.defaults;\r\n\r\n for (let j = 0; j < height; j++) {\r\n let f = 1 - j / height;\r\n let color: ColorDef;\r\n\r\n if (includeThematicMargin && (f < ThematicGradientSettings.margin || f > ThematicGradientSettings.contentMax)) {\r\n color = settings.marginColor;\r\n } else {\r\n f = (f - ThematicGradientSettings.margin) / (ThematicGradientSettings.contentRange);\r\n switch (settings.mode) {\r\n case ThematicGradientMode.SteppedWithDelimiter:\r\n case ThematicGradientMode.IsoLines:\r\n case ThematicGradientMode.Stepped: {\r\n if (settings.stepCount > 1) {\r\n const fStep = Math.floor(f * settings.stepCount - 0.00001) / (settings.stepCount - 1);\r\n color = this.mapColor(fStep);\r\n }\r\n break;\r\n }\r\n case ThematicGradientMode.Smooth:\r\n color = this.mapColor(f);\r\n break;\r\n }\r\n }\r\n\r\n for (let i = 0; i < width; i++) {\r\n image[currentIdx--] = color!.getAlpha();\r\n image[currentIdx--] = color!.colors.b;\r\n image[currentIdx--] = color!.colors.g;\r\n image[currentIdx--] = color!.colors.r;\r\n }\r\n }\r\n }\r\n }\r\n\r\n assert(-1 === currentIdx);\r\n const imageBuffer = ImageBuffer.create(image, ImageBufferFormat.Rgba, width);\r\n assert(undefined !== imageBuffer);\r\n return imageBuffer;\r\n }\r\n }\r\n}\r\n"]}
@@ -1,59 +1,59 @@
1
- /** @packageDocumentation
2
- * @module Symbology
3
- */
4
- import { ColorDef } from "./ColorDef";
5
- import { Gradient } from "./Gradient";
6
- import { LinePixels } from "./LinePixels";
7
- import { RenderMaterial } from "./RenderMaterial";
8
- /** Flags indicating whether and how the interiors of closed planar regions is displayed within a view.
9
- * @public
10
- * @extensions
11
- */
12
- export declare enum FillFlags {
13
- /** No fill */
14
- None = 0,
15
- /** Use the element's fill color when fill is enabled in the view's [[ViewFlags]]. */
16
- ByView = 1,
17
- /** Use the element's fill color even when fill is disabled in the view's [[ViewFlags]]. */
18
- Always = 2,
19
- /** Render the fill behind other geometry belonging to the same element.
20
- * For example if an element's geometry contains text with background fill, the text always renders in front of the fill.
21
- */
22
- Behind = 4,
23
- /** Combines Behind and Always flags. */
24
- Blanking = 6,
25
- /** Use the view's background color instead of the element's fill color. */
26
- Background = 8
27
- }
28
- /** The "cooked" material and symbology for a [[RenderGraphic]]. This determines the appearance
29
- * (e.g. texture, color, width, linestyle, etc.) used to draw Geometry.
30
- * @public
31
- */
32
- export declare class GraphicParams {
33
- /** Describes how fill is applied to planar regions in wireframe mode. */
34
- fillFlags: FillFlags;
35
- /** The line pattern applied to curves and edges. */
36
- linePixels: LinePixels;
37
- /** The width, in pixels, of curves and edges. Values are clamped to [1..31] at display time. */
38
- rasterWidth: number;
39
- /** The color of curves and edges. */
40
- lineColor: ColorDef;
41
- /** The color of surfaces. */
42
- fillColor: ColorDef;
43
- /** Material applied to surfaces. */
44
- material?: RenderMaterial;
45
- /** Gradient fill applied to surfaces. */
46
- gradient?: Gradient.Symb;
47
- /** Set the transparency of the line color, where 0=fully opaque and 255=full transparent. */
48
- setLineTransparency(transparency: number): void;
49
- /** Set the transparency of the fill color, where 0=fully opaque and 255=full transparent. */
50
- setFillTransparency(transparency: number): void;
51
- clone(out?: GraphicParams): GraphicParams;
52
- /** Conveniently create a GraphicParams the most commonly-used properties. */
53
- static fromSymbology(lineColor: ColorDef, fillColor: ColorDef, lineWidth: number, linePixels?: LinePixels): GraphicParams;
54
- /** Create a GraphicParams with blanking fill of the specified color.
55
- * @see [[FillFlags.Blanking]].
56
- */
57
- static fromBlankingFill(fillColor: ColorDef): GraphicParams;
58
- }
1
+ /** @packageDocumentation
2
+ * @module Symbology
3
+ */
4
+ import { ColorDef } from "./ColorDef";
5
+ import { Gradient } from "./Gradient";
6
+ import { LinePixels } from "./LinePixels";
7
+ import { RenderMaterial } from "./RenderMaterial";
8
+ /** Flags indicating whether and how the interiors of closed planar regions is displayed within a view.
9
+ * @public
10
+ * @extensions
11
+ */
12
+ export declare enum FillFlags {
13
+ /** No fill */
14
+ None = 0,
15
+ /** Use the element's fill color when fill is enabled in the view's [[ViewFlags]]. */
16
+ ByView = 1,
17
+ /** Use the element's fill color even when fill is disabled in the view's [[ViewFlags]]. */
18
+ Always = 2,
19
+ /** Render the fill behind other geometry belonging to the same element.
20
+ * For example if an element's geometry contains text with background fill, the text always renders in front of the fill.
21
+ */
22
+ Behind = 4,
23
+ /** Combines Behind and Always flags. */
24
+ Blanking = 6,
25
+ /** Use the view's background color instead of the element's fill color. */
26
+ Background = 8
27
+ }
28
+ /** The "cooked" material and symbology for a [[RenderGraphic]]. This determines the appearance
29
+ * (e.g. texture, color, width, linestyle, etc.) used to draw Geometry.
30
+ * @public
31
+ */
32
+ export declare class GraphicParams {
33
+ /** Describes how fill is applied to planar regions in wireframe mode. */
34
+ fillFlags: FillFlags;
35
+ /** The line pattern applied to curves and edges. */
36
+ linePixels: LinePixels;
37
+ /** The width, in pixels, of curves and edges. Values are clamped to [1..31] at display time. */
38
+ rasterWidth: number;
39
+ /** The color of curves and edges. */
40
+ lineColor: ColorDef;
41
+ /** The color of surfaces. */
42
+ fillColor: ColorDef;
43
+ /** Material applied to surfaces. */
44
+ material?: RenderMaterial;
45
+ /** Gradient fill applied to surfaces. */
46
+ gradient?: Gradient.Symb;
47
+ /** Set the transparency of the line color, where 0=fully opaque and 255=full transparent. */
48
+ setLineTransparency(transparency: number): void;
49
+ /** Set the transparency of the fill color, where 0=fully opaque and 255=full transparent. */
50
+ setFillTransparency(transparency: number): void;
51
+ clone(out?: GraphicParams): GraphicParams;
52
+ /** Conveniently create a GraphicParams the most commonly-used properties. */
53
+ static fromSymbology(lineColor: ColorDef, fillColor: ColorDef, lineWidth: number, linePixels?: LinePixels): GraphicParams;
54
+ /** Create a GraphicParams with blanking fill of the specified color.
55
+ * @see [[FillFlags.Blanking]].
56
+ */
57
+ static fromBlankingFill(fillColor: ColorDef): GraphicParams;
58
+ }
59
59
  //# sourceMappingURL=GraphicParams.d.ts.map
@@ -1,86 +1,86 @@
1
- "use strict";
2
- /*---------------------------------------------------------------------------------------------
3
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
- * See LICENSE.md in the project root for license terms and full copyright notice.
5
- *--------------------------------------------------------------------------------------------*/
6
- /** @packageDocumentation
7
- * @module Symbology
8
- */
9
- Object.defineProperty(exports, "__esModule", { value: true });
10
- exports.GraphicParams = exports.FillFlags = void 0;
11
- const ColorDef_1 = require("./ColorDef");
12
- const LinePixels_1 = require("./LinePixels");
13
- /** Flags indicating whether and how the interiors of closed planar regions is displayed within a view.
14
- * @public
15
- * @extensions
16
- */
17
- var FillFlags;
18
- (function (FillFlags) {
19
- /** No fill */
20
- FillFlags[FillFlags["None"] = 0] = "None";
21
- /** Use the element's fill color when fill is enabled in the view's [[ViewFlags]]. */
22
- FillFlags[FillFlags["ByView"] = 1] = "ByView";
23
- /** Use the element's fill color even when fill is disabled in the view's [[ViewFlags]]. */
24
- FillFlags[FillFlags["Always"] = 2] = "Always";
25
- /** Render the fill behind other geometry belonging to the same element.
26
- * For example if an element's geometry contains text with background fill, the text always renders in front of the fill.
27
- */
28
- FillFlags[FillFlags["Behind"] = 4] = "Behind";
29
- /** Combines Behind and Always flags. */
30
- FillFlags[FillFlags["Blanking"] = 6] = "Blanking";
31
- /** Use the view's background color instead of the element's fill color. */
32
- FillFlags[FillFlags["Background"] = 8] = "Background";
33
- })(FillFlags = exports.FillFlags || (exports.FillFlags = {}));
34
- /** The "cooked" material and symbology for a [[RenderGraphic]]. This determines the appearance
35
- * (e.g. texture, color, width, linestyle, etc.) used to draw Geometry.
36
- * @public
37
- */
38
- class GraphicParams {
39
- constructor() {
40
- /** Describes how fill is applied to planar regions in wireframe mode. */
41
- this.fillFlags = FillFlags.None;
42
- /** The line pattern applied to curves and edges. */
43
- this.linePixels = LinePixels_1.LinePixels.Solid;
44
- /** The width, in pixels, of curves and edges. Values are clamped to [1..31] at display time. */
45
- this.rasterWidth = 1;
46
- /** The color of curves and edges. */
47
- this.lineColor = ColorDef_1.ColorDef.black;
48
- /** The color of surfaces. */
49
- this.fillColor = ColorDef_1.ColorDef.black;
50
- }
51
- /** Set the transparency of the line color, where 0=fully opaque and 255=full transparent. */
52
- setLineTransparency(transparency) { this.lineColor = this.lineColor.withTransparency(transparency); }
53
- /** Set the transparency of the fill color, where 0=fully opaque and 255=full transparent. */
54
- setFillTransparency(transparency) { this.fillColor = this.fillColor.withTransparency(transparency); }
55
- clone(out) {
56
- out = out ?? new GraphicParams();
57
- out.fillFlags = this.fillFlags;
58
- out.linePixels = this.linePixels;
59
- out.rasterWidth = this.rasterWidth;
60
- out.lineColor = this.lineColor;
61
- out.fillColor = this.fillColor;
62
- out.material = this.material;
63
- out.gradient = this.gradient;
64
- return out;
65
- }
66
- /** Conveniently create a GraphicParams the most commonly-used properties. */
67
- static fromSymbology(lineColor, fillColor, lineWidth, linePixels = LinePixels_1.LinePixels.Solid) {
68
- const graphicParams = new GraphicParams();
69
- graphicParams.lineColor = lineColor;
70
- graphicParams.fillColor = fillColor;
71
- graphicParams.rasterWidth = lineWidth;
72
- graphicParams.linePixels = linePixels;
73
- return graphicParams;
74
- }
75
- /** Create a GraphicParams with blanking fill of the specified color.
76
- * @see [[FillFlags.Blanking]].
77
- */
78
- static fromBlankingFill(fillColor) {
79
- const graphicParams = new GraphicParams();
80
- graphicParams.fillColor = fillColor;
81
- graphicParams.fillFlags = FillFlags.Blanking;
82
- return graphicParams;
83
- }
84
- }
85
- exports.GraphicParams = GraphicParams;
1
+ "use strict";
2
+ /*---------------------------------------------------------------------------------------------
3
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
+ * See LICENSE.md in the project root for license terms and full copyright notice.
5
+ *--------------------------------------------------------------------------------------------*/
6
+ /** @packageDocumentation
7
+ * @module Symbology
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.GraphicParams = exports.FillFlags = void 0;
11
+ const ColorDef_1 = require("./ColorDef");
12
+ const LinePixels_1 = require("./LinePixels");
13
+ /** Flags indicating whether and how the interiors of closed planar regions is displayed within a view.
14
+ * @public
15
+ * @extensions
16
+ */
17
+ var FillFlags;
18
+ (function (FillFlags) {
19
+ /** No fill */
20
+ FillFlags[FillFlags["None"] = 0] = "None";
21
+ /** Use the element's fill color when fill is enabled in the view's [[ViewFlags]]. */
22
+ FillFlags[FillFlags["ByView"] = 1] = "ByView";
23
+ /** Use the element's fill color even when fill is disabled in the view's [[ViewFlags]]. */
24
+ FillFlags[FillFlags["Always"] = 2] = "Always";
25
+ /** Render the fill behind other geometry belonging to the same element.
26
+ * For example if an element's geometry contains text with background fill, the text always renders in front of the fill.
27
+ */
28
+ FillFlags[FillFlags["Behind"] = 4] = "Behind";
29
+ /** Combines Behind and Always flags. */
30
+ FillFlags[FillFlags["Blanking"] = 6] = "Blanking";
31
+ /** Use the view's background color instead of the element's fill color. */
32
+ FillFlags[FillFlags["Background"] = 8] = "Background";
33
+ })(FillFlags = exports.FillFlags || (exports.FillFlags = {}));
34
+ /** The "cooked" material and symbology for a [[RenderGraphic]]. This determines the appearance
35
+ * (e.g. texture, color, width, linestyle, etc.) used to draw Geometry.
36
+ * @public
37
+ */
38
+ class GraphicParams {
39
+ constructor() {
40
+ /** Describes how fill is applied to planar regions in wireframe mode. */
41
+ this.fillFlags = FillFlags.None;
42
+ /** The line pattern applied to curves and edges. */
43
+ this.linePixels = LinePixels_1.LinePixels.Solid;
44
+ /** The width, in pixels, of curves and edges. Values are clamped to [1..31] at display time. */
45
+ this.rasterWidth = 1;
46
+ /** The color of curves and edges. */
47
+ this.lineColor = ColorDef_1.ColorDef.black;
48
+ /** The color of surfaces. */
49
+ this.fillColor = ColorDef_1.ColorDef.black;
50
+ }
51
+ /** Set the transparency of the line color, where 0=fully opaque and 255=full transparent. */
52
+ setLineTransparency(transparency) { this.lineColor = this.lineColor.withTransparency(transparency); }
53
+ /** Set the transparency of the fill color, where 0=fully opaque and 255=full transparent. */
54
+ setFillTransparency(transparency) { this.fillColor = this.fillColor.withTransparency(transparency); }
55
+ clone(out) {
56
+ out = out ?? new GraphicParams();
57
+ out.fillFlags = this.fillFlags;
58
+ out.linePixels = this.linePixels;
59
+ out.rasterWidth = this.rasterWidth;
60
+ out.lineColor = this.lineColor;
61
+ out.fillColor = this.fillColor;
62
+ out.material = this.material;
63
+ out.gradient = this.gradient;
64
+ return out;
65
+ }
66
+ /** Conveniently create a GraphicParams the most commonly-used properties. */
67
+ static fromSymbology(lineColor, fillColor, lineWidth, linePixels = LinePixels_1.LinePixels.Solid) {
68
+ const graphicParams = new GraphicParams();
69
+ graphicParams.lineColor = lineColor;
70
+ graphicParams.fillColor = fillColor;
71
+ graphicParams.rasterWidth = lineWidth;
72
+ graphicParams.linePixels = linePixels;
73
+ return graphicParams;
74
+ }
75
+ /** Create a GraphicParams with blanking fill of the specified color.
76
+ * @see [[FillFlags.Blanking]].
77
+ */
78
+ static fromBlankingFill(fillColor) {
79
+ const graphicParams = new GraphicParams();
80
+ graphicParams.fillColor = fillColor;
81
+ graphicParams.fillFlags = FillFlags.Blanking;
82
+ return graphicParams;
83
+ }
84
+ }
85
+ exports.GraphicParams = GraphicParams;
86
86
  //# sourceMappingURL=GraphicParams.js.map
@@ -1,53 +1,53 @@
1
- /** @packageDocumentation
2
- * @module DisplayStyles
3
- */
4
- import { NonFunctionPropertiesOf } from "@itwin/core-bentley";
5
- import { ColorDef, ColorDefProps } from "./ColorDef";
6
- /** JSON representation of a [[GroundPlane]].
7
- * @see [[EnvironmentProps.ground]].
8
- * @public
9
- * @extensions
10
- */
11
- export interface GroundPlaneProps {
12
- /** Whether the ground plane should be displayed. Defaults to false. */
13
- display?: boolean;
14
- /** The Z height at which to draw the ground plane. */
15
- elevation?: number;
16
- /** The color in which to draw the ground plane when viewed from above. */
17
- aboveColor?: ColorDefProps;
18
- /** The color in which to draw the ground plane when viewed from below. */
19
- belowColor?: ColorDefProps;
20
- }
21
- /** A type containing all of the properties and none of the methods of [[GroundPlane]], with `readonly` modifiers removed.
22
- * @see [[GroundPlane.create]] and [[GroundPlane.clone]].
23
- * @public
24
- */
25
- export declare type GroundPlaneProperties = NonFunctionPropertiesOf<GroundPlane>;
26
- /** A circle drawn at a Z elevation, whose diameter is the the XY diagonal of the project extents, used to represent the ground as a reference point within a spatial view.
27
- * @see [[Environment.ground]].
28
- * @public
29
- */
30
- export declare class GroundPlane {
31
- /** The Z height in meters at which to draw the plane. */
32
- readonly elevation: number;
33
- /** The color in which to draw the ground plane when viewed from above. */
34
- readonly aboveColor: ColorDef;
35
- /** The color in which to draw the ground plane when viewed from below. */
36
- readonly belowColor: ColorDef;
37
- protected constructor(props: Partial<GroundPlaneProperties>);
38
- /** Default settings with a dark green "above" color, dark brown "below" color, and elevation of -0.01 meters. */
39
- static readonly defaults: GroundPlane;
40
- /** Create a new GroundPlane. Any properties not specified by `props` will be initialized to their default values. */
41
- static create(props?: Partial<GroundPlaneProperties>): GroundPlane;
42
- /** Create a copy of this ground plane, identical except for any properties explicitly specified by `changedProps`.
43
- * Any properties of `changedProps` explicitly set to `undefined` will be initialized to their default values.
44
- */
45
- clone(changedProps?: Partial<GroundPlaneProperties>): GroundPlane;
46
- /** Create from JSON representation. */
47
- static fromJSON(props?: GroundPlaneProps): GroundPlane;
48
- /** Convert to JSON representation.
49
- * @param display If defined, the value to use for [[GroundPlaneProps.display]]; otherwise, that property will be left undefined.
50
- */
51
- toJSON(display?: boolean): GroundPlaneProps;
52
- }
1
+ /** @packageDocumentation
2
+ * @module DisplayStyles
3
+ */
4
+ import { NonFunctionPropertiesOf } from "@itwin/core-bentley";
5
+ import { ColorDef, ColorDefProps } from "./ColorDef";
6
+ /** JSON representation of a [[GroundPlane]].
7
+ * @see [[EnvironmentProps.ground]].
8
+ * @public
9
+ * @extensions
10
+ */
11
+ export interface GroundPlaneProps {
12
+ /** Whether the ground plane should be displayed. Defaults to false. */
13
+ display?: boolean;
14
+ /** The Z height at which to draw the ground plane. */
15
+ elevation?: number;
16
+ /** The color in which to draw the ground plane when viewed from above. */
17
+ aboveColor?: ColorDefProps;
18
+ /** The color in which to draw the ground plane when viewed from below. */
19
+ belowColor?: ColorDefProps;
20
+ }
21
+ /** A type containing all of the properties and none of the methods of [[GroundPlane]], with `readonly` modifiers removed.
22
+ * @see [[GroundPlane.create]] and [[GroundPlane.clone]].
23
+ * @public
24
+ */
25
+ export type GroundPlaneProperties = NonFunctionPropertiesOf<GroundPlane>;
26
+ /** A circle drawn at a Z elevation, whose diameter is the the XY diagonal of the project extents, used to represent the ground as a reference point within a spatial view.
27
+ * @see [[Environment.ground]].
28
+ * @public
29
+ */
30
+ export declare class GroundPlane {
31
+ /** The Z height in meters at which to draw the plane. */
32
+ readonly elevation: number;
33
+ /** The color in which to draw the ground plane when viewed from above. */
34
+ readonly aboveColor: ColorDef;
35
+ /** The color in which to draw the ground plane when viewed from below. */
36
+ readonly belowColor: ColorDef;
37
+ protected constructor(props: Partial<GroundPlaneProperties>);
38
+ /** Default settings with a dark green "above" color, dark brown "below" color, and elevation of -0.01 meters. */
39
+ static readonly defaults: GroundPlane;
40
+ /** Create a new GroundPlane. Any properties not specified by `props` will be initialized to their default values. */
41
+ static create(props?: Partial<GroundPlaneProperties>): GroundPlane;
42
+ /** Create a copy of this ground plane, identical except for any properties explicitly specified by `changedProps`.
43
+ * Any properties of `changedProps` explicitly set to `undefined` will be initialized to their default values.
44
+ */
45
+ clone(changedProps?: Partial<GroundPlaneProperties>): GroundPlane;
46
+ /** Create from JSON representation. */
47
+ static fromJSON(props?: GroundPlaneProps): GroundPlane;
48
+ /** Convert to JSON representation.
49
+ * @param display If defined, the value to use for [[GroundPlaneProps.display]]; otherwise, that property will be left undefined.
50
+ */
51
+ toJSON(display?: boolean): GroundPlaneProps;
52
+ }
53
53
  //# sourceMappingURL=GroundPlane.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"GroundPlane.d.ts","sourceRoot":"","sources":["../../src/GroundPlane.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAE9D,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAErD;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B,uEAAuE;IACvE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,sDAAsD;IACtD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0EAA0E;IAC1E,UAAU,CAAC,EAAE,aAAa,CAAC;IAC3B,0EAA0E;IAC1E,UAAU,CAAC,EAAE,aAAa,CAAC;CAC5B;AAED;;;GAGG;AACH,oBAAY,qBAAqB,GAAG,uBAAuB,CAAC,WAAW,CAAC,CAAC;AAKzE;;;GAGG;AACH,qBAAa,WAAW;IACtB,yDAAyD;IACzD,SAAgB,SAAS,EAAE,MAAM,CAAC;IAClC,0EAA0E;IAC1E,SAAgB,UAAU,EAAE,QAAQ,CAAC;IACrC,0EAA0E;IAC1E,SAAgB,UAAU,EAAE,QAAQ,CAAC;IAErC,SAAS,aAAa,KAAK,EAAE,OAAO,CAAC,qBAAqB,CAAC;IAM3D,iHAAiH;IACjH,gBAAuB,QAAQ,cAAuB;IAEtD,qHAAqH;WACvG,MAAM,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,qBAAqB,CAAC;IAI3D;;OAEG;IACI,KAAK,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC,qBAAqB,CAAC,GAAG,WAAW;IAOxE,uCAAuC;WACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,gBAAgB,GAAG,WAAW;IAW7D;;OAEG;IACI,MAAM,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,gBAAgB;CAYnD"}
1
+ {"version":3,"file":"GroundPlane.d.ts","sourceRoot":"","sources":["../../src/GroundPlane.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAE9D,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAErD;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B,uEAAuE;IACvE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,sDAAsD;IACtD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0EAA0E;IAC1E,UAAU,CAAC,EAAE,aAAa,CAAC;IAC3B,0EAA0E;IAC1E,UAAU,CAAC,EAAE,aAAa,CAAC;CAC5B;AAED;;;GAGG;AACH,MAAM,MAAM,qBAAqB,GAAG,uBAAuB,CAAC,WAAW,CAAC,CAAC;AAKzE;;;GAGG;AACH,qBAAa,WAAW;IACtB,yDAAyD;IACzD,SAAgB,SAAS,EAAE,MAAM,CAAC;IAClC,0EAA0E;IAC1E,SAAgB,UAAU,EAAE,QAAQ,CAAC;IACrC,0EAA0E;IAC1E,SAAgB,UAAU,EAAE,QAAQ,CAAC;IAErC,SAAS,aAAa,KAAK,EAAE,OAAO,CAAC,qBAAqB,CAAC;IAM3D,iHAAiH;IACjH,gBAAuB,QAAQ,cAAuB;IAEtD,qHAAqH;WACvG,MAAM,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,qBAAqB,CAAC;IAI3D;;OAEG;IACI,KAAK,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC,qBAAqB,CAAC,GAAG,WAAW;IAOxE,uCAAuC;WACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,gBAAgB,GAAG,WAAW;IAW7D;;OAEG;IACI,MAAM,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,gBAAgB;CAYnD"}