@itwin/core-common 4.6.0-dev.9 → 4.7.0-dev.3

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 (480) hide show
  1. package/CHANGELOG.md +11 -1
  2. package/lib/cjs/AmbientOcclusion.js +1 -1
  3. package/lib/cjs/AmbientOcclusion.js.map +1 -1
  4. package/lib/cjs/AnalysisStyle.js +1 -1
  5. package/lib/cjs/AnalysisStyle.js.map +1 -1
  6. package/lib/cjs/Atmosphere.js +12 -12
  7. package/lib/cjs/Atmosphere.js.map +1 -1
  8. package/lib/cjs/BackgroundMapProvider.js +1 -1
  9. package/lib/cjs/BackgroundMapProvider.js.map +1 -1
  10. package/lib/cjs/BackgroundMapSettings.js +1 -1
  11. package/lib/cjs/BackgroundMapSettings.js.map +1 -1
  12. package/lib/cjs/Base64EncodedString.js +1 -1
  13. package/lib/cjs/Base64EncodedString.js.map +1 -1
  14. package/lib/cjs/BlobReader.js.map +1 -1
  15. package/lib/cjs/BriefcaseTypes.js +5 -5
  16. package/lib/cjs/BriefcaseTypes.js.map +1 -1
  17. package/lib/cjs/Camera.js.map +1 -1
  18. package/lib/cjs/ChangedElements.js +1 -1
  19. package/lib/cjs/ChangedElements.js.map +1 -1
  20. package/lib/cjs/ChangesetProps.js +1 -1
  21. package/lib/cjs/ChangesetProps.js.map +1 -1
  22. package/lib/cjs/ClipStyle.js +3 -3
  23. package/lib/cjs/ClipStyle.js.map +1 -1
  24. package/lib/cjs/Code.d.ts +1 -0
  25. package/lib/cjs/Code.d.ts.map +1 -1
  26. package/lib/cjs/Code.js +3 -2
  27. package/lib/cjs/Code.js.map +1 -1
  28. package/lib/cjs/ColorDef.js +1 -1
  29. package/lib/cjs/ColorDef.js.map +1 -1
  30. package/lib/cjs/CommonLoggerCategory.js +1 -1
  31. package/lib/cjs/CommonLoggerCategory.js.map +1 -1
  32. package/lib/cjs/ConcurrentQuery.d.ts +11 -11
  33. package/lib/cjs/ConcurrentQuery.d.ts.map +1 -1
  34. package/lib/cjs/ConcurrentQuery.js +6 -6
  35. package/lib/cjs/ConcurrentQuery.js.map +1 -1
  36. package/lib/cjs/ContextRealityModel.js +5 -5
  37. package/lib/cjs/ContextRealityModel.js.map +1 -1
  38. package/lib/cjs/DisplayStyleSettings.js +1 -1
  39. package/lib/cjs/DisplayStyleSettings.js.map +1 -1
  40. package/lib/cjs/ECSqlReader.js +1 -1
  41. package/lib/cjs/ECSqlReader.js.map +1 -1
  42. package/lib/cjs/ECSqlTypes.js +4 -4
  43. package/lib/cjs/ECSqlTypes.js.map +1 -1
  44. package/lib/cjs/ElementMesh.js.map +1 -1
  45. package/lib/cjs/ElementProps.d.ts +23 -0
  46. package/lib/cjs/ElementProps.d.ts.map +1 -1
  47. package/lib/cjs/ElementProps.js +4 -4
  48. package/lib/cjs/ElementProps.js.map +1 -1
  49. package/lib/cjs/EmphasizeElementsProps.js +1 -1
  50. package/lib/cjs/EmphasizeElementsProps.js.map +1 -1
  51. package/lib/cjs/EntityProps.d.ts +5 -2
  52. package/lib/cjs/EntityProps.d.ts.map +1 -1
  53. package/lib/cjs/EntityProps.js +2 -1
  54. package/lib/cjs/EntityProps.js.map +1 -1
  55. package/lib/cjs/EntityReference.js +2 -2
  56. package/lib/cjs/EntityReference.js.map +1 -1
  57. package/lib/cjs/Environment.js +1 -1
  58. package/lib/cjs/Environment.js.map +1 -1
  59. package/lib/cjs/FeatureIndex.js +1 -1
  60. package/lib/cjs/FeatureIndex.js.map +1 -1
  61. package/lib/cjs/FeatureSymbology.d.ts +1 -1
  62. package/lib/cjs/FeatureSymbology.js +3 -3
  63. package/lib/cjs/FeatureSymbology.js.map +1 -1
  64. package/lib/cjs/FeatureTable.js +3 -3
  65. package/lib/cjs/FeatureTable.js.map +1 -1
  66. package/lib/cjs/Fonts.js +1 -1
  67. package/lib/cjs/Fonts.js.map +1 -1
  68. package/lib/cjs/Frustum.d.ts.map +1 -1
  69. package/lib/cjs/Frustum.js +3 -1
  70. package/lib/cjs/Frustum.js.map +1 -1
  71. package/lib/cjs/GenericInstanceFilter.js +2 -2
  72. package/lib/cjs/GenericInstanceFilter.js.map +1 -1
  73. package/lib/cjs/GeoCoordinateServices.js +1 -1
  74. package/lib/cjs/GeoCoordinateServices.js.map +1 -1
  75. package/lib/cjs/GeometryParams.js +3 -3
  76. package/lib/cjs/GeometryParams.js.map +1 -1
  77. package/lib/cjs/GeometrySummary.js +1 -1
  78. package/lib/cjs/GeometrySummary.js.map +1 -1
  79. package/lib/cjs/Gradient.js +5 -5
  80. package/lib/cjs/Gradient.js.map +1 -1
  81. package/lib/cjs/GraphicParams.js +1 -1
  82. package/lib/cjs/GraphicParams.js.map +1 -1
  83. package/lib/cjs/GroundPlane.js +1 -1
  84. package/lib/cjs/GroundPlane.js.map +1 -1
  85. package/lib/cjs/HSVColor.js +1 -1
  86. package/lib/cjs/HSVColor.js.map +1 -1
  87. package/lib/cjs/HiddenLine.js +1 -1
  88. package/lib/cjs/HiddenLine.js.map +1 -1
  89. package/lib/cjs/Hilite.js +1 -1
  90. package/lib/cjs/Hilite.js.map +1 -1
  91. package/lib/cjs/IModel.js +1 -1
  92. package/lib/cjs/IModel.js.map +1 -1
  93. package/lib/cjs/IModelVersion.js.map +1 -1
  94. package/lib/cjs/Image.js +2 -2
  95. package/lib/cjs/Image.js.map +1 -1
  96. package/lib/cjs/IpcAppProps.d.ts +24 -2
  97. package/lib/cjs/IpcAppProps.d.ts.map +1 -1
  98. package/lib/cjs/IpcAppProps.js.map +1 -1
  99. package/lib/cjs/LightSettings.js +1 -1
  100. package/lib/cjs/LightSettings.js.map +1 -1
  101. package/lib/cjs/LinePixels.js +1 -1
  102. package/lib/cjs/LinePixels.js.map +1 -1
  103. package/lib/cjs/Localization.js.map +1 -1
  104. package/lib/cjs/MapImagerySettings.js +1 -1
  105. package/lib/cjs/MapImagerySettings.js.map +1 -1
  106. package/lib/cjs/MapLayerSettings.js.map +1 -1
  107. package/lib/cjs/MassProperties.js +1 -1
  108. package/lib/cjs/MassProperties.js.map +1 -1
  109. package/lib/cjs/MaterialProps.js +2 -2
  110. package/lib/cjs/MaterialProps.js.map +1 -1
  111. package/lib/cjs/ModelGeometryChanges.js +2 -2
  112. package/lib/cjs/ModelGeometryChanges.js.map +1 -1
  113. package/lib/cjs/NativeAppProps.js +2 -2
  114. package/lib/cjs/NativeAppProps.js.map +1 -1
  115. package/lib/cjs/OctEncodedNormal.js.map +1 -1
  116. package/lib/cjs/PlanarClipMask.js +3 -3
  117. package/lib/cjs/PlanarClipMask.js.map +1 -1
  118. package/lib/cjs/QPoint.d.ts +4 -3
  119. package/lib/cjs/QPoint.d.ts.map +1 -1
  120. package/lib/cjs/QPoint.js +5 -4
  121. package/lib/cjs/QPoint.js.map +1 -1
  122. package/lib/cjs/RealityDataAccessProps.d.ts +4 -4
  123. package/lib/cjs/RealityDataAccessProps.d.ts.map +1 -1
  124. package/lib/cjs/RealityDataAccessProps.js +1 -1
  125. package/lib/cjs/RealityDataAccessProps.js.map +1 -1
  126. package/lib/cjs/RealityModelDisplaySettings.js +2 -2
  127. package/lib/cjs/RealityModelDisplaySettings.js.map +1 -1
  128. package/lib/cjs/Render.d.ts +2 -2
  129. package/lib/cjs/Render.d.ts.map +1 -1
  130. package/lib/cjs/Render.js +1 -1
  131. package/lib/cjs/Render.js.map +1 -1
  132. package/lib/cjs/RenderMaterial.js +1 -1
  133. package/lib/cjs/RenderMaterial.js.map +1 -1
  134. package/lib/cjs/RenderSchedule.js +1 -1
  135. package/lib/cjs/RenderSchedule.js.map +1 -1
  136. package/lib/cjs/RenderTexture.js +1 -1
  137. package/lib/cjs/RenderTexture.js.map +1 -1
  138. package/lib/cjs/RgbColor.js.map +1 -1
  139. package/lib/cjs/RpcInterface.js.map +1 -1
  140. package/lib/cjs/SkyBox.js +3 -3
  141. package/lib/cjs/SkyBox.js.map +1 -1
  142. package/lib/cjs/SolarCalculate.js.map +1 -1
  143. package/lib/cjs/SolarShadows.js +1 -1
  144. package/lib/cjs/SolarShadows.js.map +1 -1
  145. package/lib/cjs/SpatialClassification.js +2 -2
  146. package/lib/cjs/SpatialClassification.js.map +1 -1
  147. package/lib/cjs/SubCategoryAppearance.js +1 -1
  148. package/lib/cjs/SubCategoryAppearance.js.map +1 -1
  149. package/lib/cjs/SubCategoryOverride.js +1 -1
  150. package/lib/cjs/SubCategoryOverride.js.map +1 -1
  151. package/lib/cjs/TerrainSettings.js +2 -2
  152. package/lib/cjs/TerrainSettings.js.map +1 -1
  153. package/lib/cjs/TextureMapping.js +1 -1
  154. package/lib/cjs/TextureMapping.js.map +1 -1
  155. package/lib/cjs/TextureProps.js +1 -1
  156. package/lib/cjs/TextureProps.js.map +1 -1
  157. package/lib/cjs/ThematicDisplay.js +5 -5
  158. package/lib/cjs/ThematicDisplay.js.map +1 -1
  159. package/lib/cjs/TileProps.js +1 -1
  160. package/lib/cjs/TileProps.js.map +1 -1
  161. package/lib/cjs/Tween.js.map +1 -1
  162. package/lib/cjs/TxnAction.js +1 -1
  163. package/lib/cjs/TxnAction.js.map +1 -1
  164. package/lib/cjs/ViewDetails.js +2 -2
  165. package/lib/cjs/ViewDetails.js.map +1 -1
  166. package/lib/cjs/ViewFlags.js +2 -2
  167. package/lib/cjs/ViewFlags.js.map +1 -1
  168. package/lib/cjs/ViewProps.js +1 -1
  169. package/lib/cjs/ViewProps.js.map +1 -1
  170. package/lib/cjs/WhiteOnWhiteReversalSettings.js +1 -1
  171. package/lib/cjs/WhiteOnWhiteReversalSettings.js.map +1 -1
  172. package/lib/cjs/annotation/TextAnnotation.d.ts +107 -0
  173. package/lib/cjs/annotation/TextAnnotation.d.ts.map +1 -0
  174. package/lib/cjs/annotation/TextAnnotation.js +118 -0
  175. package/lib/cjs/annotation/TextAnnotation.js.map +1 -0
  176. package/lib/cjs/annotation/TextBlock.d.ts +276 -0
  177. package/lib/cjs/annotation/TextBlock.d.ts.map +1 -0
  178. package/lib/cjs/annotation/TextBlock.js +324 -0
  179. package/lib/cjs/annotation/TextBlock.js.map +1 -0
  180. package/lib/cjs/annotation/TextBlockGeometryProps.d.ts +40 -0
  181. package/lib/cjs/annotation/TextBlockGeometryProps.d.ts.map +1 -0
  182. package/lib/cjs/annotation/TextBlockGeometryProps.js +10 -0
  183. package/lib/cjs/annotation/TextBlockGeometryProps.js.map +1 -0
  184. package/lib/cjs/annotation/TextStyle.d.ts +173 -0
  185. package/lib/cjs/annotation/TextStyle.d.ts.map +1 -0
  186. package/lib/cjs/annotation/TextStyle.js +106 -0
  187. package/lib/cjs/annotation/TextStyle.js.map +1 -0
  188. package/lib/cjs/core-common.d.ts +8 -0
  189. package/lib/cjs/core-common.d.ts.map +1 -1
  190. package/lib/cjs/core-common.js +8 -0
  191. package/lib/cjs/core-common.js.map +1 -1
  192. package/lib/cjs/geometry/AdditionalTransform.js.map +1 -1
  193. package/lib/cjs/geometry/AreaPattern.js +1 -1
  194. package/lib/cjs/geometry/AreaPattern.js.map +1 -1
  195. package/lib/cjs/geometry/Cartographic.js +1 -1
  196. package/lib/cjs/geometry/Cartographic.js.map +1 -1
  197. package/lib/cjs/geometry/CoordinateReferenceSystem.js.map +1 -1
  198. package/lib/cjs/geometry/ElementGeometry.d.ts +5 -0
  199. package/lib/cjs/geometry/ElementGeometry.d.ts.map +1 -1
  200. package/lib/cjs/geometry/ElementGeometry.js +28 -3
  201. package/lib/cjs/geometry/ElementGeometry.js.map +1 -1
  202. package/lib/cjs/geometry/ElementGeometryFB.js +1 -1
  203. package/lib/cjs/geometry/ElementGeometryFB.js.map +1 -1
  204. package/lib/cjs/geometry/FrustumPlanes.js +5 -5
  205. package/lib/cjs/geometry/FrustumPlanes.js.map +1 -1
  206. package/lib/cjs/geometry/GeodeticDatum.js.map +1 -1
  207. package/lib/cjs/geometry/GeodeticEllipsoid.js.map +1 -1
  208. package/lib/cjs/geometry/GeometryStream.d.ts +5 -0
  209. package/lib/cjs/geometry/GeometryStream.d.ts.map +1 -1
  210. package/lib/cjs/geometry/GeometryStream.js +35 -9
  211. package/lib/cjs/geometry/GeometryStream.js.map +1 -1
  212. package/lib/cjs/geometry/LineStyle.js +1 -1
  213. package/lib/cjs/geometry/LineStyle.js.map +1 -1
  214. package/lib/cjs/geometry/Projection.js.map +1 -1
  215. package/lib/cjs/geometry/TextString.d.ts.map +1 -1
  216. package/lib/cjs/geometry/TextString.js +16 -13
  217. package/lib/cjs/geometry/TextString.js.map +1 -1
  218. package/lib/cjs/ipc/IpcWebSocket.js +3 -3
  219. package/lib/cjs/ipc/IpcWebSocket.js.map +1 -1
  220. package/lib/cjs/ipc/IpcWebSocketTransport.js.map +1 -1
  221. package/lib/cjs/rpc/DevToolsRpcInterface.js +2 -2
  222. package/lib/cjs/rpc/DevToolsRpcInterface.js.map +1 -1
  223. package/lib/cjs/rpc/IModelReadRpcInterface.js +1 -1
  224. package/lib/cjs/rpc/IModelReadRpcInterface.js.map +1 -1
  225. package/lib/cjs/rpc/IModelTileRpcInterface.js +1 -1
  226. package/lib/cjs/rpc/IModelTileRpcInterface.js.map +1 -1
  227. package/lib/cjs/rpc/SnapshotIModelRpcInterface.js +1 -1
  228. package/lib/cjs/rpc/SnapshotIModelRpcInterface.js.map +1 -1
  229. package/lib/cjs/rpc/WipRpcInterface.js +1 -1
  230. package/lib/cjs/rpc/WipRpcInterface.js.map +1 -1
  231. package/lib/cjs/rpc/core/RpcConfiguration.js +6 -6
  232. package/lib/cjs/rpc/core/RpcConfiguration.js.map +1 -1
  233. package/lib/cjs/rpc/core/RpcConstants.js +7 -7
  234. package/lib/cjs/rpc/core/RpcConstants.js.map +1 -1
  235. package/lib/cjs/rpc/core/RpcControl.js +1 -1
  236. package/lib/cjs/rpc/core/RpcControl.js.map +1 -1
  237. package/lib/cjs/rpc/core/RpcInvocation.js +3 -3
  238. package/lib/cjs/rpc/core/RpcInvocation.js.map +1 -1
  239. package/lib/cjs/rpc/core/RpcMarshaling.js +2 -2
  240. package/lib/cjs/rpc/core/RpcMarshaling.js.map +1 -1
  241. package/lib/cjs/rpc/core/RpcOperation.js +2 -3
  242. package/lib/cjs/rpc/core/RpcOperation.js.map +1 -1
  243. package/lib/cjs/rpc/core/RpcPendingQueue.js.map +1 -1
  244. package/lib/cjs/rpc/core/RpcProtocol.js +3 -3
  245. package/lib/cjs/rpc/core/RpcProtocol.js.map +1 -1
  246. package/lib/cjs/rpc/core/RpcPush.js +2 -2
  247. package/lib/cjs/rpc/core/RpcPush.js.map +1 -1
  248. package/lib/cjs/rpc/core/RpcRegistry.js.map +1 -1
  249. package/lib/cjs/rpc/core/RpcRequest.js +1 -1
  250. package/lib/cjs/rpc/core/RpcRequest.js.map +1 -1
  251. package/lib/cjs/rpc/core/RpcRoutingToken.js +1 -1
  252. package/lib/cjs/rpc/core/RpcRoutingToken.js.map +1 -1
  253. package/lib/cjs/rpc/web/BentleyCloudRpcManager.js +1 -1
  254. package/lib/cjs/rpc/web/BentleyCloudRpcManager.js.map +1 -1
  255. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.js.map +1 -1
  256. package/lib/cjs/rpc/web/RpcMultipart.js +1 -1
  257. package/lib/cjs/rpc/web/RpcMultipart.js.map +1 -1
  258. package/lib/cjs/rpc/web/WebAppRpcLogging.js +8 -8
  259. package/lib/cjs/rpc/web/WebAppRpcLogging.js.map +1 -1
  260. package/lib/cjs/rpc/web/WebAppRpcProtocol.js.map +1 -1
  261. package/lib/cjs/rpc/web/WebAppRpcRequest.js +3 -3
  262. package/lib/cjs/rpc/web/WebAppRpcRequest.js.map +1 -1
  263. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.js.map +1 -1
  264. package/lib/cjs/tile/B3dmTileIO.js.map +1 -1
  265. package/lib/cjs/tile/GltfTileIO.js +2 -2
  266. package/lib/cjs/tile/GltfTileIO.js.map +1 -1
  267. package/lib/cjs/tile/I3dmTileIO.js.map +1 -1
  268. package/lib/cjs/tile/IModelTileIO.js +3 -3
  269. package/lib/cjs/tile/IModelTileIO.js.map +1 -1
  270. package/lib/cjs/tile/TileIO.d.ts +6 -6
  271. package/lib/cjs/tile/TileIO.d.ts.map +1 -1
  272. package/lib/cjs/tile/TileIO.js +2 -2
  273. package/lib/cjs/tile/TileIO.js.map +1 -1
  274. package/lib/cjs/tile/TileMetadata.d.ts +3 -3
  275. package/lib/cjs/tile/TileMetadata.d.ts.map +1 -1
  276. package/lib/cjs/tile/TileMetadata.js +3 -3
  277. package/lib/cjs/tile/TileMetadata.js.map +1 -1
  278. package/lib/cjs/tile/Tileset3dSchema.d.ts.map +1 -1
  279. package/lib/cjs/tile/Tileset3dSchema.js.map +1 -1
  280. package/lib/esm/AnalysisStyle.js +1 -2
  281. package/lib/esm/AnalysisStyle.js.map +1 -1
  282. package/lib/esm/Atmosphere.js +11 -11
  283. package/lib/esm/Atmosphere.js.map +1 -1
  284. package/lib/esm/BackgroundMapProvider.js.map +1 -1
  285. package/lib/esm/BackgroundMapSettings.js.map +1 -1
  286. package/lib/esm/BlobReader.js.map +1 -1
  287. package/lib/esm/Camera.js.map +1 -1
  288. package/lib/esm/ClipStyle.js +3 -6
  289. package/lib/esm/ClipStyle.js.map +1 -1
  290. package/lib/esm/Code.d.ts +1 -0
  291. package/lib/esm/Code.d.ts.map +1 -1
  292. package/lib/esm/Code.js +1 -0
  293. package/lib/esm/Code.js.map +1 -1
  294. package/lib/esm/ColorDef.js +1 -2
  295. package/lib/esm/ColorDef.js.map +1 -1
  296. package/lib/esm/ConcurrentQuery.d.ts +11 -11
  297. package/lib/esm/ConcurrentQuery.d.ts.map +1 -1
  298. package/lib/esm/ConcurrentQuery.js.map +1 -1
  299. package/lib/esm/ContextRealityModel.js.map +1 -1
  300. package/lib/esm/DisplayStyleSettings.js.map +1 -1
  301. package/lib/esm/ECSqlReader.js +1 -2
  302. package/lib/esm/ECSqlReader.js.map +1 -1
  303. package/lib/esm/ECSqlTypes.js.map +1 -1
  304. package/lib/esm/ElementMesh.js.map +1 -1
  305. package/lib/esm/ElementProps.d.ts +23 -0
  306. package/lib/esm/ElementProps.d.ts.map +1 -1
  307. package/lib/esm/ElementProps.js +1 -2
  308. package/lib/esm/ElementProps.js.map +1 -1
  309. package/lib/esm/EntityProps.d.ts +5 -2
  310. package/lib/esm/EntityProps.d.ts.map +1 -1
  311. package/lib/esm/EntityProps.js +1 -0
  312. package/lib/esm/EntityProps.js.map +1 -1
  313. package/lib/esm/Environment.js +1 -2
  314. package/lib/esm/Environment.js.map +1 -1
  315. package/lib/esm/FeatureSymbology.d.ts +1 -1
  316. package/lib/esm/FeatureSymbology.js +2 -4
  317. package/lib/esm/FeatureSymbology.js.map +1 -1
  318. package/lib/esm/FeatureTable.js.map +1 -1
  319. package/lib/esm/Frustum.d.ts.map +1 -1
  320. package/lib/esm/Frustum.js +2 -0
  321. package/lib/esm/Frustum.js.map +1 -1
  322. package/lib/esm/GeoCoordinateServices.js.map +1 -1
  323. package/lib/esm/GeometryParams.js.map +1 -1
  324. package/lib/esm/Gradient.js +4 -4
  325. package/lib/esm/Gradient.js.map +1 -1
  326. package/lib/esm/GroundPlane.js +1 -2
  327. package/lib/esm/GroundPlane.js.map +1 -1
  328. package/lib/esm/HSVColor.js.map +1 -1
  329. package/lib/esm/HiddenLine.js.map +1 -1
  330. package/lib/esm/IModel.js +1 -2
  331. package/lib/esm/IModel.js.map +1 -1
  332. package/lib/esm/IModelVersion.js.map +1 -1
  333. package/lib/esm/Image.js.map +1 -1
  334. package/lib/esm/IpcAppProps.d.ts +24 -2
  335. package/lib/esm/IpcAppProps.d.ts.map +1 -1
  336. package/lib/esm/IpcAppProps.js.map +1 -1
  337. package/lib/esm/LightSettings.js +1 -2
  338. package/lib/esm/LightSettings.js.map +1 -1
  339. package/lib/esm/Localization.js.map +1 -1
  340. package/lib/esm/MapImagerySettings.js.map +1 -1
  341. package/lib/esm/MapLayerSettings.js.map +1 -1
  342. package/lib/esm/ModelGeometryChanges.js.map +1 -1
  343. package/lib/esm/OctEncodedNormal.js.map +1 -1
  344. package/lib/esm/PlanarClipMask.js +1 -2
  345. package/lib/esm/PlanarClipMask.js.map +1 -1
  346. package/lib/esm/QPoint.d.ts +4 -3
  347. package/lib/esm/QPoint.d.ts.map +1 -1
  348. package/lib/esm/QPoint.js +2 -1
  349. package/lib/esm/QPoint.js.map +1 -1
  350. package/lib/esm/RealityDataAccessProps.d.ts +4 -4
  351. package/lib/esm/RealityDataAccessProps.d.ts.map +1 -1
  352. package/lib/esm/RealityModelDisplaySettings.js +2 -4
  353. package/lib/esm/RealityModelDisplaySettings.js.map +1 -1
  354. package/lib/esm/Render.d.ts +2 -2
  355. package/lib/esm/Render.d.ts.map +1 -1
  356. package/lib/esm/Render.js.map +1 -1
  357. package/lib/esm/RenderSchedule.js.map +1 -1
  358. package/lib/esm/RgbColor.js.map +1 -1
  359. package/lib/esm/RpcInterface.js.map +1 -1
  360. package/lib/esm/SkyBox.js +2 -4
  361. package/lib/esm/SkyBox.js.map +1 -1
  362. package/lib/esm/SolarCalculate.js.map +1 -1
  363. package/lib/esm/SolarShadows.js +1 -2
  364. package/lib/esm/SolarShadows.js.map +1 -1
  365. package/lib/esm/SpatialClassification.js.map +1 -1
  366. package/lib/esm/SubCategoryAppearance.js +1 -2
  367. package/lib/esm/SubCategoryAppearance.js.map +1 -1
  368. package/lib/esm/SubCategoryOverride.js +1 -2
  369. package/lib/esm/SubCategoryOverride.js.map +1 -1
  370. package/lib/esm/TerrainSettings.js.map +1 -1
  371. package/lib/esm/TextureMapping.js.map +1 -1
  372. package/lib/esm/ThematicDisplay.js +1 -2
  373. package/lib/esm/ThematicDisplay.js.map +1 -1
  374. package/lib/esm/Tween.js.map +1 -1
  375. package/lib/esm/ViewDetails.js +1 -2
  376. package/lib/esm/ViewDetails.js.map +1 -1
  377. package/lib/esm/ViewFlags.js +1 -2
  378. package/lib/esm/ViewFlags.js.map +1 -1
  379. package/lib/esm/WhiteOnWhiteReversalSettings.js +1 -2
  380. package/lib/esm/WhiteOnWhiteReversalSettings.js.map +1 -1
  381. package/lib/esm/annotation/TextAnnotation.d.ts +107 -0
  382. package/lib/esm/annotation/TextAnnotation.d.ts.map +1 -0
  383. package/lib/esm/annotation/TextAnnotation.js +114 -0
  384. package/lib/esm/annotation/TextAnnotation.js.map +1 -0
  385. package/lib/esm/annotation/TextBlock.d.ts +276 -0
  386. package/lib/esm/annotation/TextBlock.d.ts.map +1 -0
  387. package/lib/esm/annotation/TextBlock.js +315 -0
  388. package/lib/esm/annotation/TextBlock.js.map +1 -0
  389. package/lib/esm/annotation/TextBlockGeometryProps.d.ts +40 -0
  390. package/lib/esm/annotation/TextBlockGeometryProps.d.ts.map +1 -0
  391. package/lib/esm/annotation/TextBlockGeometryProps.js +9 -0
  392. package/lib/esm/annotation/TextBlockGeometryProps.js.map +1 -0
  393. package/lib/esm/annotation/TextStyle.d.ts +173 -0
  394. package/lib/esm/annotation/TextStyle.d.ts.map +1 -0
  395. package/lib/esm/annotation/TextStyle.js +101 -0
  396. package/lib/esm/annotation/TextStyle.js.map +1 -0
  397. package/lib/esm/core-common.d.ts +8 -0
  398. package/lib/esm/core-common.d.ts.map +1 -1
  399. package/lib/esm/core-common.js +8 -0
  400. package/lib/esm/core-common.js.map +1 -1
  401. package/lib/esm/geometry/AdditionalTransform.js.map +1 -1
  402. package/lib/esm/geometry/AreaPattern.js.map +1 -1
  403. package/lib/esm/geometry/Cartographic.js +1 -2
  404. package/lib/esm/geometry/Cartographic.js.map +1 -1
  405. package/lib/esm/geometry/CoordinateReferenceSystem.js.map +1 -1
  406. package/lib/esm/geometry/ElementGeometry.d.ts +5 -0
  407. package/lib/esm/geometry/ElementGeometry.d.ts.map +1 -1
  408. package/lib/esm/geometry/ElementGeometry.js +26 -1
  409. package/lib/esm/geometry/ElementGeometry.js.map +1 -1
  410. package/lib/esm/geometry/ElementGeometryFB.js.map +1 -1
  411. package/lib/esm/geometry/FrustumPlanes.js +4 -4
  412. package/lib/esm/geometry/FrustumPlanes.js.map +1 -1
  413. package/lib/esm/geometry/GeodeticDatum.js.map +1 -1
  414. package/lib/esm/geometry/GeodeticEllipsoid.js.map +1 -1
  415. package/lib/esm/geometry/GeometryStream.d.ts +5 -0
  416. package/lib/esm/geometry/GeometryStream.d.ts.map +1 -1
  417. package/lib/esm/geometry/GeometryStream.js +34 -8
  418. package/lib/esm/geometry/GeometryStream.js.map +1 -1
  419. package/lib/esm/geometry/LineStyle.js.map +1 -1
  420. package/lib/esm/geometry/Projection.js.map +1 -1
  421. package/lib/esm/geometry/TextString.d.ts.map +1 -1
  422. package/lib/esm/geometry/TextString.js +16 -13
  423. package/lib/esm/geometry/TextString.js.map +1 -1
  424. package/lib/esm/ipc/IpcWebSocket.js +1 -2
  425. package/lib/esm/ipc/IpcWebSocket.js.map +1 -1
  426. package/lib/esm/ipc/IpcWebSocketTransport.js.map +1 -1
  427. package/lib/esm/rpc/DevToolsRpcInterface.js +1 -2
  428. package/lib/esm/rpc/DevToolsRpcInterface.js.map +1 -1
  429. package/lib/esm/rpc/IModelReadRpcInterface.js +1 -2
  430. package/lib/esm/rpc/IModelReadRpcInterface.js.map +1 -1
  431. package/lib/esm/rpc/IModelTileRpcInterface.js +1 -2
  432. package/lib/esm/rpc/IModelTileRpcInterface.js.map +1 -1
  433. package/lib/esm/rpc/SnapshotIModelRpcInterface.js +1 -2
  434. package/lib/esm/rpc/SnapshotIModelRpcInterface.js.map +1 -1
  435. package/lib/esm/rpc/WipRpcInterface.js +1 -2
  436. package/lib/esm/rpc/WipRpcInterface.js.map +1 -1
  437. package/lib/esm/rpc/core/RpcConfiguration.js +5 -6
  438. package/lib/esm/rpc/core/RpcConfiguration.js.map +1 -1
  439. package/lib/esm/rpc/core/RpcControl.js +1 -2
  440. package/lib/esm/rpc/core/RpcControl.js.map +1 -1
  441. package/lib/esm/rpc/core/RpcInvocation.js +3 -4
  442. package/lib/esm/rpc/core/RpcInvocation.js.map +1 -1
  443. package/lib/esm/rpc/core/RpcMarshaling.js.map +1 -1
  444. package/lib/esm/rpc/core/RpcOperation.js +1 -2
  445. package/lib/esm/rpc/core/RpcOperation.js.map +1 -1
  446. package/lib/esm/rpc/core/RpcPendingQueue.js.map +1 -1
  447. package/lib/esm/rpc/core/RpcProtocol.js +1 -2
  448. package/lib/esm/rpc/core/RpcProtocol.js.map +1 -1
  449. package/lib/esm/rpc/core/RpcPush.js +2 -4
  450. package/lib/esm/rpc/core/RpcPush.js.map +1 -1
  451. package/lib/esm/rpc/core/RpcRegistry.js.map +1 -1
  452. package/lib/esm/rpc/core/RpcRequest.js +1 -2
  453. package/lib/esm/rpc/core/RpcRequest.js.map +1 -1
  454. package/lib/esm/rpc/core/RpcRoutingToken.js +1 -2
  455. package/lib/esm/rpc/core/RpcRoutingToken.js.map +1 -1
  456. package/lib/esm/rpc/web/BentleyCloudRpcManager.js +1 -2
  457. package/lib/esm/rpc/web/BentleyCloudRpcManager.js.map +1 -1
  458. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.js.map +1 -1
  459. package/lib/esm/rpc/web/RpcMultipart.js +1 -2
  460. package/lib/esm/rpc/web/RpcMultipart.js.map +1 -1
  461. package/lib/esm/rpc/web/WebAppRpcLogging.js +8 -8
  462. package/lib/esm/rpc/web/WebAppRpcLogging.js.map +1 -1
  463. package/lib/esm/rpc/web/WebAppRpcProtocol.js.map +1 -1
  464. package/lib/esm/rpc/web/WebAppRpcRequest.js +3 -4
  465. package/lib/esm/rpc/web/WebAppRpcRequest.js.map +1 -1
  466. package/lib/esm/rpc/web/multipart/RpcMultipartParser.js.map +1 -1
  467. package/lib/esm/tile/B3dmTileIO.js.map +1 -1
  468. package/lib/esm/tile/GltfTileIO.js.map +1 -1
  469. package/lib/esm/tile/I3dmTileIO.js.map +1 -1
  470. package/lib/esm/tile/IModelTileIO.js +1 -2
  471. package/lib/esm/tile/IModelTileIO.js.map +1 -1
  472. package/lib/esm/tile/TileIO.d.ts +6 -6
  473. package/lib/esm/tile/TileIO.d.ts.map +1 -1
  474. package/lib/esm/tile/TileIO.js.map +1 -1
  475. package/lib/esm/tile/TileMetadata.d.ts +3 -3
  476. package/lib/esm/tile/TileMetadata.d.ts.map +1 -1
  477. package/lib/esm/tile/TileMetadata.js.map +1 -1
  478. package/lib/esm/tile/Tileset3dSchema.d.ts.map +1 -1
  479. package/lib/esm/tile/Tileset3dSchema.js.map +1 -1
  480. package/package.json +9 -9
