2020.1.21

ImprovementLuciadFusion

LCD-11769
TLcdEPSGReferenceParser now uses more precise parameters to transform from S-JTSK to WGS 84. This affects to following codes:
  • EPSG:2065
  • EPSG:4156
  • EPSG:4818
  • EPSG:5221
  • EPSG:5513
  • EPSG:5514

Bug fixLuciadFusion

LCD-11789
TLcdLonLatLine and TLcdLonLatHeightLine didn't have correct bounds. They could either be too small or too large. This has now been aligned with the bounds calculation of TLcdLonLatPolyline and TLcdLonLatHeightPolyline, so they have correct and tight-fitting bounds.

Bug fixLuciadFusion

LCD-11787
The order of line and polygon symbolizers within an SLD rule was not always respected during rendering in a Lightspeed view.

Bug fixLuciadFusion

LCD-11777
Fixed a regression caused by SLD enhancement LCD-11733, resulting in the behavior that an SLD PerpendicularOffset was no longer taken into account for basic line styles in a Lightspeed view.

Bug fixLuciadFusion

TLspLayerTreeNodeCellRenderer did not always correctly calculate its enabled state when using a 3D world reference.

Bug fixLuciadFusion

LCD-11768
When using a world reference with a TLcdLambertConformal projection, geometries were sometimes painted incompletely.

Bug fixInfrastructure Standards

LCD-11778
Fixed an IndexOutOfBoundsException that would occur when processing an OBJ that contained multiple object names.

2020.1

2020.1.20

ImprovementLuciadFusion

LCD-11733
The SLD Lightspeed implementation now supports adding a gap in pixels at the start and/or end of a line geometry. This capability can be enabled on a TLcdSLDLineSymbolizer by configuring the SLD vendor options with name startGap and endGap. Both take a value in pixels that defines the size of the gap.

ImprovementDefense Symbology

LF-2092
Military symbols can now be retrieved with transparency in the affiliation colors. You can now provide an affiliation color as rgba string, as defined in the CSS standards.

Bug fixLuciadFusion

LCD-11739
TLcdGXYIconPainter#paint now sets a default Graphics stroke before painting its icon. This avoids unexpected rendering effects caused by stroke changes from other painters.

Bug fixLuciadFusion

LCD-11767
TLspShapeLayerBuilder: fixed a memory leak that could occur when using a TLspComplexStrokedLineStyle with a text decoration.

Bug fixLuciadFusion

LCD-11765
TLcdWFSProxyModel's builder did not accept a feature type name String containing a prefix.

Bug fixLuciadFusion

LF-2089
Fixed an issue with the Panoramics service where cached models were not cleared on product updates.

Bug fixLuciadFusion

LF-2089
Fixed an issue with the OGC 3DTiles service where cached models were not cleared on product updates.

Bug fixLuciadFusion

LCD-11757
Fixed an issue that prevented decoding GeoPackage files containing a data table with a name that started with a number or contained special characters. This would previously result in an unrecognized token error.

Bug fixLuciadFusion

LCD-11754
TLsp3DIconStyle.ScalingMode.VIEW_SCALING now respects the print feature scale and display scaling.

Bug fixLuciadFusion

LCD-11738
The last ALspController in the controller chain now consumes the JavaFX events after handling them. This solves the issue where tab panes stole the focus of the contained TLspFXView.

Bug fixLuciadFusion

LCD-11748
Using an SLD raster symbolizer containing both a gray channel selection and a color map did not work for floating point elevation data.

Bug fixLuciadFusion

LF-2086
Modified config/application-fusion.production-template.yml autoReloadingOnChange property spacing to assure it is under fusion.studio.webapp.theme to prevent property validation errors.

Bug fixAdvanced Raster Services

LCD-11762
TLcdGDALModelDecoder left files open even after ILcdModel#dispose was called. As a result, decoded files could not be renamed or removed until the JVM process exited.

2020.1.19

ImprovementLuciadFusion

LCD-11741

Bug fixLuciadFusion

LCD-11746
Fixed an issue that prevented the use of multiple SLD geometry functions inside one SLD rule in a Lightspeed view.

Bug fixLuciadFusion

LCD-11745
Fixed a regression that caused the optional SLD geometry functions startPoint and endPoint to be no longer working in GXY views since version 2019.1.01 and beyond.

2020.1.18

ImprovementLuciadFusion

LCD-11736
TLcdWKTReferenceParser now supports "Australian 1984" (and variants) as alias for AGD84.

Bug fixLuciadFusion

LCD-11737
TLcdOGCModelReferenceFormatter and TLcdCRSReferenceFormatter would incorrectly format references similar to, but different from NAD83 as CRS:83.

Bug fixLuciadFusion

LCD-11734
TLcdEPSGReferenceFormatter: WKT strings using the NAD83 (National Spatial Reference System 2011) datum and without TOWGS84 parameter were incorrectly formatted as an EPSG code using an other NAD83 version.

Bug fixLuciadFusion

LCD-11494
The first record in a ShapeFile written by TLcdShpTiler now starts with record number 1, as prescribed in the shapeFile technical specification. Previously, record numbers would start at 0.

