2024.0.01

New featureInfrastructure Standards

LCD-13337
It is now possible to define an XML document next to a BIM dataset, to define an OGC Filter that will be applied on the data before it is converted to OGC 3D Tiles or exposed as a features dataset.
Please refer to the Filtering BIM data article for more information.

ImprovementLuciadLightspeed

LCD-10417
The TLcdGeoPackageModelDecoder and TLcdGeoPackageModelEncoder now have support for the following geometry types:
MULTICURVE
MULTISURFACE
CURVEPOLYGON
COMPOUNDCURVE

ImprovementOGC Server

LCD-13447
The decoding behavior of spatial filters included in WFS GetFeature POST requests has now been aligned between all WFS versions: similar as for WFS 1.x requests, spatial filters in WFS 2.0 POST requests are now decoded and transformed to the reference of the requested WFS feature type. For GET requests, this was already the case.

Bug fixLucy (LuciadLightspeed)

LUCY-5065
The Lucy specific VM options in config/vmoptions now open access to java.desktop/javax.swing, which resolves a problem when editing properties in floating panels that use the JIDE docking framework.

Bug fixLuciadLightspeed

LCD-13347
The com.luciad.sqlite.cacheMode system property allows the user to provide the cache mode used by sqlite driver. Possible values are private and shared, with private being the default value.

Bug fixLuciadLightspeed

LCD-13438
Editing of geometries visualized by a PointSymbolizer can only be enabled when the geometry is an ILcdPoint. This avoids unwanted behavior when editing is enabled in combination with an SLD style containing multiple symbolizers.

Bug fixLuciadLightspeed

LCD-13427
TLcdCartesian#orientation2D no longer throws an exception when passing an empty point list. This also improves the robustness of the TLcdGeoJsonModelEncoder.

Bug fixLuciadLightspeed

LCD-13407
The XML encoders can now encode xsd:anyType elements with a built-in XML data type that is specified using xsi:type.

Bug fixLuciadLightspeed

LCD-10813
The TLcdGeoPackageModelDecoder now correctly handles the CIRCULARSTRING geometry type as a collection of zero or more continuous circular arc segments and the TLcdGeoPackageModelEncoder is able to encode a ILcdCompositeCurve containing multiple ILcdCircularArcBy3Points instances to CIRCULARSTRING.

Bug fixLuciadLightspeed

LCD-6862
TLcdTABRasterModelDecoder could throw a RuntimeException instead of an IOException when decoding a TAB for raster data not supported by JAI. Now it throws an IOException with a more clear message.

Bug fixLuciadLightspeed

LCD-12749
TLcdBandColorSemanticsBuilder ignored the specified no data value when building from a color model.

Bug fixLuciadLightspeed

LCD-13377
Fixed an issue where some LIDAR data was painted with inverse colors.

Bug fixLuciadLightspeed

LCD-13429, LCD-13432
The WMTS model decoder now skips tile matrix sets with an unknown geographic reference instead of throwing an UnsupportedOperationException.

Bug fixLuciadLightspeed

LCD-13431
The WMTS model decoder used an incorrect geographic reference when creating a model for a WMTS layer backed by a GoogleCRS84Quad tile matrix set that used a reference with a lat/lon axis order. This prevented the layer from being visualized on the map.

Bug fixLuciadLightspeed

LCD-13413
Fixed an issue where resource jar files that don't contain any Java classes (e.g. lcd_epsg_resources.jar) could not be loaded in an OSGi environment.

Bug fixDatabase Connectors

LCD-13280
TLcdOracleSpatialModelDecoder no longer uses the SDO_COLUMN_NAME column of the USER_SDO_INDEX_METADATA view to determine the dimension of the spatial index, because this column is not always present.

Bug fixOGC Server

LCD-13434
When performing a WFS GetFeature request on a data type with a Map property, and in combination with property name filtering the GeoJSON output generation failed. This has been fixed.

Bug fixAviation Standards

