Class HeadlessCompositeRenderer
Mapsui-free entry point for compositing multiple, layered S-100 datasets into a single headless bitmap. Given an explicit shared Viewport and an ordered list of CompositeLayer (bottom-most first, as resolved by the renderer-neutral S-98 ordering / suppression engine), the compositor clears the background once and draws each layer into the shared pixel space so overlaid datasets register.
public sealed class HeadlessCompositeRenderer
- Inheritance
-
HeadlessCompositeRenderer
- Inherited Members
Remarks
This is the multi-layer analogue of HeadlessVectorRenderer / CoverageHeadlessRenderer: those render a single dataset and auto-fit their own viewport, whereas the composite path requires one shared viewport for all layers. Layer ordering and depth suppression are decided upstream (S-98); this renderer only paints the already-ordered result.
Properties
Background
Background fill painted once before the ordered layers. Defaults to opaque white.
public RgbaColor Background { get; init; }
Property Value
Methods
Render(Viewport, IReadOnlyList<CompositeLayer>)
Composites the ordered layers against the shared viewport into a newly allocated bitmap of WidthPixels × HeightPixels.
public SKBitmap Render(Viewport viewport, IReadOnlyList<CompositeLayer> layers)
Parameters
viewportViewportThe shared composite viewport (explicit; no auto-fit).
layersIReadOnlyList<CompositeLayer>Ordered layers, bottom-most first.
Returns
- SKBitmap
A newly allocated bitmap owned by the caller.
Remarks
Under a non-zero RotationDegrees the chart turns but its labels and screen-relative symbols stay upright, as in the viewer: each layer paints its areas, lines and coverage north-up into a NorthUpCover(Viewport) surface, which is rotated onto the output about its centre, and then paints its point symbols and text at the rotated anchors, turning only north-relative symbols. Layers are still composited one at a time, bottom-most first, so a layer's labels and symbols sit under the layers above it exactly as they do north-up.