2026.0.02

ImprovementLuciadFusion

LCD-14533
The WMTS server has been enhanced to handle TIME dimension values more flexibly. Previously, only values that exactly matched the strings advertised in the WMTS capabilities were accepted. The server now also accepts ISO 8601 time values that are temporally equivalent to the advertised values.

ImprovementLuciadFusion

LCD-14211
It is now possible to customize the ELspCreationMode on TLsp3DPointListEditor. A creation mode configured via TLspShapeEditor#setCreationMode now also applies to the delegate TLsp3DPointListEditor.

Bug fixLuciadFusion

LF-2855

Resolved an index error that prevented the correct execution of the Database migration scripts when upgrading from LuciadFusion to 2026.0 on SQL Server databases.

Bug fixLuciadFusion

LCD-14218
Fixed a bug which caused certain TLcdLonLatGeoBuffers to have incorrect contours and visualization.

Bug fixLuciadFusion

LCD-14207
The documentation in the interface ILcdOGCCondition, class TLcdOGCBinaryComparisonOperator and article OGC filters in a LuciadLightspeed application all incorrectly referred to the PropertyIsLessOrEqualThan and PropertyIsLessOrEqualThan operators. These have now been updated to the correct operator names: PropertyIsLessThanOrEqualTo and PropertyIsGreaterThanOrEqualTo.

Bug fixLuciadFusion

LCD-14531
The WCS GetCoverage request resulted in a server error when the request would result in a too small image. Now it returns an OGC error response for such a request, using an http status code 400.

Bug fixDefense Symbology

LCD-14210
It is now possible to provide a custom selection icon for military icon symbols. This can be done using the new method TLcdMilitarySymbolStyle.setSelectionIcon(ILcdResizableIcon)

Bug fixMaritime Standards

LCD-14528
LineInstructionUnsuppressed drawing commands are now correctly parsed.

2026.0

2026.0.01

ImprovementLuciadFusion

LF-2842
New configuration properties have been added to allow users to specify which versions are supported by the WFS, WMS and WCS services. See the fusion.ogc.wfs.supportedVersions, fusion.ogc.wms.supportedVersions and fusion.ogc.wcs.supportedVersions properties in the fusion.common.yml config file for more information.

ImprovementLuciadFusion

LF-2807
A new configuration property has been added to specify the value of the Access-Control-Allow-Credentials HTTP response header used in CORS. By default, LuciadFusion returns this header with the value true. With the new fusion.security.cors.allowCredentials property in the application-fusion.development.yml or application-fusion.production.yml config files, this behaviour can be changed.

ImprovementLuciadFusion

LCD-14203
Tolerance parameters were added to the following methods:
  • TLcdEllipsoidUtil#closestPointOnShape
  • TLcdEllipsoidRhumblineUtil#closestPointOnShape
  • TLcdSphereRhumblineUtil#closestPointOnShape

ImprovementLuciadFusion

LCD-14092
TLspFXBalloonManager: it is now possible to customize the appearance of the balloons using CSS. Please refer to the API documentation for more details.

ImprovementLuciadFusion

LCD-13724
Improved documentation of TLspShapeEditor on how to plug in a custom editor.

ImprovementMaritime Standards

LCD-14125, LCD-14123
The visualization of S-101 light sectors has been improved; angles are now correctly oriented w.r.t. the view's projection and orientation, and the line cap and join style are taken into account during painting.

Bug fixLuciadFusion

LCD-14216
TLcdGeoJsonModelDecoder can now correctly parse topocentric reference WKT strings and create the appropriate topocentric reference to be used by itself.

Bug fixLuciadFusion

The Custom Properties of type STRING are now limited to a length of 650 character for MSSQL databases. This value now matches the maximum index key size limit that is imposed by MSSQL.

Bug fixLuciadFusion

LF-2846
Fixed a bug that caused an internal server error when executing RSQL queries using lfn.keywords or lfn.categories in combination with an Oracle database backend.

Bug fixLuciadFusion

LF-2849
We fixed an issue that caused slower map responses for WMS services when working with data series datasets such as ECDIS, CADRG, and DTED.

Bug fixLuciadFusion

LCD-14096
Fixed a bug in TLcd3DMatrix.invert, the calculated inverse is now independent of the existing values in the matrix.

Bug fixLuciadFusion

LCD-14116
The SLD Lightspeed implementation now correctly handles a LineSymbolizer with a Stroke that uses decimal values in the stroke-dasharray. The SLD GXY implementation already supported this correctly.

