About this release

The 2024.0 release of LuciadRIA adds new formats and offers new tools for improving point cloud visual quality. This release also marks the end of the 2D non-WebGL map introduced in 2012. Moving forward, we will focus on WebGLMap.

luciad portfolio
Figure 1. The Luciad portfolio.

2D non-WebGL map end of life announcement

LuciadRIA was released in 2012 with a 2D map based on an HTML5 Canvas. In 2016, the WebGL-powered hybrid 2D/3D map was introduced, leveraging WebGL support in most browsers. Moving forward, we will focus solely on WebGLMap. WebGLMap offers all the capabilities of a non-WebGL map and brings much more to the table.

Starting from LuciadRIA 2024.0, the non-WebGL Map will be deprecated. The 2024.0 and 2024.1 releases will be the last ones supporting it. We understand that your applications in the field have a significant lifespan. LuciadRIA 2024 will be actively maintained until the release of version 2027. Contact us at product.management.luciad.gsp@hexagon.com if you plan to extend your maintenance on LuciadRIA version 2024 beyond 2027, so we are aware of your project.

In our next major release, LuciadRIA 2025.0, we plan to remove the non-WebGL Map. All maps will switch to hardware accelerated. We’re committed to making the transition as smooth as possible. Switching to WebGLMap will be as effortless as changing the current constructor call for the map.

The article Non-WebGL Map end-of-life announcement contains full details to ensure you’re fully informed and prepared for this transition. Should you have any questions, please contact us at product.management.luciad.gsp@hexagon.com.

Benefits of the new features

OGC 3D Tiles 1.1 connector

We have supported OGC 3D Tiles since version 2018, starting with support for version 1.0. In the meantime, the new version of 3D Tiles has been adopted as OGC community standard. Previously referred to as “3D Tiles Next,” Version 1.1 of the 3D Tiles Community Standard is designed for streaming high-resolution, semantically rich 3D geospatial data to the metaverse. OGC 3D Tiles 1.1 promotes several 3D Tiles 1.0 extensions to ‘core’ and introduces new glTF™ extensions for fine-grained metadata storage.

With LuciadRIA 2024.0, you can now visualize OGC 3D Tiles 1.1.

The specification of OGC 3D Tiles 1.1 is rich. We have not yet received test data for each new feature, so the currently supported functionality includes:

  • Implicit tiling

  • GLB/glTF as payload

  • Support for a number of glTF 2.0 extensions

glTF data with the supported extensions can also be loaded as 3D icons.

We will continue to complete our support for OGC 3D Tiles 1.1 in upcoming releases, driven by data that we notice and that is reported by you. For example, metadata is not supported, because we have not yet encountered sufficient OGC 3D Tiles 1.1 test data including metadata.

The OGC3DTilesModelDescriptor has two new properties: hasPointCloud and hasMesh. These new properties allow you to conveniently check if your 3DTiles dataset contains a mesh, a point cloud or both.

Sample code/documentation to get you started

The documentation topic Data Formats: OGC 3D Tiles and the reference documentation for OGC3DTilesModel have been updated to cover the supported OGC 3D Tiles 1.1 functionality.

The Data Formats sample and the OGC 3D Tiles sample both support OGC 3D Tiles 1.1.

OGC 3D Tiles 1.1
Figure 2. The Data Formats sample.

Google 2D Map Tiles connector

As of version 2024, LuciadRIA includes a connector for Google 2D Map Tiles. Google 2D Map Tiles divide the world into an indexed grid. It lets you access and utilize map data efficiently and dynamically at multiple cartographic scales. The Map Tiles API gives you access to multiple thematic geo-datasets, including Google-curated roadmap image tiles and satellite imagery.

The new class GoogleMapsTileSetModel allows you to create a model for the desired Google Maps data, which can then be added to a LuciadRIA map using a RasterTileSetLayer.

Sample code/documentation to get you started

The article Visualizing Google 2D Tiles has been added to the documentation to guide you. Basic usage is illustrated in the LuciadRIA Data Formats sample.

Google 2D tiles
Figure 3. A LuciadRIA view of the Leuven Hexagon office in Google 2D Tiles.

Point cloud rendering improvements

We continuously strive to improve the quality of point cloud rendering within LuciadRIA. Applying the right settings can make a significant difference for your application user, as this figure shows.

Quality point cloud
Figure 4. The picture on the left shows an unclear, sparse point cloud. The picture on the right shows this point cloud displayed with high visual quality

This release brings two additional configuration options for quality and a new feature: point cloud density painting.

Additional configuration options

You can now display point clouds using normal-oriented points. The point orientation setting is enabled by default if the dataset has normal vector values.

Normal orientation
Figure 5. The animation shows the improvement when a point cloud is visualized with the normal orientation taken into account.

In addition, there is a new post-processing filter available for point clouds: blending. When enabled, it merges overlapping points together to increase the visual quality.

pc blending
Figure 6. The animation shows how blending improves the readability of the text.

Point cloud density painting

WebGL maps support hardware-accelerated density maps, often called heat maps. A density map counts overlapping points on each pixel and colors the pixels according to the amount of overlap.

PointCloudStyle now contains a density property. It allows you to set a ColorMap on the point cloud style. The ColorMap is used to render the point cloud model as a heatmap of the point density.

An illustration of point cloud density painting with applied color map (left) or for the specific use case of generating a floor plan (right).
colormap
floorplan

Sample code/documentation to get you started

The information about normal orientation and blending has been integrated into the article Tuning performance and visual quality of point clouds. For more information on density painting, see the new Density painting of point cloud data article.

Explore LuciadRIA Toolbox

The LuciadRIA product release installation contains sample code in addition to the main product. This is the case for all products in the Luciad portfolio. See Figure 1, “The Luciad portfolio.”.

The purpose of sample code is illustrating how to leverage our API to implement all kinds of use cases. Over time, the LuciadRIA samples were organized such that they contain samples/common, a directory with UI components that are used by multiple samples.

In this release, we go a step further and introduce the LuciadRIA Toolbox. This is a collection of tools and utility code required by many customers. A basic integration API gives you easy access to the sophisticated features in this toolbox. It is either intended to be used as-is, or completely modified from source code.

Other improvements

Default map controller

It is now easier to change the behavior of the default map controller. More specifically, Map now exposes a defaultController field, which makes it easier to use custom navigation, hover or select controllers on the map. There are also new DefaultController and NavigateController classes that expose the default map behavior. See the article Managing user input with LuciadRIA controllers for an update.

WASM SIMD

LuciadRIA now uses WASM SIMD instructions in some places to improve performance. Note: this feature requires browser support for SIMD. Such support was added in Firefox in version 89, in Edge in version 91, in Chrome in version 91 and in Safari in version 16.4.

WMTS sparse raster layer support

Support for sparse WMTS raster layers, meaning WMTS raster layers with a tileset structure characterized by missing tiles along the tile pyramid, has been improved. LuciadRIA now allows tiles of higher zoom levels to be displayed even if parent tiles of lower zoom levels are unavailable. This improvement was already released as part of one of the 2023.1 patches.