@@ -90,9 +90,9 @@ class PointCloudDisplaySettings {
90
90
  && this.edlMixWts1 === other.edlMixWts1 && this.edlMixWts2 === other.edlMixWts2 && this.edlMixWts4 === other.edlMixWts4;
91
91
  }
92
92
  }
93
+ exports.PointCloudDisplaySettings = PointCloudDisplaySettings;
93
94
  /** Settings with all properties initialized to their default values. */
94
95
  PointCloudDisplaySettings.defaults = new PointCloudDisplaySettings();
95
- exports.PointCloudDisplaySettings = PointCloudDisplaySettings;
96
96
  /** Settings that control how a reality model - whether a [[ContextRealityModel]] or a persistent reality [Model]($backend) - is displayed within a [Viewport]($frontend).
97
97
  * @see [[ContextRealityModel.displaySettings]] to apply these settings to a context reality model.
98
98
  * @see [[DisplayStyleSettings.setRealityModelDisplaySettings]] to apply these settings to a persistent reality model.
@@ -136,7 +136,7 @@ class RealityModelDisplaySettings {
136
136
  return new RealityModelDisplaySettings(colorRatio, pointCloud);
137
137
  }
138
138
  }
139
+ exports.RealityModelDisplaySettings = RealityModelDisplaySettings;
139
140
  /** Settings with all properties initialized to their default values. */
