AdditionTileOptions.serverInfoList)は Map 初期化時に登録しておく必要があります。key は各タイルレイヤーの識別子です。一意な文字列を指定してください。key で setAdditionTileCondition を再呼び出すと上書きされます。clearAdditionTileCondition は指定した key のレイヤーのみ削除します。全削除ではありません。import * as GIA from '@ntj/gaia';
// Map初期化時
const map = new GIA.Map('sid', {
target,
center: new GIA.value.LatLng(35.681236, 139.767125),
zoomLevel: 14,
options: {
additionTileOptions: {
serverInfoList: {
hillshade: {
requestUrl: 'https://cyberjapandata.gsi.go.jp/xyz/hillshademap/{Z}/{X}/{Y}.png',
},
tsunami: {
requestUrl: 'https://disaportaldata.gsi.go.jp/raster/04_tsunami_newlegend_data/{Z}/{X}/{Y}.png',
},
},
},
},
});
// 表示条件
map.setAdditionTileCondition('hillshade', new GIA.value.AdditionTileCondition({
zoomRange: new GIA.value.ZoomRange(6, 16),
transparency: 0.4,
priority: 1,
}));
map.setAdditionTileCondition('tsunami', new GIA.value.AdditionTileCondition({
zoomRange: new GIA.value.ZoomRange(6, 17),
transparency: 0.7,
priority: 2,
}));
// 登録済みキー一覧を確認
console.log(map.getAdditionTileKeyNameList());
// 特定レイヤーのみ削除
map.clearAdditionTileCondition('tsunami');
// キーが存在するか確認
console.log(map.hasAdditionTileKeyName('hillshade')); // true
import * as GIA from '@ntj/gaia';
const checkbox = document.querySelector('input[name="hillshade"]') as HTMLInputElement;
checkbox.addEventListener('change', () => {
if (checkbox.checked) {
map.setAdditionTileCondition('hillshade', new GIA.value.AdditionTileCondition({
zoomRange: new GIA.value.ZoomRange(6, 16),
transparency: 0.4,
priority: 1,
}));
return;
}
map.clearAdditionTileCondition('hillshade');
});
任意タイル地図の表示オプションを設定する — 詳細な使用例
外部提供の XYZ タイル(WMTS 等)を地図タイルに重ねて描画します。 複数のタイルレイヤーを
keyで管理でき、独立して追加・削除できます。getAdditionTileKeyNameList/hasAdditionTileKeyNameで登録状態を確認できます。