@itwin/core-common 4.10.0-dev.9 → 5.0.0-dev.0

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 (319) hide show
  1. package/CHANGELOG.md +23 -1
  2. package/lib/cjs/BackendTypes.d.ts +0 -2
  3. package/lib/cjs/BackendTypes.d.ts.map +1 -1
  4. package/lib/cjs/BackgroundMapProvider.js +1 -1
  5. package/lib/cjs/BackgroundMapProvider.js.map +1 -1
  6. package/lib/cjs/BackgroundMapSettings.js +2 -2
  7. package/lib/cjs/BackgroundMapSettings.js.map +1 -1
  8. package/lib/cjs/BriefcaseTypes.js.map +1 -1
  9. package/lib/cjs/Code.d.ts +8 -0
  10. package/lib/cjs/Code.d.ts.map +1 -1
  11. package/lib/cjs/Code.js +8 -0
  12. package/lib/cjs/Code.js.map +1 -1
  13. package/lib/cjs/ColorDef.d.ts.map +1 -1
  14. package/lib/cjs/ColorDef.js +0 -3
  15. package/lib/cjs/ColorDef.js.map +1 -1
  16. package/lib/cjs/ConcurrentQuery.d.ts.map +1 -1
  17. package/lib/cjs/ContourDisplay.d.ts +216 -0
  18. package/lib/cjs/ContourDisplay.d.ts.map +1 -0
  19. package/lib/cjs/ContourDisplay.js +300 -0
  20. package/lib/cjs/ContourDisplay.js.map +1 -0
  21. package/lib/cjs/DisplayStyleSettings.d.ts +9 -0
  22. package/lib/cjs/DisplayStyleSettings.d.ts.map +1 -1
  23. package/lib/cjs/DisplayStyleSettings.js +16 -0
  24. package/lib/cjs/DisplayStyleSettings.js.map +1 -1
  25. package/lib/cjs/ECSqlReader.d.ts.map +1 -1
  26. package/lib/cjs/ECSqlReader.js +1 -10
  27. package/lib/cjs/ECSqlReader.js.map +1 -1
  28. package/lib/cjs/ElementMesh.js +2 -3
  29. package/lib/cjs/ElementMesh.js.map +1 -1
  30. package/lib/cjs/ElementProps.d.ts +25 -0
  31. package/lib/cjs/ElementProps.d.ts.map +1 -1
  32. package/lib/cjs/ElementProps.js +3 -3
  33. package/lib/cjs/ElementProps.js.map +1 -1
  34. package/lib/cjs/FeatureSymbology.d.ts +36 -5
  35. package/lib/cjs/FeatureSymbology.d.ts.map +1 -1
  36. package/lib/cjs/FeatureSymbology.js +127 -40
  37. package/lib/cjs/FeatureSymbology.js.map +1 -1
  38. package/lib/cjs/GeoCoordinateServices.js +2 -2
  39. package/lib/cjs/GeoCoordinateServices.js.map +1 -1
  40. package/lib/cjs/IModel.js.map +1 -1
  41. package/lib/cjs/IModelError.d.ts +5 -3
  42. package/lib/cjs/IModelError.d.ts.map +1 -1
  43. package/lib/cjs/IModelError.js +5 -2
  44. package/lib/cjs/IModelError.js.map +1 -1
  45. package/lib/cjs/ITwinError.d.ts +72 -0
  46. package/lib/cjs/ITwinError.d.ts.map +1 -0
  47. package/lib/cjs/ITwinError.js +55 -0
  48. package/lib/cjs/ITwinError.js.map +1 -0
  49. package/lib/cjs/Image.js +4 -4
  50. package/lib/cjs/Image.js.map +1 -1
  51. package/lib/cjs/MapLayerSettings.d.ts.map +1 -1
  52. package/lib/cjs/MapLayerSettings.js +0 -1
  53. package/lib/cjs/MapLayerSettings.js.map +1 -1
  54. package/lib/cjs/QPoint.d.ts +1 -1
  55. package/lib/cjs/RenderMaterial.js +4 -4
  56. package/lib/cjs/RenderMaterial.js.map +1 -1
  57. package/lib/cjs/RenderTexture.js.map +1 -1
  58. package/lib/cjs/RpcInterface.js +1 -1
  59. package/lib/cjs/RpcInterface.js.map +1 -1
  60. package/lib/cjs/RpcManager.d.ts.map +1 -1
  61. package/lib/cjs/RpcManager.js.map +1 -1
  62. package/lib/cjs/SolarCalculate.js +4 -5
  63. package/lib/cjs/SolarCalculate.js.map +1 -1
  64. package/lib/cjs/SpatialClassification.js.map +1 -1
  65. package/lib/cjs/SubCategoryAppearance.js.map +1 -1
  66. package/lib/cjs/TextureMapping.js.map +1 -1
  67. package/lib/cjs/TileProps.js +2 -2
  68. package/lib/cjs/TileProps.js.map +1 -1
  69. package/lib/cjs/Tween.d.ts.map +1 -1
  70. package/lib/cjs/Tween.js +0 -1
  71. package/lib/cjs/Tween.js.map +1 -1
  72. package/lib/cjs/ViewProps.d.ts +1 -1
  73. package/lib/cjs/ViewProps.d.ts.map +1 -1
  74. package/lib/cjs/ViewProps.js.map +1 -1
  75. package/lib/cjs/core-common.d.ts +2 -0
  76. package/lib/cjs/core-common.d.ts.map +1 -1
  77. package/lib/cjs/core-common.js +2 -0
  78. package/lib/cjs/core-common.js.map +1 -1
  79. package/lib/cjs/geometry/ElementGeometry.js +3 -3
  80. package/lib/cjs/geometry/ElementGeometry.js.map +1 -1
  81. package/lib/cjs/geometry/FrustumPlanes.js.map +1 -1
  82. package/lib/cjs/geometry/GeometryStream.js +2 -2
  83. package/lib/cjs/geometry/GeometryStream.js.map +1 -1
  84. package/lib/cjs/geometry/Placement.d.ts +3 -0
  85. package/lib/cjs/geometry/Placement.d.ts.map +1 -1
  86. package/lib/cjs/geometry/Placement.js +3 -0
  87. package/lib/cjs/geometry/Placement.js.map +1 -1
  88. package/lib/cjs/internal/Snapping.d.ts +7 -1
  89. package/lib/cjs/internal/Snapping.d.ts.map +1 -1
  90. package/lib/cjs/internal/Snapping.js.map +1 -1
  91. package/lib/cjs/ipc/IpcSocket.d.ts +15 -2
  92. package/lib/cjs/ipc/IpcSocket.d.ts.map +1 -1
  93. package/lib/cjs/ipc/IpcSocket.js.map +1 -1
  94. package/lib/cjs/ipc/IpcWebSocket.js.map +1 -1
  95. package/lib/cjs/rpc/DevToolsRpcInterface.js.map +1 -1
  96. package/lib/cjs/rpc/IModelReadRpcInterface.js +12 -12
  97. package/lib/cjs/rpc/IModelReadRpcInterface.js.map +1 -1
  98. package/lib/cjs/rpc/IModelTileRpcInterface.js +1 -1
  99. package/lib/cjs/rpc/IModelTileRpcInterface.js.map +1 -1
  100. package/lib/cjs/rpc/SnapshotIModelRpcInterface.d.ts +3 -0
  101. package/lib/cjs/rpc/SnapshotIModelRpcInterface.d.ts.map +1 -1
  102. package/lib/cjs/rpc/SnapshotIModelRpcInterface.js +3 -0
  103. package/lib/cjs/rpc/SnapshotIModelRpcInterface.js.map +1 -1
  104. package/lib/cjs/rpc/TestRpcManager.d.ts.map +1 -1
  105. package/lib/cjs/rpc/TestRpcManager.js +0 -1
  106. package/lib/cjs/rpc/TestRpcManager.js.map +1 -1
  107. package/lib/cjs/rpc/WipRpcInterface.js +1 -1
  108. package/lib/cjs/rpc/WipRpcInterface.js.map +1 -1
  109. package/lib/cjs/rpc/core/RpcConfiguration.d.ts.map +1 -1
  110. package/lib/cjs/rpc/core/RpcConfiguration.js +1 -1
  111. package/lib/cjs/rpc/core/RpcConfiguration.js.map +1 -1
  112. package/lib/cjs/rpc/core/RpcConstants.d.ts +1 -1
  113. package/lib/cjs/rpc/core/RpcConstants.d.ts.map +1 -1
  114. package/lib/cjs/rpc/core/RpcConstants.js +1 -1
  115. package/lib/cjs/rpc/core/RpcConstants.js.map +1 -1
  116. package/lib/cjs/rpc/core/RpcControl.d.ts.map +1 -1
  117. package/lib/cjs/rpc/core/RpcControl.js +0 -1
  118. package/lib/cjs/rpc/core/RpcControl.js.map +1 -1
  119. package/lib/cjs/rpc/core/RpcInvocation.js +1 -1
  120. package/lib/cjs/rpc/core/RpcInvocation.js.map +1 -1
  121. package/lib/cjs/rpc/core/RpcMarshaling.js +1 -1
  122. package/lib/cjs/rpc/core/RpcMarshaling.js.map +1 -1
  123. package/lib/cjs/rpc/core/RpcOperation.d.ts.map +1 -1
  124. package/lib/cjs/rpc/core/RpcOperation.js +0 -1
  125. package/lib/cjs/rpc/core/RpcOperation.js.map +1 -1
  126. package/lib/cjs/rpc/core/RpcPendingQueue.js +1 -1
  127. package/lib/cjs/rpc/core/RpcPendingQueue.js.map +1 -1
  128. package/lib/cjs/rpc/core/RpcProtocol.js.map +1 -1
  129. package/lib/cjs/rpc/core/RpcPush.d.ts.map +1 -1
  130. package/lib/cjs/rpc/core/RpcPush.js.map +1 -1
  131. package/lib/cjs/rpc/core/RpcRegistry.d.ts.map +1 -1
  132. package/lib/cjs/rpc/core/RpcRegistry.js +0 -2
  133. package/lib/cjs/rpc/core/RpcRegistry.js.map +1 -1
  134. package/lib/cjs/rpc/core/RpcRequest.d.ts.map +1 -1
  135. package/lib/cjs/rpc/core/RpcRequest.js +1 -2
  136. package/lib/cjs/rpc/core/RpcRequest.js.map +1 -1
  137. package/lib/cjs/rpc/core/RpcRequestContext.d.ts.map +1 -1
  138. package/lib/cjs/rpc/core/RpcRequestContext.js.map +1 -1
  139. package/lib/cjs/rpc/core/RpcRoutingToken.d.ts.map +1 -1
  140. package/lib/cjs/rpc/core/RpcRoutingToken.js +0 -1
  141. package/lib/cjs/rpc/core/RpcRoutingToken.js.map +1 -1
  142. package/lib/cjs/rpc/core/RpcSessionInvocation.js +1 -1
  143. package/lib/cjs/rpc/core/RpcSessionInvocation.js.map +1 -1
  144. package/lib/cjs/rpc/web/BentleyCloudRpcManager.js.map +1 -1
  145. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.d.ts.map +1 -1
  146. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.js +0 -1
  147. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.js.map +1 -1
  148. package/lib/cjs/rpc/web/OpenAPI.js.map +1 -1
  149. package/lib/cjs/rpc/web/RpcMultipart.d.ts.map +1 -1
  150. package/lib/cjs/rpc/web/RpcMultipart.js.map +1 -1
  151. package/lib/cjs/rpc/web/WebAppRpcLogging.js +1 -1
  152. package/lib/cjs/rpc/web/WebAppRpcLogging.js.map +1 -1
  153. package/lib/cjs/rpc/web/WebAppRpcProtocol.d.ts +0 -2
  154. package/lib/cjs/rpc/web/WebAppRpcProtocol.d.ts.map +1 -1
  155. package/lib/cjs/rpc/web/WebAppRpcProtocol.js.map +1 -1
  156. package/lib/cjs/rpc/web/WebAppRpcRequest.d.ts.map +1 -1
  157. package/lib/cjs/rpc/web/WebAppRpcRequest.js +1 -1
  158. package/lib/cjs/rpc/web/WebAppRpcRequest.js.map +1 -1
  159. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.d.ts.map +1 -1
  160. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.js +0 -1
  161. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.js.map +1 -1
  162. package/lib/cjs/tile/TileIO.js +4 -4
  163. package/lib/cjs/tile/TileIO.js.map +1 -1
  164. package/lib/cjs/tile/TileMetadata.js +13 -13
  165. package/lib/cjs/tile/TileMetadata.js.map +1 -1
  166. package/lib/esm/BackendTypes.d.ts +0 -2
  167. package/lib/esm/BackendTypes.d.ts.map +1 -1
  168. package/lib/esm/BackgroundMapProvider.js +1 -1
  169. package/lib/esm/BackgroundMapProvider.js.map +1 -1
  170. package/lib/esm/BackgroundMapSettings.js +2 -2
  171. package/lib/esm/BackgroundMapSettings.js.map +1 -1
  172. package/lib/esm/BriefcaseTypes.js.map +1 -1
  173. package/lib/esm/Code.d.ts +8 -0
  174. package/lib/esm/Code.d.ts.map +1 -1
  175. package/lib/esm/Code.js +8 -0
  176. package/lib/esm/Code.js.map +1 -1
  177. package/lib/esm/ColorDef.d.ts.map +1 -1
  178. package/lib/esm/ColorDef.js +0 -3
  179. package/lib/esm/ColorDef.js.map +1 -1
  180. package/lib/esm/ConcurrentQuery.d.ts.map +1 -1
  181. package/lib/esm/ContourDisplay.d.ts +216 -0
  182. package/lib/esm/ContourDisplay.d.ts.map +1 -0
  183. package/lib/esm/ContourDisplay.js +293 -0
  184. package/lib/esm/ContourDisplay.js.map +1 -0
  185. package/lib/esm/DisplayStyleSettings.d.ts +9 -0
  186. package/lib/esm/DisplayStyleSettings.d.ts.map +1 -1
  187. package/lib/esm/DisplayStyleSettings.js +16 -0
  188. package/lib/esm/DisplayStyleSettings.js.map +1 -1
  189. package/lib/esm/ECSqlReader.d.ts.map +1 -1
  190. package/lib/esm/ECSqlReader.js +1 -10
  191. package/lib/esm/ECSqlReader.js.map +1 -1
  192. package/lib/esm/ElementMesh.js +1 -1
  193. package/lib/esm/ElementMesh.js.map +1 -1
  194. package/lib/esm/ElementProps.d.ts +25 -0
  195. package/lib/esm/ElementProps.d.ts.map +1 -1
  196. package/lib/esm/ElementProps.js.map +1 -1
  197. package/lib/esm/FeatureSymbology.d.ts +36 -5
  198. package/lib/esm/FeatureSymbology.d.ts.map +1 -1
  199. package/lib/esm/FeatureSymbology.js +127 -40
  200. package/lib/esm/FeatureSymbology.js.map +1 -1
  201. package/lib/esm/IModel.js.map +1 -1
  202. package/lib/esm/IModelError.d.ts +5 -3
  203. package/lib/esm/IModelError.d.ts.map +1 -1
  204. package/lib/esm/IModelError.js +5 -2
  205. package/lib/esm/IModelError.js.map +1 -1
  206. package/lib/esm/ITwinError.d.ts +72 -0
  207. package/lib/esm/ITwinError.d.ts.map +1 -0
  208. package/lib/esm/ITwinError.js +52 -0
  209. package/lib/esm/ITwinError.js.map +1 -0
  210. package/lib/esm/MapLayerSettings.d.ts.map +1 -1
  211. package/lib/esm/MapLayerSettings.js +0 -1
  212. package/lib/esm/MapLayerSettings.js.map +1 -1
  213. package/lib/esm/QPoint.d.ts +1 -1
  214. package/lib/esm/RenderMaterial.js +4 -4
  215. package/lib/esm/RenderMaterial.js.map +1 -1
  216. package/lib/esm/RenderTexture.js.map +1 -1
  217. package/lib/esm/RpcInterface.js +1 -1
  218. package/lib/esm/RpcInterface.js.map +1 -1
  219. package/lib/esm/RpcManager.d.ts.map +1 -1
  220. package/lib/esm/RpcManager.js.map +1 -1
  221. package/lib/esm/SpatialClassification.js.map +1 -1
  222. package/lib/esm/SubCategoryAppearance.js.map +1 -1
  223. package/lib/esm/TextureMapping.js.map +1 -1
  224. package/lib/esm/Tween.d.ts.map +1 -1
  225. package/lib/esm/Tween.js +0 -1
  226. package/lib/esm/Tween.js.map +1 -1
  227. package/lib/esm/ViewProps.d.ts +1 -1
  228. package/lib/esm/ViewProps.d.ts.map +1 -1
  229. package/lib/esm/ViewProps.js.map +1 -1
  230. package/lib/esm/core-common.d.ts +2 -0
  231. package/lib/esm/core-common.d.ts.map +1 -1
  232. package/lib/esm/core-common.js +2 -0
  233. package/lib/esm/core-common.js.map +1 -1
  234. package/lib/esm/geometry/ElementGeometry.js +3 -3
  235. package/lib/esm/geometry/ElementGeometry.js.map +1 -1
  236. package/lib/esm/geometry/FrustumPlanes.js.map +1 -1
  237. package/lib/esm/geometry/GeometryStream.js +2 -2
  238. package/lib/esm/geometry/GeometryStream.js.map +1 -1
  239. package/lib/esm/geometry/Placement.d.ts +3 -0
  240. package/lib/esm/geometry/Placement.d.ts.map +1 -1
  241. package/lib/esm/geometry/Placement.js +3 -0
  242. package/lib/esm/geometry/Placement.js.map +1 -1
  243. package/lib/esm/internal/Snapping.d.ts +7 -1
  244. package/lib/esm/internal/Snapping.d.ts.map +1 -1
  245. package/lib/esm/internal/Snapping.js.map +1 -1
  246. package/lib/esm/ipc/IpcSocket.d.ts +15 -2
  247. package/lib/esm/ipc/IpcSocket.d.ts.map +1 -1
  248. package/lib/esm/ipc/IpcSocket.js.map +1 -1
  249. package/lib/esm/ipc/IpcWebSocket.js.map +1 -1
  250. package/lib/esm/rpc/DevToolsRpcInterface.js.map +1 -1
  251. package/lib/esm/rpc/IModelReadRpcInterface.js +12 -12
  252. package/lib/esm/rpc/IModelReadRpcInterface.js.map +1 -1
  253. package/lib/esm/rpc/IModelTileRpcInterface.js +1 -1
  254. package/lib/esm/rpc/IModelTileRpcInterface.js.map +1 -1
  255. package/lib/esm/rpc/SnapshotIModelRpcInterface.d.ts +3 -0
  256. package/lib/esm/rpc/SnapshotIModelRpcInterface.d.ts.map +1 -1
  257. package/lib/esm/rpc/SnapshotIModelRpcInterface.js +3 -0
  258. package/lib/esm/rpc/SnapshotIModelRpcInterface.js.map +1 -1
  259. package/lib/esm/rpc/TestRpcManager.d.ts.map +1 -1
  260. package/lib/esm/rpc/TestRpcManager.js +0 -1
  261. package/lib/esm/rpc/TestRpcManager.js.map +1 -1
  262. package/lib/esm/rpc/WipRpcInterface.js +1 -1
  263. package/lib/esm/rpc/WipRpcInterface.js.map +1 -1
  264. package/lib/esm/rpc/core/RpcConfiguration.d.ts.map +1 -1
  265. package/lib/esm/rpc/core/RpcConfiguration.js +1 -1
  266. package/lib/esm/rpc/core/RpcConfiguration.js.map +1 -1
  267. package/lib/esm/rpc/core/RpcConstants.d.ts +1 -1
  268. package/lib/esm/rpc/core/RpcConstants.d.ts.map +1 -1
  269. package/lib/esm/rpc/core/RpcConstants.js +1 -1
  270. package/lib/esm/rpc/core/RpcConstants.js.map +1 -1
  271. package/lib/esm/rpc/core/RpcControl.d.ts.map +1 -1
  272. package/lib/esm/rpc/core/RpcControl.js +0 -1
  273. package/lib/esm/rpc/core/RpcControl.js.map +1 -1
  274. package/lib/esm/rpc/core/RpcInvocation.js +1 -1
  275. package/lib/esm/rpc/core/RpcInvocation.js.map +1 -1
  276. package/lib/esm/rpc/core/RpcMarshaling.js +1 -1
  277. package/lib/esm/rpc/core/RpcMarshaling.js.map +1 -1
  278. package/lib/esm/rpc/core/RpcOperation.d.ts.map +1 -1
  279. package/lib/esm/rpc/core/RpcOperation.js +0 -1
  280. package/lib/esm/rpc/core/RpcOperation.js.map +1 -1
  281. package/lib/esm/rpc/core/RpcPendingQueue.js +1 -1
  282. package/lib/esm/rpc/core/RpcPendingQueue.js.map +1 -1
  283. package/lib/esm/rpc/core/RpcProtocol.js.map +1 -1
  284. package/lib/esm/rpc/core/RpcPush.d.ts.map +1 -1
  285. package/lib/esm/rpc/core/RpcPush.js.map +1 -1
  286. package/lib/esm/rpc/core/RpcRegistry.d.ts.map +1 -1
  287. package/lib/esm/rpc/core/RpcRegistry.js +0 -2
  288. package/lib/esm/rpc/core/RpcRegistry.js.map +1 -1
  289. package/lib/esm/rpc/core/RpcRequest.d.ts.map +1 -1
  290. package/lib/esm/rpc/core/RpcRequest.js +1 -2
  291. package/lib/esm/rpc/core/RpcRequest.js.map +1 -1
  292. package/lib/esm/rpc/core/RpcRequestContext.d.ts.map +1 -1
  293. package/lib/esm/rpc/core/RpcRequestContext.js.map +1 -1
  294. package/lib/esm/rpc/core/RpcRoutingToken.d.ts.map +1 -1
  295. package/lib/esm/rpc/core/RpcRoutingToken.js +0 -1
  296. package/lib/esm/rpc/core/RpcRoutingToken.js.map +1 -1
  297. package/lib/esm/rpc/core/RpcSessionInvocation.js +1 -1
  298. package/lib/esm/rpc/core/RpcSessionInvocation.js.map +1 -1
  299. package/lib/esm/rpc/web/BentleyCloudRpcManager.js.map +1 -1
  300. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.d.ts.map +1 -1
  301. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.js +0 -1
  302. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.js.map +1 -1
  303. package/lib/esm/rpc/web/OpenAPI.js.map +1 -1
  304. package/lib/esm/rpc/web/RpcMultipart.d.ts.map +1 -1
  305. package/lib/esm/rpc/web/RpcMultipart.js.map +1 -1
  306. package/lib/esm/rpc/web/WebAppRpcLogging.js +1 -1
  307. package/lib/esm/rpc/web/WebAppRpcLogging.js.map +1 -1
  308. package/lib/esm/rpc/web/WebAppRpcProtocol.d.ts +0 -2
  309. package/lib/esm/rpc/web/WebAppRpcProtocol.d.ts.map +1 -1
  310. package/lib/esm/rpc/web/WebAppRpcProtocol.js.map +1 -1
  311. package/lib/esm/rpc/web/WebAppRpcRequest.d.ts.map +1 -1
  312. package/lib/esm/rpc/web/WebAppRpcRequest.js +1 -1
  313. package/lib/esm/rpc/web/WebAppRpcRequest.js.map +1 -1
  314. package/lib/esm/rpc/web/multipart/RpcMultipartParser.d.ts.map +1 -1
  315. package/lib/esm/rpc/web/multipart/RpcMultipartParser.js +0 -1
  316. package/lib/esm/rpc/web/multipart/RpcMultipartParser.js.map +1 -1
  317. package/lib/esm/tile/TileMetadata.js +1 -1
  318. package/lib/esm/tile/TileMetadata.js.map +1 -1
  319. package/package.json +11 -11