LCD-13435
An AIXM 5.1 vertical structure feature with an empty vertical extent value triggered a NullPointerException when it was visualized in a Lightspeed view.

Bug fixDefense Symbology

LCD-13411
Resolved the following issues with the depiction of the MIL-STD-2525b symbol "Dummy Minefield - Dynamic" (2.X.2.3.7).
  • The outline of the area is now drawn with a solid stroke instead of a dashed stroke
  • The hostile indicator ("ENY") is now rendered in the outline stroke, when the symbol's affiliation is set to 'Hostile'

Bug fixDefense Symbology

LCD-13394
Resolved an issue when displaying "Axis of Advance - Airborne" symbols contained in an NVG arrow element, where the "crossover" point would be located at the tail of the arrow instead of at the tip of the arrow.

Bug fixDefense Symbology

LCD-13412
Resolved an issue with the MIL-STD-2525c icon symbol 'Air Control - Tanking' (2.X.2.1.1.7.4). This symbol's icons was depicted with the letter 'T' inside the vertical lines instead of the letter 'K'.

Bug fixInfrastructure Standards

LCD-13298
The TLcdCompositeModelDecoder, when used in combination with a TLcdIFCModelDecoder, wasn't able to decode the IFC features datasource returned by the discoverDataSources method.

Upgrade considerationWeather & Environment Standards

LCD-13437
The version of the thredds library was increased to 4.6.6.lcd-18. This fixes an issue with using the pom file of this library.

2024.0

2024.0

New featureLuciadLightspeed

TLcdMBTilesModelDecoder now also supports MBTiles services, next to files. To decode an MBTiles service you need to provide the TileJSON endpoint as source. An MBTiles service can for example be set up with LuciadFusion as of version 2024.0.

New featureLuciadLightspeed

The OGC Symbology Encoding (SE) implementation now supports replacing colors in images. This can be achieved by using the SE vendor options colorReplace and colorReplaceTolerance in a TLcdSLDRasterSymbolizer. The new article How to replace a color illustrates this capability with an example.

New featureLuciadLightspeed

TLcdPixelReplaceOp is a new image operator which replaces a given color or value in an image with another. It can be used, for instance, to remove blank borders around an image by replacing them with a transparent color.

New featureAdvanced Raster Connectors

LuciadFusion and LuciadLightspeed users can now visualize ECW images with any number of bands and any bit depth.

New featureOGC Server

The WCS server in the OGC Web Server Suite now supports WCS version 2.0.1.

New featureReal-time Engine

TLspRadarVideoLayerBuilder now has the ability to work with radar feeds whose 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.

New featureInfrastructure Standards

Visualization of a Revit file in LuciadRIA, processed and served using LuciadFusion's OGC 3D Tiles service
Visualization of a Revit file in LuciadRIA, processed and served using LuciadFusion's OGC 3D Tiles service

Added support for the Autodesk Revit data format. Autodesk Revit is a BIM software tool for architects, engineers, and construction professionals to model shapes, structures, and systems in 3D.

For more details, see the Autodesk Revit entry in the Data Formats documentation section

ImprovementLuciadLightspeed

The following new system properties let users configure reference decoder priority for the following model decoders:

The priority decides whether the model reference decoding is first attempted from the reference information embedded in the data file and then fall back to external reference source files such as WKT (.prj), REF (.ref) and EPSG (*.epsg) in case of an error or vice versa when the other reference decoder priority is selected.

For more information on how to configure the reference decoder priority for supported ILcdModelDecoder implementations, refer to the following article: Setting model reference decoder priority

ImprovementLuciadLightspeed

LCD-13341
The metadata in the gpkg_data_columns table of a GeoPackage file is now used by TLcdGeoPackageModelDecoder to provide the correct display names in TLcdDataModelDisplayNameProvider#getDisplayName(TLcdDataProperty).

ImprovementLuciadLightspeed

The included Apache Ant distribution has been upgraded to version 1.10.14. This improves compatibility with Java 21.

ImprovementLuciadLightspeed