Bug fixAviation Standards

LCD-11732
The decimal part of an AIXM 5.1 vertical distance value that used a comma instead of a dot as decimal separator was ignored.

Bug fixAviation Standards

The AIXM 5.1 features AircraftStand, StandMarking and GuidanceLineMarking were not painted on terrain, causing the features to disappear on a 3D view in case terrain data was loaded.

2020.1.17

Bug fixLuciadFusion

LCD-11729
The tiled WMS proxy painter (TLspTiledWMSProxyPainter) made during initialization a single GetMaprequest to the WMS server on the Event Dispatch Thread (EDT) used for the Lightspeed view. This could make the UI of the application unresponsive. This was only noticeable when using a slow WMS server.

2020.1.15

ImprovementLuciadFusion

LCD-11719
The detection of using a fall-back reference has improved in the WMS client painting. In case the map reference is Mercator it now falls back on Pseudo-Mercator when Mercator is not supported but Pseudo-Mercator is. Vice-verse when the map reference is Pseudo-Mercator falls back on Mercator if needed.

ImprovementLuciadFusion

LCD-10211
It is now possible to create connections with an SQLite database when also decoding GeoPackage or other sqlite based formats. The sqlite driver used by LuciadLightspeed to decode these sqlite formats no longer conflicts with the regular sqlite driver.

ImprovementLuciadFusion

LCD-11706
Improved the visualization of TLcdLonLatBuffer and TLcdLonLatHeightBuffer on GXY views (using TLcdGXYGeoBufferPainter) and 2D Lightspeed views.

Bug fixLuciadFusion

LCD-11725
TLcdMercator and TLcdPseudoMercator: Fixed an issue where points on the date line were transformed incorrectly.

Bug fixLuciadFusion

LCD-11703
TLspLabelPainter and TLspEditController: fix a few small memory leaks. When removing a domain object from a model, that object could sometimes not be garbage collected.

Bug fixAdvanced Raster Services

Fixed bug where decoding a .sid image with the TLcdMrSIDModelDecoder would eventually produce an image with the wrong colors in a GXY view due to incorrect processing of the alpha channel.

Bug fixAdvanced Raster Services

Fixed a threading issue that could lead to a JVM crash when disposing an ECW model.

Bug fixDefense Standards

LCD-11711
Nested NITF segments (with ALVL>0) now correctly inherit their parents' reference if they don't define one themselves.

Bug fixMaritime Standards

LCD-11666
Fixed an issue when displaying AML data: in some cases, disjoint edges where connected, causing an incorrect display of lines.

Upgrade considerationDefense Standards

LCD-11716
TLcdNITFModelDecoder.decodeImageBounds now has the display and attachment level of the image segment bounds to decode as additional arguments.

2020.1.13

Bug fixLuciadFusion

TLcdCurveConnectorUtil.connectCompositeRing threw an exception when an empty composite ring was supplied.

Bug fixLuciadFusion

Fixed an issue that prevented users from creating more than one instance of TLspExternalView.

Bug fixLuciadFusion

The fallback vector layer factory for GXY views created layers that did not take into account the layer visibility when an out-of-scale red hatching pattern was drawn. This vector layer factory is registered on TLcdServiceLoader with low priority; aligned with TLcdServiceLoader's priority mechanism, it is returned and used when there is no registered layer factory with a higher priority (for instance, a format-specific layer factory) available.

Bug fixAviation Standards

LCD-11715
The AIXM 5.1 feature ApronMarking was not painted on terrain, causing the feature to disappear on a 3D view in case terrain data was loaded.

2020.1.12

ImprovementLuciadFusion

LCD-11695, LUCY-4921
The TLcdSHPModelEncoder now uses UTF-8 by default for writing DBF files, which supports non-latin text characters as well. It also writes the used charset to a CPG file now.

ImprovementLuciadFusion

LCD-11541
Added new method TLspFXView#getImage. This method returns a snapshot of the view after making sure that it is completely (re-)painted if it was invalidated before.

ImprovementAviation Standards

LCD-11676
The AIXM 5.1 layer factory for GXY views, TLcdAIXM51GXYLayerFactory, now also supports creating layers for model containers that includes multiple AIXM 5.1 models. The resulting layer is a layer tree node that includes a layer for each AIXM 5.1 model in the container.

ImprovementInfrastructure Standards

LCD-11580
The 3D Tiles Processing Engine will now automatically fallback to a black color when input textures could not be decoded. Previously this would cause the entire process to abort. Instead an error is logged on the console and the faulty image is replaced with a fallback texture containing a black color.

ImprovementInfrastructure Standards

LCD-11692
The 3D Tiles Processing engine will now automatically pick up material with transparent color and output this in the resulting 3D Tiles dataset. You no longer have to explicitly force it to encode to the png file format.

ImprovementInfrastructure Standards

LCD-11673
TLcdTilesProcessorBuilder#outputPath will now automatically append a file separator if it was not and the end of the output directory string. Previously this would end up with corrupted output datasets.

