ガイド変更履歴HERE SDK API references
ガイド

事前定義されたマップスキームを追加する

事前定義されたマップスキームをロードする

マップスキームを使用すると、事前定義されたマップスタイルを読み込んで、マップビューの外観を即座に変更できます。

HERE SDKは、いくつかの事前設定済みのマップスキームをサポートしています。

  • NORMAL_DAY:昼間の使用に適したロスレス スケーラブル ベクター ベース マップです。
  • NORMAL_NIGHT:夜間の使用に適したロスレス スケーラブル ベクター ベース マップです。
  • HYBRID_DAY:衛星画像と、ベクター ストリート ネットワーク、マップ ラベル、POI 情報を組み合わせたハイブリッド マップ スキームの昼間バージョンです。
  • HYBRID_NIGHT:衛星画像と、ベクター ストリート ネットワーク、マップ ラベル、POI 情報を組み合わせたハイブリッド マップ スキームの夜間バージョンです。
  • LITE_DAY:Lite マップ スキーム NORMAL_DAY の簡易版の昼間バージョンです。マップ要素が少なく、カラー パレットが限定されています。
  • LITE_NIGHT:Lite マップ スキーム NORMAL_NIGHT の簡易版の夜間バージョンです。マップ要素が少なく、カラー パレットが限定されています。
  • LITE_HYBRID_DAY:Lite ハイブリッド マップ スキーム HYBRID_DAY の簡易版の昼間バージョンです。マップ要素が少なく、カラー パレットが限定されています。
  • LITE_HYBRID_NIGHT:Lite ハイブリッド マップ スキーム HYBRID_NIGHT の簡易版の夜間バージョンです。マップ要素が少なく、カラー パレットが限定されています。
  • LOGISTICS_DAY:フリートマネジメントのコンテンツに焦点を当てた、昼間バージョンのマップ スキームです。特定の POI アイコンを使用して、トラック駐車場やトラック洗車などを表示することもできます。これらのアイコンは選択可能です。
  • LOGISTICS_NIGHT:夜間バージョンの LOGISTICS_DAY マップ スキームです。
  • LOGISTICS_HYBRID_DAY:物流ユースケースに関連する地図要素を強調してフィーチャーする、ディスパッチャ、運行管理者、配送ドライバーのニーズに応えた昼間バージョンの物流ハイブリッド マップ スキームです。
  • LOGISTICS_HYBRID_NIGHT:夜間バージョンの LOGISTICS_HYBRID_DAY マップ スキームです。
  • SATELLITE:さまざまなズーム段階の衛星画像を表示するビットマップ ベースの地図です。
  • ROAD_NETWORK_DAY:ラベルや建物などの他のコンテンツを表示せずに道路を強調する、昼間バージョンのスキームです。これを使用すると、追加で小さい地図をズーム イン表示させてナビゲーション中にドライバーを案内したり、このマップ スキーム上に強調表示される運転操作矢印に注目させたりできます。
  • ROAD_NETWORK_NIGHT:夜間バージョンの ROAD_NETWORK_DAY マップ スキームです。
  • TOPO_DAY:標高、地形、自然景観などの地理的特徴を強調表示し、地形を明確に表現する、昼間バージョンのマップスキームです (Navigateライセンスでのみ使用可能)。
  • TOPO_NIGHT:夜間バージョンのTOPO_DAYマップスキームです (Navigateライセンスでのみ使用可能)。

MapSchemeの最新のスクリーンショットについては、HERE Style Editorドキュメントの「HERE default map styles」(HEREのデフォルトのマップスタイル) を参照してください。

衛星画像を除き、独自のマップスタイルを完全にカスタマイズすることもできます。

衛星ベースのマップスキームは、HERE Raster Tile APIに基づいています。HERE Raster Tile APIに基づくトランザクションの例:衛星ベースのマップスキーム (SATELLITEHYBRID_DAYHYBRID_NIGHTLITE_HYBRID_DAYLITE_HYBRID_NIGHT) をマップビューにレンダリングします。

HERE SDK (Explore) の場合、MapViewとその他のすべてのマップスキームは、HERE Vector Tile APIとOMVベクタータイルの組み合わせに基づいています。

HERE SDK (Navigate) の場合、MapViewとその他のすべてのマップスキームは、Data IOとOCMベクタータイルの組み合わせに基づいています。これは、マップデータがキャッシュ、プリフェッチ、またはインストールされていない場合にオンラインで使用する場合に適用されます。データIOは、MapDownloaderまたはMapUpdaterを使用してオフラインマップをダウンロードまたは更新する際にもカウントされます。HERE SDK (Navigate) にのみ適用されます。

これらの機能の価格については、「HERE基本プランの価格表」を参照してください。Navigateライセンスを使用している場合、または価格についてご質問がある場合は、お問い合わせください。

次のコードスニペットを使用して、マップスキームをロードします。

MapScheme mapScheme = MapScheme.NORMAL_DAY;

mapView.getMapScene().loadScene(mapScheme, new MapScene.LoadSceneCallback(){
    @Override
    public void onLoadScene(@Nullable MapError mapError) {
        if (mapError == null) {
            // ...
        } else {
            Log.d(TAG, "Loading of map scheme failed: mapError: " + mapError.name());
        }
    }
});
val mapScheme = MapScheme.NORMAL_DAY

mapView!!.mapScene.loadScene(mapScheme) { mapError ->
    if (mapError == null) {
        // ...
    } else {
        Log.d(TAG, "Loading of map scheme failed: mapError: " + mapError.name)
    }
}