LCD-13289
It is now possible to customize the tile grid reference used by the tiled WMS painters for GXY and Lightspeed views. The tile grid reference can be specified through a newly added constructor in TLcdGXYTiledWMSProxyPainter and TLspTiledWMSProxyPainter. Customizing tile grid references can be useful to align with a server-defined tile grid reference used for caching of requests.

ImprovementLuciadLightspeed

LuciadLightspeed and LuciadFusion now support Java 21. Refer to the documentation on hardware and software requirements in the prerequisites section for more information.

ImprovementLuciadLightspeed

LCD-8681, LCD-13260
Introduced TLcdDataProperty#getSourceName, which contains the property name as it was defined in the source data. This may differ from the actual name of the property within the TLcdDataType, because that name can contain only alphanumeric characters and underscores, and may therefore have been sanitized.

When building a data type, the source name of a property can be configured with a setter on the TLcdDataPropertyBuilder. Additionally, TLcdDataType#getProperty now also checks this source name when searching a property that matches a given name.

The default TLcdDataModelDisplayNameProvider has also been adapted to use this source name by default, when retrieving a display name for a property.

Finally, The TLcdGeoJsonModelEncoder now uses these source names by default as well, when encoding data objects to GeoJSON features.

ImprovementLuciadLightspeed

LCD-9753
TLcdGeoPackageFeatureDatabaseModelEncoder: encoding data objects with multiple geometry properties now results in a clear error message, instead of a message indicating a unique constraint violation.

ImprovementOGC Server

LCD-13326
The WMS Server now supports a vendor-specific FILTER parameter that operates like the WFS GetFeature FILTER parameter for both GetMap and GetFeatureInfo requests.

ImprovementOGC Server

LCD-9574
The tray icon of the OGC server sample now has an additional entry to open the landing page.

ImprovementAviation Standards

LCD-13371
Upgraded the included EUR ADR AIXM 5.1(.1) XML Schema extensions from version 26.0 to version 27.0.

ImprovementDefense Symbology

LCD-13199

A new style class, TLcdMilitarySymbolStyle, has been added to the Military Symbology API. This class can be used to define the symbol style of both APP-6 and MIL-STD-2525 symbols.

The usage is equivalent to the usage of the existing, standard specific style classes (TLcdDefaultAPP6AStyle and TLcdDefaultMS2525bStyle). You can configure a symbol dependent style, by either having your domain objects implement ILcdStyledMilitarySymbol or by defining a default style on your painter providers or layers.

The following methods have been added to configure a TLcdMilitarySymbolStyle on painter providers and layers:

  • TLcdAPP6AGXYPainterProvider.setDefaultMilitarySymbolStyle
  • TLcdAPP6AGXYLabelPainterProvider.setDefaultMilitarySymbolStyle
  • TLspAPP6ALayerBuilder.defaultStyle
  • TLspAPP6ASymbolStyle.Builder.militarySymbolStyle
  • TLcdMS2525bGXYLabelProvider.setDefaultMilitarySymbolStyle
  • TLcdMS2525bGXYLabelPainterProvider.setDefaultMilitarySymbolStyle
  • TLspMS2525bLayerBuilder.defaultStyle
  • TLspMS2525bSymbolStyle.Builder.militarySymbolStyle
  • TLspMilitarySymbologyLayerBuilder.defaultStyle

ImprovementInfrastructure Standards

The discoverDataSources method of TLcdIFCModelDecoder now returns a list of TLcdBIMDataSource objects.

Bug fixLuciadLightspeed

LCD-13293
TLcdSLDMark: improved anti-aliased rendering of several types.

Bug fixLuciadLightspeed

LCD-13245
TLcdIOUtil#resolve returned an incorrect result for source names starting with "jpip://". The method now returns null.

Bug fixLuciadLightspeed

LCD-13252
TLcdSLDFeatureTypeStylePainter now implements ILcdGXYEditorProvider, which returns itself as ILcdGXYEditor to edit objects in a GXY view. This better aligns with the already implemented painter-related interfaces ILcdGXYPainter and ILcdGXYPainterProvider.

