Class VectorSubLayer
One Mapsui-free vector sub-layer in a VectorPortrayalResult. Carries a slice of the dataset's drawing instructions plus the S-98 stack metadata the Mapsui renderer needs to build a single layer and place it in the cross-dataset paint order.
public sealed class VectorSubLayer
- Inheritance
-
VectorSubLayer
- Inherited Members
Remarks
S-101, S-401, and S-57 (translated to S-101 / S-401) emit two sub-layers — area fills and line work — so an S-102 bathymetric surface or an S-104 water-level band can interleave between them (S-98 Annex A §A-6.9.1). GML products emit a single sub-layer.
Properties
ApplyOutOfBandCap
When true, the Mapsui renderer caps this sub-layer's maximum visible resolution to the out-of-scale-band cutoff derived from OutOfBandMinDisplayScale (S-101 detail declutter). Applied only to the line-work sub-layer.
public bool ApplyOutOfBandCap { get; init; }
Property Value
Instructions
The drawing instructions to rasterise into this sub-layer.
public required IReadOnlyList<DrawingInstruction> Instructions { get; init; }
Property Value
LayerKey
Stable sub-layer key used by the viewer to preserve per-sub-layer
visibility / opacity across re-renders (e.g. "s101.areas",
"s101.linework"). This is the value placed into
MapsuiDatasetResult.LayerNames; it is NOT the Mapsui layer's
display name.
public required string LayerKey { get; init; }
Property Value
LayerName
The Mapsui layer's display name (used for diagnostics / UI).
public required string LayerName { get; init; }
Property Value
PatternClipCacheKey
Mapsui-free pattern-fill priority-clip cache identity key, or null when this sub-layer carries no pattern fills (e.g. S-101 line work). The Mapsui renderer appends its own algorithm / format qualifiers to form the final cache key, so this value never references a Mapsui constant.
public string? PatternClipCacheKey { get; init; }
Property Value
Plane
The S-98 display plane this sub-layer lives in.
public required S98DisplayPlane Plane { get; init; }
Property Value
SourceFeatureType
Optional feature-type code when this entry represents a per-feature-type slice (e.g. the S-101 area / line split). Null for whole-layer entries. Consumed by S-98 suppression rules.
public string? SourceFeatureType { get; init; }
Property Value
WithinPlanePriority
Intra-plane ordering hint, ascending — lower draws first.
public int WithinPlanePriority { get; init; }