Table of Contents

Class S100ValidationFindingLayer

Namespace
EncDotNet.S100.Renderers.Mapsui
Assembly
EncDotNet.S100.Renderers.Mapsui.dll

A reusable Mapsui overlay layer that plots a dataset's spatially-located validation findings: a severity-coloured marker for a point finding and a translucent severity-coloured box for a bounding-box finding. A host adds Layer to its Map.Layers once, then calls Show(IEnumerable<S100ValidationFinding>) as the selected dataset (or its findings) change; Clear() empties it.

public sealed class S100ValidationFindingLayer
Inheritance
S100ValidationFindingLayer
Inherited Members

Remarks

This is step 8's "validation findings as an optional Mapsui module": it depends only on Mapsui and the renderer-neutral ValidationSeverity, GeoPosition, and BoundingBox primitives — not on the session, a catalogue, an application palette, a view model, or Avalonia. Which findings to show, when to rebuild, and how to react to selection are host policy and stay in the application; the layer just draws whatever findings it is given.

Findings are projected from WGS-84 to EPSG:3857 (web-mercator, Mapsui's native map units) internally, so a host passes geographic locations straight through. The overlay is cheap to rebuild — finding counts are small — so every update replaces the layer's contents wholesale.

Not thread-safe: build and mutate it on the host's UI thread, like any other Mapsui layer.

Constructors

S100ValidationFindingLayer(S100ValidationFindingStyle?, string?)

Creates the overlay. Add Layer to a Map.Layers collection at the z-order the host wants the findings to appear (typically an overlay tier above chart content).

public S100ValidationFindingLayer(S100ValidationFindingStyle? style = null, string? name = null)

Parameters

style S100ValidationFindingStyle

Appearance; defaults to Default.

name string

Layer name; defaults to DefaultLayerName.

Fields

DefaultLayerName

Default Mapsui.Layers.ILayer.Name for the overlay.

public const string DefaultLayerName = "S-100 Validation Findings"

Field Value

string

Properties

Layer

The Mapsui layer to add to a Map.Layers collection. Starts empty; its contents are driven by Show(IEnumerable<S100ValidationFinding>) and Clear().

public ILayer Layer { get; }

Property Value

ILayer

Methods

Clear()

Clears the findings, leaving the layer attached and empty.

public void Clear()

Show(IEnumerable<S100ValidationFinding>)

Replaces the overlay with a marker/box per finding. A finding contributes a box for its BoundingBox and a marker for its Point, so a finding carrying both yields two features; a finding with neither is skipped. An empty collection clears the overlay.

public void Show(IEnumerable<S100ValidationFinding> findings)

Parameters

findings IEnumerable<S100ValidationFinding>