Bug fixLuciadLightspeed

LCD-13231
TLcdEarthRepositoryModelDecoder: improved the robustness when interrupting a thread that was reading a tile repository. This improves compatibility with Java 21.

Bug fixLuciadLightspeed

LCD-13386
Resolved an issue with the Maven sample setup scrip, where the sample project's settings.xml file was not used when deploying the license to the Maven repository.

Bug fixLuciadLightspeed

LCD-12748
Fixed an issue in the TLcdGeoTIFFModelDecoder for the case of data with photometric interpretation RGB with additional sample values. The standard cases RGB(A) worked fine. For the case with additional sample values the ALcdImage band semantics did not include information on the red, green, and blue channels. It would be interpreted as a greyscale image by the image painter. Now the correct band semantics are reported which makes the image painter pick it up and render the file correctly.

Bug fixDatabase Connectors

LCD-4462
TLcdOracleSpatialModelDecoder now uses the CS_SRS table to determine the ILcdModelReference of the decoded ILcdModel when the ILcdModelReference can not be determined using a list of pre-defined references.

Upgrade considerationLuciadLightspeed

LuciadLightspeed and LuciadFusion now increasingly make use of Java's own file and URI handling API to improve reliability, consistency, and portability when handling data sources. This includes, but is not limited to TLcdIOUtil, TLcdInputStreamFactory, and several model decoders. Because of this, the following invalid data source paths may no longer be recognized:
  • The colon ":" is no longer accepted in Windows file names.
  • Spaces are no longer accepted in file URI's. They need to be escaped as described in the URI specification.
Make sure to correct these source names before passing them to the API.

Upgrade considerationLuciadLightspeed

LuciadLightspeed and LuciadFusion no longer support 32-bit JDKs. Previously there was still limited support for Linux.

Upgrade considerationLuciadLightspeed

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

Upgrade considerationLuciadLightspeed

LCD-12921

The default behavior of a number of model decoders has been changed. We now enable support for vertical datums by default for a number of model decoders. The vertical datum support will cause the appropriate geoid height to be applied to data files of the affected formats, if the data advertises a vertical datum. In previous versions, we ignored the vertical datum advertised by data by default.

Using the geoid will result in the use of more accurate elevation values, at the cost of performance when processing the data.

The following data formats are affected by this change:

  1. DEM: TLcdDEMModelDecoder
  2. DMED/DTED: TLcdDMEDModelDecoder, TLcdDTEDModelDecoder, TLcdDTEDDirectoryModelDecoder
  3. ETOPO: TLcdETOPOModelDecoder
  4. GeoTIFF: TLcdGeoTIFFModelDecoder
  5. LAS/LAZ: TLcdLASModelDecoder
  6. SwissDHM: TLcdSwissDHMMatrixModelDecoder

Because the default behavior has changed for these formats, your data may be painted at a different height, which can cause misalignment with your other layers. For example, you may apply the geoid to points in a LAS file, which causes your LAS points to be painted at a different elevation. If you combine this LAS data with an inaccurate terrain layer, there may be overlap between your LAS points and the terrain layer. You should check that your data is still properly aligned with your other layers after upgrading.

The recommended way to fix such alignment issues is to make sure you use an accurate terrain layer and use the same geoid on all your layers with elevation data. You should also verify that all your elevation data advertises the correct vertical datum. Read our article on Detecting and fixing vertical datum issues for more details.

If you have different behavior then before, and you are sure that the old behavior is preferred, you can revert to the old behavior in the following ways:

  • Disable geoid support for a specific model decoder, by calling the method #setSupportGeoidDatums(boolean)
  • Disable geoid support for all aforementioned model decoders, by setting the system property com.luciad.geodesy.geoidSupport.LEGACY to true.

Upgrade considerationLuciadLightspeed

