2017-03-18 68 views
2

我有一個mapbox地圖,我添加了各種geojson線。我將它們添加這樣Mapbox GL - 如何在懸停時更改geojson線的寬度?

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 
      } 
     }); 

每一行都有也有相應的標記,其上懸停顯示有關的線索的其他信息彈出。 N ow我還想「突出顯示」相應的行 - 增加其「行寬」,以便用戶知道哪一行被選中。 我的想法是從標記中獲取id屬性,將它與行的id屬性配對,然後更改「line-width」行。但它說起來容易做起來難 - 我知道如何獲得所選標記的屬性,但不知道如何訪問圖層並在運行時改變線條的寬度。有人能告訴我怎麼做嗎?

非常感謝...

回答

0

因此,它畢竟是相當簡單的,mapbox有一個屬性。看起來像這樣

map.setPaintProperty(//hovered trail//, 'line-width', //desired width//);