Attaches the effects to a map. Nothing is visible until set turns an effect on.
The map to render effects over.
Optionalsettings: MapEffectsSettings
Effect knob values to apply right away.
Replaces every knob with the given settings (an empty object turns everything off).
Renders the current view — map and effects — into a canvas, optionally at a higher pixel ratio for print. The map is re-rendered at that ratio (never resampled), read back once every tile is drawn, and restored to follow the device afterwards.
Optionaloptions: CaptureOptionsThe effects catalogue: every knob with kind, range, default, current value and the practical
use case it serves. Same descriptor shape as StylingModule.describe().
The current value of a knob: the override, or the catalogue default.
The overridden knobs, as a plain serializable object.
Detaches the effects from the map, removes their elements and releases the WebGL context the chain holds — which a page with several maps on it needs, since a browser caps how many it may keep alive.
Turns a knob (or every knob) back to its default — for most effects, off.
Optionalid: Sets one or more effect knobs. Values are validated against the catalogue before anything is touched; knobs not mentioned keep their values.
Knob id → value.
Practical post-processing for a TomTomMap: effects computed from the rendered map's own pixels, not from its style — so they work on every style, custom ones included, survive every style release, and cannot be reproduced by editing the style at all.
Remarks
Every effect is named by the problem it solves, and off by default:
Effects render live as layers over the map canvas (a WebGL2 chain under
backdrop-filteroverlays; bloom is a small canvas blended inscreenmode) and are composited the same way into capture, so what is captured is what was on screen. Bloom, the depth of field and capture read the map canvas, which needsmapLibre: { canvasContextAttributes: { preserveDrawingBuffer: true } }when creating the map; the plugin warns once when it is missing.describe returns the knobs in the same shape as
StylingModule.describe(), so a control panel or an agent tool built for the SDK's styling catalogue reads this one unchanged.Example