On this page

Type Alias LineLayerSpecification

type LineLayerSpecification = {
    filter?: FilterSpecification;
    id: string;
    layout?: {
        "line-cap"?: DataDrivenPropertyValueSpecification<
            "butt"
            | "round"
            | "square",
        >;
        "line-join"?: DataDrivenPropertyValueSpecification<
            "bevel"
            | "round"
            | "miter",
        >;
        "line-miter-limit"?: DataDrivenPropertyValueSpecification<number>;
        "line-round-limit"?: DataDrivenPropertyValueSpecification<number>;
        "line-sort-key"?: DataDrivenPropertyValueSpecification<number>;
        visibility?: VisibilitySpecification;
    };
    maxzoom?: number;
    metadata?: unknown;
    minzoom?: number;
    paint?: {
        "line-blur"?: DataDrivenPropertyValueSpecification<number>;
        "line-blur-transition"?: TransitionSpecification;
        "line-color"?: DataDrivenPropertyValueSpecification<ColorSpecification>;
        "line-color-transition"?: TransitionSpecification;
        "line-dasharray"?: DataDrivenPropertyValueSpecification<number[]>;
        "line-dasharray-transition"?: TransitionSpecification;
        "line-gap-width"?: DataDrivenPropertyValueSpecification<number>;
        "line-gap-width-transition"?: TransitionSpecification;
        "line-gradient"?: ExpressionSpecification;
        "line-layer-opacity"?: PropertyValueSpecification<number>;
        "line-layer-opacity-transition"?: TransitionSpecification;
        "line-offset"?: DataDrivenPropertyValueSpecification<number>;
        "line-offset-transition"?: TransitionSpecification;
        "line-opacity"?: DataDrivenPropertyValueSpecification<number>;
        "line-opacity-transition"?: TransitionSpecification;
        "line-pattern"?: DataDrivenPropertyValueSpecification<
            ResolvedImageSpecification,
        >;
        "line-pattern-transition"?: TransitionSpecification;
        "line-translate"?: PropertyValueSpecification<[number, number]>;
        "line-translate-anchor"?: PropertyValueSpecification<"map" | "viewport">;
        "line-translate-transition"?: TransitionSpecification;
        "line-width"?: DataDrivenPropertyValueSpecification<number>;
        "line-width-transition"?: TransitionSpecification;
    };
    source: string;
    "source-layer"?: string;
    type: "line";
}
Index

Properties

A expression specifying conditions on source features. Only features that match the filter are displayed. Zoom expressions in filters are only evaluated at integer zoom levels. The feature-state expression is not supported in filter expressions.

id: string

Unique layer name.

layout?: {
    "line-cap"?: DataDrivenPropertyValueSpecification<
        "butt"
        | "round"
        | "square",
    >;
    "line-join"?: DataDrivenPropertyValueSpecification<
        "bevel"
        | "round"
        | "miter",
    >;
    "line-miter-limit"?: DataDrivenPropertyValueSpecification<number>;
    "line-round-limit"?: DataDrivenPropertyValueSpecification<number>;
    "line-sort-key"?: DataDrivenPropertyValueSpecification<number>;
    visibility?: VisibilitySpecification;
}

Layout properties for the layer.

Type Declaration

maxzoom?: number

The maximum zoom level for the layer. At zoom levels equal to or greater than the maxzoom, the layer will be hidden.

metadata?: unknown

Arbitrary properties useful to track with the layer, but do not influence rendering. Properties should be prefixed to avoid collisions, like 'maplibre:'.

{"source:comment": "Hydrology FCCODE 460 - Narrow wash"}
minzoom?: number

The minimum zoom level for the layer. At zoom levels less than the minzoom, the layer will be hidden.

paint?: {
    "line-blur"?: DataDrivenPropertyValueSpecification<number>;
    "line-blur-transition"?: TransitionSpecification;
    "line-color"?: DataDrivenPropertyValueSpecification<ColorSpecification>;
    "line-color-transition"?: TransitionSpecification;
    "line-dasharray"?: DataDrivenPropertyValueSpecification<number[]>;
    "line-dasharray-transition"?: TransitionSpecification;
    "line-gap-width"?: DataDrivenPropertyValueSpecification<number>;
    "line-gap-width-transition"?: TransitionSpecification;
    "line-gradient"?: ExpressionSpecification;
    "line-layer-opacity"?: PropertyValueSpecification<number>;
    "line-layer-opacity-transition"?: TransitionSpecification;
    "line-offset"?: DataDrivenPropertyValueSpecification<number>;
    "line-offset-transition"?: TransitionSpecification;
    "line-opacity"?: DataDrivenPropertyValueSpecification<number>;
    "line-opacity-transition"?: TransitionSpecification;
    "line-pattern"?: DataDrivenPropertyValueSpecification<
        ResolvedImageSpecification,
    >;
    "line-pattern-transition"?: TransitionSpecification;
    "line-translate"?: PropertyValueSpecification<[number, number]>;
    "line-translate-anchor"?: PropertyValueSpecification<"map" | "viewport">;
    "line-translate-transition"?: TransitionSpecification;
    "line-width"?: DataDrivenPropertyValueSpecification<number>;
    "line-width-transition"?: TransitionSpecification;
}