Bug fixLuciadFusion

LCD-14114
The WFS server now returns the correct OGC service exception code when a WFS 2.0 request references an unknown feature type. Previously, the server returned the exception code Invalid type name. It now correctly returns InvalidParameterValue.

Bug fixLuciadFusion

LCD-14101
TLspLabelEditor: fixed a possible NullPointerException after resetting label locations to null.

Bug fixLuciadFusion

LF-2837
Fixed a bug where the getModelReference method of TLfnData threw a NullPointerException when the data did not have a model reference.

Bug fixAdvanced GIS Engine

LCD-14212
Fixed a bug in ILcd2DLineIntersectionTopology.lineIntersection which could result in an exception when calculating intersections between polylines and composite curves.

Bug fixTerrain Analysis Engine

LCD-11887
The radius of the line-of-sight (LOS) coverage in the Lightspeed LOS sample is now limited as indicated by the sample's readme.

Bug fixDefense Symbology

LCD-14078
Fixed an issue with the APP-6A/B 'Counterattack By Fire' symbol. The additional arrow at the tip of the symbol has been removed as it is only expected as of APP-6C.
APP-6A/B Counterattack By Fire before the change
APP-6A/B Counterattack By Fire before the change. (in APP-6C it remains like this!)
APP-6A/B Counterattack By Fire after the change
APP-6A/B Counterattack By Fire after the change.

Bug fixDefense Symbology

LCD-14003
The display names of the following APP-6D text modifiers have been corrected:
Old Display Name New Display Name
Quantity of Equipment Quantity
Reinforced or Detached Reinforced or Reduced

Bug fixInfrastructure Standards

LCD-14048
TLcd3DTilesProcessorBuilder: fixed an issue where OBJ and MTL files that use spaces in file references couldn't get processed.

Bug fixInfrastructure Standards

LCD-14013
TLcd3DTilesProcessorBuilder: fixed an issue where MTL files that use quotes around a texture file name couldn't get processed.

2026.0

New featureDefense Symbology

We have added partial support for the military standard APP-6E. This update introduces the ability to create and visualize instances of TLcdEditableAPP6AObject for the APP-6E military standard.

APP-6E support is currently limited to the Cyberspace icon symbols. All supported symbol sets are listed in the supported military standards article.

You can visualize the supported symbols using the Military Symbology "Allsymbols" samples available for both GXY and Lightspeed.

New featureMaritime Standards

Visualization of an S‑101 dataset in Lucy, delivered via a WMS service from LuciadFusion
Visualization of an S‑101 dataset in Lucy, delivered via a WMS service from LuciadFusion

Added support for the S-101 maritime data format. S-101 introduces several enhancements over S-57, aimed at improving the usability and functionality of electronic navigational charts in modern ECDIS systems. S-101 data can be visualized in a GXY or Lightspeed view in LuciadLightspeed, or can be served in a WM(T)S service in LuciadFusion.

For more details, see the S-101 related articles in the ECDIS entry in the Data Formats documentation section.

ImprovementLuciadFusion

LCD-13812
The TLcdWFSClientModelEncoderFactory class has a new protected method createFeatureMetaDataProvider(ILcdOGCFeatureIDRetriever, TLcdWFSRequestContext). This method creates a TLcdFeatureMetaDataProvider, which is used to retrieve feature-specific information during the encoding of a WFS feature response to GeoJSON. You can override the method to customize the GeoJSON encoding of each feature, such as changing the name of a property.

ImprovementLuciadFusion

LCD-13812
The GeoJSON encoder's supporting class TLcdFeatureMetaDataProvider has a new method getPropertyName(ILcdDataObject, String): by overriding it, you can customize the property name to be used when an object's property is being encoded.

ImprovementLuciadFusion

LCD-14072
To ease identifying issues with spatial OGC Filter conditions, the filter evaluation logic now logs an info message if it does not have access to the Advanced GIS Engine component. Without this component, only bounding box spatial filter conditions are supported. The component is only included with the Advanced and Pro product tiers of LuciadLightspeed and LuciadFusion.

ImprovementLuciadFusion

SQL Server 2025 is now officially supported as a database for LuciadFusion Studio.

ImprovementLuciadFusion

PostgreSQL 18 is now officially supported as a database for LuciadFusion Studio.

ImprovementLuciadFusion

