About this release

The 2024.0 release of LuciadLightspeed includes a structurally revised radar video capability. We now support variations in resolution and rotation speed during radar operation.

LuciadLightspeed 2024.0 also strengthens the support for Building Information Modeling (BIM) data. You can now handle Autodesk Revit data in addition to the exchange format Industry Foundation Classes (IFC).

This release also combines many specifically requested features. Developers will benefit from the raised minimal Java version and many security upgrades. The MBTiles and ECW format support have also been extended. This document lists the most noteworthy improvements.

luciad portfolio
Figure 1. The Luciad portfolio.

Benefits of the new features

Upgraded support for radar video

LuciadLightspeed offers a direct connection to radar video since version 2014. This includes a decoder for Asterix Category 240 data. Over time, this component was updated with additional configuration possibilities, up to adding your own custom radar feed. Recently, we learned that users are increasingly encountering radar feeds that no longer comply with our previous assumption of a constant resolution for the input and rotation angle for a specific radar. We took our radar capability back to the lab and structurally changed our approach.

LuciadLightspeed can now connect to and visualize radar data with varying angular and radial resolution. It supports variable rotation speed of the sweep line, including the case where it remains fixed. These improvements show better performance in most cases. We kept the previous behavior so you can decide what fits best for your use case. Translated to the API, this means that TLspRadarVideoLayerBuilder can now work with radar feeds of which the angular or radial resolution are variable over time. This requires the user to manually specify the resolution of the visualization, which is then effectively decoupled from that of the data. The new method displayResolution() on the layer builder is used to enable this behavior. If called, the radar video layer will be fully robust against all variations in the resolution of the incoming data.

This setting specifies the resolution and range of the radar data that is visualized. Data that lies outside the specified distance range will not be displayed, and incoming data will be resampled to match the requested radial and angular resolution. If this method is not called, the layer will infer the range and resolution of the radar feed by looking at the data records themselves, but this requires the feed resolution to be constant. The latter corresponds to the behavior of the radar video support in previous product versions.

radarvideo
Figure 2. The ASTERIX Cat. 240 sample showing radar video data.

Sample code/documentation to get you started

The article Visualizing radar video has been updated. See Handling variable data resolutions.

Support for Autodesk Revit data

Revit is a BIM software tool for architects, engineers, and construction professionals to model shapes, structures, and systems in 3D. It stores these 3D models in a proprietary RVT file format with the .rvt file extension.

These RVT files contain:

  • A geometry model of a building or facility, including spatial elements, materials, and shapes

  • A feature data model describing typical BIM properties of that data, such as layer, material and more

Revit data does not have a tiling structure. Therefore, the data is organized into a new tile structure during the conversion. This further extends LuciadLightspeed’s renowned 3D tiling capability.
revit ria
Figure 3. The visualization of a Revit file, after conversion into OGC 3D Tiles.

Sample code/documentation to get you started

The article Converting Revit data to OGC 3D Tiles explains how to get started. After the conversion, you can visualize the data on a Lightspeed view, as explained in the Visualize OGC 3D Tiles data on a Lightspeed map.

Java and security upgrades

Java support

or every version up to and including LuciadLightspeed 2023, the minimal required Java version was 8. This was based on customer demand. With all the changes introduced by Oracle in recent years, we received explicit demands to continue supporting Java 8. In the meantime, priorities have shifted, for us and for our customers.

One of the factors is that many third-party libraries have raised their minimum required Java versions. The LTS versions after Java 8 are 11 and 17. This past September, the premier support for Java 11 ended, so we decided to raise the minimal supported Java version on our side to Java 17. At the same time, we also made sure that LuciadLightspeed supports Java 21. The supported Java versions are documented with the Hardware and software requirements in the product documentation.

The article Integrate LuciadLightspeed into your IDE has also been updated.

Security updates

The 2024.0 release of LuciadLightspeed includes several security updates. The release notes provide full details on the updated, removed and added dependencies. Please look for security updates under the upgrade considerations in the release notes.

The various updates resulted in some upgrade considerations:

  • The third-party library GDAL was updated to version 3.8.3. With this update, the TLcdGDALModelDecoder can no longer decode Arc/Info Export E00 GRID files. The GDAL library no longer offers supports for this format.

  • The minimum supported glibc (GNU C Library) for Linux has been raised to 2.28. This means that Ubuntu 18 is no longer supported.

  • This version of LuciadLightspeed no longer supports 32-bit Linux for the GXY view.

For the full list, please consult the release notes.

Improved vertical datum and reference support

The default behavior of a number of model decoders used to decode elevation data, has been changed. We now enable support for vertical datums by default. Supporting vertical datums will cause the appropriate geoid elevation to be applied to the data. This provides more accurate elevation values.

The affected elevation data formats are DEM, DMED/DTED, ETOPO, GeoTIFF, LAS/LAZ, and SwissDHM.

