web-dev-qa-db-ja.com

Mapboxglのすべてのレイヤーを見つける方法は?最終的に、カスタムレイヤーを陸上ではなく水上にのみ表示したい

カスタムサークルレイヤーを作成しました。このレイヤーを陸上ではなく水上でのみ表示したいと思います。以下のコマンドを使用して、なんとか反対のことを行いました(つまり、水上ではなく、陸上にレイヤーを表示する)。 理解を深めるには、この画像を参照してください

map.moveLayer( 'polygon'、 'water');

ここで、mapboxglで使用されるランドレイヤーを知る必要があります。これにより、関数map.moveLayer('polygon','land');を呼び出して、目的の機能を実現できます。

Mapboxgl-streetsマップにあるさまざまなレイヤーを見つけるために助けが必要です。しかし残念ながら、Mapboxglにはmap.eachLayer関数がありません。

15

Map#getStyle メソッドを使用して、レイヤーを含むスタイル全体のシリアル化された表現を取得します。

map.getStyle().layers
29

使用しているマップスタイルによって異なります。通常、正しいレイヤー名を特定するには、ソースを確認するか、Mapbox Studioにロードする必要があります。 https://github.com/mapbox/mapbox-gl-js/issues/417 にも注目してください。

1
sgelb