140
141
  RealityModelDisplaySettings.defaults = new RealityModelDisplaySettings(undefined, PointCloudDisplaySettings.defaults);
141
- exports.RealityModelDisplaySettings = RealityModelDisplaySettings;
142
142
  //# sourceMappingURL=RealityModelDisplaySettings.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RealityModelDisplaySettings.js","sourceRoot":"","sources":["../../src/RealityModelDisplaySettings.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 DisplayStyles\r\n */\r\n\r\n/** Specifies how the sizes of the individual points within a point cloud are computed.\r\n * - \"pixel\": Each point is an exact number of pixels in diameter, as specified by [[PointCloudDisplaySettings.pixelSize]].\r\n * - \"voxel\": Each point is the size of a \"voxel\" in meters, as specified by the [Tile]($frontend) to which the point belongs.\r\n * @see [[PointCloudDisplaySettings.sizeMode]].\r\n * @beta\r\n */\r\nexport type PointCloudSizeMode = \"voxel\" | \"pixel\";\r\n\r\n/** Specifies the shape drawn for each individual point within a point cloud.\r\n * - \"round\": Each point is drawn as a circle.\r\n * - \"square\": Each point is drawn as a square.\r\n * @see [[PointCloudDisplaySettings.shape]].\r\n * @beta\r\n */\r\nexport type PointCloudShape = \"square\" | \"round\";\r\n\r\n/** Specifies the Eye-Dome Lighting mode used for a point cloud.\r\n * - \"off\": EDL is not calculated\r\n * - \"on\": EDL is calculated using a single pass.\r\n * - \"full\" EDL is calculated with full algorithm including optional filtering\r\n * @see [[PointCloudDisplaySettings.edlMode]].\r\n * @beta\r\n */\r\nexport type PointCloudEDLMode = \"off\" | \"on\" | \"full\";\r\n\r\n/** The JSON representation of [[PointCloudDisplaySettings]].\r\n * @beta\r\n */\r\nexport interface PointCloudDisplayProps {\r\n /** See [[PointCloudDisplaySettings.sizeMode]]. */\r\n sizeMode?: PointCloudSizeMode;\r\n /** See [[PointCloudDisplaySettings.voxelScale]]. */\r\n voxelScale?: number;\r\n /** See [[PointCloudDisplaySettings.minPixelsPerVoxel]]. */\r\n minPixelsPerVoxel?: number;\r\n /** See [[PointCloudDisplaySettings.maxPixelsPerVoxel]]. */\r\n maxPixelsPerVoxel?: number;\r\n /** See [[PointCloudDisplaySettings.pixelSize]]. */\r\n pixelSize?: number;\r\n /** See [[PointCloudDisplaySettings.shape]]. */\r\n shape?: PointCloudShape;\r\n /** See [[PointCloudDisplaySettings.edlMode]]. */\r\n edlMode?: PointCloudEDLMode;\r\n /** See [[PointCloudDisplaySettings.edlStrength]]. */\r\n edlStrength?: number;\r\n /** See [[PointCloudDisplaySettings.edlRadius]]. */\r\n edlRadius?: number;\r\n /** See [[PointCloudDisplaySettings.edlFilter]]. */\r\n edlFilter?: number;\r\n /** See [[PointCloudDisplaySettings.edlMixWts1]]. */\r\n edlMixWts1?: number;\r\n /** See [[PointCloudDisplaySettings.edlMixWts2]]. */\r\n edlMixWts2?: number;\r\n /** See [[PointCloudDisplaySettings.edlMixWts4]]. */\r\n edlMixWts4?: number;\r\n}\r\n\r\n/** The JSON representation of [[RealityModelDisplaySettings]].\r\n * @beta\r\n */\r\nexport interface RealityModelDisplayProps {\r\n /** See [[RealityModelDisplaySettings.pointCloud]]. */\r\n pointCloud?: PointCloudDisplayProps;\r\n /** See [[RealityModelDisplaySettings.overrideColorRatio]]. */\r\n overrideColorRatio?: number;\r\n // ###TODO when we need it: mesh?: RealityMeshDisplayProps;\r\n}\r\n\r\n/** Settings that control how a point cloud reality model is displayed within a [Viewport]($frontend).\r\n * @note This is an immutable type - to modify its properties, use [[clone]].\r\n * Eye-Dome Lighting (EDL) is a non-photorealistic, image-based shading technique that was designed to improve depth\r\n * perception in scientific visualization. It is particularly useful for visualizing monochrome point cloud data, but\r\n * also can be useful for point clouds with color information.\r\n * @note EDL mode is ignored (off) if the view is not perspective (camera is off)\r\n * @see [[RealityModelDisplaySettings.pointCloud]].\r\n * @beta\r\n */\r\nexport class PointCloudDisplaySettings {\r\n /** The shape drawn for each point in the cloud.\r\n * Default: \"round\".\r\n */\r\n public readonly shape: PointCloudShape;\r\n /** The method by which the size of each individual point is computed.\r\n * Default: \"voxel\".\r\n * @see [[pixelSize]] to configure the size for \"pixel\" mode.\r\n * @see [[voxelScale]], [[minPixelsPerVoxel]], and [[maxPixelsPerVoxel]] to configure the size for \"voxel\" mode.\r\n */\r\n public readonly sizeMode: PointCloudSizeMode;\r\n /** The radius of each point in pixels, when [[sizeMode]] is \"pixel\".\r\n * The size is expected to be a positive integer. The maximum size will vary based on the graphics hardware in use, but typically is limited to 32 or 64 pixels.\r\n * Default: 1\r\n */\r\n public readonly pixelSize: number;\r\n /** A scale factor applied to the size of each point, when [[sizeMode]] is \"voxel\".\r\n * The scale is expected to be a positive floating point number.\r\n * Default: 1.0\r\n */\r\n public readonly voxelScale: number;\r\n /** If [[sizeMode]] is \"voxel\", the minimum radius of each point in pixels. It is expected to be a positive integer no greater than [[maxPixelsPerVoxel]].\r\n * Default: 2\r\n */\r\n public readonly minPixelsPerVoxel: number;\r\n /** If [[sizeMode]] is \"voxel\", the maximum radius of each point in pixels. It is expected to be a positive integer no less than [[minPixelsPerVoxel]].\r\n * Default: 20.\r\n */\r\n public readonly maxPixelsPerVoxel: number;\r\n /** The mode for the Eye-Dome Lighting (EDL) effect.\r\n * Default: \"off\"\r\n * @note EDL mode is ignored (off) if the view is not perspective (camera is off)\r\n */\r\n public readonly edlMode: PointCloudEDLMode;\r\n /** A strength value for the Eye Dome Lighting (EDL) effect.\r\n * The strength is expected to be a positive floating point number.\r\n * Default: 5.0\r\n */\r\n public readonly edlStrength: number;\r\n /** A radius value for the Eye Dome Lighting (EDL) effect.\r\n * The radius is expected to be a positive floating point number\r\n * It is used to deterimine how far away in pixels to sample for depth change\r\n * Default: 2.0\r\n */\r\n public readonly edlRadius: number;\r\n /** A flag for whether or not to apply filtering pass in the Eye Dome Lighting (EDL) effect.\r\n * It only applies if edlMode is \"full\"\r\n * Default: 1.0\r\n */\r\n public readonly edlFilter?: number;\r\n /** A weighting value to apply to the full image when combining it with the half and quarter sized ones\r\n * It only applies if edlMode is \"full\"\r\n * The strength is expected to be a floating point number between 0 and 1 inclusive.\r\n * Default: 1.0\r\n */\r\n public readonly edlMixWts1?: number;\r\n /** A weighting value to apply to the half sized image when combining it with the full and quarter sized ones\r\n * It only applies if edlMode is \"full\"\r\n * The strength is expected to be a floating point number between 0 and 1 inclusive.\r\n * Default: 0.5\r\n */\r\n public readonly edlMixWts2?: number;\r\n /** A weighting value to apply to the quarter sized image when combining it with the full and half sized ones\r\n * It only applies if edlMode is \"full\"\r\n * The strength is expected to be a floating point number between 0 and 1 inclusive.\r\n * Default: 0.25\r\n */\r\n public readonly edlMixWts4?: number;\r\n\r\n /** Settings with all properties initialized to their default values. */\r\n public static defaults = new PointCloudDisplaySettings();\r\n\r\n private constructor(props?: PointCloudDisplayProps) {\r\n this.shape = props?.shape ?? \"round\";\r\n this.sizeMode = props?.sizeMode ?? \"voxel\";\r\n\r\n // No sanity checks here - e.g., min < max, pixelSize and voxelScale > 0, etc.\r\n this.pixelSize = props?.pixelSize ?? 1;\r\n this.voxelScale = props?.voxelScale ?? 1;\r\n this.minPixelsPerVoxel = props?.minPixelsPerVoxel ?? 2;\r\n this.maxPixelsPerVoxel = props?.maxPixelsPerVoxel ?? 20;\r\n this.edlMode = props?.edlMode ?? \"off\";\r\n this.edlStrength = props?.edlStrength ?? 5;\r\n this.edlRadius = props?.edlRadius ?? 2;\r\n this.edlFilter = props?.edlFilter ?? 1;\r\n this.edlMixWts1 = props?.edlMixWts1 ?? 1.0;\r\n this.edlMixWts2 = props?.edlMixWts2 ?? 0.5;\r\n this.edlMixWts4 = props?.edlMixWts4 ?? 0.25;\r\n }\r\n\r\n /** Create display settings from their JSON representation. If `props` is `undefined`, the default settings are returned. */\r\n public static fromJSON(props?: PointCloudDisplayProps): PointCloudDisplaySettings {\r\n return props ? new PointCloudDisplaySettings(props) : this.defaults;\r\n }\r\n\r\n /** Convert these settings to their JSON representation. */\r\n public toJSON(): PointCloudDisplayProps | undefined {\r\n const defs = PointCloudDisplaySettings.defaults;\r\n if (this.equals(defs))\r\n return undefined;\r\n\r\n const props: PointCloudDisplayProps = { };\r\n if (this.shape !== defs.shape)\r\n props.shape = this.shape;\r\n\r\n if (this.sizeMode !== defs.sizeMode)\r\n props.sizeMode = this.sizeMode;\r\n\r\n if (this.pixelSize !== defs.pixelSize)\r\n props.pixelSize = this.pixelSize;\r\n\r\n if (this.voxelScale !== defs.voxelScale)\r\n props.voxelScale = this.voxelScale;\r\n\r\n if (this.minPixelsPerVoxel !== defs.minPixelsPerVoxel)\r\n props.minPixelsPerVoxel = this.minPixelsPerVoxel;\r\n\r\n if (this.maxPixelsPerVoxel !== defs.maxPixelsPerVoxel)\r\n props.maxPixelsPerVoxel = this.maxPixelsPerVoxel;\r\n\r\n if (this.edlMode !== defs.edlMode)\r\n props.edlMode = this.edlMode;\r\n\r\n if (this.edlStrength !== defs.edlStrength)\r\n props.edlStrength = this.edlStrength;\r\n\r\n if (this.edlRadius !== defs.edlRadius)\r\n props.edlRadius = this.edlRadius;\r\n\r\n if (this.edlFilter !== defs.edlFilter)\r\n props.edlFilter = this.edlFilter;\r\n\r\n if (this.edlMixWts1 !== defs.edlMixWts1)\r\n props.edlMixWts1 = this.edlMixWts1;\r\n\r\n if (this.edlMixWts2 !== defs.edlMixWts2)\r\n props.edlMixWts2 = this.edlMixWts2;\r\n\r\n if (this.edlMixWts4 !== defs.edlMixWts4)\r\n props.edlMixWts4 = this.edlMixWts4;\r\n\r\n return props;\r\n }\r\n\r\n /** Create a copy of these settings, identical except for any properties explicitly specified by `changedProps`. */\r\n public clone(changedProps: PointCloudDisplayProps): PointCloudDisplaySettings {\r\n return PointCloudDisplaySettings.fromJSON({\r\n ...this.toJSON(),\r\n ...changedProps,\r\n });\r\n }\r\n\r\n /** Returns true if these settings are identical to `other`. */\r\n public equals(other: PointCloudDisplaySettings): boolean {\r\n if (this === other)\r\n return true;\r\n\r\n return this.shape === other.shape && this.sizeMode === other.sizeMode && this.pixelSize === other.pixelSize\r\n && this.voxelScale === other.voxelScale && this.minPixelsPerVoxel === other.minPixelsPerVoxel && this.maxPixelsPerVoxel === other.maxPixelsPerVoxel\r\n && this.edlMode === other.edlMode && this.edlStrength === other.edlStrength && this.edlRadius === other.edlRadius\r\n && this.edlFilter === other.edlFilter\r\n && this.edlMixWts1 === other.edlMixWts1 && this.edlMixWts2 === other.edlMixWts2 && this.edlMixWts4 === other.edlMixWts4\r\n ;\r\n }\r\n}\r\n\r\n/** Settings that control how a reality model - whether a [[ContextRealityModel]] or a persistent reality [Model]($backend) - is displayed within a [Viewport]($frontend).\r\n * @see [[ContextRealityModel.displaySettings]] to apply these settings to a context reality model.\r\n * @see [[DisplayStyleSettings.setRealityModelDisplaySettings]] to apply these settings to a persistent reality model.\r\n * @note This is an immutable type - to modify its properties, use [[clone]].\r\n * @beta\r\n */\r\nexport class RealityModelDisplaySettings {\r\n /** If the reality model's color is overridden with another color, a ratio in [0..1] with which to mix the two colors together.\r\n * A ratio of 0 uses only the reality model's color, a ratio of 1 uses only the override color, and a ratio of 0.5 mixes the two colors equally.\r\n * The color may be overridden using [[FeatureOverrides]] such as those supplied by a [FeatureOverrideProvider]($frontend), or by applying a [[SpatialClassifier]].\r\n * Default: 0.5\r\n */\r\n public readonly overrideColorRatio: number;\r\n /** Settings that apply specifically to point cloud reality models.\r\n * Default: [[PointCloudDisplaySettings.defaults]].\r\n */\r\n public readonly pointCloud: PointCloudDisplaySettings;\r\n\r\n /** Settings with all properties initialized to their default values. */\r\n public static defaults = new RealityModelDisplaySettings(undefined, PointCloudDisplaySettings.defaults);\r\n\r\n private constructor(overrideColorRatio: number | undefined, pointCloud: PointCloudDisplaySettings) {\r\n this.overrideColorRatio = overrideColorRatio ?? 0.5;\r\n this.pointCloud = pointCloud;\r\n }\r\n\r\n /** Create display settings from their JSON representation. If `props` is `undefined`, the default settings are returned. */\r\n public static fromJSON(props?: RealityModelDisplayProps): RealityModelDisplaySettings {\r\n if (!props)\r\n return this.defaults;\r\n\r\n return new RealityModelDisplaySettings(props.overrideColorRatio, PointCloudDisplaySettings.fromJSON(props.pointCloud));\r\n }\r\n\r\n /** Convert these settings to their JSON representation, which is `undefined` if all of their properties match the default settings. */\r\n public toJSON(): RealityModelDisplayProps | undefined {\r\n const pointCloud = this.pointCloud.toJSON();\r\n const overrideColorRatio = this.overrideColorRatio === RealityModelDisplaySettings.defaults.overrideColorRatio ? undefined : this.overrideColorRatio;\r\n\r\n if (undefined === pointCloud && undefined === overrideColorRatio)\r\n return undefined;\r\n\r\n const props: RealityModelDisplayProps = { };\r\n if (undefined !== pointCloud)\r\n props.pointCloud = pointCloud;\r\n\r\n if (undefined !== overrideColorRatio)\r\n props.overrideColorRatio = overrideColorRatio;\r\n\r\n return props;\r\n }\r\n\r\n /** Returns true if these settings are identical to `other`. */\r\n public equals(other: RealityModelDisplaySettings): boolean {\r\n if (this === other)\r\n return true;\r\n\r\n return this.overrideColorRatio === other.overrideColorRatio && this.pointCloud.equals(other.pointCloud);\r\n }\r\n\r\n /** Create a copy of these settings, identical except for any properties explicitly specified by `changedProps`. */\r\n public clone(changedProps: RealityModelDisplayProps): RealityModelDisplaySettings {\r\n const pointCloud = changedProps.pointCloud ? this.pointCloud.clone(changedProps.pointCloud) : this.pointCloud;\r\n const colorRatio = changedProps.hasOwnProperty(\"overrideColorRatio\") ? changedProps.overrideColorRatio : this.overrideColorRatio;\r\n return new RealityModelDisplaySettings(colorRatio, pointCloud);\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"RealityModelDisplaySettings.js","sourceRoot":"","sources":["../../src/RealityModelDisplaySettings.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 DisplayStyles\r\n */\r\n\r\n/** Specifies how the sizes of the individual points within a point cloud are computed.\r\n * - \"pixel\": Each point is an exact number of pixels in diameter, as specified by [[PointCloudDisplaySettings.pixelSize]].\r\n * - \"voxel\": Each point is the size of a \"voxel\" in meters, as specified by the [Tile]($frontend) to which the point belongs.\r\n * @see [[PointCloudDisplaySettings.sizeMode]].\r\n * @beta\r\n */\r\nexport type PointCloudSizeMode = \"voxel\" | \"pixel\";\r\n\r\n/** Specifies the shape drawn for each individual point within a point cloud.\r\n * - \"round\": Each point is drawn as a circle.\r\n * - \"square\": Each point is drawn as a square.\r\n * @see [[PointCloudDisplaySettings.shape]].\r\n * @beta\r\n */\r\nexport type PointCloudShape = \"square\" | \"round\";\r\n\r\n/** Specifies the Eye-Dome Lighting mode used for a point cloud.\r\n * - \"off\": EDL is not calculated\r\n * - \"on\": EDL is calculated using a single pass.\r\n * - \"full\" EDL is calculated with full algorithm including optional filtering\r\n * @see [[PointCloudDisplaySettings.edlMode]].\r\n * @beta\r\n */\r\nexport type PointCloudEDLMode = \"off\" | \"on\" | \"full\";\r\n\r\n/** The JSON representation of [[PointCloudDisplaySettings]].\r\n * @beta\r\n */\r\nexport interface PointCloudDisplayProps {\r\n /** See [[PointCloudDisplaySettings.sizeMode]]. */\r\n sizeMode?: PointCloudSizeMode;\r\n /** See [[PointCloudDisplaySettings.voxelScale]]. */\r\n voxelScale?: number;\r\n /** See [[PointCloudDisplaySettings.minPixelsPerVoxel]]. */\r\n minPixelsPerVoxel?: number;\r\n /** See [[PointCloudDisplaySettings.maxPixelsPerVoxel]]. */\r\n maxPixelsPerVoxel?: number;\r\n /** See [[PointCloudDisplaySettings.pixelSize]]. */\r\n pixelSize?: number;\r\n /** See [[PointCloudDisplaySettings.shape]]. */\r\n shape?: PointCloudShape;\r\n /** See [[PointCloudDisplaySettings.edlMode]]. */\r\n edlMode?: PointCloudEDLMode;\r\n /** See [[PointCloudDisplaySettings.edlStrength]]. */\r\n edlStrength?: number;\r\n /** See [[PointCloudDisplaySettings.edlRadius]]. */\r\n edlRadius?: number;\r\n /** See [[PointCloudDisplaySettings.edlFilter]]. */\r\n edlFilter?: number;\r\n /** See [[PointCloudDisplaySettings.edlMixWts1]]. */\r\n edlMixWts1?: number;\r\n /** See [[PointCloudDisplaySettings.edlMixWts2]]. */\r\n edlMixWts2?: number;\r\n /** See [[PointCloudDisplaySettings.edlMixWts4]]. */\r\n edlMixWts4?: number;\r\n}\r\n\r\n/** The JSON representation of [[RealityModelDisplaySettings]].\r\n * @beta\r\n */\r\nexport interface RealityModelDisplayProps {\r\n /** See [[RealityModelDisplaySettings.pointCloud]]. */\r\n pointCloud?: PointCloudDisplayProps;\r\n /** See [[RealityModelDisplaySettings.overrideColorRatio]]. */\r\n overrideColorRatio?: number;\r\n // ###TODO when we need it: mesh?: RealityMeshDisplayProps;\r\n}\r\n\r\n/** Settings that control how a point cloud reality model is displayed within a [Viewport]($frontend).\r\n * @note This is an immutable type - to modify its properties, use [[clone]].\r\n * Eye-Dome Lighting (EDL) is a non-photorealistic, image-based shading technique that was designed to improve depth\r\n * perception in scientific visualization. It is particularly useful for visualizing monochrome point cloud data, but\r\n * also can be useful for point clouds with color information.\r\n * @note EDL mode is ignored (off) if the view is not perspective (camera is off)\r\n * @see [[RealityModelDisplaySettings.pointCloud]].\r\n * @beta\r\n */\r\nexport class PointCloudDisplaySettings {\r\n /** The shape drawn for each point in the cloud.\r\n * Default: \"round\".\r\n */\r\n public readonly shape: PointCloudShape;\r\n /** The method by which the size of each individual point is computed.\r\n * Default: \"voxel\".\r\n * @see [[pixelSize]] to configure the size for \"pixel\" mode.\r\n * @see [[voxelScale]], [[minPixelsPerVoxel]], and [[maxPixelsPerVoxel]] to configure the size for \"voxel\" mode.\r\n */\r\n public readonly sizeMode: PointCloudSizeMode;\r\n /** The radius of each point in pixels, when [[sizeMode]] is \"pixel\".\r\n * The size is expected to be a positive integer. The maximum size will vary based on the graphics hardware in use, but typically is limited to 32 or 64 pixels.\r\n * Default: 1\r\n */\r\n public readonly pixelSize: number;\r\n /** A scale factor applied to the size of each point, when [[sizeMode]] is \"voxel\".\r\n * The scale is expected to be a positive floating point number.\r\n * Default: 1.0\r\n */\r\n public readonly voxelScale: number;\r\n /** If [[sizeMode]] is \"voxel\", the minimum radius of each point in pixels. It is expected to be a positive integer no greater than [[maxPixelsPerVoxel]].\r\n * Default: 2\r\n */\r\n public readonly minPixelsPerVoxel: number;\r\n /** If [[sizeMode]] is \"voxel\", the maximum radius of each point in pixels. It is expected to be a positive integer no less than [[minPixelsPerVoxel]].\r\n * Default: 20.\r\n */\r\n public readonly maxPixelsPerVoxel: number;\r\n /** The mode for the Eye-Dome Lighting (EDL) effect.\r\n * Default: \"off\"\r\n * @note EDL mode is ignored (off) if the view is not perspective (camera is off)\r\n */\r\n public readonly edlMode: PointCloudEDLMode;\r\n /** A strength value for the Eye Dome Lighting (EDL) effect.\r\n * The strength is expected to be a positive floating point number.\r\n * Default: 5.0\r\n */\r\n public readonly edlStrength: number;\r\n /** A radius value for the Eye Dome Lighting (EDL) effect.\r\n * The radius is expected to be a positive floating point number\r\n * It is used to deterimine how far away in pixels to sample for depth change\r\n * Default: 2.0\r\n */\r\n public readonly edlRadius: number;\r\n /** A flag for whether or not to apply filtering pass in the Eye Dome Lighting (EDL) effect.\r\n * It only applies if edlMode is \"full\"\r\n * Default: 1.0\r\n */\r\n public readonly edlFilter?: number;\r\n /** A weighting value to apply to the full image when combining it with the half and quarter sized ones\r\n * It only applies if edlMode is \"full\"\r\n * The strength is expected to be a floating point number between 0 and 1 inclusive.\r\n * Default: 1.0\r\n */\r\n public readonly edlMixWts1?: number;\r\n /** A weighting value to apply to the half sized image when combining it with the full and quarter sized ones\r\n * It only applies if edlMode is \"full\"\r\n * The strength is expected to be a floating point number between 0 and 1 inclusive.\r\n * Default: 0.5\r\n */\r\n public readonly edlMixWts2?: number;\r\n /** A weighting value to apply to the quarter sized image when combining it with the full and half sized ones\r\n * It only applies if edlMode is \"full\"\r\n * The strength is expected to be a floating point number between 0 and 1 inclusive.\r\n * Default: 0.25\r\n */\r\n public readonly edlMixWts4?: number;\r\n\r\n /** Settings with all properties initialized to their default values. */\r\n public static defaults = new PointCloudDisplaySettings();\r\n\r\n private constructor(props?: PointCloudDisplayProps) {\r\n this.shape = props?.shape ?? \"round\";\r\n this.sizeMode = props?.sizeMode ?? \"voxel\";\r\n\r\n // No sanity checks here - e.g., min < max, pixelSize and voxelScale > 0, etc.\r\n this.pixelSize = props?.pixelSize ?? 1;\r\n this.voxelScale = props?.voxelScale ?? 1;\r\n this.minPixelsPerVoxel = props?.minPixelsPerVoxel ?? 2;\r\n this.maxPixelsPerVoxel = props?.maxPixelsPerVoxel ?? 20;\r\n this.edlMode = props?.edlMode ?? \"off\";\r\n this.edlStrength = props?.edlStrength ?? 5;\r\n this.edlRadius = props?.edlRadius ?? 2;\r\n this.edlFilter = props?.edlFilter ?? 1;\r\n this.edlMixWts1 = props?.edlMixWts1 ?? 1.0;\r\n this.edlMixWts2 = props?.edlMixWts2 ?? 0.5;\r\n this.edlMixWts4 = props?.edlMixWts4 ?? 0.25;\r\n }\r\n\r\n /** Create display settings from their JSON representation. If `props` is `undefined`, the default settings are returned. */\r\n public static fromJSON(props?: PointCloudDisplayProps): PointCloudDisplaySettings {\r\n return props ? new PointCloudDisplaySettings(props) : this.defaults;\r\n }\r\n\r\n /** Convert these settings to their JSON representation. */\r\n public toJSON(): PointCloudDisplayProps | undefined {\r\n const defs = PointCloudDisplaySettings.defaults;\r\n if (this.equals(defs))\r\n return undefined;\r\n\r\n const props: PointCloudDisplayProps = { };\r\n if (this.shape !== defs.shape)\r\n props.shape = this.shape;\r\n\r\n if (this.sizeMode !== defs.sizeMode)\r\n props.sizeMode = this.sizeMode;\r\n\r\n if (this.pixelSize !== defs.pixelSize)\r\n props.pixelSize = this.pixelSize;\r\n\r\n if (this.voxelScale !== defs.voxelScale)\r\n props.voxelScale = this.voxelScale;\r\n\r\n if (this.minPixelsPerVoxel !== defs.minPixelsPerVoxel)\r\n props.minPixelsPerVoxel = this.minPixelsPerVoxel;\r\n\r\n if (this.maxPixelsPerVoxel !== defs.maxPixelsPerVoxel)\r\n props.maxPixelsPerVoxel = this.maxPixelsPerVoxel;\r\n\r\n if (this.edlMode !== defs.edlMode)\r\n props.edlMode = this.edlMode;\r\n\r\n if (this.edlStrength !== defs.edlStrength)\r\n props.edlStrength = this.edlStrength;\r\n\r\n if (this.edlRadius !== defs.edlRadius)\r\n props.edlRadius = this.edlRadius;\r\n\r\n if (this.edlFilter !== defs.edlFilter)\r\n props.edlFilter = this.edlFilter;\r\n\r\n if (this.edlMixWts1 !== defs.edlMixWts1)\r\n props.edlMixWts1 = this.edlMixWts1;\r\n\r\n if (this.edlMixWts2 !== defs.edlMixWts2)\r\n props.edlMixWts2 = this.edlMixWts2;\r\n\r\n if (this.edlMixWts4 !== defs.edlMixWts4)\r\n props.edlMixWts4 = this.edlMixWts4;\r\n\r\n return props;\r\n }\r\n\r\n /** Create a copy of these settings, identical except for any properties explicitly specified by `changedProps`. */\r\n public clone(changedProps: PointCloudDisplayProps): PointCloudDisplaySettings {\r\n return PointCloudDisplaySettings.fromJSON({\r\n ...this.toJSON(),\r\n ...changedProps,\r\n });\r\n }\r\n\r\n /** Returns true if these settings are identical to `other`. */\r\n public equals(other: PointCloudDisplaySettings): boolean {\r\n if (this === other)\r\n return true;\r\n\r\n return this.shape === other.shape && this.sizeMode === other.sizeMode && this.pixelSize === other.pixelSize\r\n && this.voxelScale === other.voxelScale && this.minPixelsPerVoxel === other.minPixelsPerVoxel && this.maxPixelsPerVoxel === other.maxPixelsPerVoxel\r\n && this.edlMode === other.edlMode && this.edlStrength === other.edlStrength && this.edlRadius === other.edlRadius\r\n && this.edlFilter === other.edlFilter\r\n && this.edlMixWts1 === other.edlMixWts1 && this.edlMixWts2 === other.edlMixWts2 && this.edlMixWts4 === other.edlMixWts4\r\n ;\r\n }\r\n}\r\n\r\n/** Settings that control how a reality model - whether a [[ContextRealityModel]] or a persistent reality [Model]($backend) - is displayed within a [Viewport]($frontend).\r\n * @see [[ContextRealityModel.displaySettings]] to apply these settings to a context reality model.\r\n * @see [[DisplayStyleSettings.setRealityModelDisplaySettings]] to apply these settings to a persistent reality model.\r\n * @note This is an immutable type - to modify its properties, use [[clone]].\r\n * @beta\r\n */\r\nexport class RealityModelDisplaySettings {\r\n /** If the reality model's color is overridden with another color, a ratio in [0..1] with which to mix the two colors together.\r\n * A ratio of 0 uses only the reality model's color, a ratio of 1 uses only the override color, and a ratio of 0.5 mixes the two colors equally.\r\n * The color may be overridden using [[FeatureOverrides]] such as those supplied by a [FeatureOverrideProvider]($frontend), or by applying a [[SpatialClassifier]].\r\n * Default: 0.5\r\n */\r\n public readonly overrideColorRatio: number;\r\n /** Settings that apply specifically to point cloud reality models.\r\n * Default: [[PointCloudDisplaySettings.defaults]].\r\n */\r\n public readonly pointCloud: PointCloudDisplaySettings;\r\n\r\n /** Settings with all properties initialized to their default values. */\r\n public static defaults = new RealityModelDisplaySettings(undefined, PointCloudDisplaySettings.defaults);\r\n\r\n private constructor(overrideColorRatio: number | undefined, pointCloud: PointCloudDisplaySettings) {\r\n this.overrideColorRatio = overrideColorRatio ?? 0.5;\r\n this.pointCloud = pointCloud;\r\n }\r\n\r\n /** Create display settings from their JSON representation. If `props` is `undefined`, the default settings are returned. */\r\n public static fromJSON(props?: RealityModelDisplayProps): RealityModelDisplaySettings {\r\n if (!props)\r\n return this.defaults;\r\n\r\n return new RealityModelDisplaySettings(props.overrideColorRatio, PointCloudDisplaySettings.fromJSON(props.pointCloud));\r\n }\r\n\r\n /** Convert these settings to their JSON representation, which is `undefined` if all of their properties match the default settings. */\r\n public toJSON(): RealityModelDisplayProps | undefined {\r\n const pointCloud = this.pointCloud.toJSON();\r\n const overrideColorRatio = this.overrideColorRatio === RealityModelDisplaySettings.defaults.overrideColorRatio ? undefined : this.overrideColorRatio;\r\n\r\n if (undefined === pointCloud && undefined === overrideColorRatio)\r\n return undefined;\r\n\r\n const props: RealityModelDisplayProps = { };\r\n if (undefined !== pointCloud)\r\n props.pointCloud = pointCloud;\r\n\r\n if (undefined !== overrideColorRatio)\r\n props.overrideColorRatio = overrideColorRatio;\r\n\r\n return props;\r\n }\r\n\r\n /** Returns true if these settings are identical to `other`. */\r\n public equals(other: RealityModelDisplaySettings): boolean {\r\n if (this === other)\r\n return true;\r\n\r\n return this.overrideColorRatio === other.overrideColorRatio && this.pointCloud.equals(other.pointCloud);\r\n }\r\n\r\n /** Create a copy of these settings, identical except for any properties explicitly specified by `changedProps`. */\r\n public clone(changedProps: RealityModelDisplayProps): RealityModelDisplaySettings {\r\n const pointCloud = changedProps.pointCloud ? this.pointCloud.clone(changedProps.pointCloud) : this.pointCloud;\r\n const colorRatio = changedProps.hasOwnProperty(\"overrideColorRatio\") ? changedProps.overrideColorRatio : this.overrideColorRatio;\r\n return new RealityModelDisplaySettings(colorRatio, pointCloud);\r\n }\r\n}\r\n"]}