@@ -0,0 +1,300 @@
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.ContourDisplay = exports.ContourGroup = exports.Contour = exports.ContourStyle = void 0;
11
+ const core_bentley_1 = require("@itwin/core-bentley");
12
+ const LinePixels_1 = require("./LinePixels");
13
+ const RgbColor_1 = require("./RgbColor");
14
+ /** The style settings used by either a minor or major contour.
15
+ * @see [[Contour.majorStyle]]
16
+ * @see [[Contour.minorStyle]]
17
+ * @public
18
+ */
19
+ class ContourStyle {
20
+ /** Returns true if `this` and `other` are logically equivalent. */
21
+ equals(other) {
22
+ if (!this.color.equals(other.color) || this.pixelWidth !== other.pixelWidth || this.pattern !== other.pattern) {
23
+ return false;
24
+ }
25
+ return true;
26
+ }
27
+ /** Performs ordered comparison of two contour styles.
28
+ * @param lhs First contour style to compare
29
+ * @param rhs Second contour style to compare
30
+ * @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.
31
+ * @public
32
+ */
33
+ static compare(lhs, rhs) {
34
+ let diff = 0;
35
+ if ((diff = lhs.color.compareTo(rhs.color)) !== 0)
36
+ return diff;
37
+ if ((diff = (0, core_bentley_1.compareNumbers)(lhs.pixelWidth, rhs.pixelWidth)) !== 0)
38
+ return diff;
39
+ if ((diff = (0, core_bentley_1.compareNumbers)(lhs.pattern, rhs.pattern)) !== 0)
40
+ return diff;
41
+ return diff;
42
+ }
43
+ constructor(props) {
44
+ this.color = props?.color ?? RgbColor_1.RgbColor.fromJSON({ r: 0, g: 0, b: 0 });
45
+ this.pixelWidth = props?.pixelWidth ?? 1;
46
+ this.pattern = props?.pattern ?? LinePixels_1.LinePixels.Solid;
47
+ }
48
+ static fromJSON(props) {
49
+ if (!props)
50
+ return new ContourStyle();
51
+ return new this({
52
+ color: props?.color ? RgbColor_1.RgbColor.fromJSON(props.color) : undefined,
53
+ pixelWidth: props?.pixelWidth,
54
+ pattern: props?.pattern,
55
+ });
56
+ }
57
+ toJSON() {
58
+ const props = {};
59
+ if (!this.color.equals(RgbColor_1.RgbColor.fromJSON({ r: 0, g: 0, b: 0 })))
60
+ props.color = this.color.toJSON();
61
+ if (1 !== this.pixelWidth)
62
+ props.pixelWidth = this.pixelWidth;
63
+ if (0 !== this.pattern)
64
+ props.pattern = this.pattern;
65
+ return props;
66
+ }
67
+ /** Create a new ContourStyle. Any properties not specified by `props` will be initialized to their default values. */
68
+ static create(props) {
69
+ return props ? new this(props) : new ContourStyle();
70
+ }
71
+ /** Create a copy of this ContourStyle, identical except for any properties specified by `changedProps`.
72
+ * Any properties of `changedProps` explicitly set to `undefined` will be reset to their default values.
73
+ */
74
+ clone(changedProps) {
75
+ if (!changedProps)
76
+ return this;
77
+ return ContourStyle.create({ ...this, ...changedProps });
78
+ }
79
+ }
80
+ exports.ContourStyle = ContourStyle;
81
+ /** Describes how to generate and style contour lines for geometry within a single [[ContourGroup]].
82
+ * Contours provide a way to visualize elevation within a 3d scene by drawing lines at fixed intervals along the z-axis.
83
+ * There are actually 2 kinds of contour lines: major and minor. Each kind can be styled independently.
84
+ * A contour line is generated every [[minorInterval]] meters. Every `nth` line will be a *major* contour, where `n` = [[majorIntervalCount]]; the intervening lines will
85
+ * all be *minor* contours.
86
+ * For example, with a [[majorIntervalCount]] of `1`, every contour will be major; of `2`, every other contour will be major; and of `3`, there will be two minor contours in between
87
+ * each major contour.
88
+ *
89
+ * @public
90
+ */
91
+ class Contour {
92
+ equals(other) {
93
+ if (!this.majorStyle.equals(other.majorStyle) || !this.minorStyle.equals(other.minorStyle) || this.minorInterval !== other.minorInterval || this.majorIntervalCount !== other.majorIntervalCount || this.showGeometry !== other.showGeometry) {
94
+ return false;
95
+ }
96
+ return true;
97
+ }
98
+ /** Performs ordered comparison of two contours.
99
+ * @param lhs First contour to compare
100
+ * @param rhs Second contour to compare
101
+ * @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.
102
+ */
103
+ static compare(lhs, rhs) {
104
+ return ContourStyle.compare(lhs.majorStyle, rhs.majorStyle)
105
+ || ContourStyle.compare(lhs.minorStyle, rhs.minorStyle)
106
+ || (0, core_bentley_1.compareNumbers)(lhs.minorInterval, rhs.minorInterval)
107
+ || (0, core_bentley_1.compareNumbers)(lhs.majorIntervalCount, rhs.majorIntervalCount)
108
+ || (0, core_bentley_1.compareBooleans)(lhs.showGeometry, rhs.showGeometry);
109
+ }
110
+ constructor(props) {
111
+ this.majorStyle = props?.majorStyle ?? ContourStyle.fromJSON({ pixelWidth: 2 });
112
+ this.minorStyle = props?.minorStyle ?? ContourStyle.fromJSON();
113
+ this.minorInterval = props?.minorInterval ?? 1;
114
+ this.majorIntervalCount = props?.majorIntervalCount ?? 5;
115
+ this.showGeometry = props?.showGeometry ?? true;
116
+ }
117
+ static fromJSON(props) {
118
+ if (!props)
119
+ return new Contour();
120
+ return new this({
121
+ majorStyle: props?.majorStyle ? ContourStyle.fromJSON(props.majorStyle) : undefined,
122
+ minorStyle: props?.minorStyle ? ContourStyle.fromJSON(props.minorStyle) : undefined,
123
+ minorInterval: props?.minorInterval,
124
+ majorIntervalCount: props?.majorIntervalCount,
125
+ showGeometry: props?.showGeometry,
126
+ });
127
+ }
128
+ toJSON() {
129
+ const props = {};
130
+ if (!this.majorStyle.equals(ContourStyle.fromJSON({ pixelWidth: 2 })))
131
+ props.majorStyle = this.majorStyle.toJSON();
132
+ if (!this.minorStyle.equals(ContourStyle.fromJSON()))
133
+ props.minorStyle = this.minorStyle.toJSON();
134
+ if (1 !== this.minorInterval)
135
+ props.minorInterval = this.minorInterval;
136
+ if (5 !== this.majorIntervalCount)
137
+ props.majorIntervalCount = this.majorIntervalCount;
138
+ if (true !== this.showGeometry)
139
+ props.showGeometry = this.showGeometry;
140
+ return props;
141
+ }
142
+ /** Create a new Contour. Any properties not specified by `props` will be initialized to their default values. */
143
+ static create(props) {
144
+ return props ? new this(props) : new Contour();
145
+ }
146
+ /** Create a copy of this Contour, identical except for any properties specified by `changedProps`.
147
+ * Any properties of `changedProps` explicitly set to `undefined` will be reset to their default values.
148
+ */
149
+ clone(changedProps) {
150
+ if (!changedProps)
151
+ return this;
152
+ return Contour.create({ ...this, ...changedProps });
153
+ }
154
+ }
155
+ exports.Contour = Contour;
156
+ Contour.defaults = new Contour({});
157
+ /** Defines a group of objects to which to apply [[Contour]] lines in a particular style.
158
+ * The [[ContourDisplay]] settings can contain multiple groups.
159
+ * Each group is described by a set of [SubCategory]($backend)'s; all geometry belonging to any of those subcategories belongs to the group.
160
+ * An empty set of subcategories indicates that this is a default group, implicitly containing all subcategories that are not explicitly included in another group.
161
+ * Each group has an optional, non-user-facing name that applications can use to assign semantics to particular groups.
162
+ * @public
163
+ */
164
+ class ContourGroup {
165
+ /** The set of subcategories belonging to this group, or an empty set if this is a default group. If more than one empty set exists in the [[ContourDisplay]] object's `groups` array, the last entry in that array is used for rendering the default styling.
166
+ * @see [[isDefaultGroup]] to test if this is a default group.
167
+ */
168
+ get subCategories() {
169
+ return core_bentley_1.CompressedId64Set.iterable(this._subCategories);
170
+ }
171
+ /** Returns true if [[subCategories]] is an empty set, indicating that any subcategory not included in any other [[ContourGroup]] is implicitly
172
+ * included in this group.
173
+ */
174
+ get isDefaultGroup() {
175
+ return core_bentley_1.OrderedId64Iterable.isEmptySet(this._subCategories);
176
+ }
177
+ /** Returns true if `this` and `other` contain the exact same set of subcategories. */
178
+ subCategoriesEqual(other) {
179
+ return this._subCategories === other._subCategories;
180
+ }
181
+ /** Returns true if `this` and `other` are logically equivalent, having the same styling, name, and set of subcategories. */
182
+ equals(other) {
183
+ if (this === undefined && other === undefined)
184
+ return true;
185
+ if (this === undefined || other === undefined)
186
+ return false;
187
+ if (!this.contourDef.equals(other.contourDef))
188
+ return false;
189
+ if (this._subCategories !== other._subCategories)
190
+ return false;
191
+ if (this.name !== other.name)
192
+ return false;
193
+ return true;
194
+ }
195
+ constructor(props) {
196
+ this.contourDef = props?.contourDef ?? Contour.fromJSON();
197
+ this._subCategories = props?.subCategories ? core_bentley_1.CompressedId64Set.sortAndCompress(props.subCategories) : "";
198
+ this.name = props?.name ?? "";
199
+ }
200
+ static fromJSON(props) {
201
+ if (!props)
202
+ return new ContourGroup();
203
+ return new this({
204
+ contourDef: props?.contourDef ? Contour.fromJSON(props.contourDef) : undefined,
205
+ name: props?.name,
206
+ subCategories: props?.subCategories ? core_bentley_1.CompressedId64Set.iterable(props.subCategories) : undefined,
207
+ });
208
+ }
209
+ toJSON() {
210
+ const props = {};
211
+ if (!this.contourDef.equals(Contour.defaults))
212
+ props.contourDef = this.contourDef.toJSON();
213
+ if (this.name)
214
+ props.name = this.name;
215
+ props.subCategories = this._subCategories;
216
+ return props;
217
+ }
218
+ /** Create a new ContourGroup. Any properties not specified by `props` will be initialized to their default values. */
219
+ static create(props) {
220
+ return props ? new this(props) : new ContourGroup();
221
+ }
222
+ /** Create a copy of this ContourGroup, identical except for any properties specified by `changedProps`.
223
+ * Any properties of `changedProps` explicitly set to `undefined` will be reset to their default values.
224
+ */
225
+ clone(changedProps) {
226
+ if (!changedProps)
227
+ return this;
228
+ return ContourGroup.create({ ...this, ...changedProps });
229
+ }
230
+ }
231
+ exports.ContourGroup = ContourGroup;
232
+ /** Settings that specify how to apply [contour lines]($docs/learning/display/ContourDisplay.md) to groups of geometry
233
+ * within a 3d scene.
234
+ * @see [[DisplayStyle3dSettings.contours]] to associate contour settings with a display style.
235
+ * @public
236
+ */
237
+ class ContourDisplay {
238
+ /** Returns true if `this` and `other` are logically equivalent, having the same groups and styling. */
239
+ equals(other) {
240
+ if (this.displayContours !== other.displayContours)
241
+ return false;
242
+ if (this.groups.length !== other.groups.length)
243
+ return false;
244
+ for (let index = 0, len = this.groups.length; index < len && index < ContourDisplay.maxContourGroups; ++index) {
245
+ const match = this.groups[index].equals(other.groups[index]);
246
+ if (!match)
247
+ return false;
248
+ }
249
+ return true;
250
+ }
251
+ constructor(props) {
252
+ this.displayContours = props?.displayContours ?? false;
253
+ this.groups = props?.groups ?? [];
254
+ }
255
+ static fromJSON(props) {
256
+ if (!props)
257
+ return new ContourDisplay();
258
+ const groups = [];
259
+ if (undefined !== props && undefined !== props.groups) {
260
+ for (let n = 0; n < props.groups.length; n++) {
261
+ groups[n] = ContourGroup.fromJSON(props.groups[n]);
262
+ }
263
+ }
264
+ return new this({
265
+ displayContours: props?.displayContours,
266
+ groups: props.groups ? groups : undefined,
267
+ });
268
+ }
269
+ toJSON() {
270
+ const props = {};
271
+ props.groups = [];
272
+ for (let n = 0; n < this.groups.length; n++) {
273
+ props.groups[n] = this.groups[n].toJSON();
274
+ }
275
+ props.displayContours = this.displayContours;
276
+ return props;
277
+ }
278
+ /** Create a new ContourDisplay. Any properties not specified by `props` will be initialized to their default values. */
279
+ static create(props) {
280
+ return props ? new this(props) : new ContourDisplay();
281
+ }
282
+ /** Create a copy of these settings, changing the `displayContours` flag as specified. */
283
+ withDisplayContours(displayContours) {
284
+ return displayContours === this.displayContours ? this : ContourDisplay.create({ ...this, displayContours });
285
+ }
286
+ /** Create a copy of this ContourDisplay, identical except for any properties specified by `changedProps`.
287
+ * Any properties of `changedProps` explicitly set to `undefined` will be reset to their default values.
288
+ */
289
+ clone(changedProps) {
290
+ if (!changedProps)
291
+ return this;
292
+ return ContourDisplay.create({ ...this, ...changedProps });
293
+ }
294
+ }
295
+ exports.ContourDisplay = ContourDisplay;
296
+ /** The maximum number of contour groups that the system will allow. Any contour groups added to the [[groups]] array beyond this number will be ignored
297
+ * for display purposes.
298
+ */
299
+ ContourDisplay.maxContourGroups = 5;
300
+ //# sourceMappingURL=ContourDisplay.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ContourDisplay.js","sourceRoot":"","sources":["../../src/ContourDisplay.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 { compareBooleans, compareNumbers, CompressedId64Set, NonFunctionPropertiesOf, OrderedId64Iterable } from \"@itwin/core-bentley\";\r\nimport { LinePixels } from \"./LinePixels\";\r\nimport { RgbColor, RgbColorProps } from \"./RgbColor\";\r\n\r\n/** JSON representation of a [[ContourStyle]].\r\n * @public\r\n */\r\nexport interface ContourStyleProps {\r\n /** See [[ContourStyle.color]]. */\r\n color?: RgbColorProps;\r\n /** See [[ContourStyle.pixelWidth]]. */\r\n pixelWidth?: number;\r\n /** See [[ContourStyle.pattern]]. */\r\n pattern?: LinePixels;\r\n}\r\n\r\n/** A type containing all of the properties of [[ContourStyle]] with none of the methods and with the `readonly` modifiers removed.\r\n * Used by [[ContourStyle.create]] and [[ContourStyle.clone]].\r\n * @public\r\n */\r\nexport type ContourStyleProperties = NonFunctionPropertiesOf<ContourStyle>;\r\n\r\n/** The style settings used by either a minor or major contour.\r\n * @see [[Contour.majorStyle]]\r\n * @see [[Contour.minorStyle]]\r\n * @public\r\n */\r\nexport class ContourStyle {\r\n /** The color in which to draw the contour lines. Default: black. */\r\n public readonly color: RgbColor;\r\n /** The width in screen pixels of the contour lines.\r\n * Useful values range between 1 and 8.5, in increments of 0.5. Other values will be rounded to meet these criteria.\r\n * Default: 1.0.\r\n */\r\n public readonly pixelWidth: number;\r\n /** The pattern for a major or minor contour line. Defaults to [[LinePixels.Solid]]. */\r\n public readonly pattern: LinePixels;\r\n\r\n /** Returns true if `this` and `other` are logically equivalent. */\r\n public equals(other: ContourStyle): boolean {\r\n if (!this.color.equals(other.color) || this.pixelWidth !== other.pixelWidth || this.pattern !== other.pattern) {\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n /** Performs ordered comparison of two contour styles.\r\n * @param lhs First contour style to compare\r\n * @param rhs Second contour style 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 * @public\r\n */\r\n public static compare(lhs: ContourStyle, rhs: ContourStyle): number {\r\n let diff = 0;\r\n if ((diff = lhs.color.compareTo(rhs.color)) !== 0)\r\n return diff;\r\n if ((diff = compareNumbers(lhs.pixelWidth, rhs.pixelWidth)) !== 0)\r\n return diff;\r\n if ((diff = compareNumbers(lhs.pattern, rhs.pattern)) !== 0)\r\n return diff;\r\n\r\n return diff;\r\n }\r\n\r\n private constructor(props?: Partial<ContourStyleProperties>) {\r\n this.color = props?.color ?? RgbColor.fromJSON({r: 0, g: 0, b: 0});\r\n this.pixelWidth = props?.pixelWidth ?? 1;\r\n this.pattern = props?.pattern ?? LinePixels.Solid;\r\n }\r\n\r\n public static fromJSON(props?: ContourStyleProps) {\r\n if (!props)\r\n return new ContourStyle();\r\n\r\n return new this({\r\n color: props?.color ? RgbColor.fromJSON(props.color) : undefined,\r\n pixelWidth: props?.pixelWidth,\r\n pattern: props?.pattern,\r\n });\r\n }\r\n\r\n public toJSON(): ContourStyleProps {\r\n const props: ContourStyleProps = {};\r\n\r\n if (!this.color.equals(RgbColor.fromJSON({r: 0, g: 0, b: 0})))\r\n props.color = this.color.toJSON();\r\n\r\n if (1 !== this.pixelWidth)\r\n props.pixelWidth = this.pixelWidth;\r\n\r\n if (0 !== this.pattern)\r\n props.pattern = this.pattern;\r\n\r\n return props;\r\n }\r\n\r\n /** Create a new ContourStyle. Any properties not specified by `props` will be initialized to their default values. */\r\n public static create(props?: Partial<ContourStyleProperties>): ContourStyle {\r\n return props ? new this(props) : new ContourStyle();\r\n }\r\n\r\n /** Create a copy of this ContourStyle, identical except for any properties specified by `changedProps`.\r\n * Any properties of `changedProps` explicitly set to `undefined` will be reset to their default values.\r\n */\r\n public clone(changedProps?: Partial<ContourStyleProperties>): ContourStyle {\r\n if (!changedProps)\r\n return this;\r\n\r\n return ContourStyle.create({ ...this, ...changedProps });\r\n }\r\n}\r\n\r\n/** JSON representation of a [[Contour]].\r\n * @public\r\n */\r\nexport interface ContourProps {\r\n /** See [[Contour.majorStyle]]. */\r\n majorStyle?: ContourStyleProps;\r\n /** See [[Contour.minor]]. */\r\n minorStyle?: ContourStyleProps;\r\n /** See [[Contour.minorInterval]]. */\r\n minorInterval?: number;\r\n /** See [[Contour.majorIntervalCount]]. */\r\n majorIntervalCount?: number;\r\n /** See [[Contour.showGeometry]] */\r\n showGeometry?: boolean;\r\n}\r\n\r\n/** A type containing all of the properties of [[Contour]] with none of the methods and with the `readonly` modifiers removed.\r\n * Used by [[Contour.create]] and [[Contour.clone]].\r\n * @public\r\n */\r\nexport type ContourProperties = NonFunctionPropertiesOf<Contour>;\r\n\r\n/** Describes how to generate and style contour lines for geometry within a single [[ContourGroup]].\r\n * Contours provide a way to visualize elevation within a 3d scene by drawing lines at fixed intervals along the z-axis.\r\n * There are actually 2 kinds of contour lines: major and minor. Each kind can be styled independently.\r\n * A contour line is generated every [[minorInterval]] meters. Every `nth` line will be a *major* contour, where `n` = [[majorIntervalCount]]; the intervening lines will\r\n * all be *minor* contours.\r\n * For example, with a [[majorIntervalCount]] of `1`, every contour will be major; of `2`, every other contour will be major; and of `3`, there will be two minor contours in between\r\n * each major contour.\r\n *\r\n * @public\r\n */\r\nexport class Contour {\r\n /** Settings that describe how a major contour is styled. Defaults to an instantation of [[ContourStyle]] using `pixelWidth` of 2 and default values for the other properties. */\r\n public readonly majorStyle: ContourStyle;\r\n /** Settings that describe how a minor contour is styled. Defaults to an instantation of [[ContourStyle]] using default values for the properties. */\r\n public readonly minorStyle: ContourStyle;\r\n /** The interval for the minor contour occurrence in meters; these can be specified as fractional. Defaults to 1. If a value <= 0 is specified, this will be treated as 1 meter. */\r\n public readonly minorInterval: number;\r\n /** The count of minor contour intervals that define a major interval (integer > 0). A value of 1 means no minor contours will be shown, only major contours. Defaults to 5. If a value < 1 is specified, this will be treated as 1. If a non-integer value is specified, it will be treated as if it were rounded to the nearest integer. */\r\n public readonly majorIntervalCount: number;\r\n /** If true, show underlying geometry along with the associated contours. If false, only show the contours, not the underlying geometry. Defaults to true. */\r\n public readonly showGeometry: boolean;\r\n\r\n public static readonly defaults = new Contour({});\r\n\r\n public equals(other: Contour): boolean {\r\n if (!this.majorStyle.equals(other.majorStyle) || !this.minorStyle.equals(other.minorStyle) || this.minorInterval !== other.minorInterval || this.majorIntervalCount !== other.majorIntervalCount || this.showGeometry !== other.showGeometry) {\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n /** Performs ordered comparison of two contours.\r\n * @param lhs First contour to compare\r\n * @param rhs Second contour 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 compare(lhs: Contour, rhs: Contour): number {\r\n return ContourStyle.compare(lhs.majorStyle, rhs.majorStyle)\r\n || ContourStyle.compare(lhs.minorStyle, rhs.minorStyle)\r\n || compareNumbers(lhs.minorInterval, rhs.minorInterval)\r\n || compareNumbers(lhs.majorIntervalCount, rhs.majorIntervalCount)\r\n || compareBooleans(lhs.showGeometry, rhs.showGeometry);\r\n }\r\n\r\n private constructor(props?: Partial<ContourProperties>) {\r\n this.majorStyle = props?.majorStyle ?? ContourStyle.fromJSON({ pixelWidth: 2 });\r\n this.minorStyle = props?.minorStyle ?? ContourStyle.fromJSON();\r\n this.minorInterval = props?.minorInterval ?? 1;\r\n this.majorIntervalCount = props?.majorIntervalCount ?? 5;\r\n this.showGeometry = props?.showGeometry ?? true;\r\n }\r\n\r\n public static fromJSON(props?: ContourProps) {\r\n if (!props)\r\n return new Contour();\r\n\r\n return new this({\r\n majorStyle: props?.majorStyle ? ContourStyle.fromJSON(props.majorStyle) : undefined,\r\n minorStyle: props?.minorStyle ? ContourStyle.fromJSON(props.minorStyle) : undefined,\r\n minorInterval: props?.minorInterval,\r\n majorIntervalCount: props?.majorIntervalCount,\r\n showGeometry: props?.showGeometry,\r\n });\r\n }\r\n\r\n public toJSON(): ContourProps {\r\n const props: ContourProps = {};\r\n\r\n if (!this.majorStyle.equals(ContourStyle.fromJSON({ pixelWidth: 2 })))\r\n props.majorStyle = this.majorStyle.toJSON();\r\n\r\n if (!this.minorStyle.equals(ContourStyle.fromJSON()))\r\n props.minorStyle = this.minorStyle.toJSON();\r\n\r\n if (1 !== this.minorInterval)\r\n props.minorInterval = this.minorInterval;\r\n\r\n if (5 !== this.majorIntervalCount)\r\n props.majorIntervalCount = this.majorIntervalCount;\r\n\r\n if (true !== this.showGeometry)\r\n props.showGeometry = this.showGeometry;\r\n\r\n return props;\r\n }\r\n\r\n /** Create a new Contour. Any properties not specified by `props` will be initialized to their default values. */\r\n public static create(props?: Partial<ContourProperties>): Contour {\r\n return props ? new this(props) : new Contour();\r\n }\r\n\r\n /** Create a copy of this Contour, identical except for any properties specified by `changedProps`.\r\n * Any properties of `changedProps` explicitly set to `undefined` will be reset to their default values.\r\n */\r\n public clone(changedProps?: Partial<ContourProperties>): Contour {\r\n if (!changedProps)\r\n return this;\r\n\r\n return Contour.create({ ...this, ...changedProps });\r\n }\r\n}\r\n\r\n/** JSON representation of a [[ContourGroup]].\r\n * @public\r\n */\r\nexport interface ContourGroupProps {\r\n /** See [[ContourGroup.contourDef]]. */\r\n contourDef?: ContourProps;\r\n /** See [[ContourGroup.subCategories]]. */\r\n subCategories?: CompressedId64Set;\r\n /** See [[ContourGroup.name]]. */\r\n name?: string;\r\n}\r\n\r\n/** A type containing all of the properties of [[ContourGroup]] with none of the methods and with the `readonly` modifiers removed.\r\n * Used by [[ContourGroup.create]] and [[ContourGroup.clone]].\r\n * @public\r\n */\r\nexport type ContourGroupProperties = NonFunctionPropertiesOf<ContourGroup>;\r\n\r\n/** Defines a group of objects to which to apply [[Contour]] lines in a particular style.\r\n * The [[ContourDisplay]] settings can contain multiple groups.\r\n * Each group is described by a set of [SubCategory]($backend)'s; all geometry belonging to any of those subcategories belongs to the group.\r\n * An empty set of subcategories indicates that this is a default group, implicitly containing all subcategories that are not explicitly included in another group.\r\n * Each group has an optional, non-user-facing name that applications can use to assign semantics to particular groups.\r\n * @public\r\n */\r\nexport class ContourGroup {\r\n private _subCategories: CompressedId64Set;\r\n\r\n /** Describes the appearance of all of the contours applied to geometry belonging to this group. */\r\n public readonly contourDef: Contour;\r\n /** An optional, non-user-facing name that applications can use to assign semantics to particular groups.\r\n * Default: an empty string.\r\n */\r\n public readonly name: string;\r\n\r\n /** The set of subcategories belonging to this group, or an empty set if this is a default group. If more than one empty set exists in the [[ContourDisplay]] object's `groups` array, the last entry in that array is used for rendering the default styling.\r\n * @see [[isDefaultGroup]] to test if this is a default group.\r\n */\r\n public get subCategories(): OrderedId64Iterable {\r\n return CompressedId64Set.iterable(this._subCategories);\r\n }\r\n\r\n /** Returns true if [[subCategories]] is an empty set, indicating that any subcategory not included in any other [[ContourGroup]] is implicitly\r\n * included in this group.\r\n */\r\n public get isDefaultGroup(): boolean {\r\n return OrderedId64Iterable.isEmptySet(this._subCategories);\r\n }\r\n\r\n /** Returns true if `this` and `other` contain the exact same set of subcategories. */\r\n public subCategoriesEqual(other: ContourGroup): boolean {\r\n return this._subCategories === other._subCategories;\r\n }\r\n\r\n /** Returns true if `this` and `other` are logically equivalent, having the same styling, name, and set of subcategories. */\r\n public equals(other: ContourGroup | undefined): boolean {\r\n if (this === undefined && other === undefined)\r\n return true;\r\n if (this === undefined || other === undefined)\r\n return false;\r\n if (!this.contourDef.equals(other.contourDef))\r\n return false;\r\n if (this._subCategories !== other._subCategories)\r\n return false;\r\n if (this.name !== other.name)\r\n return false;\r\n return true;\r\n }\r\n\r\n private constructor(props?: Partial<ContourGroupProperties>) {\r\n this.contourDef = props?.contourDef ?? Contour.fromJSON();\r\n this._subCategories = props?.subCategories ? CompressedId64Set.sortAndCompress(props.subCategories) : \"\";\r\n this.name = props?.name ?? \"\";\r\n }\r\n\r\n public static fromJSON(props?: ContourGroupProps) {\r\n if (!props)\r\n return new ContourGroup();\r\n\r\n return new this({\r\n contourDef: props?.contourDef ? Contour.fromJSON(props.contourDef) : undefined,\r\n name: props?.name,\r\n subCategories: props?.subCategories ? CompressedId64Set.iterable(props.subCategories) : undefined,\r\n });\r\n }\r\n\r\n public toJSON(): ContourGroupProps {\r\n const props: ContourGroupProps = {};\r\n\r\n if (!this.contourDef.equals(Contour.defaults))\r\n props.contourDef = this.contourDef.toJSON();\r\n\r\n if (this.name)\r\n props.name = this.name;\r\n\r\n props.subCategories = this._subCategories;\r\n return props;\r\n }\r\n\r\n /** Create a new ContourGroup. Any properties not specified by `props` will be initialized to their default values. */\r\n public static create(props?: Partial<ContourGroupProperties>): ContourGroup {\r\n return props ? new this(props) : new ContourGroup();\r\n }\r\n\r\n /** Create a copy of this ContourGroup, identical except for any properties specified by `changedProps`.\r\n * Any properties of `changedProps` explicitly set to `undefined` will be reset to their default values.\r\n */\r\n public clone(changedProps?: Partial<ContourGroupProperties>): ContourGroup {\r\n if (!changedProps)\r\n return this;\r\n\r\n return ContourGroup.create({ ...this, ...changedProps });\r\n }\r\n}\r\n\r\n/** JSON representation of [[ContourDisplay]] settings.\r\n * @public\r\n */\r\nexport interface ContourDisplayProps {\r\n /** See [[ContourDisplay.groups]]. */\r\n groups?: ContourGroupProps[];\r\n /** See [[ContourDisplay.displayContours]]. */\r\n displayContours?: boolean;\r\n}\r\n\r\n/** A type containing all of the properties of [[ContourDisplay]] with none of the methods and with the `readonly` modifiers removed.\r\n * Used by [[ContourDisplay.create]] and [[ContourDisplay.clone]].\r\n * @public\r\n */\r\nexport type ContourDisplayProperties = NonFunctionPropertiesOf<ContourDisplay>;\r\n\r\n/** Settings that specify how to apply [contour lines]($docs/learning/display/ContourDisplay.md) to groups of geometry\r\n * within a 3d scene.\r\n * @see [[DisplayStyle3dSettings.contours]] to associate contour settings with a display style.\r\n * @public\r\n */\r\nexport class ContourDisplay {\r\n /** A list of the groups, each describing their own specific contour display settings. Defaults to an empty array.\r\n * @note The display system supports no more than [[ContourDisplay.maxContourGroups]]. Entries in this array exceeding that maximum will\r\n * have no effect on the display of contour lines.\r\n */\r\n public readonly groups: ContourGroup[];\r\n /** Whether to display the contour lines described by these settings. Default: false.\r\n * @see [[withDisplayContours]] to change this flag.\r\n */\r\n public readonly displayContours: boolean;\r\n /** The maximum number of contour groups that the system will allow. Any contour groups added to the [[groups]] array beyond this number will be ignored\r\n * for display purposes.\r\n */\r\n public static readonly maxContourGroups = 5;\r\n\r\n /** Returns true if `this` and `other` are logically equivalent, having the same groups and styling. */\r\n public equals(other: ContourDisplay): boolean {\r\n if (this.displayContours !== other.displayContours)\r\n return false;\r\n if (this.groups.length !== other.groups.length)\r\n return false;\r\n for (let index = 0, len = this.groups.length; index < len && index < ContourDisplay.maxContourGroups; ++index) {\r\n const match = this.groups[index].equals(other.groups[index]);\r\n if (!match)\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n private constructor(props?: Partial<ContourDisplayProperties>) {\r\n this.displayContours = props?.displayContours ?? false;\r\n this.groups = props?.groups ?? [];\r\n }\r\n\r\n public static fromJSON(props?: ContourDisplayProps) {\r\n if (!props)\r\n return new ContourDisplay();\r\n\r\n const groups: ContourGroup[] = [];\r\n if (undefined !== props && undefined !== props.groups) {\r\n for (let n = 0; n < props.groups.length; n++) {\r\n groups[n] = ContourGroup.fromJSON(props.groups[n]);\r\n }\r\n }\r\n\r\n return new this({\r\n displayContours: props?.displayContours,\r\n groups: props.groups ? groups : undefined,\r\n });\r\n }\r\n\r\n public toJSON(): ContourDisplayProps {\r\n const props: ContourDisplayProps = {};\r\n\r\n props.groups = [];\r\n for (let n = 0; n < this.groups.length; n++) {\r\n props.groups[n] = this.groups[n].toJSON();\r\n }\r\n\r\n props.displayContours = this.displayContours;\r\n return props;\r\n }\r\n\r\n /** Create a new ContourDisplay. Any properties not specified by `props` will be initialized to their default values. */\r\n public static create(props?: Partial<ContourDisplayProperties>): ContourDisplay {\r\n return props ? new this(props) : new ContourDisplay();\r\n }\r\n\r\n /** Create a copy of these settings, changing the `displayContours` flag as specified. */\r\n public withDisplayContours(displayContours: boolean): ContourDisplay {\r\n return displayContours === this.displayContours ? this : ContourDisplay.create({ ...this, displayContours });\r\n }\r\n\r\n /** Create a copy of this ContourDisplay, identical except for any properties specified by `changedProps`.\r\n * Any properties of `changedProps` explicitly set to `undefined` will be reset to their default values.\r\n */\r\n public clone(changedProps?: Partial<ContourDisplayProperties>): ContourDisplay {\r\n if (!changedProps)\r\n return this;\r\n\r\n return ContourDisplay.create({ ...this, ...changedProps });\r\n }\r\n}\r\n"]}
@@ -27,6 +27,7 @@ import { IModel } from "./IModel";
27
27
  import { ContextRealityModel, ContextRealityModelProps, ContextRealityModels } from "./ContextRealityModel";