Bug fixLuciadFusion

LCD-11702
The WMS in the OGC server sample samples.ogc.server.StartOGCServices always advertised world bounds for models that were not of type ILcd2DBoundsIndexedModel - which is for example the case for SQLite-based formats such as GeoPackage. The bounds calculation logic has now been improved to be able to advertise accurate bounds in these cases.

Bug fixLuciadFusion

LCD-11698
TLspIconStyle: fixed a NullPointerException that could occur in very rare occasions.

Bug fixLuciadFusion

LCD-11688
Fixed memory leak in native memory, that was triggered by resizing a TLspSwingView or TLspFXView.

Bug fixLuciadFusion

LCD-11684
Fixed an issue in TLcdGeoPackageModelEncoder that prevented the encoding of vector data with a primary key property that is not of type long.

Bug fixWeather & Environment Standards

LCD-11709
Fixed an exception when trying to visualize some NetCDF data sets. This exception occurred during the creation of a color map when the min and max data values that are estimated for that dataset are equal.

Bug fixAviation Standards

LCD-11693
The style property of an AIXM 5.1 MarkingElement was not taken into account during visualization; this defines whether a line-based marking should be rendered with a solid, dashed or dotted line style.

Bug fixAviation Standards

LCD-11672
Fixed a geometry edge case in the handling of AIXM 5.1 airspace volumes containing one or more segments located at the poles. This could lead to a self-intersecting airspace geometry, which prevented the use of the airspace in an airspace aggregation.

Bug fixDefense Standards

LCD-11687
Fixed an issue where NITF 2.10 files with NBPPBV or NPPBH equal to zero could not be decoded, even if NBPR and NBPC are equal to 1.

Bug fixDefense Symbology

LCD-11698
Fixed issue with the hashcode calculation of Direction of Movement arrow icons in that could cause NullPointerException when painting icons in Lightspeed views.

Bug fixInfrastructure Standards

LCD-11595
Fixed an issue in 3D Tiles Processing Engine that would prevent OBJ files from being encoded in temporary cache files coming from multiple sources. This fixes the "Mesh can only have one source path" exceptions thrown when processing large input dataset with many input OBJ files at close proximity.

Bug fixMaritime Standards

LCD-11707
Fixed an issue with selecting S57 area icons in the GXY view. If the icons were anchored, or a-symmetrical, they were difficult to select.

Bug fixMaritime Standards

LCD-11690
Changed the display name of the TLcdS52DisplaySettingssafetyContour property to Safety contour. It used to be incorrectly labeled Shallow contour.

2020.1.11

ImprovementDefense Symbology

LCD-11665
NVG now accepts xml namespaces with added or missing trailing slashes in the URI of the xmlns attribute. For example, the Dublin-Core metadata namespace should be defined as xmlns:dc="http://purl.org/dc/elements/1.1/", but we now also accept xmlns:dc="http://purl.org/dc/elements/1.1".

Bug fixLuciadFusion

LCD-11681
The use of an SLD text symbolizer for raster data was not supported in GXY views.

Bug fixLuciadFusion

LF-2073
Improved the performance of recrawling and updating styles or data that are used in a lot of products.

Bug fixLuciadFusion

LCD-11669
The creation of a property-based OGC filter condition through TLcdOGCFilterFactory.property failed in case of subsequents calls for both GML 2 and GML 3.1 properties. This could cause errors when trying to load and visualize both GML 2 and GML 3.1 data on a map.

Bug fixAviation Standards

LCD-11671
Fixed a geometry edge case in the handling of AIXM 5.1 airspace volumes containing one or more segments based on a geographical border. This could lead to a self-intersecting airspace geometry, which prevented the use of the airspace in an airspace aggregation.

Bug fixDefense Symbology

LCD-11664
Fixed issue where a point list was cast to a com.luciad.symbology.app6a.model.ILcdRestrictedLengthPointList instead of a com.luciad.symbology.milstd2525b.model.ILcdRestrictedLengthPointList in TLcdEditableMS2525bObject.

Bug fixDefense Symbology

LCD-11670
Fixed the spelling of the security.classification metadata tag (was security.classifcation).

2020.1.10

ImprovementLuciadFusion

LF-2066
Improved speed of data search requests.

ImprovementLuciadFusion

LCD-11650
It is now possible to customize the maximum length of a HTTP GET request sent by the OGC clients, by means of the System property com.luciad.ogc.ows.model.TLcdOWSHttpTransport.maxGetQueryLength. This is mainly relevant for the WMS and WFS clients, which can generate large requests. When the maximum length is reached (default is 2048 characters), a HTTP POST query is used instead if supported by the server. Adjusting the maximum length can be useful to improve interoperability with servers that do not support HTTP POST.

Bug fixLuciadFusion

LCD-11661
Fixed an issue where the undo functionality wouldn't work correctly after modifying a polyline or polygon that was created using a continuous drag motion.

Bug fixLuciadFusion

LUCY-4915
The BlackLime Look and Feel used by Lucy Map Centric and a few samples did not link Copy/Paste behavior to Ctrl+c/v on some platforms.