LCD-14018
A new sample decoder samples.format.osm.OpenStreetMapXMLExportModelDecoder illustrates how to decode vector data defined in the OpenStreetMap XML export format. For more information about the supported OpenStreetMap data sources in general, see the Data Formats: OpenStreetMap articles.

ImprovementLuciadFusion

  • TLcdGXYLocationListLabelingAlgorithm now supports defining separate shifts for the X and Y axes to move the label from the anchor point of the domain object in both directions with the respective shifts. As a result, new methods have been added to set and get the X and Y shifts separately:
    • setShiftLabelLocationX(int)
    • setShiftLabelLocationY(int)
    • getShiftLabelLocationX()
    • getShiftLabelLocationY()
    In addition, the following methods have been kept for backward compatibility but are now deprecated.
    • setShiftLabelLocation(int)
    • getShiftLabelLocation()
  • The TLcdGXYFixedOnPathLabelingAlgorithm is a new labeling algorithm added to support precise label placement along a path using flexible horizontal (LEFT, CENTER, RIGHT) and vertical (ABOVE, CENTER, BELOW) alignment options. The anchor point, defined by a relative path position (0.0–1.0), determines the label’s base location, while alignment and optional offsets adjust its position relative to that point without changing the anchor itself.

ImprovementLuciadFusion

Added API for GML 3.2/3.1 coordinate systems, which completes the ISO19115 metadata coordinate system API. This causes some ISO metadata methods to accept stricter arguments than before. For example, TLcdISO19115VerticalExtent#setVerticalCRS's argument type has changed from the generic TLcdGML32Definition to the more useful TLcdGML32AbstractCRS.
No mapping is provided to/from Luciad's coordinate system API.

ImprovementLuciadFusion

LCD-13957
The TLcdSHPModelDecoder2 is now compatible with Java 25.

ImprovementLuciadFusion

The LuciadFusion server now by default supports data compression in HTTP(S) responses. When a client includes the `Accept-Encoding: gzip` header, data compression is enabled when the response is at least 1024 bytes in length and when its content type is one of `application/json`, `application/xml`, `text/html`, `text/xml`, or `text/plain`. The article How to configure data compression in a service describes the configuration options in more detail.

ImprovementLuciadFusion

The LuciadFusion WMS and WMTS services now advertise a new map format image/jpgpng, which lets the service automatically choose between image/jpeg and image/png. When used in WMS GetMap or WMTS GetTile requests, the most appropriate format is used based on the requested map data:
  • If the map doesn't contain transparent pixels, the image/jpeg format is used, ensuring a fast encoding time and small payload.
  • If the map contains transparent pixels, the image/png format is used.
The article Which image output formats do WMS and WMTS services support describes the supported image output formats in more detail.

ImprovementLuciadFusion

LF-2802
The location of temporary files that are written by the 3D Tiles preprocessor is now configurable for mesh data. The temporary files will now always be stored in the folder specified by the already existing property fusion.ogctilesservice.preprocessorTempPath. Previously, this config option applied only to point cloud preprocessing.

ImprovementLuciadFusion

LCD-13994, LCD-12072
The LuciadFusion WCS service now supports the publication of products that consist of multiple data items. A use case is the publication of multiple tiled raster data items into a single WCS coverage. The publication in a WCS service does require that the product's data items all have the same band semantics and geographic reference.

ImprovementLuciadFusion

LF-2668
The following improvements were done to the OpenAPI specification of the LuciadFusion REST API:
  • The specification now uses reusable enums.
  • The names of the operations have been standardized and are now all unique.
  • The security on each operation is now defined.
  • The required property is now correctly set on the response schemas

ImprovementLuciadFusion

LCD-14080
The sample in samples.gxy.contour now has improved contour accuracy for point-sampled elevation data.

ImprovementInfrastructure Standards

LCD-11332
The TLcd3DTilesProcessorBuilder can now apply a geometrical transformation on input data. The transformation should be passed as an affine transformation matrix using the preTransformFactory API method. This can be used to fix shifts, rotations and scale of the data. When using the MeshUp sample, you can read the transformation matrix from a .matrix file next to the data. The common use case of rotating a Y-up OBJ data set to Z-up has also been added to the MeshUp sample.

ImprovementInfrastructure Standards

LCD-14002
When decoding Revit features using the TLcdRevitModelDecoder, each feature will now include a UniqueID property that links the feature back to the Revit model.
For more information, refer to the "model elements" section of the TLcdRevitModelDecoder class javadoc.

