2024.0.04

ImprovementLuciadCPillar

LCP-665
It is now possible to call Feature::getValueFeature::getValueFeature::getValue with a more specific geometry type as type parameter.

Bug fixLuciadCPillar

LCP-861
Fixed an issue where certain MGRS grid labels could be on the wrong side of a square's corner in 3D.

Bug fixLuciadCPillar

LCP-826
Fixed an issue where curves with a very large curvature might discretize incorrectly.

Bug fixLuciadCPillar

LCP-834
Fixed an issue where creating icons could result in a memory leak.

Bug fixLuciadCPillar

LCP-835
Fixed an issue where newly added features weren't always immediately painted after updating an IFeatureModelIFeatureModelIFeatureModel on a FeatureLayerFeatureLayerFeatureLayer with FeatureLayerLoadingStrategyFeatureLayerLoadingStrategyFeatureLayerLoadingStrategyLoadSpatially.

Bug fixLuciadCPillar

LCP-864
View displacement was incorrect for icons with an anchor that it not the icon center.

Bug fixLuciadCPillar

LCP-861

Bug fixLuciadCPillar

PolylineCreatorPolylineCreatorPolylineCreator and PolylineRingCreatorPolylineRingCreatorPolylineRingCreator consumed mouse move events, even before the first point was created.

Bug fixLuciadCPillar

LCP-859
PointEditHandle::addOnTouchLongPressActionPointEditHandle::addOnTouchLongPressActionPointEditHandle::addOnTouchLongPressAction only worked when adding a mouse (drag or click) action as well. It now also works when only a touch long press action is added.

2024.0

2024.0.03

ImprovementLuciadCPillar

LCP-831
Improved performance when visualizing many labels with the same font styling.

Bug fixLuciadCPillar

LCP-857
Fixed an issue where MgrsFormat::parseMgrsFormat::parseMgrsFormat::parse would crash for certain invalid MGRS strings.

Upgrade considerationLuciadCPillar

LCP-827
LuciadCPillar now depends on library abseil. This new dependency requires no code changes.

2024.0.02

ImprovementLuciadCPillar

LCP-821
It is now possible to override the default mipmap filtering type of a OGC 3D Tiles by invoking the mipmapFiltering method of a MeshStyle::BuilderMeshStyle::BuilderMeshStyle::Builder.

ImprovementLuciadCPillar

LCP-801
It is now possible to configure memory hints for a MapMapMap. These are used to reduce the amount of cached data of a layer or reduce the quality of some layers when the overall memory consumption of the MapMapMap. reaches the limits of the memory hints. If warnings are being logged about quality reduction in your application, you can now increase the values for the memory hints via Map::Builder::maxMemoryUsageHintMap::Builder::maxMemoryUsageHintMap::Builder::maxMemoryUsageHint.

Bug fixLuciadCPillar

LCP-817
Fixed a possible crash when exiting a WPF application. This could for example be triggered by closing the application while a feature is being edited.

Bug fixLuciadCPillar

LCP-823
Fixed a rare issue that could result in a deadlock when using a large amount of icons.

Bug fixLuciadCPillar

LCP-815
Fixed an issue where an editable GeoPackage's bounds could be wrong after persisting changes.

Bug fixLuciadCPillar

LCP-829
CoordinateReferenceProviderCoordinateReferenceProviderCoordinateReferenceProvider incorrectly parsed a few EPSG codes. Coordinate references using the following datums are affected:
  • IG05/12 Intermediate Datum (EPSG:1144)
  • World Geodetic System 1984 (G730) (EPSG:1152)
  • World Geodetic System 1984 (Transit) (EPSG:1166)
  • CR-SIRGAS (EPSG:1225)
  • Sistem Referensi Geospasial Indonesia 2013 (EPSG:1293)
  • International Terrestrial Reference Frame 1992 (EPSG:6651)

Bug fixLuciadCPillar

LCP-825
FeatureLayerFeatureLayerFeatureLayer: Fixed an issue where vertical polygons would not always be filled correctly.

Bug fixLuciadCPillar

LCP-824
Fixed an issue where Polyline::ComputePoint could return CoordinateCoordinateCoordinates with NaN values if the polyline had a 2D length of 0 while consisting of multiple points.

Upgrade considerationLuciadCPillar

LCP-820
Fixed an issue where textures in OGC 3D Tiles and 3D Icons automatically applied mipmap filtering even when they should not have.

2024.0.01

ImprovementLuciadCPillar

LCP-794
Improved performance when visualizing many labels with the same font styling.

ImprovementLuciadCPillar

LCP-785
LuciadCPillar will now log more information to the ILoggingBackendILoggingBackendILoggingBackend when certain types of errors occur. For example segmentation faults or divide-by-zeros.

ImprovementLuciadCPillar

LCP-778, LCP-783
The dataformats sample's HERE maps sample code now uses HERE maps Raster Tile API v3, replacing the deprecated HERE Map Tile API v2.

Bug fixLuciadCPillar

LCP-809
Fixed an issue where all MBTiles would disappear when zooming in on the world boundary for certain map references.

Bug fixLuciadCPillar

LCP-811
Fixed a decoding issue of OGD 3D Tiles 1.1 that could occasionally result in degenerated geometries.

Bug fixLuciadCPillar

LCP-804
Fixed an issue where the background style of an MBTiles layer would be missing for certain map references.

Bug fixLuciadCPillar

LCP-796
Added missing backslashes to the paths in the Nuget package's .target file.

Bug fixLuciadCPillar

LCP-795
Fix an issue where pin lines are not drawn.

Bug fixLuciadCPillar