@@ -6,8 +6,8 @@ import { OctEncodedNormalPair } from "./OctEncodedNormal";
6
6
  * @alpha
7
7
  */
8
8
  export declare enum PolylineTypeFlags {
9
- Normal = 0,
10
- Edge = 1,
9
+ Normal = 0,// Just an ordinary polyline
10
+ Edge = 1,// A polyline used to define the edges of a planar region.
11
11
  Outline = 2
12
12
  }
13
13
  /** Flags describing a [PolylineArgs]($frontend).
@@ -1 +1 @@
1
- {"version":3,"file":"Render.d.ts","sourceRoot":"","sources":["../../src/Render.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAI1D;;GAEG;AACH,oBAAY,iBAAiB;IAC3B,MAAM,IAAI;IACV,IAAI,IAAS;IACb,OAAO,IAAS;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,8HAA8H;IAC9H,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,4DAA4D;IAC5D,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,0EAA0E;IAC1E,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;OAEG;IACH,IAAI,CAAC,EAAE,iBAAiB,CAAC;CAC1B;AAED;;;;GAIG;AACH,MAAM,MAAM,eAAe,GAAG,MAAM,EAAE,CAAC;AAEvC,gBAAgB;AAChB,qBAAa,YAAY;IACvB,SAAgB,OAAO,EAAE,eAAe,CAAC;gBAEtB,OAAO,GAAE,eAAoB;IAIzC,QAAQ,CAAC,KAAK,EAAE,MAAM;IAMtB,KAAK;CACb;AAED,gBAAgB;AAChB,qBAAa,gBAAiB,SAAQ,KAAK,CAAC,YAAY,CAAC;gBAC3C,GAAG,IAAI,EAAE,YAAY,EAAE;CAGpC;AAED,gBAAgB;AAChB,qBAAa,QAAQ;IACZ,OAAO,WAAU;gBAEL,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM;IAY5C,SAAS,CAAC,KAAK,EAAE,QAAQ,GAAG,MAAM;CAO1C;AAED,gBAAgB;AAChB,qBAAa,SAAS;IACb,OAAO,EAAE,QAAQ,EAAE,CAAM;IACzB,UAAU,EAAE,QAAQ,EAAE,CAAM;IAC5B,SAAS,EAAE,gBAAgB,CAA0B;IACrD,iBAAiB,EAAE,oBAAoB,EAAE,CAAM;;CAEvD;AAED,gBAAgB;AAChB,qBAAa,QAAQ;IACZ,KAAK,CAAC,EAAE,QAAQ,EAAE,CAAC;IAEnB,IAAI,CAAC,SAAS,CAAC,EAAE,SAAS,GAAG,OAAO;IAQpC,KAAK,IAAI,IAAI;IACpB,IAAW,OAAO,IAAI,OAAO,CAA8B;IAC3D,IAAW,QAAQ,WAA+D;CACnF;AAED,gBAAgB;AAChB,qBAAa,kBAAmB,SAAQ,QAAQ;IACvC,OAAO,CAAC,EAAE,oBAAoB,EAAE,CAAC;IAExB,IAAI,CAAC,SAAS,CAAC,EAAE,SAAS;IAU1B,KAAK;CAItB;AAED,gBAAgB;AAChB,qBAAa,gBAAgB;IACpB,KAAK,CAAC,EAAE,eAAe,EAAE,CAAC;gBAEd,KAAK,CAAC,EAAE,eAAe,EAAE;IAErC,IAAI,CAAC,KAAK,CAAC,EAAE,eAAe,EAAE,GAAG,OAAO;IAK/C,IAAW,QAAQ,WAA+D;IAClF,IAAW,OAAO,YAAgC;IAC3C,KAAK;CACb"}
1
+ {"version":3,"file":"Render.d.ts","sourceRoot":"","sources":["../../src/Render.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAI1D;;GAEG;AACH,oBAAY,iBAAiB;IAC3B,MAAM,IAAI,CAAO,4BAA4B;IAC7C,IAAI,IAAS,CAAE,0DAA0D;IACzE,OAAO,IAAS;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,8HAA8H;IAC9H,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,4DAA4D;IAC5D,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,0EAA0E;IAC1E,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;OAEG;IACH,IAAI,CAAC,EAAE,iBAAiB,CAAC;CAC1B;AAED;;;;GAIG;AACH,MAAM,MAAM,eAAe,GAAG,MAAM,EAAE,CAAC;AAEvC,gBAAgB;AAChB,qBAAa,YAAY;IACvB,SAAgB,OAAO,EAAE,eAAe,CAAC;gBAEtB,OAAO,GAAE,eAAoB;IAIzC,QAAQ,CAAC,KAAK,EAAE,MAAM;IAMtB,KAAK;CACb;AAED,gBAAgB;AAChB,qBAAa,gBAAiB,SAAQ,KAAK,CAAC,YAAY,CAAC;gBAC3C,GAAG,IAAI,EAAE,YAAY,EAAE;CAGpC;AAED,gBAAgB;AAChB,qBAAa,QAAQ;IACZ,OAAO,WAAU;gBAEL,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM;IAY5C,SAAS,CAAC,KAAK,EAAE,QAAQ,GAAG,MAAM;CAO1C;AAED,gBAAgB;AAChB,qBAAa,SAAS;IACb,OAAO,EAAE,QAAQ,EAAE,CAAM;IACzB,UAAU,EAAE,QAAQ,EAAE,CAAM;IAC5B,SAAS,EAAE,gBAAgB,CAA0B;IACrD,iBAAiB,EAAE,oBAAoB,EAAE,CAAM;;CAEvD;AAED,gBAAgB;AAChB,qBAAa,QAAQ;IACZ,KAAK,CAAC,EAAE,QAAQ,EAAE,CAAC;IAEnB,IAAI,CAAC,SAAS,CAAC,EAAE,SAAS,GAAG,OAAO;IAQpC,KAAK,IAAI,IAAI;IACpB,IAAW,OAAO,IAAI,OAAO,CAA8B;IAC3D,IAAW,QAAQ,WAA+D;CACnF;AAED,gBAAgB;AAChB,qBAAa,kBAAmB,SAAQ,QAAQ;IACvC,OAAO,CAAC,EAAE,oBAAoB,EAAE,CAAC;IAExB,IAAI,CAAC,SAAS,CAAC,EAAE,SAAS;IAU1B,KAAK;CAItB;AAED,gBAAgB;AAChB,qBAAa,gBAAgB;IACpB,KAAK,CAAC,EAAE,eAAe,EAAE,CAAC;gBAEd,KAAK,CAAC,EAAE,eAAe,EAAE;IAErC,IAAI,CAAC,KAAK,CAAC,EAAE,eAAe,EAAE,GAAG,OAAO;IAK/C,IAAW,QAAQ,WAA+D;IAClF,IAAW,OAAO,YAAgC;IAC3C,KAAK;CACb"}
package/lib/cjs/Render.js CHANGED
@@ -17,7 +17,7 @@ var PolylineTypeFlags;
17
17
  PolylineTypeFlags[PolylineTypeFlags["Normal"] = 0] = "Normal";
18
18
  PolylineTypeFlags[PolylineTypeFlags["Edge"] = 1] = "Edge";
19
19
  PolylineTypeFlags[PolylineTypeFlags["Outline"] = 2] = "Outline";
20
- })(PolylineTypeFlags = exports.PolylineTypeFlags || (exports.PolylineTypeFlags = {}));
20
+ })(PolylineTypeFlags || (exports.PolylineTypeFlags = PolylineTypeFlags = {}));
21
21
  /** @internal */
