2022.1.03
Bug fixLuciadRIA
RIA-4251
Bug fixLuciadRIA
RIA-4252
EditController
was activated before the feature/shape was
processed by the layer. For example, when immediately activating an EditController
after adding the layer to the map.
Bug fixLuciadRIA
RIA-4250
WebGLMap
that has a
TileSet3DLayer
, a "PostRender"
event listener and an active
EditController
.
Bug fixLuciadRIA
RIA-3929
Bug fixLuciadRIA
RIA-4083
2022.1
2022.1.02
ImprovementLuciadRIA
RIA-4009
LuciadRIA now contains a sample that illustrates how to handle IFC datasets. The geometry is loaded as OGC 3D Tiles, the metadata information is loaded via a GeoJSON dataset. The sample shows how to combine geometry and metadata into a single application.

Bug fixLuciadRIA
RIA-4213
Bug fixDefense Symbology
RIA-4229

Bug fixDefense Symbology
RIA-4227
MilSymStyle.labelPosition
property.
Bug fixDefense Symbology
RIA-4225

Bug fixDefense Symbology
RIA-4099
2022.1.01
ImprovementLuciadRIA
Geodesy.distance3D
method now also accepts a LineType parameter. This means that it can now also be used for rhumb lines.
Bug fixLuciadRIA
RIA-1564
noClustering = true
).
Bug fixLuciadRIA
RIA-4221
Bug fixLuciadRIA
RIA-3900
Bug fixLuciadRIA
RIA-4217
SEPainterCreateOptions.DrapeTarget
led by default to
draping on terrain. Now the default DrapeTarget
is undefined, which means that if the
shape has zero Z, it will be draped on terrain and if it has non-zero Z, it will not be draped.
Bug fixLuciadRIA
RIA-4216
KMLCodec
decodes KML 'Polygon' geometry without inner boundaries to RIA Polygon
,
instead of to RIA ComplexPolygon
.
Bug fixLuciadRIA
RIA-4209
map.effects.eyeDomeLighting
in combination with map.effects.environmentMap
's skybox
could produce some visual artifacts.
Bug fixLuciadRIA
RIA-4172
Bug fixLuciadRIA
RIA-4173
Geodesy.distance3D
method didn't return correct results when using a geodetic reference.
2022.1
New featureLuciadRIA
LuciadRIA now supports draping of 2D raster and vector data on OGC 3D Tiles data. You can use the new DrapeTarget
enumeration on objects such as a ShapeStyle
, IconStyle
and RasterStyle
to indicate whether the data needs to be draped on 3D Tiles and/or on terrain. You can also choose which 3D Tiles layers need
to be taken
into account for draping by means of a new isDrapeTarget
flag on TileSet3DLayer
. The use of this API
is demonstrated in the "OGC 3D Tiles" sample, which has been extended with a walking tour draped on top of the Marseille 3D
tiles mesh data.
For more information, see the
Draping on 3D Tiles article.

New featureLuciadRIA
- For point symbolizers:
- The use of SVG images through the icon provider.
- The use of UOM-aware stroke widths for marks.
- For line symbolizers:
- The use of line joins (mitre, round or bevel) and line caps (butt, round or square) in strokes.
- The combination of a stroke with a graphic stroke (dash-array, graphic rotation).
- The use of displacement and anchor points for the graphics in a graphic stroke.
- The use of perpendicular offset without gaps or overlaps at the line joins.
- The use of UOM-aware graphic fill for strokes.
- For polygon symbolizers:
- The use of the same improved stroke support as for line symbolizers.
- The use of UOM-aware graphic fills.
- The use of UOM-aware displacement.
- The use of UOM-aware perpendicular offset.
For a complete overview of the supported SLD styling capabilities, see the SLD styling - Supported versions and capabilities article.

New featureLuciadRIA
Editor
and
EditHandle
classes give fine-grained access to the way how features or shapes should be
edited and created. Users can implement their own editor or extend from one of the many out-of-the-box
implementations available for LuciadRIA's shape types. The use of this API is demonstrated in the "Create and Edit" sample,
which has been extended with a few common custom creation and editing use cases. Read the
Customizing creation and editing
guide to get started.

New featureLuciadRIA
Map
.
See Map.cursorManager
, Controller.cursor
and the
Implementing custom user interaction
guide for more details.
New featureLuciadRIA
RIA-3611, RIA-3561
SelectController
ContextMenuController
PanController
RotateController
ZoomController
HoverController
New featureLuciadRIA
Undoable
and
UndoManager
API. The use of this API is demonstrated in the samples that focus on
creation and editing, such as the "Create and Edit" sample. See
Adding undo/redo support to your application
for more information.
New featureLuciadRIA
You can now add bloom to shapes. Bloom is a glow effect that you can use to make shapes appear very bright, and draw focus to them.

For more information, see BloomStyle
and BloomEffect
.
You can also read the "Bloom effect" section in
Configuring WebGL Map effects.
New featureDefense Symbology
BloomStyle
for your military symbology layers on WebGL maps.
To do so, you set a bloom: BloomStyle
in your
MilSymStyle
when creating a MilitarySymbologyPainter
. You can
choose to apply the style to a certain PaintState
only.
ImprovementLuciadRIA
RIA-4125
PropertyExists
function of the OGC filter encoding standard.
You can for example use this function in an SLD style to skip painting labels for non-existing properties
in your dataset (instead of painting them as "undefined").
ImprovementLuciadRIA
RIA-4102
projection-wkt
property).
Before, only HSPC references expressed with an EPSG code (projection-epsg
property) were supported.
ImprovementLuciadRIA
ImprovementLuciadRIA
RIA-3959, RIA-3354
CompositeController
.
This was already available in sample code, but has been promoted to API.
ImprovementLuciadRIA
Bug fixLuciadRIA
RIA-3933
FeaturePainter
: when a shape with the same geometry but a different reference
(e.g. topocentric with different origin) was submitted for drawing, it was not visually updated on the map.
Upgrade considerationLuciadRIA
EditController
has 2 new events: "Restarted"
and "EditShape"
.
If you extended EditController
and you added extra events, you'll have to update your
EditController
extension to account for these extra events.
Upgrade considerationLuciadRIA
RIA-3777
Feature
, Store
and Codec
implementations are now type guarded with generics. Please refer to the TSDoc for more details.
If the inferred type is too restrictive, force a more generic type.
// Let TS compiler know that feature's shape is a point and its properties can contain the population field.
interface CityProperties { name: string; population?: number};
const cityFeature = new Feature<Point, CityProperties>(point, { name: 'Leuven'});
// Let TS compiler know that the store can accept features with a polyline or a polygon shape and any properties.
const store = new MemoryStore<Feature<Polyline | Polygon, FeatureProperties>>(data: [polylineFeature]);
Upgrade considerationLuciadRIA
CreateController.onObjectCreated
now has a return type of
void | Promise<void>
. This reflects the actual implementation. The old
boolean
return value was already ignored.
Upgrade considerationLuciadRIA
layer
of a CreateController
and EditController
is now typed more accurately as FeatureLayer
instead of Layer
.
Upgrade considerationLuciadRIA
libcurl
: updated to version7.86.0
openssl
: updated to version1.1.1s
zlib
: updated to version1.2.13
Upgrade considerationLuciadRIA
ms-gsl
library version 3.1.0
has been added.
This library is used in internal code. No code changes are needed.