Table of Contents

Class LinePaintOp

Namespace
EncDotNet.S100.Rendering.Scene
Assembly
EncDotNet.S100.Rendering.Scene.dll

A resolved polyline stroke.

public sealed class LinePaintOp : PaintOp
Inheritance
LinePaintOp
Inherited Members

Properties

Color

Resolved stroke colour.

public RgbaColor Color { get; init; }

Property Value

RgbaColor

DashArrayPx

Dash pattern as an alternating [on, off, …] array in display pixels, or null for a solid stroke (or when DefaultDash applies).

public IReadOnlyList<float>? DashArrayPx { get; init; }

Property Value

IReadOnlyList<float>

DashPhasePx

Distance, in display pixels, into DashArrayPx at which the line starts, so a line style's first dash starts where the style puts it.

public double DashPhasePx { get; init; }

Property Value

double

DefaultDash

When true and DashArrayPx is null, the stroke is dashed but no explicit S-100 dash array was available (it came from an external line-style's dash flag). Backends apply their built-in default dash: the Mapsui adapter sets PenStyle.Dash; the Skia backend uses a width-derived default.

public bool DefaultDash { get; init; }

Property Value

bool

Stroke

Whether the line itself is stroked. false for a line style that only places symbols.

public bool Stroke { get; init; }

Property Value

bool

SymbolIntervalPx

Length of the repeating symbol pattern, in display pixels.

public double SymbolIntervalPx { get; init; }

Property Value

double

Symbols

Symbols repeated along the line every SymbolIntervalPx (S-100 Part 9 line styles), each rotated to the line's direction where it lands. Empty for a plain line.

public IReadOnlyList<LineSymbolPlacement> Symbols { get; init; }

Property Value

IReadOnlyList<LineSymbolPlacement>

WidthPx

Stroke width in display pixels (already clamped to a 1 px minimum).

public double WidthPx { get; init; }

Property Value

double

World

Projected polyline vertices in EPSG:3857 metres.

public required IReadOnlyList<(double X, double Y)> World { get; init; }

Property Value

IReadOnlyList<(double X, double Y)>