周囲の光が明るい日中は、day のバリエーションを使用することをお勧めします。nightのバリエーションは、光が少ないときの使用に最適化されています。たとえば、ドライバーがトンネルを通過しているときにアプリケーションを昼間スキームから夜間スキームに切り替えることができます。HERE SDK (Navigate) を使用している場合、ドライバーは道路属性の変更について通知され、トンネルを通過していることを知ることができます。これにより、アプリケーションはマップスキームをその場で切り替えることができます。これは自動的には行われないことに注意してください。

また、HERE SDK は現在の時刻を自動的に検出して、昼間モードと夜間モードを切り替えることはありません。アプリケーションは、ユーザーの設定に基づいて、またはデバイスの時計をチェックすることによって、切り替えを実行します。

Screenshots (from left to right): MapScheme.NORMAL_DAY, MapScheme.NORMAL_NIGHT, MapScheme.HYBRID_DAY, MapScheme.HYBRID_NIGHT

利用可能なマップ スタイルは、視覚的な干渉を受けることなく、ベース マップにコンテンツやオーバーレイを簡単に追加できるように最適化されています。マップ スキームは色を多用せず、色覚異常がある場合でも最大限に読みやすくなるよう、クリーンでニュートラルな色調を採用しています。

  • ストリート ネットワークはグレー スケールでデザインされており、明るさ、コントラスト、幅によって階層を表します。
  • 色は全体的に明るく設定されています。
  • 主な色は、グレー、青、緑、白です。

HERE SDK には、マップ要素が少なく、カラー パレットが限定されている Lite マップ スキームもあります。以下を参照してください。

Screenshots (from left to right): MapScheme.LITE_DAY, MapScheme.LITE_NIGHT, MapScheme.LITE_HYBRID_DAY, MapScheme.LITE_HYBRID_NIGHT

さらに、HERE SDK では、運行管理コンテンツをより重視した物流マップ スキームも用意しています。

Screenshots (from left to right): MapScheme.LOGISTICS_DAY, MapScheme.LOGISTICS_NIGHT, MapScheme.LOGISTICS_HYBRID_DAY, MapScheme.LOGISTICS_HYBRID_NIGHT

HERE SDK にはラベルを含まない SATELLITE スキームもあります。

Screenshot: MapScheme.SATELLITE

HERE SDKには、ラベルや建物などの他のコンテンツを表示せずに道路を強調表示するマップスキームが用意されています。

Screenshots (from left to right): MapScheme.ROAD_NETWORK_DAY, MapScheme.ROAD_NETWORK_NIGHT

HERE SDKには、標高、地形、自然景観などの地理的特徴を強調表示するマップスキームが用意されています。

Screenshots (from left to right): MapScheme.TOPO_DAY, MapScheme.TOPO_NIGHT (only available with the Navigate license)


EN 日本語

HERE documentation

Find answers to your product and technical questions

Documentation

What's new

Videos

EN 日本語

HERE ドキュメント

製品や技術に関する質問の答えを見つけましょう。より多くの内容と最新の情報については、英語版をご覧ください。

ドキュメント

ダイナミックマップ

動的コンテンツ関連のAPIをアプリやサービスに活用して、ドライバーが安全・快適かつ予定どおりに目的地へ到着できるよう支援します。

地図とデータ

世界中を走行する多数のマッピング車両から得られる最新の位置情報データを活用し、精度の高い地図やカスタムレイヤーを構築できます。

最新情報

動画

(function () { const input = document.querySelector('input[data-typeahead]'); if (!input) return; // Prevent the form from submitting/navigating input.closest('form')?.addEventListener('submit', e => e.preventDefault()); input.addEventListener('input', function () { const q = this.value.trim().toLowerCase(); document.querySelectorAll('.nav-group-name').forEach(group => { let anyVisible = false; group.querySelectorAll('.nav-group-task').forEach(task => { const text = task.textContent.trim().toLowerCase(); const show = !q || text.includes(q); task.style.display = show ? '' : 'none'; if (show) anyVisible = true; }); // Hide the whole group header if nothing matches group.style.display = anyVisible || !q ? '' : 'none'; }); }); })(); (function () { function onTokenClick(event) { var link = event.target.closest('.sdk-for-ios .item .token'); if (!link) return; event.preventDefault(); console.log('token clicked', link.textContent.trim()); var item = link.closest('.item'); if (!item) return; var content = item.querySelector('.height-container'); if (!content) { console.log('no .height-container found for item', item); return; } var isHidden = window.getComputedStyle(content).display === 'none'; content.style.display = isHidden ? 'block' : 'none'; link.classList.toggle('token-open', isHidden); var href = link.getAttribute('href'); if (href) { if (history.pushState) history.pushState({}, '', href); else location.hash = href; } } function openHashTarget() { var hash = window.location.hash.slice(1); if (!hash) return; var anchor = document.querySelector('.sdk-for-ios a[name="' + hash + '"]'); if (!anchor) return; var item = anchor.closest('.item'); if (!item) return; var link = item.querySelector('.token'); var content = item.querySelector('.height-container'); if (!link || !content) return; content.style.display = 'block'; link.classList.add('token-open'); } function init() { console.log('HERE SDK accordion init'); openHashTarget(); } document.removeEventListener('click', onTokenClick); document.addEventListener('click', onTokenClick); if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', init); } else { init(); } window.addEventListener('hashchange', openHashTarget); window.addEventListener('pageLoad', init); })();