---
type: Architecture Decision
title: Scalar contours
description: Native Mapbox isolines and cached numeric hover share one forecast channel.
tags: [rendering, raster, contours, inspection]
visibility: public
---

# Rule

A scalar [Channel](/catalog/channel.md) may deliver immutable contour geometry
beside its numeric tiles. `contour_prefix` addresses per-band GeoJSON LineStrings;
each feature carries its physical `value`. Contours are a derived presentation
of the same data, not another Provider or independently selected Channel.

The Layer owns contour visibility, color, width, opacity and dash pattern through
the shared line presentation constructor in Lines. Legacy `rasterContours` color
and width seed that presentation without restyling existing maps; its label
visibility remains independent. Conditional styles evaluate the contour value.
Its numeric raster opacity remains independent, allowing
lines without a colored background. Mapbox native line and symbol layers
project the geometry on globe and Mercator, including the zoom 5–6 transition.
Before creating the render source, contours use the same `polarClip` line
clipping as other vector lines at ±85.05112878°. Crossings are interpolated
and split; fully polar parts are omitted, without pinning them to the boundary.
Both line strokes and labels consume that clipped geometry. Primary colors
remain fixed; label halos use the shared basemap theme contrast rule, dark on
dark basemaps and light on light basemaps.

# Inspection

Hover and Details sample the declared scalar tile encoding at the chosen band,
including positions between lines. Geometry is never used to infer the value
between contours. The existing immutable frame cache serves further pointer
positions, as described by [raster pixel inspection](raster-pixel-inspection.md).

# Forecast consistency

The weather publisher prepares all numeric tiles and the contour file before
one fenced database transaction activates the band. Changing the time removes
old contour geometry and cancels its request. Style reloads restore the current
native layers. Layer removal releases both representations.

# Mean sea level pressure

NOAA GFS PRMSL represents pressure reduced to mean sea level, not surface pressure
at terrain height. The acquisition converts Pa to hPa. RG16 tiles encode
870–1085 hPa; values outside that range are rejected during publication rather
than silently represented as boundary values. Isobars use a 0.5° derived grid
and a 4 hPa interval; numeric hover uses the 0.25° source sampled into the
published z0–z2 pyramid. They describe modeled values at the displayed valid
time, not a local barometer measurement. Contours are cut at ±180° to avoid
false segments spanning the dateline.
