Динамический стиль линии Mapbox возвращает черный цвет - PullRequest
0 голосов
/ 03 октября 2018

Я пытаюсь стилизовать цвета линий на основе свойства geojson.Я динамически добавляю координаты в массив 'geojson' (на основе этого примера: https://www.mapbox.com/mapbox-gl-js/example/animate-a-line/), создаю настройки 'style', а затем использую map.setPaintProperty () для стилизации моего слоя. Нет ошибки, но строкивозвращается в черном цвете вместо цветовой.

var geojson = {
    "type": "FeatureCollection",
    "features": [{
        "type": "Feature",
        "geometry": {
            "type": "LineString",
            "coordinates": [
                []
            ]
        },"properties": {
            "distance_m":[]
        }
    }]
};

var style = {property: 'distance_m', //color based on this json property
             type: 'interval',
             stops: [
             [0.00, '#f1f075'],
             [50.00, '#e55e5e'],
             [100.00, '#bcbddc'],
             [200.00, '#ed6498']
]}

map.on("load", function() {
    map.addLayer({
        'id': 'line-animation',
        'type': 'line',
        'source': {
            'type': 'geojson',
            'data': geojson
        },
        'paint': {
            // 'line-color': styled dynamically based on distance_m
        }
    });

    $.getJSON('testdata.geojson', function(results){
       var current = results.features[x3].properties.distance_m;
       geojson.features[0].properties.distance_m.push(current);
       map.getSource('line-animation').setData(geojson);
       map.setPaintProperty('line-animation', 'line-color', style); // all lines are returned black?

    })
 });
...