About this release

The 2024.1 release of LuciadRIA adds support for draping video footage on the map, offers a convenient projection switch, and adds support for high-resolution screens.

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.

As previously announced, the 2025.0 release will mark the end of the non-WebGL Canvas Map, in favor of the hardware-accelerated WebGL Map only. This means that this 2024.1 release (and possible future 2024.x minor upgrades) will be the last one to contain the 2D Canvas Map.

The 2024 version of LuciadRIA will be actively maintained until the release of version 2027. Contact the Luciad Product Management team at product.management.luciad.gsp@hexagon.com if you plan to extend your maintenance on LuciadRIA 2024 beyond 2027 so we are aware of your project.

You can find more information here.

Benefits of the new features

Video draping

Video data is an important contributor to situational awareness. Using the previous versions of LuciadRIA, it was already possible to show video in a separate component in the browser, via custom coding. For georeferenced videos, there is added value in enhancing static terrain or background data by adding the video footage to the map, as illustrated in Figure 2, “Video footage of the Luciad Leuven office area visualized in LuciadRIA”. The draping of video footage on other data or terrain was already available in our desktop product LuciadLightspeed. It has now made its way into LuciadRIA.

LuciadRIA VideoDraping
Figure 2. Video footage of the Luciad Leuven office area visualized in LuciadRIA

Note that this capability is part of the "Panoramic Imagery" option of LuciadRIA, which is included in the Pro Tier of the product.

Sample code/documentation to get you started

To guide you in adding video to your LuciadRIA map view, the article How to visualize panoramic video footage was added to the documentation. The new sample "Video panorama" illustrates this in more detail.

LuciadRIA VideoSample
Figure 3. The new Video Panorama sample illustrates the integration of video footage in the LuciadRIA view

Improved WebGL view

This 2024.1 release brings a few important improvements to the LuciadRIA WebGL View.

Projection switch

This release includes convenience API to change the map reference at runtime. This means that the map state, including all previously added data, will be kept, with the only change being the visual representation reference. Using this API, you can let the user of your application switch between 2D and 3D, for example, with a simple click of a button.

The implementation is very straightforward. You can now set the reference of WebGLMap after the map has been created, instead of only at construction time.

During a map reference switch, parts of the map are destroyed and recreated, which has the following effects:

  • The visible layers can unload and quickly reload.

  • After the reference switch, map.controller is set to null and map.defaultController is set to a new DefaultController.

  • Map creation options that are not supported in the new reference, will be lost. For example, if you switch a map with the wrapAroundWorld: true setting to a 3D reference and then back to a 2D reference, wrapAroundWorld will be false.

The camera state is also saved before switching and restored after switching if possible.

Note that you cannot switch from or to a non-geospatial projection.

Sample code/documentation to get you started

To illustrate the map projection switch, many of the LuciadRIA samples now include a 2D/3D switch in the Graphical User Interface (GUI). See Figure 4, “Many of the samples feature a "2D/3D switch" in the GUI, illustrating the map projection switch in LuciadRIA”.

LuciadRIA GUI
Figure 4. Many of the samples feature a "2D/3D switch" in the GUI, illustrating the map projection switch in LuciadRIA

HiDPI support

High-resolution screens, such as WQHD or 4K screens, offer a higher pixel density than regular screens. This pixel density can now be taken into account, to achieve sharper results on your data. This effect is called display scaling. The effect of display scaling is illustrated in Figure 5, “A LuciadRIA-based application shown on a high-resolution screen, without application of display scaling” and Figure 6, “A LuciadRIA-based application shown on a high-resolution screen, with application of display scaling”.

LuciadRIA HiDPI 2024.0
Figure 5. A LuciadRIA-based application shown on a high-resolution screen, without application of display scaling
LuciadRIA HiDPI 2024.1
Figure 6. A LuciadRIA-based application shown on a high-resolution screen, with application of display scaling

Sample code/documentation to get you started

To guide you while enabling display scaling on high-resolution screens, the article Display scaling (HiDPI) in LuciadRIA has been added to the documentation.

3D Tiles 1.1 completeness

This 2024.1 release of LuciadRIA continues the 2024.0 initiative to upgrade our 3D Tiles decoder to OGC 3D Tiles 1.1. Version 2024.1 brings support to instancing for OGC 3D Tiles. Moreover, it supports PNTS/GLB/glTF payloads for the visualization of point clouds. A PNTS payload can have Draco compression.

Finally, LuciadRIA now also supports metadata according to the`EXT_structural_metadata` extension.

The complete list of supported features and remaining limitations is documented with the class OGC3DTilesModel.

Sample code/documentation to get you started

The section Data Formats: OGC 3D Tiles has been brought up to date with the latest improvements and extensions.

New tools in LuciadRIA Toolbox

The LuciadRIA Toolbox was introduced in the 2023.1 release and we keep adding to it more tools that are usable out-of-the-box. This release will not be any different as we introduce the Tours tool.

Tours

The Tours tool allows users to create video footage of their scene. They can use this tool to create a path, which the virtual camera will follow while recording.

The tool consists mostly of the following classes:

  • TourPathSupport: to create and edit the path of tours

  • TourPlayerSupport: to play tours

  • TourRecorderSupport: to record tours

Sample code/documentation to get you started

The article Use the LuciadRIA Toolbox provides an overview of the available tools in LuciadRIA Toolbox and lists the relevant classes to help you get started.

Other improvements

Restful WMTS

LuciadRIA now supports Restful WMTS services, on top of the previously supported Key-Value-Pair approach. This includes all previously supported operations. WMTSCapabilities can now detect if the two encoding methods are supported. You can then select the one you want.

OGC SLD improvements

We added support for the vendor option 'inclusion'. To demonstrate its usage, a 'Legend' tool was added to the LuciadRIA Toolbox. You can also find a reference to this new tool in the article Use the LuciadRIA Toolbox.

BIM Sample improvements

We updated the BIM sample:

  • It was renamed to "BIM Viewer"

  • We added predefined datasets coming from BINZ, Revit, Navisworks, and IFC

  • The sample can now be used to load custom, converted datasets. Those can also be unreferenced.

  • We added the ability to load the dataset geometry only, leaving out the feature metadata

Bézier curve geometry

We added support in our ShapeFactory for Bézier curves. Bézier curves consist of curves defined by a set of control points. Those curves can either be cubic or quadratic. Both types are now supported. The Create and Edit sample allows you to interactively create and edit these shapes. See Figure 7, “The Create and Edit sample now also includes support for Bézier curves”.

LuciadRIA createedit
Figure 7. The Create and Edit sample now also includes support for Bézier curves