Table of Contents

Class S100CompositeOptions

Namespace
EncDotNet.S100
Assembly
EncDotNet.S100.dll

Options controlling a multi-layer composite render (the IReadOnlyList<S100Layer> overload of IS100DatasetRenderer<TResult>). Mirrors S100RendererOptions but adds an optional explicit shared viewport and mariner settings — the two cross-dataset concerns a composite introduces over a single-dataset render.

public sealed class S100CompositeOptions
Inheritance
S100CompositeOptions
Inherited Members

Properties

Background

Background fill colour. When null, an opaque white background is used.

public RgbaColor? Background { get; init; }

Property Value

RgbaColor?

Basemap

Basemap composited beneath every chart layer (issue #411). When Offline, the bundled Natural Earth 1:10m land layer is drawn bottom-most against the shared viewport. Default None (no basemap; output unchanged).

public BasemapKind Basemap { get; init; }

Property Value

BasemapKind

DisplayModeId

Optional spec-native portrayal display-mode id (S-100 Part 9 §11.7) applied to every layer in the composite; only catalogues declaring the mode react (e.g. an S-411 sea-ice layer selecting concentration, stage-of-development or navigational, issue #416). null keeps each catalogue's default mode.

public string? DisplayModeId { get; init; }

Property Value

string

EcdisDisplay

Cross-spec ECDIS display settings applied to every layer in the composite — the display category (DisplayBase / Standard / OtherInformation / All), per-spec hidden viewing groups, and hidden display planes (S-100 Part 9 §11.6-11.7). When null every layer renders unfiltered (equivalent to All with nothing hidden). A per-spec entry in ActiveDisplayModes wins over DisplayModeId for the layer of that spec, matching the single-dataset ApplyTo(RenderContext, SpecRef) projection.

public EcdisDisplaySettings? EcdisDisplay { get; init; }

Property Value

EcdisDisplaySettings

Height

Output image height in pixels. Default 1024. Ignored when Viewport is set.

public int Height { get; init; }

Property Value

int

HiddenCategories

Drawing-instruction categories (areas, lines, points, text) to suppress from every layer in the composite. Applied globally — the same suppression is passed to each layer's portrayal pipeline. Default None.

public DrawingInstructionCategory HiddenCategories { get; init; }

Property Value

DrawingInstructionCategory

Mariner

Mariner settings fed both to each layer's portrayal pipeline and to the S-98 inter-product rule engine (e.g. the safety-contour used by the R-101-102-B depth-suppression exception, MSC.232(82) §5.8). When null, Default is used.

public MarinerSettings? Mariner { get; init; }

Property Value

MarinerSettings

Palette

Colour palette (Day/Dusk/Night). Default Day.

public PaletteType Palette { get; init; }

Property Value

PaletteType

SymbolScale

Global symbol scale factor. Default 1.0.

public double SymbolScale { get; init; }

Property Value

double

TextScale

Global text scale factor. Default 1.0.

public double TextScale { get; init; }

Property Value

double

TimeStep

Zero-based time-step index for time-aware products (S-104, S-111); clamped to each dataset's available range and ignored by static products. Default 0.

public int TimeStep { get; init; }

Property Value

int

Viewport

Explicit shared viewport for all layers. When null the compositor computes the union extent of every layer and fits a Width × Height viewport to it. When supplied, the viewport's own pixel dimensions win over Width / Height, and a non-zero RotationDegrees turns the chart about the image centre with labels kept upright.

public Viewport? Viewport { get; init; }

Property Value

Viewport

Width

Output image width in pixels. Default 1024. Ignored when Viewport is set.

public int Width { get; init; }

Property Value

int