Function setAdditionTileCondition

  • 任意タイル地図の表示オプションを設定する — 詳細な使用例

    外部提供の XYZ タイル(WMTS 等)を地図タイルに重ねて描画します。 複数のタイルレイヤーを key で管理でき、独立して追加・削除できます。 getAdditionTileKeyNameList / hasAdditionTileKeyName で登録状態を確認できます。

    Returns void

    Warning

    • 任意タイルのサーバ情報(AdditionTileOptions.serverInfoList)は Map 初期化時に登録しておく必要があります。
    • key は各タイルレイヤーの識別子です。一意な文字列を指定してください。
    • 同一 keysetAdditionTileCondition を再呼び出すと上書きされます。
    • clearAdditionTileCondition は指定した key のレイヤーのみ削除します。全削除ではありません。

    Example: 追加タイルのサーバ情報を登録してから表示する

    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

    Example: 単一チェックボックスでON/OFFする

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

    See