LCD-13176
TLcdGXYImagePainter, TLcdRasterPainter, TLcdMultilevelRasterPainter, TLcdEarthGXYRasterPainter, TLcdGXYTiledWMSProxyPainter and TLcdWMSProxyGXYPainter now apply brightness and contrast to raster layers with the same algorithm as Lightspeed's TLspRasterStyle. This used to be different but has now been aligned. With the new behavior, the [0, 2] brightness value range covers the entire color brightness range (black to white). The contrast setting offers a modifier on top for further tweaking.

Upgrade considerationLuciadLightspeed

The LuciadLightspeed and LuciadFusion APIs now use the Jakarta EE 10 API and Jakarta Servlet 6.0 API, where in previous releases the Java EE 7 API and Java Servlet 3.1 API were used. There are a few breaking changes in the new Jakarta Servlet 6.0 API, the main one being a rename of the javax.servlet package to jakarta.servlet. Any LuciadLightspeed or LuciadFusion API that use classes from this package thus contain a corresponding breaking change. The affected classes are mainly the classes implementing the OGC server standards (WM(T)S, WFS, etc). Any compilation errors you encounter related to this change can typically be resolved by performing a find and replace operation.

Refer to the documentation on hardware and software requirements in the prerequisites section for more information.

Upgrade considerationLuciadLightspeed

LuciadLightspeed and LuciadFusion now require Java 17. Refer to the documentation on hardware and software requirements in the prerequisites section for more information.

Upgrade considerationLuciadLightspeed

LCD-9539
The following dependencies have been updated:
Group ID Artifact ID Old Version New Version
com.fasterxml.jackson.core jackson-annotations 2.14.2 2.15.3
com.fasterxml.jackson.core jackson-core 2.14.2 2.15.3
com.fasterxml.jackson.core jackson-databind 2.14.2 2.15.3
com.google.protobuf protobuf-java 3.19.4 3.25.3
com.thetransactioncompany cors-filter 1.3.2 3.0
com.thetransactioncompany java-property-utils 1.6 1.17
jakarta.servlet jakarta.servlet-api 4.0.4 6.0.0
joda-time joda-time 2.8.1 2.10.10
org.apache.commons commons-compress 1.22 1.26
org.apache commons-io 2.6 2.15.1
org.apache.commons commons-lang3 3.12.0 3.14.0
org.apache.xmlgraphics batik-xml 1.16 1.17
org.apache.xmlgraphics batik-util 1.16 1.17
org.apache.xmlgraphics batik-transcoder 1.16 1.17
org.apache.xmlgraphics batik-swing 1.16 1.17
org.apache.xmlgraphics batik-svggen 1.16 1.17
org.apache.xmlgraphics batik-svg-dom 1.16 1.17
org.apache.xmlgraphics batik-script 1.16 1.17
org.apache.xmlgraphics batik-shared-resources 1.16 1.17
org.apache.xmlgraphics batik-parser 1.16 1.17
org.apache.xmlgraphics batik-i18n 1.16 1.17
org.apache.xmlgraphics batik-gvt 1.16 1.17
org.apache.xmlgraphics batik-gui-util 1.16 1.17
org.apache.xmlgraphics batik-ext 1.16 1.17
org.apache.xmlgraphics batik-dom 1.16 1.17
org.apache.xmlgraphics batik-css 1.16 1.17
org.apache.xmlgraphics batik-constants 1.16 1.17
org.apache.xmlgraphics batik-codec 1.16 1.17
org.apache.xmlgraphics batik-bridge 1.16 1.17
org.apache.xmlgraphics batik-awt-util 1.16 1.17
org.apache.xmlgraphics batik-anim 1.16 1.17
org.apache.xmlgraphics xmlgraphics-commons 2.7 2.9
org.slf4j slf4j-api 1.7.36 2.0.9
org.postgresql postgresql 42.5.4 42.7.3
org.checkerframework checker-qual 3.5.0 3.42.0

The following dependencies have been added:
Group ID Artifact ID Version
org.locationtech jts-core 1.19.0

