This page shows the release notes of older versions up until the point that the new version was released.
For a full list of release notes of an old version, consult the documentation of that version.
For example if you want to see what is fixed in each 2019.1.x patch release, consult the
release notes in the documentation of the 2019.1 release.
2024.0
2024.0.03
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.
2022.1
2022.1.06
Bug fixWeather & Environment Standards
LCD-12822
Resolved an issue where a
ConcurrentModificationException
could be thrown when disposing of a
TLcdNetCDFFilteredModel
.
2021.1
2021.1.13
Bug fixWeather & Environment Standards
LCD-12284
Fixed an issue where the color of the arrow of a SIGWX cloud label was not changed when setting the cloud label border color.
This issue happened when visualizing SIGWX clouds in a GXY view.
2021.0
2021.0
Upgrade considerationWeather & Environment Standards
LCD-11540
The
TLcdNetCDFModelDecoder#discoverDataSources
method now returns multi-band sources for data sources that are related.
Previously, all sources were returned as single-band sources.
This change required changing the return type to a list of
ILcdDataSource
instances, since
the returned sources can now contain both
TLcdNetCDFDataSource
and
TLcdNetCDFMultiBandDataSource
instances.
To return all sources as single-band sources as the
TLcdNetCDFModelDecoder#discoverDataSources
method did previously,
set the multi-band creation of the
TLcdNetCDFModelDecoder
to
MultiBandImageCreation.NEVER
.
2020.1
2020.1.22
Bug fixWeather & Environment Standards
LCD-11805
Fixed an issue where world-covering datasets decoded with the
TLcdNetCDFModelDecoder
could be shifted along the
longitude axis.
2020.1.12
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.
2020.0
2020.0.15
Bug fixWeather & Environment Standards
LCD-11485
Bug fixWeather & Environment Standards
LCD-11485
2020.0
New featureWeather & Environment Standards
BUFR files containing World Area Forecasting System (WAFS) Significant Weather (SIGWX) data can now be decoded and
visualized in Lightspeed and GXY views, and LuciadFusion WMS/WMTS/WFS services.

