Я пытаюсь стилизовать цвета линий на основе свойства 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?
})
});