2024.1

New featureLuciadRIA

RIA-4956

Statistics for HSPC are now available from the HSPCTilesModelDescriptor.properties. These properties are only defined if the pointcloud contains statistics.

New featureLuciadRIA

WebGLMap now supports display scaling. This allows for sharp and crisp map rendering on high resolution (hiDPI) displays.

More information can be found in the Display scaling (hiDPI) in LuciadRIA guide.

New featureLuciadRIA

Symbology Encoding (SLD): added support for the vendor option 'inclusion'.

You can now use the vendor option 'inclusion' in your SLD style files to differentiate between styling for legend entries and styling for regular maps. You can provide a `painterType` when creating a Symbology Encoding painter, to indicate which styles should be used.

More information can be found in SLD legend, vendor option 'inclusion' - Usage and examples

A Legend tool was added to the LuciadRIA Toolbox. See toolbox/ria/legend/README.md for more information. Basic usage is illustrated in both the LuciadRIA Symbology Encoding sample and the LuciadRIA Smart Data Loading sample.

New featureLuciadRIA

You can now set the reference of WebGLMap after the map has been created, instead of only at construction time. Please refer to WebGLMap.reference for more information and restrictions.

All samples that can be run in multiple references now have a new button in the top left that allows users to change the reference of the map, without having to recreate the map. The Dual map sample now also sets the references on the maps, instead of recreating them.

New featureLuciadRIA

Added support for the BezierCurve geometry. You can now create, visualize, and edit both quadratic and cubic Bézier curves. For more details on how to create these shapes, please refer to ShapeFactory.createQuadraticBezierCurve or ShapeFactory.createCubicBezierCurve.

The Create and Edit sample allows you to interactively create and edit these shapes.

New featureLuciadRIA

RIA-4931
You can now use the mod expression in ExpressionFactory.

New featureLuciadRIA

LuciadRIA now supports RESTful encoding for WMTS GetCapabilities and GetTile requests.

When fetching the capabilities document, you can set the preferred WMTSRequestEncoding by using WTMSCapabilitiesFromURLOptions#preferredRequestEncoding.

When creating a WMTSTileSetModel from a URL or from a capabilities document, you can set the preferred WMTSRequestEncoding by using WMTSTileSetModelCreateOptions#preferredRequestEncoding. When creating the WMTSTileSetModel directly, you can set the required WMTSRequestEncoding by using WMTSTileSetModelConstructorOptions#requestEncoding.

New featurePanoramic

You can now visualize video panoramas in LuciadRIA. To do this, you create a specialized PanoramaModel. For simple cases, you can use the convenience function VideoPanoramaModel#createVideoPanoramaModel to create the model. Please refer to the API documentation for details. More information can be found in the how-to article. The "Video panorama" sample also demonstrates how you can use the API to handle video panoramas. Note that you'll need a license for the LuciadRIA "Panoramics" optional module for this API to work.

ImprovementLuciadRIA

RIA-5007
In OGC SLD filter, functionality was added to allow the use of literals that need to be interpreted strictly as strings without the attempt to parse them as numbers or booleans. When using FilterFactory.literal you need to pass in LiteralOptions with strict set to true. When writing an SLD filter through XML, you need to wrap your literal value in a CDATA tag to prevent the parser from interpreting it as a number or boolean.

ImprovementLuciadRIA

HSPC attributes of the type 64 bits floats can now be used in expressions for point clouds. see HSPCTilesModel.properties for more info.

ImprovementLuciadRIA

LuciadRIA TypeScript definition files are now generated with TypeScript 5.6. The LuciadRIA samples and the LuciadRIA Toolbox now also use TypeScript 5.6. We recommend that you upgrade to TypeScript 5.6 as well, but the LuciadRIA definition files typically remain compatible with older TypeScript versions.

ImprovementLuciadRIA

LuciadRIA now supports the following features of the OGC 3D Tiles specification version 1.1:
  • GPU instancing with the EXT_mesh_gpu_instancing extension
  • Allow associating metadata with vertices or texels with the EXT_structural_metadata extension.
  • Loading of point clouds from GLB files
. In EXT_structural_metadata, Property Textures and Multiple Feature IDs are not supported. See the OGC3DTilesModel class documentation for a complete list of supported features.

ImprovementLuciadRIA

RIA-4979
You can now configure the pitch of a head light. By default, a fixed -45 degrees is used. For more information, see CreateHeadLightOptions.

ImprovementLuciadRIA

RIA-4979
On maps with a 3D Cartesian world reference, the (fixed) pitch of a head light is no longer 0 but -45 degrees. This change was made to align the behavior with other references.

ImprovementLuciadRIA

RIA-4979
You can now use a directional light with a direction of your own choosing as the light on a map. For more information, see LightEffect.createDirectionalLight.

ImprovementLuciadRIA

The "Monitoring building information" sample was renamed to "OGC 3D Tiles Property Injection".

ImprovementLuciadRIA

The IFC/Revit sample has been modified to also showcase Binz and Navisworks data. You can now also use it to visualize and interact with your own custom BIM data, with or without feature-data. The sample has been renamed to BIM Viewer sample.

ImprovementLuciadRIA

RIA-4763

Improved the tessellation (polygon fill) of non-planar polygons. In some cases, these polygons would not be filled properly.

The improvement applies to both FeatureLayer.performanceHints settings: PREFER_QUALITY or PREFER_PERFORMANCE.

Note that polygons are still expected to be mostly planar and not self-intersecting. If not, it's possible certain parts are not filled properly.

ImprovementLuciadRIA

RIA-5019
The determination of the hoverable state for a KML layer, when not explicitly set by the user, has been improved.

Bug fixLuciadRIA

RIA-5010
Fixed an issue with KMLLayer where resource icons and images inside KMZ files were not properly linked to KML placemarks when the KML layer URL contained parameters. As a result, placemarks referring to KMZ resources were either not visualized or displayed incorrectly. Now, KMZ resources are properly visualized in this case.

Bug fixLuciadRIA

RIA-4990
Fixed an issue where transforming bounds using Affine3DTransformation would lead to a wrong result.

Bug fixLuciadRIA

RIA-4916

Fixed an issue with shape visualization where the latitude element of geodetic points was outside the valid range of [-90, 90] degrees.

Now, when creating a Point, Polyline, or Polygon, the latitude element of geodetic points is automatically clamped to the valid range of [-90, 90] degrees, establishing accuracy from the start.

Upgrade considerationLuciadRIA

RIA-3113
The Polygon and Polyline API now correctly defines the type for the bounds and focusPoint getters. Empty Polygon and Polyline objects return null for these properties. While null could already be returned, our type definitions did not reflect this correctly. This change may cause build issues, but existing runtime behavior will remain unchanged. You must now check these properties for nullity before using them as non-null values.