Because of this change, the geoid elevation will be applied to your elevation data. Your elevation layers may be painted at a different height, which can cause the data on your other layers to be misaligned with your terrain layer. You should check that your terrain layer is still properly aligned with your other layers, especially if you are using the terrain analysis (TEA) module.

If your data is misaligned after this change you can try to resolve it in the following ways:

  • Update your other layers to use the same vertical datum reference as your elevation data

  • Disable geoid support for a specific model decoder, by calling the method #setSupportGeoidDatums(boolean)

  • Disable geoid support for all model decoders, by setting the system property com.luciad.geodesy.geoidSupport.LEGACY to true.

geoid support
Figure 4. Visualization of LAS data with orthometric heights. The left screenshot shows the result without geoid support, resulting in a misalignment between the point cloud heights and the underlying terrain. The right screenshot shows the correct result with geoid support.

In other situations, you want to influence the order in which reference sources are checked to determine the model reference. You can now set a model reference decoder priority for model decoders supporting this feature. The priority decides whether an embedded or external reference source is used first to determine the model reference before falling back to the other source in case of an error.

These model decoders support this feature: TLcdGeoTIFFModelDecoder, TLcdLASModelDecoder and TLcdE57ModelDecoder. The article Setting model reference decoder priority summarizes this topic.

Improved ECW support

LuciadLightspeed users can now visualize ECW images with any number of bands and any bit depth. To support this, the previous libraries are now replaced by the native libraries provided as part of ERDAS ECW JP2 SDK version 6.1.0.

As a result, you can now use image processing on ECW data. The LuciadLightspeed image processing framework allows you to access images built from raster data and enhance or highlight certain aspects of the raster data for display. You can make use of various image manipulation operations, including the typical image operations to work with multi-band images, high dynamic range (HDR) images and low-quality images.

This improvement resulted in a few upgrade considerations. Please check the release notes for more details.

Sample code/documentation to get you started

For information about handling raster data within LuciadLightspeed, see Models: Handling raster data.

ecw
Figure 5. The Multispectral sample illustrates how to work with multi-band or HDR imagery

Upgrade considerations

This section lists other noteworthy upgrade considerations:

Oracle

Oracle versions 8, 9i, 10g, 11g, 12c and 18c are no longer supported as a database by the TLcdOracleSpatialModelDecoder, TLcdOracleSpatialModelEncoder and TLcdOracleGeoRasterModelDecoder. These versions are no longer supported by Oracle. See the Oracle Lifetime Support Policy document for more information. It is advisable to upgrade to a newer version of Oracle database if you are still using any of these versions.

PostgreSQL

PostgreSQL versions 8.x, 9.x, 10 and 11 are no longer supported as a database by the TLcdPostGISModelDecoder and TLcdPostGISModelEncoder. These versions are no longer supported by the PostgreSQL Global Development Group. See the PostgreSQL Versioning Policy page for more information. It is advisable to upgrade to a newer version of PostgreSQL if you are still using any of these versions.

SQL Server

SQL Server versions 2008 and 2012 are no longer supported by the TLcdMSSQLModelDecoder and TLcdMSSQLModelEncoder. It is advisable to upgrade to a newer version of SQL Server if you are still using version 2008 or 2012.

Other improvements

Replace a color

LuciadLightspeed now supports replacing multiple colors within an image. A common example is a satellite image that comes with black or white borders. You can use this new capability through the image processing API and the new TLcdPixelReplaceOp operator, or you can use OGC SE/SLD, through a Luciad-specific option. For more information, please consult the new article How to replace a color.

MBTiles support

The MBTiles decoder supports data from a file and from a service. LuciadFusion now offers a new service type for serving MBTiles data, including both raster and vector MBTiles data. LuciadLightspeed can connect to these services, as well as to offline data sources.

More robust Binz model decoding

The TLcdBinzModelDecoder is now more robust when encountering objects with an unknown type. The unknown objects will be logged and skipped, and the conversion will continue without them.

Defining extruded shapes using OGC SE/SLD

You can now use SLD styles to style vector data containing height information with extruded shapes in a 3D view. To enable this, you can use new vendor-specific options inside a PolygonSymbolizer. For more information, see How to style vector objects with an extruded shape in a 3D view.

sld extruded
Figure 6. Building data styled with SLD, using extruded shapes and thematic fill and stroke styling based on building heights.
Apply a color map on 2-band measurement data using OGC SE/SLD

You can now use SLD styles with color maps to render dual-band raster data, such as wind or water velocity data decoded from OGC NetCDF files. Such data consists of a U and a V band that respectively represent a magnitude value parallel to the X and Y axis. The SLD rendering pipeline calculates the magnitude for a vector that combines the U and V bands, on which the color map is applied. This improvement was already released as part of one of the 2023.1 patches.

You can now apply a color map to dual band raster, like water current. The picture on the left depicts the previous solution, on the right you can see how the new colormap capability provides a more intuitive view on the currents
Currents before
Figure 7. Old approach to dual band raster of currents
Currents after
Figure 8. A more intuitive view of currents with a color map