Mapbox - исходный векторный файл не может добавить цвет заполнения - PullRequest
0 голосов
/ 04 мая 2018

Код ниже работает без fill-color и отображает импортированные векторы. Однако добавление fill-color не приводит к отображению ничего. Я пытался изменить type на fill, но я все еще не получаю ничего с fill-color. Набор плиток состоит из полигонов геоджонов, которые были импортированы в наборы плиток студии Mapbox.

map.addLayer({ id: 'zip-codes', type: 'line', source: { type: 'vector', url: 'mapbox://<tilesetid>', }, 'source-layer': 'original', layout: { 'line-join': 'round', 'line-cap': 'round', }, paint: { 'line-color': 'green', 'line-width': 10, 'fill-color': 'red', }, });

1 Ответ

0 голосов
/ 04 мая 2018

Многоугольный слой в Mapbox-GL-JS - это либо fill, либо line, но не оба. Если это fill, он содержит только fill-* свойств. Если это line, он содержит только line- свойств.

Итак, если вы хотите заполнить многоугольники, вы, вероятно, хотите что-то вроде:

map.addLayer({
    id: 'zip-codes',
    type: 'fill',
    source: {
      type: 'vector',
      url: 'mapbox://<tilesetid>',
    },
    'source-layer': 'original',
    paint: {
      'fill-color': 'red',
    },
  });

Если вы хотите контролировать как заливку, так и границу, вам нужно два отдельных слоя: один с типом fill и один с типом line.

...