22
22
  class MeshPolyline {
23
23
  constructor(indices = []) {
@@ -1 +1 @@
1
- {"version":3,"file":"Render.js","sourceRoot":"","sources":["../../src/Render.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAIH,qBAAqB;AAErB;;GAEG;AACH,IAAY,iBAIX;AAJD,WAAY,iBAAiB;IAC3B,6DAAU,CAAA;IACV,yDAAa,CAAA;IACb,+DAAgB,CAAA;AAClB,CAAC,EAJW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAI5B;AAyBD,gBAAgB;AAChB,MAAa,YAAY;IAGvB,YAAmB,UAA2B,EAAE;QAC9C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;IACjC,CAAC;IAEM,QAAQ,CAAC,KAAa;QAC3B,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;QACzB,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,KAAK;YAC/D,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACxB,CAAC;IAEM,KAAK,KAAK,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;CAC5C;AAdD,oCAcC;AAED,gBAAgB;AAChB,MAAa,gBAAiB,SAAQ,KAAmB;IACvD,YAAY,GAAG,IAAoB;QACjC,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC;IACjB,CAAC;CACF;AAJD,4CAIC;AAED,gBAAgB;AAChB,MAAa,QAAQ;IAGnB,YAAmB,MAAe,EAAE,MAAe;QAF5C,YAAO,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAGtB,IAAI,SAAS,KAAK,MAAM,IAAI,SAAS,KAAK,MAAM;YAC9C,OAAO;QACT,IAAI,MAAM,GAAG,MAAM,EAAE;YACnB,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC;YACzB,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC;SAC1B;aAAM;YACL,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC;YACzB,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC;SAC1B;IACH,CAAC;IAEM,SAAS,CAAC,KAAe;QAC9B,IAAI,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC9C,IAAI,CAAC,KAAK,IAAI;YACZ,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAE5C,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AAtBD,4BAsBC;AAED,gBAAgB;AAChB,MAAa,SAAS;IAKpB;QAJO,YAAO,GAAe,EAAE,CAAC;QACzB,eAAU,GAAe,EAAE,CAAC;QAC5B,cAAS,GAAqB,IAAI,gBAAgB,EAAE,CAAC;QACrD,sBAAiB,GAA2B,EAAE,CAAC;IAC/B,CAAC;CACzB;AAND,8BAMC;AAED,gBAAgB;AAChB,MAAa,QAAQ;IAGZ,IAAI,CAAC,SAAqB;QAC/B,IAAI,CAAC,KAAK,EAAE,CAAC;QACb,IAAI,SAAS,KAAK,SAAS,IAAI,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM;YACzD,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC;QAEjC,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAEM,KAAK,KAAW,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC;IAChD,IAAW,OAAO,KAAc,OAAO,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC3D,IAAW,QAAQ,KAAK,OAAO,SAAS,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CACnF;AAdD,4BAcC;AAED,gBAAgB;AAChB,MAAa,kBAAmB,SAAQ,QAAQ;IAG9B,IAAI,CAAC,SAAqB;QACxC,IAAI,CAAC,KAAK,EAAE,CAAC;QACb,IAAI,SAAS,KAAK,SAAS,IAAI,CAAC,GAAG,SAAS,CAAC,UAAU,CAAC,MAAM,EAAE;YAC9D,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC,UAAU,CAAC;YAClC,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC,iBAAiB,CAAC;SAC5C;QAED,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAEe,KAAK;QACnB,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;QACzB,KAAK,CAAC,KAAK,EAAE,CAAC;IAChB,CAAC;CACF;AAjBD,gDAiBC;AAED,gBAAgB;AAChB,MAAa,gBAAgB;IAG3B,YAAmB,KAAyB,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAE5D,IAAI,CAAC,KAAyB;QACnC,IAAI,CAAC,KAAK,GAAG,SAAS,KAAK,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;QACzE,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,IAAW,QAAQ,KAAK,OAAO,SAAS,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAClF,IAAW,OAAO,KAAK,OAAO,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC;IAC3C,KAAK,KAAK,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC;CAC3C;AAbD,4CAaC","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 Rendering\r\n */\r\n\r\nimport { OctEncodedNormalPair } from \"./OctEncodedNormal\";\r\n\r\n// cSpell:ignore vals\r\n\r\n/** Describes the semantics of a [PolylineArgs]($frontend).\r\n * @alpha\r\n */\r\nexport enum PolylineTypeFlags {\r\n Normal = 0, // Just an ordinary polyline\r\n Edge = 1 << 0, // A polyline used to define the edges of a planar region.\r\n Outline = 1 << 1, // Like Edge, but the edges are only displayed in wireframe mode when surface fill is undisplayed.\r\n}\r\n\r\n/** Flags describing a [PolylineArgs]($frontend).\r\n * @public\r\n */\r\nexport interface PolylineFlags {\r\n /** If `true`, the polylines are to be drawn as individual disconnected point strings instead of as connected line strings. */\r\n isDisjoint?: boolean;\r\n /** If `true`, the polylines' positions are all coplanar. */\r\n isPlanar?: boolean;\r\n /** If `true`, the polylines' positions all have the same z coordinate. */\r\n is2d?: boolean;\r\n /** Default: Normal.\r\n * @alpha\r\n */\r\n type?: PolylineTypeFlags;\r\n}\r\n\r\n/** Describes the vertex indices of a single line within a [PolylineArgs]($frontend).\r\n * The indices represent either a line string as a connected series of points, or a point string as a set of disconnected points, depending\r\n * on the [[PolylineFlags.isDisjoint]] value of [PolylineArgs.flags]($frontend).\r\n * @public\r\n */\r\nexport type PolylineIndices = number[];\r\n\r\n/** @internal */\r\nexport class MeshPolyline {\r\n public readonly indices: PolylineIndices;\r\n\r\n public constructor(indices: PolylineIndices = []) {\r\n this.indices = indices.slice();\r\n }\r\n\r\n public addIndex(index: number) {\r\n const { indices } = this;\r\n if (indices.length === 0 || indices[indices.length - 1] !== index)\r\n indices.push(index);\r\n }\r\n\r\n public clear() { this.indices.length = 0; }\r\n}\r\n\r\n/** @internal */\r\nexport class MeshPolylineList extends Array<MeshPolyline> {\r\n constructor(...args: MeshPolyline[]) {\r\n super(...args);\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class MeshEdge {\r\n public indices = [0, 0];\r\n\r\n public constructor(index0?: number, index1?: number) {\r\n if (undefined === index0 || undefined === index1)\r\n return;\r\n if (index0 < index1) {\r\n this.indices[0] = index0;\r\n this.indices[1] = index1;\r\n } else {\r\n this.indices[0] = index1;\r\n this.indices[1] = index0;\r\n }\r\n }\r\n\r\n public compareTo(other: MeshEdge): number {\r\n let diff = this.indices[0] - other.indices[0];\r\n if (0 === diff)\r\n diff = this.indices[1] - other.indices[1];\r\n\r\n return diff;\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class MeshEdges {\r\n public visible: MeshEdge[] = [];\r\n public silhouette: MeshEdge[] = [];\r\n public polylines: MeshPolylineList = new MeshPolylineList();\r\n public silhouetteNormals: OctEncodedNormalPair[] = [];\r\n public constructor() { }\r\n}\r\n\r\n/** @internal */\r\nexport class EdgeArgs {\r\n public edges?: MeshEdge[];\r\n\r\n public init(meshEdges?: MeshEdges): boolean {\r\n this.clear();\r\n if (undefined !== meshEdges && 0 < meshEdges.visible.length)\r\n this.edges = meshEdges.visible;\r\n\r\n return this.isValid;\r\n }\r\n\r\n public clear(): void { this.edges = undefined; }\r\n public get isValid(): boolean { return 0 < this.numEdges; }\r\n public get numEdges() { return undefined !== this.edges ? this.edges.length : 0; }\r\n}\r\n\r\n/** @internal */\r\nexport class SilhouetteEdgeArgs extends EdgeArgs {\r\n public normals?: OctEncodedNormalPair[];\r\n\r\n public override init(meshEdges?: MeshEdges) {\r\n this.clear();\r\n if (undefined !== meshEdges && 0 < meshEdges.silhouette.length) {\r\n this.edges = meshEdges.silhouette;\r\n this.normals = meshEdges.silhouetteNormals;\r\n }\r\n\r\n return this.isValid;\r\n }\r\n\r\n public override clear() {\r\n this.normals = undefined;\r\n super.clear();\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class PolylineEdgeArgs {\r\n public lines?: PolylineIndices[];\r\n\r\n public constructor(lines?: PolylineIndices[]) { this.init(lines); }\r\n\r\n public init(lines?: PolylineIndices[]): boolean {\r\n this.lines = undefined !== lines && 0 < lines.length ? lines : undefined;\r\n return this.isValid;\r\n }\r\n\r\n public get numLines() { return undefined !== this.lines ? this.lines.length : 0; }\r\n public get isValid() { return this.numLines > 0; }\r\n public clear() { this.lines = undefined; }\r\n}\r\n"]}
1
+ {"version":3,"file":"Render.js","sourceRoot":"","sources":["../../src/Render.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 Rendering\r\n */\r\n\r\nimport { OctEncodedNormalPair } from \"./OctEncodedNormal\";\r\n\r\n// cSpell:ignore vals\r\n\r\n/** Describes the semantics of a [PolylineArgs]($frontend).\r\n * @alpha\r\n */\r\nexport enum PolylineTypeFlags {\r\n Normal = 0, // Just an ordinary polyline\r\n Edge = 1 << 0, // A polyline used to define the edges of a planar region.\r\n Outline = 1 << 1, // Like Edge, but the edges are only displayed in wireframe mode when surface fill is undisplayed.\r\n}\r\n\r\n/** Flags describing a [PolylineArgs]($frontend).\r\n * @public\r\n */\r\nexport interface PolylineFlags {\r\n /** If `true`, the polylines are to be drawn as individual disconnected point strings instead of as connected line strings. */\r\n isDisjoint?: boolean;\r\n /** If `true`, the polylines' positions are all coplanar. */\r\n isPlanar?: boolean;\r\n /** If `true`, the polylines' positions all have the same z coordinate. */\r\n is2d?: boolean;\r\n /** Default: Normal.\r\n * @alpha\r\n */\r\n type?: PolylineTypeFlags;\r\n}\r\n\r\n/** Describes the vertex indices of a single line within a [PolylineArgs]($frontend).\r\n * The indices represent either a line string as a connected series of points, or a point string as a set of disconnected points, depending\r\n * on the [[PolylineFlags.isDisjoint]] value of [PolylineArgs.flags]($frontend).\r\n * @public\r\n */\r\nexport type PolylineIndices = number[];\r\n\r\n/** @internal */\r\nexport class MeshPolyline {\r\n public readonly indices: PolylineIndices;\r\n\r\n public constructor(indices: PolylineIndices = []) {\r\n this.indices = indices.slice();\r\n }\r\n\r\n public addIndex(index: number) {\r\n const { indices } = this;\r\n if (indices.length === 0 || indices[indices.length - 1] !== index)\r\n indices.push(index);\r\n }\r\n\r\n public clear() { this.indices.length = 0; }\r\n}\r\n\r\n/** @internal */\r\nexport class MeshPolylineList extends Array<MeshPolyline> {\r\n constructor(...args: MeshPolyline[]) {\r\n super(...args);\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class MeshEdge {\r\n public indices = [0, 0];\r\n\r\n public constructor(index0?: number, index1?: number) {\r\n if (undefined === index0 || undefined === index1)\r\n return;\r\n if (index0 < index1) {\r\n this.indices[0] = index0;\r\n this.indices[1] = index1;\r\n } else {\r\n this.indices[0] = index1;\r\n this.indices[1] = index0;\r\n }\r\n }\r\n\r\n public compareTo(other: MeshEdge): number {\r\n let diff = this.indices[0] - other.indices[0];\r\n if (0 === diff)\r\n diff = this.indices[1] - other.indices[1];\r\n\r\n return diff;\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class MeshEdges {\r\n public visible: MeshEdge[] = [];\r\n public silhouette: MeshEdge[] = [];\r\n public polylines: MeshPolylineList = new MeshPolylineList();\r\n public silhouetteNormals: OctEncodedNormalPair[] = [];\r\n public constructor() { }\r\n}\r\n\r\n/** @internal */\r\nexport class EdgeArgs {\r\n public edges?: MeshEdge[];\r\n\r\n public init(meshEdges?: MeshEdges): boolean {\r\n this.clear();\r\n if (undefined !== meshEdges && 0 < meshEdges.visible.length)\r\n this.edges = meshEdges.visible;\r\n\r\n return this.isValid;\r\n }\r\n\r\n public clear(): void { this.edges = undefined; }\r\n public get isValid(): boolean { return 0 < this.numEdges; }\r\n public get numEdges() { return undefined !== this.edges ? this.edges.length : 0; }\r\n}\r\n\r\n/** @internal */\r\nexport class SilhouetteEdgeArgs extends EdgeArgs {\r\n public normals?: OctEncodedNormalPair[];\r\n\r\n public override init(meshEdges?: MeshEdges) {\r\n this.clear();\r\n if (undefined !== meshEdges && 0 < meshEdges.silhouette.length) {\r\n this.edges = meshEdges.silhouette;\r\n this.normals = meshEdges.silhouetteNormals;\r\n }\r\n\r\n return this.isValid;\r\n }\r\n\r\n public override clear() {\r\n this.normals = undefined;\r\n super.clear();\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class PolylineEdgeArgs {\r\n public lines?: PolylineIndices[];\r\n\r\n public constructor(lines?: PolylineIndices[]) { this.init(lines); }\r\n\r\n public init(lines?: PolylineIndices[]): boolean {\r\n this.lines = undefined !== lines && 0 < lines.length ? lines : undefined;\r\n return this.isValid;\r\n }\r\n\r\n public get numLines() { return undefined !== this.lines ? this.lines.length : 0; }\r\n public get isValid() { return this.numLines > 0; }\r\n public clear() { this.lines = undefined; }\r\n}\r\n"]}
@@ -70,7 +70,7 @@ exports.RenderMaterial = RenderMaterial;
70
70
  // eslint-disable-next-line deprecation/deprecation
71
71
  Params.defaults = new Params();
72
72
  RenderMaterial.Params = Params;
73
- })(RenderMaterial = exports.RenderMaterial || (exports.RenderMaterial = {}));
73
+ })(RenderMaterial || (exports.RenderMaterial = RenderMaterial = {}));
74
74
  // eslint-disable-next-line deprecation/deprecation
