Markers are used to position decorations in a view that follow a position in world coordinates. Previously they could display World Decorations and Canvas Decorations. They may now also include an optional HTML Decoration by assigning the "htmlElement" member. See Marker documentation for details.
- OidcBrowserClient now uses local storage instead of session storage to store access tokens. The state of the authorization would therefore now be preserved if the browser was closed and reopened.
Note: The browser setting to clear local storage on exit must not be enabled.
OidcBrowserClient can now be used in authorization code workflows. A new responseType parameter can be set to "code" to support these workflows. This also requires a new client to be registered.
OidcAgentClient is now available as beta (it was marked internal earlier). Using the client requires an Agent registration and potential changes to the Connect Project settings - see more documentation in OidcAgentClient.
On systems that support the required WebGL extension, vertex array objects are used to improve display performance.
Fixed a regression that prevented the tiles comprising the background map from being reprojected using the the geocoordinate system defined in the iModel, causing the map graphics to be incorrectly aligned with the model geometry.
Fixed the behavior of the "Data Attribution" link that, when clicked, displays copyright information for map tiles displayed in the view. Previously it would always open an empty modal dialog. Now, if any copyright information is available, it will be correctly displayed in the dialog; otherwise, a toast message will be displayed indicating the unavailability of attribution.
Functions for converting the contents of an ImageBuffer into an
HTMLCanvasElement or PNG image now take an optional argument indicating whether or not the alpha channel should be preserved. imageBufferToCanvas, imageBufferToPngDataUrl, and imageBufferToBase64EncodedPng all support the new argument.
IModelDb.exportGraphics can now optionally return information about GeometryPart instances encountered in a GeometryStreamProps. IModelDb.exportPartGraphics can then be used to handle this information in a more efficient manner.
IModelDb.exportGraphics can now optionally return information about linework (or "open") geometry encountered in a GeometryStream.
An example GLTF 2.0 exporter demonstrating these features is now available under test-apps in the iModel.js monorepo.
High level Roadmap - We want your feedback, check it out and help us improve it.
- Various new methods for manipulating polygons and curves
- Correct stroking of BezierCurve3d
UI Items now support badging with BetaBadge. Applications can now specify an image to overlay on an item to highlight it. For example, early release tools can be marked with a badge to indicate their beta state.
The 9-zone UI now supports an external set of Stage Panels. These panels can be used to move high-density widgets out of the area shared by the graphical viewport for ease of use. The Stage Panels feature is part of the ui-ninezone package and is in preview.
Applications can now serialize and deserialize the layout and content of the ContentView using the SaveViewLayout class. The SavedView and StageContentLayout classes are in preview.
Last Updated: 12 February, 2024