ImprovementInfrastructure Standards

LF-2802
The TLcd3DTilesProcessorBuilder now allows to specify the location of temporary cache files that are created during processing. This can be useful if the default temporary files location is not desirable for the 3D Tiles Processor to write to.

ImprovementInfrastructure Standards

LCD-14006
Fixed a bug where the TLcdNWDModelDecoder caused a JVM crash for certain input datasets. For this change, the myVRDatakitConverter library was upgraded to version 2025.10.80067.

ImprovementRadar Connectors

The ASDI format for streaming air traffic data has fallen out of use in recent years, in favor of more recent air traffic management systems. Therefore, the ASDI model decoder and related classes in com.luciad.format.asdi have been deprecated.

Bug fixLuciadFusion

LF-2833
Decoded KML models now have TLcdModelMetadata that identifies the data category as TLcdModelMetadata.DataCategory.VECTOR and TLcdModelMetadata.DataCategory.RASTER. This improves the integration of KML data in LuciadFusion: next to the publication of KML data in a WMS service, it is now also possible to preview the data.

Bug fixLuciadFusion

LCD-13860
TLcdWKTReferenceFormatter now uses the BASEGEODCRS keyword when formatting topocentric references to make it spec compliant.

Bug fixLuciadFusion

LCD-14108
Fixed a typo in the declared supported CRSes (WCS CRS extension) in the WCS 2.0.1 responses.

Bug fixLuciadFusion

LCD-14093
Fixed requesting coverage data as JPEG2000 or JPEG when the source data has transparency. These encoders do not support transparent images. The transparency is removed before encoding the data.

Bug fixLuciadFusion

LF-2835
Resolved an issue that, when access-control was enabled, caused WCS DescribeCoverage requests to return an incomplete result.

Bug fixLuciadFusion

LCD-14081
Database encoders and decoders for all supported databases (DB2, Informix, SQL Server, Oracle, and PostgreSQL) previously assumed that Java properties files containing the configuration for accessing spatial data were encoded using ISO‑8859‑1. They now assume that these properties files are encoded in UTF‑8, allowing property names and values to include accent marks and other special characters.

Bug fixAviation Standards

LCD-14073
The AIXM 5.1 decoder now supports route segments of which the start and end points are defined by a link to other AIXM 5.1 features.

Upgrade considerationLuciadFusion

The Custom Properties of type STRING are now limited to a length of 4000 character1. If there are Custom Properties present in the database, these will be truncated when upgrading to 2026.0.

1 for Oracle databases, this maximum length is 4000 bytes. The maximum amount of characters varies based on the amount of bytes each character uses according to the database character set.

Upgrade considerationLuciadFusion

The ILcdWFSServerModelEncoderFactory interface used by WFS-T services to create a model encoder capable of storing feature type changes (additions, removals, updates) in the data back-end has changed. The existing method

void createModelEncoder(ILcdModel)

has changed to

void createModelEncoder(ILcdModel, TLcdWFSRequestContext)

This new method signature allows implementations to take into account request parameters via the TLcdWFSRequestContext parameter.

Existing implementations can be updated by simply ignoring the new TLcdWFSRequestContext parameter.

Upgrade considerationLuciadFusion

Classes/interfaces/methods that were marked as deprecated for more than 8 years have been removed from the OGC WCS Server module API.
Changes for class com.luciad.ogc.wcs.ALcdOGCWCSCommandDispatcherFactory:
  • createWCSCapabilitiesProvider: is now abstract. It does no longer provide support backwards compatibility for the way of working from 2016 or before.
  • Removed methods:
    • createCoverageOfferingList
    • createServiceMetaData

Removed classes:

Upgrade considerationLuciadFusion

TLcdJPIPModelDecoder has been deprecated. JPIP is not widely adopted, and we recommend the use of LuciadFusion with WM(T)S or ECWP as an alternative to serve large amounts of imagery to clients.

Upgrade considerationLuciadFusion

The WCS Client module no longer provides access using the ILcdRaster, ILcdMultilevelRaster API. Classes, interfaces, and methods related to the raster API have been removed.
The WCS Client module now only provides access using the imaging API.
You can find more information on using the imaging API at the following sections:

Upgrade considerationLuciadFusion

The ILcdGXYViewEncoder interface used by WM(T)S services to encode a view to a format requested by a client has changed. The existing method

void encodeGXYView(ILcdGXYView, OutputStream)

has changed to