28
28
  import { RealityModelDisplayProps, RealityModelDisplaySettings } from "./RealityModelDisplaySettings";
29
29
  import { WhiteOnWhiteReversalProps, WhiteOnWhiteReversalSettings } from "./WhiteOnWhiteReversalSettings";
30
+ import { ContourDisplay, ContourDisplayProps } from "./ContourDisplay";
30
31
  /** Describes the [[SubCategoryOverride]]s applied to a [[SubCategory]] by a [[DisplayStyle]].
31
32
  * @see [[DisplayStyleSettingsProps]]
32
33
  * @public
@@ -143,6 +144,8 @@ export interface DisplayStyle3dSettingsProps extends DisplayStyleSettingsProps {
143
144
  environment?: EnvironmentProps;
144
145
  /** See [[DisplayStyle3dSettings.thematic]]. */
145
146
  thematic?: ThematicDisplayProps;
147
+ /** See [[DisplayStyle3dSettings.contours]]. */
148
+ contours?: ContourDisplayProps;
146
149
  /** See [[DisplayStyle3dSettings.hiddenLineSettings]]. */
147
150
  hline?: HiddenLine.SettingsProps;
148
151
  /** See [[DisplayStyle3dSettings.ambientOcclusionSettings]]. */
@@ -303,6 +306,8 @@ export declare class DisplayStyleSettings {
303
306
  readonly onRealityModelDisplaySettingsChanged: BeEvent<(modelId: Id64String, newSettings: RealityModelDisplaySettings | undefined) => void>;
304
307
  /** Event raised just prior to assignment to the [[DisplayStyle3dSettings.thematic]] property. */
305
308
  readonly onThematicChanged: BeEvent<(newThematic: ThematicDisplay) => void>;
309
+ /** Event raised just prior to assignment to the [[DisplayStyle3dSettings.contours]] property. */
310
+ readonly onContoursChanged: BeEvent<(newContours: ContourDisplay) => void>;
306
311
  /** Event raised just prior to assignment to the [[DisplayStyle3dSettings.hiddenLineSettings]] property. */
307
312
  readonly onHiddenLineSettingsChanged: BeEvent<(newSettings: HiddenLine.Settings) => void>;
308
313
  /** Event raised just prior to assignment to the [[DisplayStyle3dSettings.ambientOcclusionSettings]] property. */
@@ -500,6 +505,7 @@ export declare class DisplayStyleSettings {
500
505
  */
501
506
  export declare class DisplayStyle3dSettings extends DisplayStyleSettings {
502
507
  private _thematic;
508
+ private _contours;
503
509
  private _hline;
504
510
  private _ao;
505
511
  private _solarShadows;
@@ -521,6 +527,9 @@ export declare class DisplayStyle3dSettings extends DisplayStyleSettings {
521
527
  /** The settings that control thematic display. */
522
528
  get thematic(): ThematicDisplay;
523
529
  set thematic(thematic: ThematicDisplay);
530
+ /** The settings that control contour display. */
531
+ get contours(): ContourDisplay;
532
+ set contours(contours: ContourDisplay);
524
533
  /** The settings that control how visible and hidden edges are displayed. */
525
534
  get hiddenLineSettings(): HiddenLine.Settings;
526
535
  set hiddenLineSettings(hline: HiddenLine.Settings);
@@ -1 +1 @@
1
- {"version":3,"file":"DisplayStyleSettings.d.ts","sourceRoot":"","sources":["../../src/DisplayStyleSettings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DisplayStyleSettings.d.ts","sourceRoot":"","sources":["../../src/DisplayStyleSettings.ts"],"names":[],"mappings":"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"}
@@ -32,6 +32,7 @@ const SolarCalculate_1 = require("./SolarCalculate");
32
32
  const ContextRealityModel_1 = require("./ContextRealityModel");
33
33
  const RealityModelDisplaySettings_1 = require("./RealityModelDisplaySettings");
34
34
  const WhiteOnWhiteReversalSettings_1 = require("./WhiteOnWhiteReversalSettings");
35
+ const ContourDisplay_1 = require("./ContourDisplay");
35
36
  /** Describes the style in which monochrome color is applied by a [[DisplayStyleSettings]].
36
37
  * @public
37
38
  * @extensions
@@ -255,6 +256,8 @@ class DisplayStyleSettings {
255
256
  this.onRealityModelDisplaySettingsChanged = new core_bentley_1.BeEvent();
256
257
  /** Event raised just prior to assignment to the [[DisplayStyle3dSettings.thematic]] property. */
257
258
  this.onThematicChanged = new core_bentley_1.BeEvent();
259
+ /** Event raised just prior to assignment to the [[DisplayStyle3dSettings.contours]] property. */
260
+ this.onContoursChanged = new core_bentley_1.BeEvent();
258
261
  /** Event raised just prior to assignment to the [[DisplayStyle3dSettings.hiddenLineSettings]] property. */
259
262
  this.onHiddenLineSettingsChanged = new core_bentley_1.BeEvent();
260
263
  /** Event raised just prior to assignment to the [[DisplayStyle3dSettings.ambientOcclusionSettings]] property. */
@@ -724,6 +727,7 @@ class DisplayStyle3dSettings extends DisplayStyleSettings {
724
727
  constructor(jsonProperties, options) {
725
728
  super(jsonProperties, options);
726
729
  this._thematic = ThematicDisplay_1.ThematicDisplay.fromJSON(this._json3d.thematic);
730
+ this._contours = ContourDisplay_1.ContourDisplay.fromJSON(this._json3d.contours);
727
731
  this._hline = HiddenLine_1.HiddenLine.Settings.fromJSON(this._json3d.hline);
728
732
  this._ao = AmbientOcclusion_1.AmbientOcclusion.Settings.fromJSON(this._json3d.ao);
729
733
  this._solarShadows = SolarShadows_1.SolarShadowSettings.fromJSON(this._json3d.solarShadows);
@@ -790,6 +794,7 @@ class DisplayStyle3dSettings extends DisplayStyleSettings {
790
794
  props.thematic.range = undefined;
791
795
  }
792
796
  }
797
+ props.contours = this.contours.toJSON();
793
798
  return props;
794
799
  }
795
800
  /** See [[DisplayStyleSettings.applyOverrides]]. */
@@ -811,6 +816,8 @@ class DisplayStyle3dSettings extends DisplayStyleSettings {
811
816
  }
812
817
  if (overrides.thematic)
813
818
  this.thematic = ThematicDisplay_1.ThematicDisplay.fromJSON(overrides.thematic);
819
+ if (overrides.contours)
820
+ this.contours = ContourDisplay_1.ContourDisplay.fromJSON(overrides.contours);
814
821
  this.onOverridesApplied.raiseEvent(overrides);
815
822
  }
816
823
  /** The settings that control thematic display. */
@@ -822,6 +829,15 @@ class DisplayStyle3dSettings extends DisplayStyleSettings {
822
829
  this._thematic = thematic;
823
830
  this._json3d.thematic = thematic.toJSON();
824
831
  }
832
+ /** The settings that control contour display. */
833
+ get contours() { return this._contours; }
834
+ set contours(contours) {
835
+ if (contours.equals(this.contours))
836
+ return;
837
+ this.onContoursChanged.raiseEvent(contours);
838
+ this._contours = contours;
839
+ this._json3d.contours = contours.toJSON();
840
+ }
825
841
  /** The settings that control how visible and hidden edges are displayed. */
826
842
  get hiddenLineSettings() { return this._hline; }
827
843
  set hiddenLineSettings(hline) {