Skip to content

SvgBackend

Defined in: svg/svg-backend.ts:6

A renderer for a Scene, implemented per target (WebGL / Canvas / SVG).

new SvgBackend(host, width, height): SvgBackend

Defined in: svg/svg-backend.ts:32

HTMLElement

number

number

SvgBackend

readonly supportsPassThrough: false = false

Defined in: svg/svg-backend.ts:8

SVG has no raster surface for pass-through; the engine rejects it before calling us.

Backend.supportsPassThrough

destroy(): void

Defined in: svg/svg-backend.ts:123

void

Backend.destroy


render(): void

Defined in: svg/svg-backend.ts:108

void

Backend.render


resize(width, height): void

Defined in: svg/svg-backend.ts:98

Resize the root + its viewBox. The markup is drawn in a (0,0..W,H) user-coordinate system pinned by the viewBox, so existing nodes keep their positions; the engine re-renders after to fill the new box.

number

number

void

Backend.resize


setLayers(layers): void

Defined in: svg/svg-backend.ts:50

RenderLayer[]

void

Backend.setLayers


setTextLayer(texts): void

Defined in: svg/svg-backend.ts:81

Screen-space text labels (#105 N7b-2). Coords are already in screen px (no view transform), so a pan/zoom re-pushes the set; rendered into the dedicated text group + included in toSVG().

readonly TextData[]

void

Backend.setTextLayer


setTransform(t): void

Defined in: svg/svg-backend.ts:86

ViewTransform

void

Backend.setTransform


toPNG(): string

Defined in: svg/svg-backend.ts:120

string

Backend.toPNG


toSVG(): string

Defined in: svg/svg-backend.ts:119

string

Backend.toSVG


updateLayer(name, layer): void

Defined in: svg/svg-backend.ts:51

string

RenderLayer

void

Backend.updateLayer


updateLayerFlags(name, flags): void

Defined in: svg/svg-backend.ts:71

Flags-only update (#208): patch the retained vector view’s flag bytes IN PLACE — no new objects or arrays (vs updateLayerStyles, which swaps in a freshly materialized view) — and mark dirty: visibility changed, so the next render() re-serializes, exactly as before. The length guard is defensive: any drawable-set change reaches this backend as updateLayer/appendToLayer/setLayers first.

string

Uint8Array

void

Backend.updateLayerFlags


updateLayerStyles(name, _tables, drawables?): void

Defined in: svg/svg-backend.ts:59

Styles-only update: swap the stored vector view and re-serialize on next render(). SVG renders from drawables, so it always needs them (stylesNeedDrawables default).

string

StyleTables

DrawableVector[]

void

Backend.updateLayerStyles