2024.1.06
ImprovementLuciadRIA
RIA-5108
Bug fixLuciadRIA
RIA-5119
kml:Style
in a KML Feature would completely replace
the shared style referenced by kml:styleUrl
.
Now, the inline style correctly overrides only the specified properties while inheriting the rest
from the shared style, as per the KML specification
Bug fixLuciadRIA
RIA-5106
Bug fixLuciadRIA
RIA-5112
offsetTerrain
could be ignored when precise
is set to true.
Bug fixLuciadRIA
RIA-5118
2024.1.05
Bug fixLuciadRIA
RIA-5102
Bug fixLuciadRIA
RIA-5100
Bug fixLuciadRIA
RIA-5097
Bug fixLuciadRIA
RIA-4902
drawLabelInPath
where some labels where not placed correctly near the equator.
Bug fixLuciadRIA
RIA-5094
TileSet3DLayer
where offsetTerrain
was being ignored for some 3D Tiles dataset when precise
was set to true.
2024.1.04
Bug fixLuciadRIA
RIA-5088
LoadSpatially
strategy has been improved to handle edge cases.
The strategy now better handles scenarios where FeatureModel.bounds
has zero size or
when the map bounds cannot be retrieved.
Previously, an exception was thrown if these scenarios occurred, or no data would be returned.
Bug fixLuciadRIA
RIA-5085
MemoryStore
.
Features with existing valid IDs will no longer have their IDs reassigned.
Bug fixLuciadRIA
RIA-5067
Upgrade considerationLuciadRIA
RIA-4773
HereMapsTileSetModel
has been updated to use the HERE Maps Raster Tile API v3. The
HERE Maps Map Tile API v2 has been retired by HERE and is no longer
available as of the end of Q1 2025. The Raster Tile API v3 is not backward compatible with the old Map Tile API v3.
Please refer to the
HERE Maps
migration guide to adapt your code. The configuration options of the modified
HereMapsTileSetModel
reflect the options for the new Raster Tile API v3.
2024.1.03
ImprovementLuciadRIA
RIA-5069
You can now create cartesian references from WKT using ReferenceProvider.parseWellKnownText
, using the LOCAL_CS
WKT tag.
The WKT for a cartesian reference should have a name, local datum, unit and 2 or 3 axes. Here is an example:LOCAL_CS["MyCartesian",LOCAL_DATUM["Unknown",0],UNIT["m",1.0],AXIS["x",EAST],AXIS["y",NORTH],AXIS["z",UP]]
ImprovementLuciadRIA
RIA-4619
It is now possible to do transformations (via TransformationFactory.createTransformation
) between a 2D and 3D cartesian reference, if the 2D axes are compatible.
In that case, only a 2D transformation is done, and the z
value is left untouched.
As a consequence, you can now load 2D cartesian data on a 3D cartesian map, and vice-versa.
Note that you can make such references using ReferenceProvider.createCartesianReference
,
or using the short-hand LUCIAD:XY
and LUCIAD:XYZ
identifiers in ReferenceProvider.getReference
.
ImprovementLuciadRIA
RIA-5074
The minScale
and maxScale
properties on Layer
are now applied also on maps with a cartesian reference.
If your cartesian map has non-uniform X/Y axes, the minScale
and maxScale
properties are ignored since they are ambiguous.
For example, if your map has an X axis with length unit in meters, and a Y axis with a temperature unit in degrees Celsius,
a single scale of 1:100 has no meaning.
ImprovementLuciadRIA
RIA-5073
You can now use world-sized styling on cartesian maps, as long as the unit of measure is compatible with the X and Y axis of the map reference.
In addition, if world-sized styling is not supported, a warning will be logged and a fall-back width is used, instead of failing to paint entirely.
ImprovementLuciadRIA
RIA-5070
You can now use WFSFeatureStore
with WFS services that contain data in a local cartesian reference.
In that case, the WFS reference should be a LOCAL_CS
WKT, and the the store will have a CartesianReference
.
You can then use this store directly on a cartesian map, for example one with LUCIAD:XY
as map reference.
Bug fixLuciadRIA
RIA-5075
Spatial loading of FeatureLayer
s on a map with a 3D cartesian reference failed, this is now resolved.
Note that spatial queries are 2D, so the query bounds will be projected on the Z=0 plane.
Bug fixLuciadRIA
RIA-5068
2024.1.02
ImprovementLuciadRIA
RIA-5038
getReference
now throws an UnknownIdentifierError
instead of a generic Error
.
OGC3DTilesModel#create
and HSPCTilesModel#create
Now throw an UnknownIdentifierError
if
the reference cannot be found, instead of assuming that the dataset is not geo-referenced.
Bug fixLuciadRIA
RIA-5063
Layer#balloonContentProvider
is no longer called with a stale feature after updating
that feature in the store.
2024.1.01
ImprovementLuciadRIA
RIA-5037
ImprovementLuciadRIA
RIA-4914
TransformationChanged
at any change ofTileset3DLayer.transformation
MeshStyleChanged
at any change ofTileset3DLayer.meshStyle
PointCloudStyleChanged
at any change ofTileset3DLayer.pointCloudStyle
OutlineStyleChanged
at any change ofTileset3DLayer.outlineStyle
SelectedOutlineStyleChanged
at any change ofTileset3DLayer.selectedOutlineStyle
OcclusionStyleChanged
at any change ofTileset3DLayer.occlusionStyle
SelectedOcclusionStyleChanged
at any change ofTileset3DLayer.selectedOcclusionStyle
QualityFactorChanged
at any change ofTileset3DLayer.qualityFactor
PerformanceHintsChanged
at any change ofTileset3DLayer.performanceHints
Bug fixLuciadRIA
RIA-5062
Bug fixLuciadRIA
RIA-5043
Bug fixLuciadRIA
RIA-4727
Bug fixLuciadRIA
RIA-5017
TileMatrixSet
s that are not
ordered according to scale denominator. LuciadRIA would throw an error when trying to create a
WMTSTileSetModel
model using such a TileMatrixSet
. This is now fixed.
Bug fixLuciadRIA
RIA-4914
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
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
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
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
HSPCTilesModel.properties
for more info.
ImprovementLuciadRIA
ImprovementLuciadRIA
- 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
Property Textures
and Multiple Feature IDs
are not supported.
See the OGC3DTilesModel
class documentation for a complete list of supported features.
ImprovementLuciadRIA
RIA-4979
CreateHeadLightOptions
.
ImprovementLuciadRIA
RIA-4979
ImprovementLuciadRIA
RIA-4979
LightEffect.createDirectionalLight
.
ImprovementLuciadRIA
ImprovementLuciadRIA
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
Bug fixLuciadRIA
RIA-5010
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
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
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.