mapbox-gl-function

Evaluate a Mapbox GL style function

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
mapbox-gl-function
1101.3.06 years ago8 years agoMinified + gzip package size for mapbox-gl-function in KB

Readme

Mapbox GL style functions are used to specify a property value that varies according to zoom level. This library implements the semantics of interpolated and piecewise-constant functions as specified by the Mapbox GL Style Specification.

Usage

var glfun = require('mapbox-gl-function');

var exponential = glfun({type: 'exponential', stops: [[1, 1], [5, 10]]});
exponential({ $zoom: 0 });  // => 1
exponential({ $zoom: 1 });  // => 1
exponential({ $zoom: 3 });  // => 5.5
exponential({ $zoom: 5 });  // => 10
exponential({ $zoom: 11 }); // => 10

var interval = glfun({type: 'interval', stops: [[1, 'a'], [3, 'b'], [4, 'c']]});
interval({ $zoom: 0 }); // => 'a'
interval({ $zoom: 1 }); // => 'a'
interval({ $zoom: 2 }); // => 'a'
interval({ $zoom: 3 }); // => 'b'
interval({ $zoom: 4 }); // => 'c'

var categorical = glfun({type: 'categorical', stops: [['A', 'a'], ['B', 'b'], ['C', 'c']]});
categorical({ $zoom: 'A' }); // => 'a'
categorical({ $zoom: 'B' }); // => 'b'
categorical({ $zoom: 'C' }); // => 'c'