LCP-784
Fix a rare crash that can happen when painting and updating lots of different icons.

Bug fixLuciadCPillar

LCP-789
Fixed a rare race condition in FeatureLayerFeatureLayerFeatureLayer that could occur for feature data that is continuously updated. This could lead to a crash.

Bug fixLuciadCPillar

Fixed a possible exception when very quickly triggering the label property of a FeatureLayerFeatureLayerFeatureLayer.

Bug fixLuciadCPillar

LCP-788
Fixed a possible exception that mentions a [Remove + Update], [Remove + Remove], [Add + Add] or [Add + Update] FeatureEvent.

Bug fixLuciadCPillar

LCP-805, LCP-806
Fixed an issue where labels with an OnPathLabelStyle::relativeLocation would sometimes have a jittery orientation.

2024.0

New featureLuciadCPillar

You can now visualize OGC 3D Tiles 1.1. Supported functionality:
  • Implicit tiling (both JSON and binary subtrees, no metadata yet).
  • GLB/glTF (using internal, Base64 inlined or external buffers) as payload.
  • Supported glTF 2.0 extensions:
    • KHR_texture_transform
    • KHR_mesh_quantization
    • EXT_meshopt_compression
    • EXT_mesh_features

New featureLuciadCPillar

LuciadCPillar now provides support for decoding and visualizing MBTiles files and web services containing image and vector tiles. An MBTiles file can be decoded by passing the file path to the decoder. To decode an MBTiles web service, you need to provide the TileJSON endpoint as a source. For more details, see:

New featureLuciadCPillar

You can now export an existing feature model to an existing GeoPackage file or a new GeoPackage file. You can also add a new, empty feature data table to a new or existing GeoPackage file. Please refer to the GeoPackage encoding article for more details.

New featureLuciadCPillar

LuciadCPillar now contains complete C# API documentation. The documentation no longer refers to the C++ API; all code and code snippets in the documentation are now available in C#.

New featureLuciadCPillar

Raster layers can now be divided into the following two types, based on the expected interaction between the application user and the layer: You can set the RasterLayerTypeRasterLayerTypeRasterLayerType through the RasterLayer::BuilderRasterLayer::BuilderRasterLayer::Builder class. The default raster layer type is RasterLayerType::BackgroundRasterLayerType::BackgroundRasterLayerType::Background. For more information, please read the RasterLayerTypeRasterLayerTypeRasterLayerType API documentation and the Interacting with raster layers article.

New featureLuciadCPillar

The Attribution API has been added. This update enables attribution data to be provided to tiled models using an IMultilevelTiledAttributionProviderIMultilevelTiledAttributionProviderIMultilevelTiledAttributionProvider. Additionally, all attributions on a map can now be retrieved via its MapAttributionsMapAttributionsMapAttributions. This feature is demonstrated for HERE Maps and MBTiles in the 'Dataformats' sample. For more information, please refer to the attribution article.

ImprovementLuciadCPillar

The bold and italic variants of Noto are now supported.

ImprovementLuciadCPillar

The LuciadCPillar release now includes a NuGet package that can be published to a private feed in your local package repository. It contains the Luciad CPillar API. NuGet packages containing the integration and sample code can be created as described in the installation article

ImprovementLuciadCPillar

Added support for the following GLTF extensions:
  • KHR_texture_transform
  • KHR_mesh_quantization
  • EXT_meshopt_compression
You can now load GLTF data as 3D icons or in 3D tiles datasets that use these extensions.

ImprovementLuciadCPillar

LCP-713
An overloaded Map::HeightProvider::retrieveHeightAtMap::HeightProvider::retrieveHeightAtMap::HeightProvider::retrieveHeightAt method has been added. It is now possible to query the map for elevation values at a provided point on the map and at provided pixel density. For more information, please read the Map::HeightProvider::retrieveHeightAtMap::HeightProvider::retrieveHeightAtMap::HeightProvider::retrieveHeightAt API documentation and the updated How to get height data from the map article.

Bug fixLuciadCPillar

LCP-703
Fixed an issue for an authenticated WMS where canceling the authentication needed to be done twice. This was caused by the WMS client making another attempt using WMS version 1.1.1 after the canceled authentication for WMS 1.3.0.

Upgrade considerationLuciadCPillar

The following third party libraries have been updated:
  • libcurl: updated to version 8.6.0
  • openssl: updated to version 3.1.2
  • zlib: updated to version 1.3.1

Upgrade considerationLuciadCPillar

On Linux, LuciadCPillar now requires an operating system with glibc version 2.28 or higher. The minimum compiler version needed to build your CPillar project has been upgraded to GCC 11.

Upgrade considerationLuciadCPillar

The freetype library has been updated to version 2.13.2.

Upgrade considerationLuciadCPillar

The LuciadCPillar samples have been updated to use Qt version 6.5 (LTS). Please refer to the installation instructions and requirements page for details. This has no effect on the use of the LuciadCPillar API.

Upgrade considerationLuciadCPillar

The versions of the Android Jetpack libraries the LuciadCPillar Android samples depend on have been updated. This has no effect on the use of the LuciadCPillar API.

Upgrade considerationLuciadCPillar

LuciadCPillar depends on the library libwebp to support the WebP format.

Upgrade considerationLuciadCPillar

The minimum supported Android API level by LuciadCPillar is now 30. For more information about evolution in supported API Level, please refer to the System Requirements documentation.

Upgrade considerationLuciadCPillar

LuciadCPillar now depends on the meshoptimizer library.

Upgrade considerationLuciadCPillar

LuciadCPillar now depends on the protobuf library.