String encodeGXYView(ILcdGXYView, OutputStream, ALcdRequestContext)

This new method signature allows implementations to take into account request parameters via the ALcdRequestContext parameter. Furthermore, implementations should now return the content type used by the encoding, allowing to dynamically choose the most appropriate encoding for a given view.

Existing implementations can be updated by simply returning the value of the getContentType() method. The new ALcdRequestContext parameter can be ignored.

Upgrade considerationLuciadFusion

LF-2802
The default value of fusion.ogctilesservice.preprocessorTempPath has changed from ${java.io.tmpdir}/pointCloudPreprocessor to ${java.io.tmpdir}/ogctilesPreprocessor, because the property is now also used for mesh preprocessing.

Upgrade considerationLuciadFusion

The following dependencies have been added:
Group ID Artifact ID Version
com.google.errorprone error_prone_annotations 2.41.0
com.google.flatbuffers flatbuffers-java 23.3.3
com.google.guava failureaccess 1.0.3
com.google.j2objc j2objc-annotations 3.1
net.sf.geographiclib GeographicLib-Java 2.0
org.wololo flatgeobuf 3.26.2
The following dependencies have been updated:
Group ID Artifact ID Old Version New Version
com.google.code.findbugs jsr305 3.0.1 3.0.2
com.google.guava guava 20.0 33.5.0-jre
com.h2database h2 2.1.214 2.3.232
org.apache.lucene lucene-analyzers-common 6.4.0 6.6.6
org.apache.lucene lucene-core 6.4.0 6.6.6
org.apache.lucene lucene-queries 6.4.0 6.6.6
org.apache.lucene lucene-queryparser 6.4.0 6.6.6
org.apache.lucene lucene-sandbox 6.4.0 6.6.6
org.apache.lucene lucene-spatial 6.4.0 6.6.6
org.apache.lucene lucene-suggest 6.4.0 6.6.6
org.orbisgis cts 1.7.0 1.7.1
org.orbisgis h2gis 2.2.0 2.2.3
org.orbisgis h2gis-api 2.2.0 2.2.3
org.orbisgis h2gis-utilities 2.2.0 2.2.3
org.orbisgis poly2tri 0.4.0 0.7.0

Upgrade considerationLuciadFusion

The following dependencies have been updated:
Group ID Artifact ID Old Version New Version
com.luciad.thirdparty libmyvrdatakitconverter-native 2025.03.77665 2025.10.80067
com.luciad.native sqlitej 3.36.0 3.49.1
org.locationtech.jts jts-core 1.19.0 1.20.0
org.lwjgl lwjgl 3.3.3 3.4.0
org.lwjgl lwjgl-jawt 3.3.3 3.4.0
org.lwjgl lwjgl-meshoptimizer 3.3.3 3.4.0
org.lwjgl lwjgl-opencl 3.3.3 3.4.0
org.lwjgl lwjgl-opengl 3.3.3 3.4.0

The following dependencies have been removed:
Group ID Artifact ID Version
commons-logging commons-logging 1.2
com.sun.xsom xsom 20110809
relaxngDatatype relaxngDatatype 20020414
The following dependencies have been added:
Group ID Artifact ID Version
org.glassfish.jaxb xsom 4.0.6
com.sun.xml.bind.external relaxng-datatype 4.0.6

Upgrade considerationData Connectivity Manager

TLcyJPIPDecoderAddOn and TLcyLspJPIPFormatAddOn have been deprecated (along with TLcdJPIPModelDecoder itself, see separate release note for more information). Consequently, these addons are no longer loaded by default in the Data Connectivity Manager, and workspaces that contain JPIP layers will no longer restore these layers when loaded. If needed, you can insert the addons back into config/manager/addons_data.xml and config/manager/addons_lsp.xml, respectively, to re-enable the JPIP functionality.

Upgrade considerationInfrastructure Standards

The .llh model reference file format has been deprecated. This was a Luciad-only file format used to provide a topocentric reference for 3D data. However, support for this file format was inconsistent across our products. We recommend to switch to the standard WKT reference format which works consistently on all models. You can find more information on how to do this our How to add a topocentric (LLH) reference to a 3D model article.

Upgrade considerationInfrastructure Standards

The TLcdRevitModelDecoder and the TLcdNWDModelDecoder have been upgraded, bringing the following new features and enhancements:
  • Added support for Revit and Navisworks 2026 files
  • Fixes several issues related to reading geometry and metadata