2026.0
New featureLuciadCPillar
New featureLuciadCPillar
GmlModelDecoderGmlModelDecoderGmlModelDecoder is explained
in the Decode and visualize GML data article.
You can use the data formats sample to load a GML file.
New featureLuciadCPillar
WfsCapabilitiesWfsCapabilitiesWfsCapabilities and WfsModelDecoderWfsModelDecoderWfsModelDecoder is explained
in the article on Decode and visualize WFS data.
You can use the data formats sample to connect to Web Feature Services.
New featureLuciadCPillar
New featureLuciadCPillar
LCP-776
HatchedIconBuilderHatchedIconBuilderHatchedIconBuilder to easily create and customize hatched icons.
ImprovementLuciadCPillar
LCP-1141, LCP-1146
IconDrawCommand::transparency and IconsDrawCommand::transparency
flags respectively.
ImprovementLuciadCPillar
ImprovementLuciadCPillar
Map::ViewMapTransformation::viewToMapMap::ViewMapTransformation::viewToMapMap::ViewMapTransformation::viewToMap with Map::LocationMode::ClosestSurfaceMap::LocationMode::ClosestSurfaceMap::LocationMode::ClosestSurface
now doesn't return world points on surfaces that were painted in a controller anymore. This fixes a potential problem
where measurement controllers would measure their own visualization.
ImprovementLuciadCPillar
FeatureQueryFeatureQueryFeatureQuery now can be configured with a CancellationTokenCancellationTokenCancellationToken.
It is recommended to take this into account when implementing the method IFeatureModel::queryIFeatureModel::queryIFeatureModel::query.
This allows to close an application quicker when it is still performing a feature query.
ImprovementLuciadCPillar
WmsModelDecoderWmsModelDecoderWmsModelDecoder and WmtsModelDecoderWmtsModelDecoderWmtsModelDecoder now also support
the `image/jpgpng` media type, which can be served by LuciadFusion.
Bug fixLuciadCPillar
Upgrade considerationLuciadCPillar
Upgrade considerationLuciadCPillar
Upgrade considerationLuciadCPillar
ParameterizedFeatureCanvas::IconsDrawCommandParameterizedFeatureCanvas::IconsDrawCommandParameterizedFeatureCanvas::IconsDrawCommand has changed from
the icons not being draped, to the icons being draped if the geometry has a zero Z value for consistency
with FeatureCanvas::IconDrawCommandFeatureCanvas::IconDrawCommandFeatureCanvas::IconDrawCommand. Applications relying on the default behavior
may have to add an explicit call to ParameterizedFeatureCanvas::IconsDrawCommand::draped() to
enforce the desired behavior.
Upgrade considerationLuciadCPillar
LuciadCPillar transitioned from OpenGL to WebGPU for graphics rendering. Because of this transition, Qt applications integrating LuciadCPillar now require a version of Qt greater than or equal to 6.8 (LTS). From this version on, Qt has sufficient support for the Vulkan graphics API, which is used as a backend for WebGPU.
The LuciadCPillar samples have been updated to use Qt version 6.8 (LTS). See the
installation instructions and
requirements page for details. Note that the VulkanSDK 1.4.321.1 also needs to be
installed on your system to compile the samples.
The change to WebGPU and the upgrade to Qt 6.8 have no effect on the use of (most of) the LuciadCPillar API itself, but it requires changes to the Qt integration code. If you have an application that uses Qt, you will need to copy the integration code from the LuciadCPillar samples to your own code base again. Additionally, you will need to make a few modifications:
- The
QQuickMapObjectclass has been renamed toQQuickMapItem. - The
QMapWidgetclass has been removed and replaced by the newQMapWindowclass. Note that the new class is not aQWidgetanymore. You can adapt it to aQWidgetusing theQWidget::createWindowContainerfunction. This is demonstrated in the Qt Widgets sample.
Upgrade considerationLuciadCPillar
Upgrade considerationLuciadCPillar
Map::RendererMap::RendererMap::Renderer has been changed. The following modifications were made:
-
The
Map::Renderer::destroyfunction has been replaced by theMap::destroyRendererMap::destroyRendererMap::destroyRendererfunction. -
The
Map::createRendererMap::createRendererMap::createRendererfunction was added. This function is used to create aMap::RendererMap::RendererMap::Rendererinstead of creating it implicitly usingMap::getRenderer(in older versions). This new function takes aWebGpuContextWebGpuContextWebGpuContextas input, which is used to pass WebGPU information to the new renderer. -
The
Map::getRendererfunction has been removed from the API. Users ofMap::RendererMap::RendererMap::Renderer(UI integration code for example) are now expected to keep a reference to the renderer that was created usingMap::createRendererMap::createRendererMap::createRenderer.
Map::IRendererCallbackMap::IRendererCallbackMap::IRendererCallback methods now also get a Map::RendererMap::RendererMap::Renderer
passed in as parameter. When you implement this interface, this will result in a compile error which can be fixed
by adding the additional Map::RendererMap::RendererMap::Renderer parameter to the implementation's methods.
Upgrade considerationLuciadCPillar
C++ 20 standard.
Upgrade considerationLuciadCPillar
- Blending of (semi-)transparent colors now happens in linear color space whereas it happened in gamma
color space (sRGB) in previous versions. This change resolves blending artifacts, but it can make blended colors slightly
brighter. This is especially noticeable when LuciadCPillar renders thin lines or thin text.

- Texture sampling now happens in linear color space whereas it happened in gamma color space (sRGB) in
previous versions. Similarly to blending, this change resolves minor artifacts, but it might look slightly different
from before.

Upgrade considerationLuciadCPillar
13.
Upgrade considerationLuciadCPillar
Upgrade considerationLuciadCPillar
IFeatureQueryCallback::handleTerminationIFeatureQueryCallback::handleTerminationIFeatureQueryCallback::handleTermination method has been added to the IFeatureQueryCallbackIFeatureQueryCallbackIFeatureQueryCallback interface.
In combination with the new FeatureQuery::getTooManyFeaturesCountFeatureQuery::getTooManyFeaturesCountFeatureQuery::getTooManyFeaturesCount, you can use this method
in your IFeatureModel::queryIFeatureModel::queryIFeatureModel::query implementations to signal that the query would have returned more features
than the caller can handle.
When upgrading, you will need to implement this new method in any classes extending from the
IFeatureQueryCallbackIFeatureQueryCallbackIFeatureQueryCallback interface. You may do this using an empty method body.
Upgrade considerationLuciadCPillar
PixelFormat::Rgb565 has been removed from the API. If you were using an image with
this pixel format, it's advised to convert it to an image with a different pixel format. For example
PixelFormat::Rgb888PixelFormat::Rgb888PixelFormat::Rgb888 or PixelFormat::Rgba8888PixelFormat::Rgba8888PixelFormat::Rgba8888.
Upgrade considerationLuciadCPillar
GDAL: updated to version3.10.3+1PROJ: updated to version9.6.0libwebp: updated to version1.5.0libjpeg: updated to version9fjson-c: updated to version0.18expected-lite: version0.9.0eigen: version3.4.1abseil: version20240722.0protobuf: version5.27.0glu: version1.3+7
expat: version2.7.1xerces-c: version3.3.0
Upgrade considerationLuciadCPillar
dawn, version 7582+2.
This library internally relies on these additional third-party libraries, managed independently by dawn itself:
abseildirectx-shader-compilerdirectx-headersjsoncppspirv-headersspirv-toolsvulkan-headersvulkan-loader
OpenGLGLAD
Upgrade considerationLuciadCPillar
LCP-1160
openssl: updated to version3.4.4