フィルタ
Mapboxスタイル仕様では、フィルタとは、スタイルレイヤーでどのフィーチャーをレンダリングするかを決定するレイヤーレベルのプロパティです。フィルタは 式として記述され、どのフィーチャを含めるかを細かく制御することができます。スタイルレイヤーは、定義したフィルタ条件に一致するフィーチャーのみを表示します。フィルタは、iOSやmacOSでは述語と呼ばれています。
テキスト入力によるシンボルのフィルタリング(英語)のコードには、icon
がsymbol
(選択されたフィーチャのアイコンプロパティに設定される変数)と等しいフィーチャをすべて除外するフィルタ式が含まれています
map.addLayer({
id: layerID,
type: 'symbol',
source: 'places',
layout: {
'icon-image': symbol + '-15',
'icon-allow-overlap': true
},
filter: ['==', 'icon', symbol]
});
Mapboxスタイル仕様の古いバージョンでは、プロパティベースのフィルタ構文(英語)を使用していました。この古い構文はまだ動作しますが、最終的には廃止され、フィルタ式に置き換えられます。
関連ページ(英語)
- Filter documentation
- Expression documentation
- Example: Highlight features containing similar data
- Example: Filter symbols by text input
- Troubleshooting: Optimize expressions