The following dependencies have been removed:
Group ID Artifact ID Version
com.vividsolutions jts-core 1.14.0

Upgrade considerationLuciadLightspeed

LCD-9539
The JTS library has been updated to version 1.19.0. Please note that this library is not backward compatible. All classes have moved from com.vividsolutions.* to org.locationtech.*.

Upgrade considerationLuciadLightspeed

LCD-12881
The LWJGL Java binding for the OpenGL and OpenCL APIs has been updated to version 3.3.3. This improves compatibility with Java 19 and higher.

Upgrade considerationLuciadLightspeed

LCD-10042
TLcdLRDBModelEncoder#SUPPORTED_COVERAGE_TYPES is removed from the API.

Upgrade considerationAdvanced Raster Connectors

The class TLcdECWConfiguration is now removed from the API to keep the API clean and simple. If you were using this class, it is now required to use TLcdECWModelDecoder#getMaxCacheSize and TLcdECWModelDecoder#setMaxCacheSizeinstead of similar methods exposed by TLcdECWConfiguration.

The class TLcdECWImageDecoder is now removed from the API due to its limited capability in supporting decoding of multi band and multi bit depth ECW data files. If you were using this class, it is now required to use the enhanced TLcdECWModelDecoder, which fully supports decoding multi band and multi bit depth ECW data files. This updated decoder provides a more robust and versatile solution for handling ECW data.

The previous libecw-6.1.*.jar libraries are now replaced by ecw-6.1.0-native*.jar containing the native libraries provided as part of ERDAS ECW JP2 SDK 6.1.0. This change also adds the ecw-6.1.0.jar library which contains the JNI bindings to access the functionalities exposed by the packaged native libraries.

Upgrade considerationAdvanced Raster Connectors

The method TLcdGDALModelDecoder#setUnlockAllFormats(boolean) and the system property com.luciad.format.gdal.unlockAllFormats have been replaced with the method TLcdGDALModelDecoder#setAllowUnverifiedFormats(boolean) and the system property com.luciad.format.gdal.allowUnverifiedFormats. The old method would only unlock a specific set of whitelisted formats, whereas the new method will unlock any and all formats for which a GDAL driver is found.

Upgrade considerationAdvanced Raster Connectors

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 jpeg, png16 and proj libraries are no longer loaded separately, they are now packaged with the gdal library.

Upgrade considerationDatabase Connectors

LCD-6130, LCD-8872
The TLcdDataModel of the TLcdDatabaseModelDescriptor now maps columns of type CLOB and TIMESTAMP to the correct types, TLcdDatabaseDataTypes#ClobType and TLcdDatabaseDataTypes#TimestampType. Data stored in a column of type TIMESTAMP is now converted into an object of type java.sql.Timestamp instead of a oracle.sql.TIMESTAMP when loading data from an Oracle database.

Upgrade considerationDatabase Connectors

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

Upgrade considerationDatabase Connectors

LCD-13196
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. It's advisable to upgrade to a newer version of Oracle database if you are still using any of these versions.

Upgrade considerationDatabase Connectors

LCD-13197
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. It's advisable to upgrade to a newer version of PostgreSQL if you are still using any of these versions.

Upgrade considerationOGC Server