Example of a BUFR dataset visualized in Lightspeed
For more details, see:
2019.0
2019.0
Upgrade considerationWeather & Environment Standards
LCD-10324
Added a dependency to a customized version of the thredds library, used to parse NetCDF and GRIB files.
2018.1
2018.1.11
Bug fixWeather & Environment Standards
LCD-10480
TLcdNetCDFFilteredModel
now correctly handles the case where the
applyDimensionFilter
method is called with a filter that doesn't match any of the images.
In that case, it now makes sure that no image is available in the model. The previous behavior was to do nothing
(i.e. don't change the image returned by the model) when such a filter was encountered.
2018.1.07
ImprovementWeather & Environment Standards
LCD-10511
2018.0
2018.0.11
Bug fixWeather & Environment Standards
LCD-10228
Bug fixWeather & Environment Standards
LCD-10220
2018.0.02
ImprovementWeather & Environment Standards
LCD-9054
TLcdNetCDFModelDecoder
The logic that automatically combines variables for the creation of a multi-band image (e.g. northward and eastward wind)
has been improved.
ImprovementWeather & Environment Standards
LCD-9762
Bug fixWeather & Environment Standards
LCD-10011
TLcdNetCDFModelDecoder
Resolved an issue where variables were incorrectly combined for the creation of multi-band images if they had very similar
names.
This fixes some problems introduced by the changes made in LCD-9700.
Bug fixWeather & Environment Standards
LCD-9700
The system property com.luciad.netcdf.cachedir
can now be used to set the NetCDF cache directory.
This directory is used e.g. for GRIB index files.
Setting this property prevents issues with creating cache files in case the default chosen cache directory is non-writable.
The system property can be set by providing it as a VM argument, e.g. -Dcom.luciad.netcdf.cachedir=<a-valid-path>
.
The directory provided in the system property will be created if it is not available.
2017.1
2017.1.01
Bug fixWeather & Environment Standards
LCD-9605
TLcdNetCDFModelDecoder
would throw a
NullPointerException
for
NetCDF files without a standard name property. This is now fixed.
2017.1
Bug fixWeather & Environment Standards
LCD-9443
Fixed a performance problem in
TLcdNetCDFModelDecoder
for NetCDF files that contain
data with a large number of pixels.
Upgrade considerationWeather & Environment Standards
All API in the com.luciad.format.grib
package has been deprecated.
The NetCDF decoder offers superior support for GRIB and should be used instead.
2017.0
2017.0.01
ImprovementWeather & Environment Standards
LCD-9181
GRIB models decoded using
TLcdNetCDFModelDecoder
now expose the original GRIB metadata,
see
TLcdNetCDFModelDescriptor#getGRIBMetadata
.
2017.0
ImprovementWeather & Environment Standards
LCD-8745
ImprovementWeather & Environment Standards
TLcdNetCDFModelDecoder
now also supports loading GRIB files. For GRIB files, it produces a
model that is structured exactly the same way as a model from NetCDF files, making it possible to visualize it
exactly the same way. This will also enable filtering on time/vertical or other dimensions for GRIB files. See
TLcdNetCDFFilteredModel#applyDimensionFilter
.
Bug fixWeather & Environment Standards
Upgrade considerationWeather & Environment Standards
2016.1
2016.1.32
Bug fixWeather & Environment Standards
LCD-9053
TLcdNetCDFModelDecoder#discoverDataSources
could return
ILcdDataSource
instances that can not be decoded.
2016.1.10
Bug fixWeather & Environment Standards
LCD-8583
For some files with bounds with a width of a bit more than 360 degrees, a wrong code path was triggered to shift the
view -180 degrees. This is fixed now.
Bug fixWeather & Environment Standards
LCD-8572
TLcdNetCDFModelDecoder could show irrelevant warnings for missing coverage info data.
Bug fixWeather & Environment Standards
LCD-8524
Disposing a NetCDF model didn't always dispose of its resources. It could leave files open, or not clean up
temporary files.
2016.1.09
Bug fixWeather & Environment Standards
LCD-8566
In rare cases, NetCDF files with a geodetic model reference had incorrect bounds, causing them to be painted at
a different location than expected.
2016.1.03
ImprovementWeather & Environment Standards
LCD-7102
TLcdNetCDFModelDecoder now implements ILcdInputStreamFactoryCapable which lets you to provide input stream factories
to the decoder. For example, you can now decode NetCDF data served from an OGC WCS web service by providing the
input stream created by a WCS Client to the TLcdNetCDFModelDecoder.
ImprovementWeather & Environment Standards
LCD-7702
Added a new exception message for unsupported input files which have zero length axes.
ImprovementWeather & Environment Standards
LCD-7662
Improved wind data detection logic therefore more NetCDF files can be visualized with wind barbs.
2016.1.02
Bug fixWeather & Environment Standards
LCD-8273
The deprecated TLcdNetCDFFilteredModel#setFilterParameter method was not snapping the given interval to the closest
possible interval value as it was doing it on v2015.1
2016.0
2016.0.05
ImprovementWeather & Environment Standards
LCD-7450
Added support for product definition template 15.
2016.0
ImprovementWeather & Environment Standards
It is now possible to decode one or more specific NetCDF variables out of a source file using a file:// URI with
query parameters.
This can be used to reduce load time when you only need a specific subset of variables out of a NetCDF source file
that has many variables.
For example, given the source file:///dir/netcdf.nc?variable=U&variable=V, the decoder
decodes only the U and V components of wind, regardless of any other variables which may be present in the source
file.
2015.1
2015.1.20
ImprovementWeather & Environment Standards
LCD-7412
NetCDF GXY painters are now using anti-aliasing.
2015.1.11
ImprovementWeather & Environment Standards
LCD-7177
Unknown datums are created with the name "Unknown" instead of empty string.
Bug fixWeather & Environment Standards
LCD-7207
Add obfuscation exception for some NetCDF packages to the proguard configuration file.
2015.1.07
ImprovementWeather & Environment Standards
LCD-7108
u and v components of WRF NetCDF files are displayed as wind barbs.
2015.1.04
ImprovementWeather & Environment Standards
LCD-6362, LCD-6875
Resolved several minor bugs while decoding a NetCDF file.
2015.1.02
Bug fixWeather & Environment Standards
LCD-7009
WRF NetCDF files support has been added.
2015.0
2015.0.12
Bug fixWeather & Environment Standards
LCD-6803
Data with mercator projection is now displayed on correct coordinates. "longitude_of_projection_origin" is
taken into account while creating a mercator projection.
2015.0.08
Bug fixWeather & Environment Standards
LCD-6656
Fixed issue; icons are not displayed in 3D with a grid reference which has a unit of measure value different than 1.
2015.0
ImprovementWeather & Environment Standards
TLcdGRIBArrowIcon now doesn't paint an icon anymore when the "U_V" type is used and both
GRIB values are 0.
ImprovementWeather & Environment Standards
TLcdGRIBGXYPainterProvider/TLspGRIBLayerBuilder: improved the default GRIB raster coloring:
the used colors are now less obtrusive and more consistent.
ImprovementWeather & Environment Standards
The NetCDF Industry Specific Component adds support for decoding NetCDF files and visualizing them
in a Lightspeed view or in a GXY view. For more details, see:
- The NetCDF Developer's Guide
- TLcdNetCDFModelDecoder to decode NetCDF files containing rectilinear grids with
equally-spaced coordinates. The decoder follows the Climate and Forecast conventions.
- TLspNetCDFLayerBuilder to visualize NetCDF models in a Lightspeed view.
- TLcdNetCDFGXYPainterProvider to visualize NetCDF models in a GXY view.
- GXY and Lightspeed samples in the samples.decoder.netcdf package.
2014.0
2014.0.09
Bug fixWeather & Environment Standards
LCD-5831
Prevent the decoder from marking GRIB bulletins with WMO headers as corrupt
when bulletin support is turned off. The decoder will now correctly decode
the first message in non-bulletin mode.
Bug fixWeather & Environment Standards
LCD-5828
Fixed decoding of GRIB bulletins containing custom message headers.
The decoder will now look for recognizable patterns and otherwise ignore
the header instead of assuming a fixed format.
2014.0.01
Bug fixWeather & Environment Standards
LCD-4375
Fixed column being wrongly discarded with wraparound tiles,
resulting in an out of bounds exception.
2013.0
2013.0.02
Bug fixWeather & Environment Standards
LCD-3774
GRIB files containing non-multiple-of-2-bits data could cause exceptions during painting.
2013.0.01
Bug fixWeather & Environment Standards
LCD-3773
Fixed a possible NullPointerException when decoding GRIB data.
2013.0
ImprovementWeather & Environment Standards
The new TLcdGRIBGXYPainterProvider and TLspGRIBLayerBuilder classes allow visualizing all regular
and multi-valued GRIB models in either an ILcdGXYView or ILspView.
See the decoder.grib.gxy and decoder.grib.lightspeed samples for more information.
ImprovementWeather & Environment Standards
TLcdGRIBModelDecoder now has the ability to automatically create multi-valued models for
relevant data (for example, wind).
See TLcdGRIBModelDecoder#setMultiValuedRasterCreation.
Bug fixWeather & Environment Standards
TLcdGRIBNumericIcon didn't paint its text at the correct location.
Bug fixWeather & Environment Standards
LCD-2777
The default NCEP parameter tables now have the correct originating
center id. This prevents invalid warnings from being triggered.
2012.1
2012.1.10
Bug fixWeather & Environment Standards
LCD-3565
The parameter value corresponding to the given internal value of a GRIB file is now calculated
with a higher precision.
2012.1.08
Bug fixWeather & Environment Standards
LCD-3527
TLcdGRIBWindIcon is now rotated correctly when rotating the map and changing projections.
Bug fixWeather & Environment Standards
LUCY-3618
The GRIB1 model decoder now also supports ECMWF parameter tables.
Remember that by default the NCEP parameter table will be used.
See TLcdGRIB1ModelDecoder#addParameterTable to add other tables.
2012.0
2012.0.11
ImprovementWeather & Environment Standards
LCD-1409
Decoded models will no longer have a null reference.
Bug fixWeather & Environment Standards
LMAP-5892
TLcdGRIBWindIcon is now painted correctly: wind barbs for speeds above 100 knots are painted
as multiple triangles instead of squares.
11.0
11.0.26
ImprovementWeather & Environment Standards
LMAP-5612
TLcdGRIB2ModelDecoder now supports PNG encoded packing.
ImprovementWeather & Environment Standards
LMAP-5614
The documentation on complex packing support has been improved.
ImprovementWeather & Environment Standards
LMAP-5613
TLcdGRIB2ModelDecoder now makes a better estimate of the number of bits required to load GRIB2 files
with complex packing, resulting in less memory consumption.
11.0.16
Bug fixWeather & Environment Standards
LMAP-5707
TLcdGRIB2TileDecoder no longer throws an ArrayIndexOutOfBoundsException for
tiles with 2 bits per value.
11.0.02
ImprovementWeather & Environment Standards
LMAP-5559
TLcdGRIB2ModelDecoder now supports complex packing with and without spatial differencing.
Currently only general group splitting is supported (See GRIB 2 Table 5.4 for more details).
11.0.01
Bug fixWeather & Environment Standards
LMAP-5567
TLcdGRIB2ModelDecoder did not handle GRIB2 files which have adjacent rows stored in opposite
direction correctly. This has been fixed.
Bug fixWeather & Environment Standards
LMAP-5473
The GRIB2 model decoder now throws an exception with a meaningful message when decoding
a file with an unsupported grid definition template number.
10.1
10.1.01
ImprovementWeather & Environment Standards
The GRIB model decoders now have better detection of rasters that wrap around
the globe.
10.1
ImprovementWeather & Environment Standards
TLcdGRIBModelDecoder now supports GRIB version 2.
Bug fixWeather & Environment Standards
LMAP-4616
Lucy GRIB painter used to be inaccurate in some regions. This has been
resolved.
Bug fixWeather & Environment Standards
LMAP-4614
GRIB Bulletin model decoder can now decode GRIB1 files with alternative
header structure.
Bug fixWeather & Environment Standards
LMAP-4605
GRIB bulletin model descriptor now contains model descriptors of all
contained models in ModelTreeNode mode.
Bug fixWeather & Environment Standards
LMAP-4684
Decoded GRIB rasters now properly return unsigned integers for the internal
values (ILcdRaster#retrieveValue and ILcdTile#retrieveValue).
Bug fixWeather & Environment Standards
LMAP-4697
Decoded GRIB rasters that wrap around the globe no longer leave a narrow
vertical gap (typically right next to the meridian).
9.1
9.1
ImprovementWeather & Environment Standards
Exceptions that are thrown now consistently contain their root causes, if any.
ImprovementWeather & Environment Standards
The GRIB model decoders now support different sampling strategies for
retrieving GRIB values from decoded rasters. Notably, it is now possible to
let decoded rasters perform bilinear interpolation between samples.
9.0
9.0
Bug fixWeather & Environment Standards
LMAP-825
com.luciad.format.grib.gxy.TLcdGRIBRasterPainter now correctly rotates
wind barbs and arrows if the map is rotated or warped.
8.2
8.2.02
Bug fixWeather & Environment Standards
LMAP-2963
com.luciad.format.grib.gxy.TLcdGRIBWindIcon now draws filled squares for
wind speeds over 100 knots.
Bug fixWeather & Environment Standards
LMAP-2960
com.luciad.format.grib.gxy.TLcdGRIBWindIcon now draws correctly oriented
wind barbs for GRIB data with a direction/strength parameterization.
8.1
8.1.01
ImprovementWeather & Environment Standards
LMAP-2701
OutlineSHPLayerFactory (sample code) used to use some deprecated code.
7.2
7.2.05
ImprovementWeather & Environment Standards
com.luciad.format.grib.TLcdGRIBModelDecoder now also accepts the extension
"grib" in its method canDecodeSource.
7.1
7.1.17
ImprovementWeather & Environment Standards
The GRIB package now also supports Albers Equal Area projections.
7.1.16
ImprovementWeather & Environment Standards
com.luciad.format.grib.TLcdGRIBModelDecoder now supports multiple parameter
tables with the same table version, distinguishing them based on the
originating center ID and subcenter ID if required.
7.1.13
Bug fixWeather & Environment Standards
com.luciad.format.grib.TLcdGRIBModelDescriptor.getPeriodOfTimeP1 now returns a value that is
a combination of octet 19 and 20 when the time range indicator is 10, while
getPeriodOfTimeP2 and getTimeInterval return 0 in this case.
7.1
ImprovementWeather & Environment Standards
Added a new decoder com.luciad.format.grib.TLcdGRIBBulletinModelDecoder,
for decoding GRIB bulletin files. The GRIB messages are concatenated in the
bulletin files, with optional headers. They can be filtered based on these
headers and on the model descriptors, references, and bounds.
7.0
7.0.16
ImprovementWeather & Environment Standards
com.luciad.format.grib.TLcdGRIBModelDecoder now puts better display names in
the model descriptors of decoded models.
7.0.05
Bug fixWeather & Environment Standards
com.luciad.format.grib.TLcdGRIBParameterTable no longer throws an
ArrayIndexOutOfBoundsException when a parameter with index 255 is set.
7.0.02
Bug fixWeather & Environment Standards
com.luciad.format.grib.TLcdGRIBModelDescriptor now only considers the
significant bits of the internal GRIB value in the method getActualValue,
discarding any other spurious bits.
7.0.01
Bug fixWeather & Environment Standards
com.luciad.format.grib.TLcdGRIBModelDecoder now handles Grid Description
Sections with the PV/PL field set to 0 (instead of the more correct value
255).
6.2
6.2.03
Bug fixWeather & Environment Standards
com.luciad.format.grib.TLcdGRIBModelDecoder now decodes the correct GRIB
bounds, without extending them by half a pixel in all directions. This would
cause problems for GRIB files that extend all the way to the north pole or
the south pole. For consistency, TLcdGRIBTileDecoder now discards the last
column and row of sample values, which are duplicated across tiles. The
sample value in the top left corner of each pixel is used as the pixel's
value.
6.0
6.0.08
Bug fixWeather & Environment Standards
com.luciad.format.grib.TLcdGRIBModelDescriptor now properly stores the level
at which the parameter is defined.
Bug fixWeather & Environment Standards
com.luciad.format.grib.gxy.TLcdGRIBWindIcon has been corrected to draw the
wind barbs on the left side of the arrow.
6.0.01
ImprovementWeather & Environment Standards
com.luciad.format.grib.ILcdGRIBConstants has been added, collecting all GRIB
constants for generated models and processes, for parameters, and for levels
and layers in a single location.
ImprovementWeather & Environment Standards
com.luciad.format.grib.TLcdGRIBTileDecoder now supports numbers of packing
bits that are larger than 16.
6.0
ImprovementWeather & Environment Standards
com.luciad.format.grib.TLcdGRIBModelDecoder now supports user-defined
parameter tables. The new jar lcd_grib_resources.jar contains standard
parameter tables that are supported by default, as well as a number of
additional parameter tables that can be loaded by the user.
5.3
5.3.16
Bug fixWeather & Environment Standards
com.luciad.format.grib.TLcdGRIBModelDecoder now properly uses its input
stream factory for decoding the raster data.
5.0
5.0.06
ImprovementWeather & Environment Standards
com.luciad.format.grib.TLcdGRIBModelDecoder.canDecode(String) now also returns
true for compressed GRIB files.
ImprovementWeather & Environment Standards
com.luciad.format.grib.gxy TLcdGRIBGXYController now supports multi-valued
GRIB values.