Table of Contents

Class HeadlessCompositeRenderer

Namespace
EncDotNet.S100.Renderers.Skia.Scene
Assembly
EncDotNet.S100.Renderers.Skia.dll

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

RgbaColor

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

viewport Viewport

The shared composite viewport (explicit; no auto-fit).

layers IReadOnlyList<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.