Security updates have been applied to the following sample dependencies of the OGC server sample:
Group ID Artifact ID Old Version New Version
org.springframework.boot spring-boot 2.7.14 3.2.1
org.springframework.boot spring-boot-starter 2.7.14 3.2.1
org.springframework.boot spring-boot-autoconfigure 2.7.14 3.2.1
org.springframework.boot spring-boot-starter-jetty 2.7.8 3.2.1
org.springframework.boot spring-boot-starter-json 2.7.14 3.2.1
org.springframework.boot spring-boot-starter-logging 2.7.14 3.2.1
org.springframework.boot spring-boot-starter-web 2.7.14 3.2.1
org.springframework spring-aop 5.3.29 6.1.2
org.springframework spring-beans 5.3.29 6.1.2
org.springframework spring-context 5.3.29 6.1.2
org.springframework spring-core 5.3.29 6.1.2
org.springframework spring-expression 5.3.29 6.1.2
org.springframework spring-jdbc 5.3.29 6.1.2
org.springframework spring-tx 5.3.29 6.1.2
org.springframework spring-web 5.3.29 6.1.2
org.springframework spring-webmvc 5.3.29 6.1.2
com.zaxxer HikariCP 4.0.3 5.0.1
org.ow2.asm asm-commons 9.4 9.6
org.ow2.asm asm-tree 9.4 9.6
com.fasterxml.jackson.datatype jackson-datatype-jdk8 2.14.2 2.15.3
com.fasterxml.jackson.datatype jackson-datatype-jsr310 2.14.2 2.15.3
com.fasterxml.jackson.module jackson-module-parameter-names 2.14.2 2.15.3
org.apache.tomcat.embed tomcat-embed-el 9.0.78 10.1.17
org.eclipse.jetty jetty-client 9.4.50.v20221201 12.0.7
org.eclipse.jetty jetty-http 9.4.50.v20221201 12.0.7
org.eclipse.jetty jetty-io 9.4.50.v20221201 12.0.7
org.eclipse.jetty jetty-plus 9.4.50.v20221201 12.0.7
org.eclipse.jetty jetty-security 9.4.50.v20221201 12.0.7
org.eclipse.jetty jetty-server 9.4.50.v20221201 12.0.7
org.eclipse.jetty jetty-util 9.4.50.v20221201 12.0.7
org.eclipse.jetty jetty-xml 9.4.50.v20221201 12.0.7
org.slf4j jul-to-slf4j 1.7.36 2.0.9
org.slf4j slf4j-api 1.7.36 2.0.9
org.apache.logging.log4j log4j-api 2.17.2 2.21.1
org.apache.logging.log4j log4j-to-slf4j 2.17.2 2.21.1
ch.qos.logback logback-classic 1.2.12 1.4.14
ch.qos.logback logback-core 1.2.12 1.4.14
org.yaml snakeyaml 2.0 2.2
jakarta.annotation jakarta.annotation-api 1.3.5 2.1.1
jakarta.websocket jakarta.websocket-api 1.1.2 2.1.1

The following dependencies have been added:
Group ID Artifact ID Version
org.eclipse.jetty.ee10 jetty-ee10-annotations 12.0.7
org.eclipse.jetty.ee10 jetty-ee10-plus 12.0.7
org.eclipse.jetty.ee10 jetty-ee10-servlet 12.0.7
org.eclipse.jetty.ee10 jetty-ee10-servlets 12.0.7
org.eclipse.jetty.ee10 jetty-ee10-webapp 12.0.7
org.eclipse.jetty.ee10 jetty-ee10-websocket-jakarta-client 12.0.7
org.eclipse.jetty.ee10 jetty-ee10-websocket-jakarta-common 12.0.7
org.eclipse.jetty.ee10 jetty-ee10-websocket-jakarta-server 12.0.7
org.eclipse.jetty.ee10 jetty-ee10-websocket-jetty-server 12.0.7
org.eclipse.jetty.ee10 jetty-ee10-websocket-servlet 12.0.7
org.eclipse.jetty jetty-alpn-client 12.0.7
org.eclipse.jetty jetty-jndi 12.0.7
org.eclipse.jetty jetty-session 12.0.7
jakarta.websocket jakarta.websocket-client-api 2.1.1

The following dependencies have been removed:
Group ID Artifact ID Version
org.eclipse.jetty jetty-annotations 9.4.50.v20221201
org.eclipse.jetty jetty-continuation 9.4.50.v20221201
org.eclipse.jetty jetty-servlet 9.4.50.v20221201
org.eclipse.jetty jetty-servlets 9.4.50.v20221201
org.eclipse.jetty jetty-util-ajax 9.4.50.v20221201
org.eclipse.jetty jetty-webapp 9.4.50.v20221201
org.eclipse.jetty.websocket websocket-api 9.4.50.v20221201
org.eclipse.jetty.websocket websocket-client 9.4.50.v20221201
org.eclipse.jetty.websocket websocket-common 9.4.50.v20221201
org.eclipse.jetty.websocket websocket-server 9.4.50.v20221201
org.eclipse.jetty.websocket websocket-servlet 9.4.50.v20221201

