@welldot/render

RenderConfig

Full rendering behaviour configuration. Use INTERACTIVERENDERCONFIG or STATICRENDERCONFIG as a starting point.

RenderConfig = object

Full rendering behaviour configuration. Use INTERACTIVE_RENDER_CONFIG or STATIC_RENDER_CONFIG as a starting point.

Properties

animation

animation: object

duration

duration: number

ease

ease: (t) => number

Parameters
t

number

Returns

number


caves

caves: object

amplitude

amplitude: object

amplitude.max

max: number

amplitude.min

min: number

amplitude.ratio

ratio: number

pathSteps

pathSteps: number


columnHeaders

columnHeaders: object

Column titles drawn in the panel's top margin, over a rule that sits construction.cementPad.height px above the drawing area (clear of the pad). The top margin must hold height plus that.

active

active: boolean

height

height: number

Height of the header row, taken from the top margin.

labels

labels: object

labels.construction

construction: string

labels.depth

depth: string

labels.description

description: string

Shown only when lithology annotations are drawn.

labels.lithology

lithology: string


construction

construction: object

casingShoe

casingShoe: object

Casing shoe: a filled triangle outside each wall where the casing / screen string really ends (not at panel cuts or joints).

casingShoe.active

active: boolean

casingShoe.size

size: number

Triangle leg in pixels (constant regardless of zoom).

cementPad

cementPad: object

Fixed-size pad drawn above the surface as two slabs around the outermost pipe, with break lines at the outer ends (not to scale). The profile's cement_pad width and thickness don't change it (they only show in the tooltip).

cementPad.height

height: number

Pad height in pixels (constant regardless of zoom).

cementPad.widthRatio

widthRatio: number

Pad width as a ratio of the construction column width; widened when the pipe opening needs it.

centralizer

centralizer: object

centralizer.markerHalfHeight

markerHalfHeight: number

Half the marker height in pixels (constant regardless of zoom).

pump

pump: object

Current pump + riser layer (.well v2.3 pump_installations).

pump.active

active: boolean

Whether the current pump is drawn.

pump.bodyHeight

bodyHeight: number

Pump body height in pixels (constant regardless of zoom); the body ends at intake_depth.

pump.bodyWidthRatio

bodyWidthRatio: number

Pump body width as a fraction of the casing/screen diameter at the intake.

pump.riserWidthRatio

riserWidthRatio: number

Riser width as a fraction of the casing diameter, used when riser_diameter is absent.

screenEnds

screenEnds: object

Screen ends: a dashed line across the pipe at the top and base of every screen (not at panel cuts). Styled by theme.wellScreenendStrokeWidth / endDasharray.

screenEnds.active

active: boolean

surfaceCase

surfaceCase: object

surfaceCase.diameterPaddingRatio

diameterPaddingRatio: number


constructionLabels

constructionLabels: object

active

active: boolean

labelMaxWidth?

optional labelMaxWidth?: number

labelRadius

labelRadius: number

labels

labels: object

labels.wellCasePrefix

wellCasePrefix: string

labels.wellScreenPrefix

wellScreenPrefix: string

labels.wellScreenSlotPrefix

wellScreenSlotPrefix: string

side?

optional side?: "left" | "right"

left (default): each label ends xOffset px left of its own casing wall. right: labels start xOffset px right of the construction column, in one aligned column.

xOffset

xOffset: number


fractures

fractures: object

hitBuffer

hitBuffer: object

hitBuffer.single

single: number

hitBuffer.swarm

swarm: number

swarm

swarm: object

swarm.lineCountBase

lineCountBase: number

swarm.lineCountVariance

lineCountVariance: number

swarm.spread

spread: number

widthMultiplier

widthMultiplier: number


geologic

geologic: object

xLeft

xLeft: number

xRightInset

xRightInset: number


highlights

highlights: object

fill

fill: string

fillOpacity

fillOpacity: number