Bug fixLuciadFusion

LCD-11651
The WMS layer name included in the metadata of each feature in a GeoJSON GetFeatureInfo response was not correct in case the WMS layer combined multiple data sources.

Bug fixLuciadFusion

LF-2069
Setting the resource metadata on a TLcdModelMetadata.Builder object no longer clears the data categories if the resource metadata doesn't contain any.

Bug fixLuciadFusion

LF-2069
Fixed an issue that prevented point cloud or mesh data to be added to an OGC 3D Tiles service if an ISO metadata file was placed alongside the data when it was crawled/added to LuciadFusion.

2020.1.09

Bug fixLuciadFusion

LCD-11645
TLspIconStyle: fixed a NullPointerException that could occur in very rare occasions.

Bug fixAviation Standards

LCD-11648
The ARINC decoder TLcdARINCModelDecoder did not decode the Restrictive Airspace property TLcdARINCRestrictiveAirspaceDataProperties.CYCLE_DATE.

Bug fixDefense Symbology

LCD-11646
Fixed an issue in GXY views that could cause a performance regression when configuring a default style for every military object.

2020.1.08

Bug fixLuciadFusion

LCD-11629
The optional gap value specified on an SLD graphic stroke was not properly taken into account in GXY views: it was not used if there was no initial gap configured as well and a stroke's graphic was painted less frequent than possible.

Bug fixLuciadFusion

LCD-11630
TLspLayer#query: when performing queries on a layer from multiple threads a NullPointerException could occur.

Bug fixLuciadFusion

LCD-11604
Fixed UnsupportedOperationException in ILcdGL#glGetActiveUniform().

Bug fixLuciadFusion

LF-2054
Fixed an issue where a connection was being held longer than necessary when deleting a data root. This could case LuciadFusion to run out of database connections under higher load.

Bug fixAdvanced Raster Services

LCD-11635
Fixed issue where encoding panoramas with TLcdLuciadPanoramaModelEncoder failed if a ILcdOGCFeatureIDRetriever was provided.

Bug fixDefense Symbology

LCD-11621
Fixed an issue in GXY views that caused the configured halo style to be ignored for polygon symbols.

2020.1.07

Bug fixLuciadFusion

LF-2058
Fixed an issue where the metadata of a composite dataset could become incorrect after it was updated and crawled. Crawling composite datasets will now be faster initially, but can be slower when recrawling.

Bug fixLuciadFusion

LCD-11470
TLspComplexStrokedLineStyle: when anti-aliasing is enabled it could occur that some pixels on a line were missing near corners.

Bug fixLuciadFusion

LF-2048
Fixed an issue where serving mesh data in an ogc 3D tiles service could result in 404 responses when fetching the b3dm files.

Bug fixS-63

LCD-11617

Fixed an issue where S-63 catalogs were not recognized, and decoded as S-57 catalogs instead, resulting in low-level errors.

This happened when an S-63 catalog had entries for cells (.000 files) that were missing on disk.

2020.1.06

ImprovementInfrastructure Standards

LCD-11615

Added the ability to recognize numeric values in feature metadata in Binz datasets.
In the Binz data format, all feature metadata are stored as String values, even if they represent numerical values. If the metadata reader discovers that for a given metadata key, the values for all features represent a number, the metadata for that key will now be decoded as numbers.
By doing this, we make sure that these numerical values are encoded as binary values in OGC 3D Tiles, and can be used in styling expressions in LuciadRIA.

2020.1.05

New featureLuciadFusion

LCD-11601
The TLcdE57ModelDecoder can now decode panoramic imagery from E57 files.

ImprovementLuciadFusion