Default paint properties for this layer.

Type Declaration

  • Optionalline-blur?: DataDrivenPropertyValueSpecification<number>

    Blur applied to the line, in pixels.

  • Optionalline-blur-transition?: TransitionSpecification
  • Optionalline-color?: DataDrivenPropertyValueSpecification<ColorSpecification>

    The color with which the line will be drawn.

    "#000000"
    
  • Optionalline-color-transition?: TransitionSpecification
  • Optionalline-dasharray?: DataDrivenPropertyValueSpecification<number[]>

    Specifies the lengths of the alternating dashes and gaps that form the dash pattern. The lengths are later scaled by the line width. To convert a dash length to pixels, multiply the length by the current line width. GeoJSON sources with lineMetrics: true specified won't render dashed lines to the expected scale. Zoom-dependent expressions will be evaluated only at integer zoom levels. The only way to create an array value is using ["literal", [...]]; arrays cannot be read from or derived from feature properties.

  • Optionalline-dasharray-transition?: TransitionSpecification
  • Optionalline-gap-width?: DataDrivenPropertyValueSpecification<number>

    Draws a line casing outside of a line's actual path. Value indicates the width of the inner gap.

  • Optionalline-gap-width-transition?: TransitionSpecification
  • Optionalline-gradient?: ExpressionSpecification

    Defines a gradient with which to color a line feature. Can only be used with GeoJSON sources that specify "lineMetrics": true.

  • Optionalline-layer-opacity?: PropertyValueSpecification<number>

    Opacity applied to the layer as a whole. Unlike line-opacity and alpha values in line-color, which are applied per feature and accumulate where lines overlap, line-layer-opacity is applied once so overlapping lines appear as a single surface at the given opacity. When both line-opacity and line-layer-opacity are set, the per-feature, overlap accumulation is preserved, then layer-opacity composites the result. This property affects only the layer it is set on and cannot be used to composite multiple layers together or control how this layer blends with layers above or below it.

    line-opacity vs. line-layer-opacity

    1
    
  • Optionalline-layer-opacity-transition?: TransitionSpecification
  • Optionalline-offset?: DataDrivenPropertyValueSpecification<number>

    The line's offset. For linear features, a positive value offsets the line to the right, relative to the direction of the line, and a negative value to the left. For polygon features, a positive value results in an inset, and a negative value results in an outset.

  • Optionalline-offset-transition?: TransitionSpecification
  • Optionalline-opacity?: DataDrivenPropertyValueSpecification<number>

    The opacity at which the line will be drawn.

    1
    
  • Optionalline-opacity-transition?: TransitionSpecification
  • Optionalline-pattern?: DataDrivenPropertyValueSpecification<ResolvedImageSpecification>

    Name of image in sprite to use for drawing image lines. For seamless patterns, image width must be a factor of two (2, 4, 8, ..., 512). Note that zoom-dependent expressions will be evaluated only at integer zoom levels.

  • Optionalline-pattern-transition?: TransitionSpecification
  • Optionalline-translate?: PropertyValueSpecification<[number, number]>

    The geometry's offset. Values are [x, y] where negatives indicate left and up, respectively.

    [0, 0]
    
  • Optionalline-translate-anchor?: PropertyValueSpecification<"map" | "viewport">

    Controls the frame of reference for line-translate.

    "map"
    
  • Optionalline-translate-transition?: TransitionSpecification
  • Optionalline-width?: DataDrivenPropertyValueSpecification<number>

    Stroke thickness.

    1
    
  • Optionalline-width-transition?: TransitionSpecification
source: string

Name of a source description to be used for this layer. Required for all layer types except background.

"source-layer"?: string

Layer to use from a vector tile source. Required for vector tile sources; prohibited for all other source types, including GeoJSON sources.

type: "line"
Was this helpful?
SDK JS
Reference
LineLayerSpecification