labelBackground

labelBackground: string

labelColor

labelColor: string

labelFontSize

labelFontSize: number

labelPadding

labelPadding: number

labelRadius

labelRadius: number

padding

padding: number

stroke

stroke: string

strokeDasharray?

optional strokeDasharray?: string

strokeWidth

strokeWidth: number


labels

labels: object

active

active: boolean | ("lithology" | "fractures" | "caves")

false = hide all; true = show all; array = show only listed types

caveLabelHeight?

optional caveLabelHeight?: number

caveLabelPadX?

optional caveLabelPadX?: number

continuation

continuation: object

Marks layers and construction items that start above the panel (they continue from the previous one): ↑ {prefix} · from–to on lithology annotations, a leading ↑ on construction labels.

continuation.active

active: boolean

continuation.prefix

prefix: string

depthTipHeight

depthTipHeight: number

depthTipPadX

depthTipPadX: number

descriptionMaxWidth

descriptionMaxWidth: number

descriptionXOffset

descriptionXOffset: number

fractureLabelLeaderGap?

optional fractureLabelLeaderGap?: number

fractureLabelPadX?

optional fractureLabelPadX?: number

fractureLabelPadY?

optional fractureLabelPadY?: number

lithology?

optional lithology?: boolean | LithologyLabelItem

Fine-grained lithology sub-item control; true = depth, description and dividers

stackingGap

stackingGap: number

stackingLineHeight

stackingLineHeight: number

typeLabels?

optional typeLabels?: object

typeLabels.cave?

optional cave?: string

typeLabels.caveWater?

optional caveWater?: string

typeLabels.fracture?

optional fracture?: string

typeLabels.fractureWater?

optional fractureWater?: string


layout

layout: object

pocoCenterRatio

pocoCenterRatio: number

pocoWidthRatio

pocoWidthRatio: number


legend

legend: LegendRenderConfig


markers

markers: object

Circled 1-based index on each lithology layer, F{n} next to each fracture.

fractures

fractures: boolean

lithology

lithology: boolean

radius

radius: number


maxZoomScale?

optional maxZoomScale?: number

Upper bound for zoom scale, enforced for wheel/drag and zoomBy/resetZoom alike (default 150 = 15000%).


minZoomScale?

optional minZoomScale?: number

Lower bound for zoom scale, enforced for wheel/drag and zoomBy/resetZoom alike (default 0 = 0%).


overlap

overlap: object

Band over the depths a panel repeats (SvgInstance.repeatedTo).

label

label: string

{range} is replaced by the repeated depth range, e.g. 116–124 m.


overview

overview: object

Mini-map: the whole well's lithology drawn as a thin column in the panel's left margin, with a window outlining the panel's depth range.

active

active: boolean

height

height: number

Height in pixels; capped at the panel's drawing height.

width

width: number

x

x: number

Left edge in SVG coordinates.


pan

pan: boolean


textures?

optional textures?: TexturesConfig


tooltipLabels

tooltipLabels: TooltipLabels

Resolved (plain-string) tooltip titles/field labels — see TooltipLabels.


tooltips?

optional tooltips?: TooltipKey | false

undefined = show all; false or = show none; array = show only listed keys


unitLabels

unitLabels: object

active

active: boolean

Show geologic_unit and aquifer_unit strips to the left of the lithology column

innerDividerWidth

innerDividerWidth: number

Stroke width of divider lines between adjacent segments of different units

minHeightForText

minHeightForText: number

outerEdgeWidth

outerEdgeWidth: number

Stroke width of the top/bottom boundary (and page-clip edges in multi-SVG rendering)

stripWidth

stripWidth: number

xOffset

xOffset: number

X position of the first (leftmost) strip in geologic group coordinates


zoom

zoom: boolean


zoomLevel?

optional zoomLevel?: number

Initial zoom scale applied on first render (1 = fit all, 2 = start 2× zoomed in).