Table of Contents

Class MapsuiDatasetResult

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

Result of converting a dataset processor's Mapsui-free portrayal output (IVectorPortrayalSource / ICoveragePortrayalSource) into Mapsui layers. Produced by MapsuiDatasetRenderer.

public sealed class MapsuiDatasetResult
Inheritance
MapsuiDatasetResult
Inherited Members

Remarks

This type is owned by the Mapsui renderer because it carries Mapsui Mapsui.Layers.ILayer and Mapsui.MRect types.

Properties

CellCompilationScale

The rendered cell's compilation (optimum) scale denominator, used to rank it against overlapping cells for overlap suppression (S-57 DSPM compilation scale, Appendix B.1 §7.3.1.1). Null ranks the cell by CellMinimumDisplayScale (or the catalogue window) instead. Mirrors VectorPortrayalResult.CellCompilationScale.

public int? CellCompilationScale { get; init; }

Property Value

int?

CellMinimumDisplayScale

The rendered dataset's coarsest intended display-scale denominator when derived from the dataset's own content rather than an exchange-set CATALOG.XML (S-101 in-file DataCoverage.minimumDisplayScale, FC §3.1.1; S-57 compilation scale or largest feature SCAMIN). The map session uses this as the whole-cell zoom-out window (ApplyCellScaleWindow) when no catalogue value is available, so a standalone-loaded cell hides — with its extent border — when zoomed out past its scale band, matching the exchange-set behaviour. Null when the product carries no cell-wide scale.

public int? CellMinimumDisplayScale { get; init; }

Property Value

int?

CoverageGeometry

The rendered cell's declared data-coverage footprint in EPSG:3857 (Web Mercator), projected from the processor's EPSG:4326 DataCoverage polygons (S-101 FC §3.1.1; S-57 M_COVR). The map session unions the footprints of finer, overlapping in-band cells and clips this cell to its coverage minus that union, suppressing coarse-under-fine overdraw for overlapping multi-scale ENC cells (issue #438 Phase 2). Null when the cell declares no usable coverage geometry.

public Geometry? CoverageGeometry { get; init; }

Property Value

Geometry

Extent

The dataset's EPSG:3857 extent.

public required MRect Extent { get; init; }

Property Value

MRect

Info

Human-readable status line describing the dataset.

public required string Info { get; init; }

Property Value

string

LayerNames

Optional stable per-layer keys for the viewer's per-sub-layer disclosure UI, parallel by index to Layers. Processors that emit more than one sub-layer (e.g. S-101 areas + line work, S-111 colour band + arrows) populate this so the UI can show per-sub-layer toggles; single-layer products leave it null. When non-null, the list length must match Layers.

public IReadOnlyList<string>? LayerNames { get; init; }

Property Value

IReadOnlyList<string>

Layers

The Mapsui layers to draw, in paint order.

public required IReadOnlyList<ILayer> Layers { get; init; }

Property Value

IReadOnlyList<ILayer>

Spec

The product specification (name + edition) of the rendered dataset.

public required SpecRef Spec { get; init; }

Property Value

SpecRef

StackEntries

S-98 cross-dataset stack metadata, parallel by index to Layers when supplied (every entry's Layer appears in Layers exactly once and at the same index). A host compositor can pump every loaded dataset's entries through LayerStackBuilder to compute the global paint order across products (S-98 Annex A §4.4.1; S-98 Main §9.2.1).

public IReadOnlyList<LayerStackEntry>? StackEntries { get; init; }

Property Value

IReadOnlyList<LayerStackEntry>