Mapbox GL - как изменить ширину линии геойсона при наведении?
У меня есть карта mapbox, где я добавляю различные линии геойсон. Я добавляю их вот так
map.addSource('diklodartlo', diklodartlo);
map.addLayer({
'id': 'diklodartlo',
'type': 'line',
'source': 'diklodartlo',
'layout': {
'line-cap': 'round',
'line-join': 'round'
},
'paint': {
'line-opacity': 0.75,
'line-color': '#747474',
'line-width': 2
}
});
Каждая строка имеет также соответствующий маркер, который при наведении курсора отображает всплывающее окно с дополнительной информацией о следе.Теперь я хочу также "выделить" соответствующую строку - увеличить ее "ширину линии", чтобы пользователь знал, какая строка выбрана. Моя идея состоит в том, чтобы взять свойство id из маркера, связать его со свойством id строки, а затем изменить строку "line-width". Но это легче сказать, чем сделать - я знаю, как получить свойство выбранного маркера, но не знаю, как получить доступ к слою и изменить ширину линии во время выполнения. Может кто-нибудь посоветовать мне, как это сделать?
Большое спасибо...
1 ответ
Так что все было довольно просто, у mapbox есть свойство для этого. Выглядит так
map.setPaintProperty(//hovered trail//, 'line-width', //desired width//);