75
75
  Object.freeze(RenderMaterial.Params.defaults);
76
76
  //# sourceMappingURL=RenderMaterial.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RenderMaterial.js","sourceRoot":"","sources":["../../src/RenderMaterial.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAKH;;GAEG;AACH,MAAsB,cAAc;IAMlC,mDAAmD;IACnD,YAAsB,MAA6B;QACjD,IAAI,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC;QACtB,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC;IAC9C,CAAC;IAED,IAAW,UAAU;QACnB,OAAO,SAAS,KAAK,IAAI,CAAC,cAAc,EAAE,OAAO,CAAC;IACpD,CAAC;CACF;AAfD,wCAeC;AAED,cAAc;AACd,WAAiB,cAAc;IAC7B,SAAS,sBAAsB,CAAC,KAAa;QAC3C,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;IAC7C,CAAC;IAED,qEAAqE;IACrE,MAAa,MAAM;QA4BjB,YAAmB,GAAY;YAf/B,+BAA+B;YACxB,YAAO,GAAW,GAAG,CAAC;YAC7B,gCAAgC;YACzB,aAAQ,GAAW,GAAG,CAAC;YACvB,qBAAgB,GAAW,IAAI,CAAC;YACvC,+BAA+B;YACxB,YAAO,GAAW,GAAG,CAAC;YAC7B,+BAA+B;YACxB,YAAO,GAAW,GAAG,CAAC;YAC7B,+BAA+B;YACxB,YAAO,GAAW,EAAE,CAAC;YAC5B,+BAA+B;YACxB,YAAO,GAAG,IAAI,CAAC;YAGa,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QAAC,CAAC;QAMpD;;WAEG;QACH,IAAW,KAAK,KAAyB,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;QAC9D,IAAW,KAAK,CAAC,KAAyB;YACxC,IAAI,CAAC,MAAM,GAAG,SAAS,KAAK,KAAK,CAAC,CAAC,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAChF,CAAC;QAED,6HAA6H;QAC7H,mDAAmD;QAC5C,MAAM,CAAC,UAAU,CAAC,GAAY,EAAE,YAAuB,EAAE,aAAwB,EAAE,aAAwB,EAAE,YAAuB,EAAE,UAA2B;YACtK,mDAAmD;YACnD,MAAM,cAAc,GAAG,IAAI,MAAM,EAAE,CAAC;YACpC,cAAc,CAAC,GAAG,GAAG,GAAG,CAAC;YACzB,cAAc,CAAC,YAAY,GAAG,YAAY,CAAC;YAC3C,cAAc,CAAC,aAAa,GAAG,aAAa,CAAC;YAC7C,cAAc,CAAC,aAAa,GAAG,aAAa,CAAC;YAC7C,cAAc,CAAC,YAAY,GAAG,YAAY,CAAC;YAC3C,cAAc,CAAC,cAAc,GAAG,UAAU,CAAC;YAC3C,OAAO,cAAc,CAAC;QACxB,CAAC;;IAxBD,oFAAoF;IACpF,mDAAmD;IAC5B,eAAQ,GAAG,IAAI,MAAM,EAAE,AAAf,CAAgB;IAhCpC,qBAAM,SAuDlB,CAAA;AACH,CAAC,EA9DgB,cAAc,GAAd,sBAAc,KAAd,sBAAc,QA8D9B;AAED,mDAAmD;AACnD,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC","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 Rendering\r\n */\r\n\r\nimport { ColorDef } from \"./ColorDef\";\r\nimport { TextureMapping } from \"./TextureMapping\";\r\n\r\n/** Represents a material which can be applied to a surface to control aspects of its appearance such as color, reflectivity, texture, and so on.\r\n * @public\r\n */\r\nexport abstract class RenderMaterial {\r\n /** If the material originated from a Material element in the [[IModelDb]], the Id of that element. */\r\n public readonly key?: string;\r\n /** Describes how to map an image to a surface to which this material is applied. */\r\n public readonly textureMapping?: TextureMapping;\r\n\r\n // eslint-disable-next-line deprecation/deprecation\r\n protected constructor(params: RenderMaterial.Params) {\r\n this.key = params.key;\r\n this.textureMapping = params.textureMapping;\r\n }\r\n\r\n public get hasTexture(): boolean {\r\n return undefined !== this.textureMapping?.texture;\r\n }\r\n}\r\n\r\n/** @public */\r\nexport namespace RenderMaterial { // eslint-disable-line no-redeclare\r\n function clampToNormalizedRange(value: number): number {\r\n return Math.max(0.0, Math.min(1.0, value));\r\n }\r\n\r\n /** @deprecated in 3.x. Use [CreateRenderMaterialArgs]($frontend). */\r\n export class Params {\r\n /** If the material originates from a Material element in the [[IModel]], the Id of that element. */\r\n public key?: string;\r\n /** Diffuse color, or undefined if this material does not override the surface's own color. */\r\n public diffuseColor?: ColorDef;\r\n /** Specular color. Defaults to white if undefined. */\r\n public specularColor?: ColorDef;\r\n /** Currently unused. @alpha */\r\n public emissiveColor?: ColorDef;\r\n /** Currently unused. @alpha */\r\n public reflectColor?: ColorDef;\r\n /** Optional pattern mapping applied to the surface. */\r\n public textureMapping?: TextureMapping;\r\n /** Diffuse weight in [0..1] */\r\n public diffuse: number = 0.6;\r\n /** Specular weight in [0..1] */\r\n public specular: number = 0.4;\r\n public specularExponent: number = 13.5;\r\n /** Currently unused. @alpha */\r\n public reflect: number = 0.0;\r\n /** Currently unused. @alpha */\r\n public refract: number = 1.0;\r\n /** Currently unused. @alpha */\r\n public ambient: number = .3;\r\n /** Currently unused. @alpha */\r\n public shadows = true;\r\n private _alpha?: number;\r\n\r\n public constructor(key?: string) { this.key = key; }\r\n\r\n /** Obtain an immutable instance of a RenderMaterial with all default properties. */\r\n // eslint-disable-next-line deprecation/deprecation\r\n public static readonly defaults = new Params();\r\n\r\n /** A value from 0.0 (fully-transparent) to 1.0 (fully-opaque) controlling the transparency of surfaces to which this material is applied;\r\n * or undefined if this material does not override surface transparency.\r\n */\r\n public get alpha(): number | undefined { return this._alpha; }\r\n public set alpha(alpha: number | undefined) {\r\n this._alpha = undefined !== alpha ? clampToNormalizedRange(alpha) : undefined;\r\n }\r\n\r\n /** Create a RenderMaterial params object using specified key and ColorDef values, as well as an optional texture mapping. */\r\n // eslint-disable-next-line deprecation/deprecation\r\n public static fromColors(key?: string, diffuseColor?: ColorDef, specularColor?: ColorDef, emissiveColor?: ColorDef, reflectColor?: ColorDef, textureMap?: TextureMapping): Params {\r\n // eslint-disable-next-line deprecation/deprecation\r\n const materialParams = new Params();\r\n materialParams.key = key;\r\n materialParams.diffuseColor = diffuseColor;\r\n materialParams.specularColor = specularColor;\r\n materialParams.emissiveColor = emissiveColor;\r\n materialParams.reflectColor = reflectColor;\r\n materialParams.textureMapping = textureMap;\r\n return materialParams;\r\n }\r\n }\r\n}\r\n\r\n// eslint-disable-next-line deprecation/deprecation\r\nObject.freeze(RenderMaterial.Params.defaults);\r\n"]}