Upgrade considerationDefense Symbology

LCD-13140

The geometry type of a number of APP-6A/B Minefield symbols has been changed. These symbols were modeled as polygons, which required the symbol to have at least 3 anchor points to define the symbol's shape. To better align these symbols with the NVG geometry bindings specification, the geometry has now been changed to a point, which requires only a single anchor point to define the symbol's shape. The following symbols are affected by this change:

  • 2.X.2.2.1.6.1 "Planned Minefield"
  • 2.X.2.2.1.6.2 "Completed Minefield"
  • 2.X.2.2.1.6.5 "Antitank (AT) Minefield"
  • 2.X.2.2.1.6.6 "Scatterable Mines"
  • 2.X.2.2.1.6.7 "Antipersonnel (AP) Minefield Reinforced With Scatterable With Self-Destruct Date-Time-Group"
  • 2.X.2.2.1.6.8 "Scatterable Minefield (Antitank Mines) With Self-Destruct Date-Time-Group"
  • 2.X.2.2.1.7 "Executed Volcano Minefield"

Upgrade considerationDefense Symbology

LCD-13138
The geometry type of the APP-6A/B symbol 2.X.2.3.1.1.2 "Fire Support Graphics - Fire Support Point - Target - Circular Target" has been changed. This symbol's geometry type was a circle, which required the symbol to have 2 anchor points to define the symbol's shape. To better align this symbol with the NVG geometry bindings specification, the geometry has now been changed to a point, which requires only a single anchor point to define the symbol's shape.

Upgrade considerationDefense Symbology

LCD-13175, LCD-13300

The interfaces ILcdAPP6AStyle and ILcdMS2525bStyle, and their implementations TLcdDefaultAPP6AStyle and TLcdDefaultMS2525bStyle have been deprecated.

If you need to create a symbol style, you should use the newly introduced class TLcdMilitarySymbolStyle.

Upgrade considerationInfrastructure Standards

The IFCPath property of the elements in the features model returned by the TLcdIFCModelDecoder has been deprecated. We recommended using the new AncestorPath property instead which has same value. The IFCPath property is still included to maintain backwards compatibility with clients that depend on it, but it will be removed in a future release.

Upgrade considerationInfrastructure Standards

The myVRDatakitConverter library, version 2024.03.73100, is added to the list of third party libraries. It is used by the TLcdRevitModelDecoder.

Upgrade considerationInfrastructure Standards

The discoverDataSources method of the TLcdBinzModelDecoder now returns a list containing two TLcdBIMDataSource objects: one for the geometry model, and one for the features model. Previously, it returned a list containing only a TLcdDataSource for the geometry model.

The following snippet can be used to get the geometry model for both the new and the previous version of this discoverDataSources method.


      TLcdBinzModelDecoder decoder = new TLcdBinzModelDecoder();
      List<? extends ILcdDataSource> dataSources = decoder.discoverDataSources("path/to/dataset.binz");
      ILcdModel geometryModel = decoder.decodeSource(dataSources.get(0));
    

Upgrade considerationInfrastructure Standards

The JNA library, version 5.14.0, is added to the list of third party libraries. It is used by the TLcdRevitModelDecoder.

Upgrade considerationInfrastructure Standards

The following deprecated DGN classes have been removed from the LuciadLightspeed API:

  • TLcdDGNMicroStationServlet
  • TLcdDGNMicroStationModelDecoder
  • TLcdDGNMicroStationDisplayInfo
  • TLcdDGNMicroStationLevelSymbology

Any usage of these classes should be replaced by the TLcdDGNModelDecoder.