LCD-11607
A GeoJSON GetFeatureInfo response now includes the layer name for each encoded feature, to ease traceability between selected features and the WMS layer(s) in which they are contained. This layer name is encoded as a foreign member in the GeoJSON output, aligned with the GeoJSON RFC (https://tools.ietf.org/html/rfc7946#section-6).

ImprovementLuciadFusion

LCD-9953
The method TLcdWMSDataSource.Builder.layer has been renamed to TLcdWMSDataSource.Builder.addLayer to be in line with the other addLayer methods. The former method has been deprecated. The documentation for the methods TLcdWMSDataSource.Builder.addLayer now mention that added layers are placed on top of earlier added layers.

ImprovementLuciadFusion

LCD-11331
The display name for fusion coverage models does no longer contain the server name/address. This aligns the display name with other model descriptors which also do not include the server name/address.

ImprovementAviation Standards

LCD-11610
The AIXM 3/4 decoder TLcdAIXMModelDecoder can now also decode stand-alone AIXM-Update files, without requiring to load an AIXM-Snapshot file upfront.

Bug fixLuciadFusion

LCD-11448
Fixed bug where a TLspFXView would sometimes disappear after resizing it.

Bug fixAviation Standards

LCD-11606
Fixed a NullPointerException that could occur when decoding an AIXM-Update file with route segment updates containing a missing start and/or end point.

Bug fixDefense Symbology

Fixed an issue in GXY views that caused the configured symbology style to be ignored when selecting a symbol in an asynchronously rendered layer.

Bug fixDefense Symbology

Fixed an issue that caused TLcdAPP6AGXYLabelPainterProvider and TLcdMS2525bGXYLabelPainterProvider not to take the configured default style into account for some symbols.

2020.1.03

ImprovementLuciadFusion

LCD-11598
TLcdGeoTIFFModelDecoder uses, in non-strict mode, better default values for user defined ellipsoids for which the corresponding GeoTIFF tags are missing. The default values are based on the WGS-84 ellipsoid.

ImprovementDefense Symbology

LCD-11592
The labeling performance of several tactical graphics in a GXY view has been improved significantly.

ImprovementDefense Symbology

LCD-11582
Ensured all Maritime Control Point (Symbol set 25, code 210000) symbols have a Unique Designation label in APP-6D.

ImprovementDefense Symbology

LCD-11582
Ensured all Maritime Control Point (Symbol set 25, code 210000) symbols have a Unique Designation label in MIL-STD 2525D.

ImprovementDefense Symbology

LCD-11531
Point lists passed to TLcdEditableMS2525bObject.set2DEditablePointList and TLcdEditableAPP6AObject.set2DEditablePoint no longer have to implement the ILcdRestrictedLengthPointList or ILcdRestrictedLengthPointList interfaces.

Bug fixLuciadFusion

LCD-11602
Fixed a potential deadlock in TLspExternalView when navigating in 3D.

Bug fixLuciadFusion

LCD-11599
Fixed bug in TLcdSHPModelEncoder that caused corrupt ShapeFiles when encoding 3D complex polygons.

Bug fixLuciadFusion

LCD-11593
Fixed a rare race condition when using asynchronous layer wrappers that could trigger a NullPointerException.

Bug fixLuciadFusion

LF-2041
Fixed an issue that could result in a deadlock when deleting/updating products and services concurrently if an Oracle database was used for LuciadFusion Studio.

Bug fixAdvanced Raster Services

LCD-11577
Fixed an issue where the Luciad Panoramas had visual defects after encoding specific cubemap input images with TLcdLuciadPanoramaModelEncoder.

Bug fixAdvanced Raster Services

LCD-11586
Fixed issue where the TLcdPegasusModelDecoder failed to decode url-based sources on linux.

Bug fixInfrastructure Standards

LCD-11597
Fixed issue that would occur when encoding OBJ files with multiple repeating textures and metadata. Before this would produce errors in the output batch table, causing certain simplified tiles to be missing when visualized.

Upgrade considerationLuciadFusion

LF-2044
The Studio database was missing several indexes for foreign key columns, which could result in issue LF-2041. The creation of these indexes have been added to the set of database changes, and will be added to the Studio database next time you start up LuciadFusion.

2020.1.02

ImprovementLuciadFusion

LCD-11555
The OGC Filter functions startAngle / endAngle and startPoint / endPoint can now be used without arguments inside an SLD style. While they previously required an argument that pointed to the domain object's geometry, these functions can now automatically find the geometry if the argument is left out.

ImprovementLuciadFusion

LCD-11553
Fixed an issue in TLcdOGC3DTilesModelDecoder where data with no byteOffset would not be loaded. That offset now defaults to 0.

Bug fixLuciadFusion

LCD-11579
TLcdXYGridLayer: the grid origin setting didn't work correctly for grids with non-meter spacings.

Bug fixLuciadFusion

LCD-11579
TLspXYGridLayerBuilder: the grid origin setting didn't work correctly for grids with non-meter spacings.

Bug fixLuciadFusion

LCD-11566
ALcdMeasureProviders created by TLspImageLayerMeasureProviderFactory now properly take the ALcdBandSemantics#getNoDataValue into account. Values equal to the no-data value are not included in the result of ALcdMeasureProvider#retrieveMeasuresAt.

Bug fixLuciadFusion

LCD-11563
Fixed an issue where not all connections to a GeoPackage file were closed after disposing a GeoPackage model.

Bug fixLuciadFusion

LF-2037
Fixed an issue that prevented adding 3D Tiles data to an OGC 3D Tiles service if the data was added using the Add Data functionality. This happened if the root tileset of the 3D Tiles data only referenced other json files. Existing OGC 3D Tiles data that couldn't be added to an OGC 3D Tiles service will need to be refreshed (or removed and then added again) before you can add it an OGC 3D Tiles service.

Bug fixLuciadFusion

LCD-9826
TLspPlotLayerBuilder: fixed an issue where a plot layer would fail to paint some of its data after it received a model change event. Note, however, that the change event will still cause the layer to invalidate and recompute all of its cached state. For data that changes frequently, we therefore strongly recommend using TLspShapeLayerBuilder and TLspParameterizedIconStyle.

Bug fixLuciadFusion

LCD-11549
Fixed an issue that prevented TLcdDataSource objects from being decoded by the TLcdGeoPackageModelDecoder.

Bug fixLuciadFusion

LCD-11514
TLspIconStyle: when using multiple TLspIconStyles, only one icon was taken into account for selection. Thus, an object could only be selected by one of the icons it was styled with.

Bug fixAviation Standards

LCD-11547
Fixed the handling of AIXM 5.1 airspace aggregations for airspaces with the following characteristics:
  • Airspaces that crossed the 180th meridian,
  • Airspaces that started with an arc segment.
In both cases, the resulting AIXM 5.1 airspace aggregation could have an incorrect airspace boundary.

Bug fixDefense Symbology

LCD-11562
Fixed issue where part of the Direction of Movement arrow was not painted in Lightspeed 2D views.

Bug fixDefense Symbology

LCD-11510
The military icon offsets are now also applied in 3D views. The offset can be configured using the methods ILcdMS2525bStyle.setOffset and ILcdAPP6AStyle.setOffset.

Bug fixDefense Symbology

LCD-11557
Fixed issue in Lightspeed views where the arrow stroke of the "Direction of Attack For Feint" symbol was drawn past the arrow tip.

Bug fixDefense Symbology

LCD-11544
Fixed issue where MIL-STD-2525 C icon symbols with the 'Joker' affiliation were always painted with a black and white outline instead of a black outline.

2020.1.01

ImprovementAdvanced Raster Services

LCD-11523
Errors while fetching pixel data from an ECW file were silently ignored, which could result in black tiles appearing on the map. This will now result in an IOException instead.

ImprovementInfrastructure Standards

LCD-11532

When decoding Binz data, and no georeference information can be found, the TLcdBinzModelDecoder will use a cartesian reference as fallback. If no reference information can be found next to the input data, the decode method will now load the data in its original, non-georeferenced coordinate system, instead of failing.
Note: Data that is decoded in its original coordinate system, can not be visualized on a geographical map. The dataset must be geo-located with an external tool, after conversion has been done.

ImprovementS-63

LCD-11543
Fixed an issue where cell permit subscription expiry date warnings (SSE 15 and SSE 20) didn't show up when there were cell permits in the old ENC.PMT format. This ENC.PMT file doesn't contain the necessary subscription information, while the PERMIT.TXT does. Now, the permits from the PERMIT.TXT file take precedence over those from the ENC.PMT file.

Bug fixLuciadFusion

LCD-11534
Fixed an issue related to the previous SLD fix LCD-11421, which caused that the SLD graphic size setting was not always taken into account for world-sized SVG icons.

Bug fixLuciadFusion

LF-2034
Fixed an issue in the LuciadFusion Studio CSW server causing a CSW dc:date query to fail.

Bug fixLuciadFusion

LF-2031
Added missing 'Panorama' category to the possible Product types. Additionally, empty products, which were previously categorized as 'Unknown', will now be categorized as 'Empty'. In existing products, these changes will only be apparent upon an update of their product contents.

Bug fixLuciadFusion

TLcdLonLatGeoBuffer#setJoinStyle changed the end cap style. This has been fixed.

Bug fixAviation Standards

LCD-11548
TLcdARINCModelDecoder: fixed a potential NullPointerException that could occur when decoding Start / End data properties within Restrictive Airspace continuation records.

Upgrade considerationLuciadFusion

LF-1964
The http method is now included when http requests to LuciadFusion are logged. Important to note is that the fusion.logback.xml has been updated to use a different logger for requests. Make sure you use the updated logback when upgrading LuciadFusion.

2020.1

New featureLuciadFusion

The LuciadFusion documentation now contains a dedicated section on creating a configuration with multiple servers in a failover and/or load balancing scenario.

Refer to the Multi-node section of the LuciadFusion Platform documentation for detailed instructions.

New featureLuciadFusion

New featureLuciadFusion

Raster layers now support bicubic interpolation, which greatly improves the image quality at high zoom levels. Bicubic filtering is enabled by setting the interpolation type of TLspRasterStyle to ELcdInterpolationType.CUBIC.

New featureLuciadFusion

The LuciadFusion Studio web app now allows users to add Data or Styles directly without the need for the source files to be part of a Data Root. This can be done clicking the ADD DATA or ADD STYLE on the DATA or STYLES page and providing the file path to the source file of the Data or Style. The Data or Style can be updated by clicking the REFRESH button on the detail page of the Data or Style. Data added directly can also be removed by clicking the REMOVE button.

New featureLuciadFusion

LuciadFusion administrators have the option to disable the advanced indexing of data. This may affect the performance of searches in the Studio UI but makes it possible to deploy Studio in multi-node mode. See configuration file application-fusion.common.yml.

New featureLuciadFusion

The LuciadFusion Studio REST API now allows users to add Data or Styles directly without the need for the source files to be part of a Data Root. This can be done by supplying the path of the source file for the Data or Style to Studio through the REST API. Operations to update and remove Data or styles that were added directly have also been added to the REST API.

More specifically, the following additions have been made to the REST API:

  • POST /api/data: allows Data to be added directly to Studio.
  • POST /api/styles: allows Styles to be added directly to Studio.
  • PUT /api/data/{id}/refresh: allows Data to be updated based on the changes made to the source file(s).
  • PUT /api/styles/{id}/refresh: allows Styles to be updated based on the changes made to the source file.
  • DELETE /api/data/{id}: allows Data to be removed from Studio.
  • DELETE /api/styles/{id}: allows Styles to be removed from Studio.

You can try out these new operations in the API Console, available at /api/console of a running Fusion development server. You can read in more detail about all the operations in the Developer's guide, available at /api/documentation.

Users will notice that adding certain Data directly to LuciadFusion Studio will be much quicker than crawling if the Data consists of many individual files (e.g. OGC 3D Tiles). This is because adding Data directly to LuciadFusion does not require evaluating all individual files.

New featureLuciadFusion

TLcdGeoPackageModelEncoder and TLcdGeoPackageModelDecoder now support the GeoPackage 1.1, 1.2.1, and the 1.3.0 specifications.

New featureLuciadFusion

You can now decode and visualize MBTiles files with image tiles in Lightspeed and GXY views, and LuciadFusion WMS/WMTS services.

For more details, see:

New featureAdvanced Raster Services

Data formats that contain panoramic images can now be decoded and served with LuciadFusion for visualisation in LuciadRIA.

Out-of-the-box, the Luciad products support reading panorama data from from E57 files and Pegasus spherical image tracks.

For unsupported formats, the API provides means to create custom data models. See packages com.luciad.panorama.model and com.luciad.panorama.transformation.

The API provides a way to export any valid panorama model to a standardized CubeMap model. See TLcdLuciadPanoramaModelEncoder for more information. The CubeMap model can be served with LuciadFusion as a Panoramics service.

cubemap
Example of a cubemap created from panoramic image data

For more details, see the Panoramic images reference guide in the documentation.

New featureAdvanced Raster Services

LuciadFusion Studio now includes a Panoramics service. This service can be used to serve panoramic image data. Panoramic image data is automatically preprocessed into the Luciad Panorama Format.

New featureDefense Symbology

All APP-6D symbols are now supported.
APP-6D space debris
The APP-6D symbology now supports all symbols, such as the space debris icons shown here.

ImprovementLuciadFusion

TLcdGXYCompositeCurvePainter now paints the entire composite shape in a single pass, retrieving the TLcdGeneralPath or TLcdAWTPath from the subpainters. This allows better visual results in combination with complex line styles.

ImprovementLuciadFusion

You can now also load image data from E57 files.

To do this you will need the LuciadFusion "Advanced Raster" option.

You cannot use TLcdE57ModelDecoder directly for this. Please refer to the LuciadFusion "Panoramic image data" documentation for details.

ImprovementLuciadFusion

It is now possible to format or parse 2D and 3D TLcdCartesianReference instances as WKT using the TLcdWKTReferenceFormatter or TLcdWKTReferenceParser classes respectively.

ImprovementLuciadFusion

The new class TLcdGARSPointFormat allows easy conversion of GARS strings to lon lat points and vice versa.

ImprovementLuciadFusion

Added ILcdEditableTimeBounds#setToUnion to easily include another time interval in a time bounds object.

ImprovementLuciadFusion

LCD-8112
Improved the way TLcdGeoJsonModelDecoder automatically constructs a TLcdDataModel. It now detects nested properties objects and creates separate data types for them as well.

ImprovementLuciadFusion

To simplify the sample code, some exotic GXY touch samples have been removed (multi-edit, multi-view, multi-user, gestures).

ImprovementLuciadFusion

TLcdGXYStampLabelPainter: deprecated the setGXYInteractiveLabelProvider method to avoid confusion with the TLcdGXYInteractiveLabelsController.

ImprovementLuciadFusion

LCD-10513
Improved compatibility with JDK 9 and higher by removing illegal reflective access calls from the API and sample code.

ImprovementLuciadFusion

LCD-11207
ILcdGXYController now has a getLayered method to add temporary layers to the view. When the controller is active, the layers are painted and the view's label placer takes those layers into account. The TLcdAdvancedMapRulerController now makes use of this if it's not configured to add a measurement layer to the view.

ImprovementAviation Standards

LCD-10738
The model descriptor of decoded AIXM 3/4 models now has a more meaningful display name based on the source of the data, instead of the fixed string "AIXM Data".

ImprovementAviation Standards

LCD-10738
The model descriptor of decoded ARINC models now has a more meaningful display name based on the source of the data, instead of the fixed string "ARINC Data".

ImprovementDefense Symbology

LCD-2941, LCD-9819, LCD-10478, LCD-10658, LCD-10916, LCD-10922, LCD-11186, LCD-11445, LCD-11480
The visualization of several tactical graphics in a GXY view has been improved significantly. The GXY visualization is now more accurate and consistent with the Lightspeed visualization. Rendering performance has been improved as well, especially when zoomed in closely or when using halo rendering.

ImprovementDefense Symbology

TLcdEditableAPP6AObject and TLcdEditableMS2525bObject now expose their buffer width as a modifier when appropriate, similar to the speed and movement direction modifiers.

ImprovementInfrastructure Standards

TLcd3DTilesProcessorBuilder: Added support for metadata when processing OBJ mesh files. This metadata can be used for selection. By default every single OBJ processed by the 3D fusion engine will have a unique id. On top of that, if the OBJ file contains grouping information, every single group will also get a unique id.

The unique id is stored as an integer in the batch table of the produced 3D Tiles dataset.

Next to this, the source file and group name are also stored in the batch table.

ImprovementInfrastructure Standards

Added the ability to customize what metadata ends up in a dataset processed by TLcd3DTilesProcessorBuilder.

Have a look at the ILcd3DTilesProcessorMetadataMapper, which can be implemented using the TLcd3DTilesProcessorBuilder#metadataMapper method.

The details on how to use this are described in the customize metadata guide.

ImprovementInfrastructure Standards

LCD-11385
TLcd3DTilesProcessorBuilder can now preserve mesh borders during mesh simplification. This feature, when activated, improves the visual appearance of low quality LODs with a minor computation cost. Refer to the preserveBorders method for more information.

ImprovementInfrastructure Standards

LCD-11368

TLcd3DTilesProcessorBuilder can now configure the number of vertices and the texture size for individual tiles.

We also decreased the default number of vertices and texture size for enhanced performance. Refer to the verticesPerTile and textureSize methods for more information.

On top of that, we also added an option to automatically drop geometrically complex objects in their entirety on simplified levels. You can find this option in the method TLcd3DTilesProcessorBuilder.dropSmallComplexParts().

ImprovementInfrastructure Standards

TLcd3DTilesProcessorBuilder: improved the Clustering simplification algorithm in terms of speed and visual result.

Bug fixDefense Symbology

LCD-11518
Fixed issue with "Boundaries - Line" symbol where the labels would not be attached on the polyline when zooming in.

Bug fixDefense Symbology

LCD-11355
Disabled the Leadership Indicator modifier for APP-6D Control Measure symbols. This SIDC modifier would operate on the same SIDC position as the Echelon modifier, so having them both enabled would cause unexpected behaviour.

Upgrade considerationLuciadFusion

All date-time properties used in the LuciadFusion Studio REST API now conform to RFC 3339. This means that a date-time property will now include a time-offset. The time-offset will be based on the time zone of the machine that LuciadFusion Studio runs on. If e.g the creationTime of a product was previously 2020-01-01T00:00:00.000 and LuciadFusion Studio is running on a machine in the CET timezone, then the creationTime returned by the REST API is now 2020-01-01T00:00:00.000+01:00. A creationTime that was previously 2020-08-01T00:00:00.000 will now return 2020-08-01T00:00:00.000+02:00 on that same machine.

Upgrade considerationLuciadFusion

LCD-11352
The Jaxen and Batik libraries have been upgraded to version 1.2.0 and 1.11, respectively. This improves compatibility with JDK 11.

Upgrade considerationLuciadFusion

The optional ArcSDE component has been removed from the Tiling Engine module as it has been discontinued by Esri as of ArcGSI 10.3. Consequently, ArcSDE data sources can no longer be preprocessed using Tiling Engine.

Upgrade considerationLuciadFusion

The optional ArcSDE component (com.luciad.format.arcsde) has been removed from the product after being deprecated since the 2016.0 release.

This component provided support for visualize data from an ESRI ArcSDE. However ArcSDE has been discontinued by Esri as of ArcGIS 10.3 in 2015, and you cannot buy it anymore.

As we're not aware of any customers using ArcSDE anymore, we removed it from all our products including LuciadFusion and Lucy. Consult the release notes of those products for more details.

Upgrade considerationLuciadFusion

The SQLite library has been updated to version 3.31.1.

Upgrade considerationLuciadFusion

The library libgpkg has been updated to version 1.0.1 to support newer versions of the GeoPackage specification.

Upgrade considerationAdvanced Raster Services

LCD-11435, LCD-11437
The third-party library 'GDAL' was updated to version 3.1.2 and has its PDF driver enabled. With this update, the TLcdGDALModelDecoder can now decode Geospatial PDF files. This is not supported on Linux 32-bit platforms, or Linux distributions that still use the old ABI (such as RHEL 7).

Upgrade considerationDefense Symbology

LCD-11404
The following Military Symbology classes have been removed:
  • ALcdMS2525bIconProvider
  • TLcdMS2525bIconProvider
  • TLcdMS2525bSelectionIconProvider
  • TLcdEditableMS2525bUnitCustomizer
  • TLcdEditableMS2525bUnitBeanInfo
  • ALcdMS2525bModifier
  • TLcdMS2525bAffiliationModifier
  • TLcdMS2525bCountryModifier
  • TLcdMS2525bEchelonModifier
  • TLcdMS2525bMobilityEquipmentModifier
  • TLcdMS2525bOrderOfBattleModifier
  • TLcdMS2525bStatusModifier
  • TLcdTextModifiersPanel
  • TLcdMS2525bGXYLayerFactory
  • TLcdMS2525bUnitIconPainterEditor
  • TLcdMS2525bUnitNewControllerModel
These API classes have been deprecated for more than a decade and have not been maintained since.