1
+ {"version":3,"file":"RenderMaterial.js","sourceRoot":"","sources":["../../src/RenderMaterial.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAKH;;GAEG;AACH,MAAsB,cAAc;IAMlC,mDAAmD;IACnD,YAAsB,MAA6B;QACjD,IAAI,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC;QACtB,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC;IAC9C,CAAC;IAED,IAAW,UAAU;QACnB,OAAO,SAAS,KAAK,IAAI,CAAC,cAAc,EAAE,OAAO,CAAC;IACpD,CAAC;CACF;AAfD,wCAeC;AAED,cAAc;AACd,WAAiB,cAAc;IAC7B,SAAS,sBAAsB,CAAC,KAAa;QAC3C,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;IAC7C,CAAC;IAED,qEAAqE;IACrE,MAAa,MAAM;QA4BjB,YAAmB,GAAY;YAf/B,+BAA+B;YACxB,YAAO,GAAW,GAAG,CAAC;YAC7B,gCAAgC;YACzB,aAAQ,GAAW,GAAG,CAAC;YACvB,qBAAgB,GAAW,IAAI,CAAC;YACvC,+BAA+B;YACxB,YAAO,GAAW,GAAG,CAAC;YAC7B,+BAA+B;YACxB,YAAO,GAAW,GAAG,CAAC;YAC7B,+BAA+B;YACxB,YAAO,GAAW,EAAE,CAAC;YAC5B,+BAA+B;YACxB,YAAO,GAAG,IAAI,CAAC;YAGa,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QAAC,CAAC;QAMpD;;WAEG;QACH,IAAW,KAAK,KAAyB,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;QAC9D,IAAW,KAAK,CAAC,KAAyB;YACxC,IAAI,CAAC,MAAM,GAAG,SAAS,KAAK,KAAK,CAAC,CAAC,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAChF,CAAC;QAED,6HAA6H;QAC7H,mDAAmD;QAC5C,MAAM,CAAC,UAAU,CAAC,GAAY,EAAE,YAAuB,EAAE,aAAwB,EAAE,aAAwB,EAAE,YAAuB,EAAE,UAA2B;YACtK,mDAAmD;YACnD,MAAM,cAAc,GAAG,IAAI,MAAM,EAAE,CAAC;YACpC,cAAc,CAAC,GAAG,GAAG,GAAG,CAAC;YACzB,cAAc,CAAC,YAAY,GAAG,YAAY,CAAC;YAC3C,cAAc,CAAC,aAAa,GAAG,aAAa,CAAC;YAC7C,cAAc,CAAC,aAAa,GAAG,aAAa,CAAC;YAC7C,cAAc,CAAC,YAAY,GAAG,YAAY,CAAC;YAC3C,cAAc,CAAC,cAAc,GAAG,UAAU,CAAC;YAC3C,OAAO,cAAc,CAAC;QACxB,CAAC;;IAxBD,oFAAoF;IACpF,mDAAmD;IAC5B,eAAQ,GAAG,IAAI,MAAM,EAAE,AAAf,CAAgB;IAhCpC,qBAAM,SAuDlB,CAAA;AACH,CAAC,EA9DgB,cAAc,8BAAd,cAAc,QA8D9B;AAED,mDAAmD;AACnD,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC","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 Rendering\r\n */\r\n\r\nimport { ColorDef } from \"./ColorDef\";\r\nimport { TextureMapping } from \"./TextureMapping\";\r\n\r\n/** Represents a material which can be applied to a surface to control aspects of its appearance such as color, reflectivity, texture, and so on.\r\n * @public\r\n */\r\nexport abstract class RenderMaterial {\r\n /** If the material originated from a Material element in the [[IModelDb]], the Id of that element. */\r\n public readonly key?: string;\r\n /** Describes how to map an image to a surface to which this material is applied. */\r\n public readonly textureMapping?: TextureMapping;\r\n\r\n // eslint-disable-next-line deprecation/deprecation\r\n protected constructor(params: RenderMaterial.Params) {\r\n this.key = params.key;\r\n this.textureMapping = params.textureMapping;\r\n }\r\n\r\n public get hasTexture(): boolean {\r\n return undefined !== this.textureMapping?.texture;\r\n }\r\n}\r\n\r\n/** @public */\r\nexport namespace RenderMaterial { // eslint-disable-line no-redeclare\r\n function clampToNormalizedRange(value: number): number {\r\n return Math.max(0.0, Math.min(1.0, value));\r\n }\r\n\r\n /** @deprecated in 3.x. Use [CreateRenderMaterialArgs]($frontend). */\r\n export class Params {\r\n /** If the material originates from a Material element in the [[IModel]], the Id of that element. */\r\n public key?: string;\r\n /** Diffuse color, or undefined if this material does not override the surface's own color. */\r\n public diffuseColor?: ColorDef;\r\n /** Specular color. Defaults to white if undefined. */\r\n public specularColor?: ColorDef;\r\n /** Currently unused. @alpha */\r\n public emissiveColor?: ColorDef;\r\n /** Currently unused. @alpha */\r\n public reflectColor?: ColorDef;\r\n /** Optional pattern mapping applied to the surface. */\r\n public textureMapping?: TextureMapping;\r\n /** Diffuse weight in [0..1] */\r\n public diffuse: number = 0.6;\r\n /** Specular weight in [0..1] */\r\n public specular: number = 0.4;\r\n public specularExponent: number = 13.5;\r\n /** Currently unused. @alpha */\r\n public reflect: number = 0.0;\r\n /** Currently unused. @alpha */\r\n public refract: number = 1.0;\r\n /** Currently unused. @alpha */\r\n public ambient: number = .3;\r\n /** Currently unused. @alpha */\r\n public shadows = true;\r\n private _alpha?: number;\r\n\r\n public constructor(key?: string) { this.key = key; }\r\n\r\n /** Obtain an immutable instance of a RenderMaterial with all default properties. */\r\n // eslint-disable-next-line deprecation/deprecation\r\n public static readonly defaults = new Params();\r\n\r\n /** A value from 0.0 (fully-transparent) to 1.0 (fully-opaque) controlling the transparency of surfaces to which this material is applied;\r\n * or undefined if this material does not override surface transparency.\r\n */\r\n public get alpha(): number | undefined { return this._alpha; }\r\n public set alpha(alpha: number | undefined) {\r\n this._alpha = undefined !== alpha ? clampToNormalizedRange(alpha) : undefined;\r\n }\r\n\r\n /** Create a RenderMaterial params object using specified key and ColorDef values, as well as an optional texture mapping. */\r\n // eslint-disable-next-line deprecation/deprecation\r\n public static fromColors(key?: string, diffuseColor?: ColorDef, specularColor?: ColorDef, emissiveColor?: ColorDef, reflectColor?: ColorDef, textureMap?: TextureMapping): Params {\r\n // eslint-disable-next-line deprecation/deprecation\r\n const materialParams = new Params();\r\n materialParams.key = key;\r\n materialParams.diffuseColor = diffuseColor;\r\n materialParams.specularColor = specularColor;\r\n materialParams.emissiveColor = emissiveColor;\r\n materialParams.reflectColor = reflectColor;\r\n materialParams.textureMapping = textureMap;\r\n return materialParams;\r\n }\r\n }\r\n}\r\n\r\n// eslint-disable-next-line deprecation/deprecation\r\nObject.freeze(RenderMaterial.Params.defaults);\r\n"]}
@@ -1025,5 +1025,5 @@ var RenderSchedule;
1025
1025
  }
1026
1026
  }
1027
1027
  RenderSchedule.ScriptBuilder = ScriptBuilder;
1028
- })(RenderSchedule = exports.RenderSchedule || (exports.RenderSchedule = {}));
1028
+ })(RenderSchedule || (exports.RenderSchedule = RenderSchedule = {}));
1029
1029
  //# sourceMappingURL=RenderSchedule.js.map