ベースマップ レイヤの操作
高いパフォーマンスを維持しながら、高品質の表示を実現するようにデスクトップ マップを設計することは、常に重要な目標となっています。表示パフォーマンスを改善するための方法の 1 つは、ベースマップ レイヤを使用することです。
ベースマップ レイヤは、操作情報を動的に表示するフレームワークを提供する、マップ レイヤの一種です。ベースマップ表示のパフォーマンスは非常に優れています。ベースマップ レイヤは比較的静的で、頻繁に変更されることはないため、一度表示が計算されると何度も再利用できます。あるエリアに特定のマップ縮尺でアクセスすると、ベースマップ レイヤの表示が計算されます。そのエリアに再び同じマップ縮尺でアクセスすると、この表示が再利用されます。
GIS ベースマップの特性
多くの ArcMap アプリケーションにはベースマップが含まれ、この上に操作情報、観測値および分析モデルから導出された情報が表示され、使用されます。次に例を示します。
- オルソ画像は多くの場合、操作情報がオーバーレイされる全体的なベースとして使用されます。
- ユーティリティ アプリケーションでは、多くの場合、パーセル境界線を持つ土地、建物、その他の構築されたフィーチャが、ベースマップとして使用されます。
- 多くの市街地図では、道路ネットワークをベースマップとして使用し、その上にインシデントやイベントなどのレイヤが表示されます。
ベースマップは位置の参照に使用され、ユーザが操作レイヤをオーバーレイまたはマッシュアップしたり、タスクを実行したり、地理情報を視覚化したりするためのフレームワークを提供します。ベースマップは、すべての操作とマッピングの基礎であり、情報を地理的に利用するコンテキストとフレームワークを提供します。
多くのマップには、複数のベースマップ レイヤを含めることができます。たとえば、テレインのベースマップを使用し、その上に重要な操作情報をオーバーレイすることができます。そしてそれらの上に、情報の参照レイヤを追加できます(これもベースマップ レイヤです)。たとえば、次の地質マップには 2 つのベースマップ レイヤが使用されています。一番下にテレインのベースマップ レイヤが使用され、2 番目のベースマップ レイヤとして、交通、水域、および場所の名前のベースマップ レイヤが地質フィーチャの上にオーバーレイされています。
ベースマップは比較的静的なものであり、通常はあまり更新されません。
また、多くの場合、ベースマップは複数のマップ縮尺で使用されるように設計されます。ベースマップは、それぞれのマップ縮尺の範囲に応じたコンテンツを表現します。
GIS アプリケーション用のベースマップを構築および配置するために選択できる方法は、数多くあります。たとえば、次の方法があります。
- ArcMap でベースマップを使用します(このトピックで説明します)。
- [データの追加] メニューの [ベースマップの追加] コマンドを使って、サービスに基づいてベースマップ レイヤを追加します。
- ArcGIS for Server、ArcGIS.com、または Bing Maps から取得されるキャッシュ マップ サービスを追加します。
ベースマップ レイヤの作成
最初に、ベースマップ レイヤを設計します。マップ表示の比較的静的な部分であるレイヤを特定します。また、縮尺依存の描画についても検討します。これには、各縮尺でマップがどのように表示されるかを考慮してマップを設計する必要があります。
- マップを設計したら、通常の手順に従って、ArcMap で各マップ レイヤを作成します。
- マップに新しいベースマップ レイヤを追加します。コンテンツ ウィンドウでデータ フレーム名を右クリックし、[新規ベースマップ レイヤ] をクリックします。
これによって、新しいベースマップ レイヤがコンテンツ ウィンドウに追加されます。ベースマップ レイヤは、コンテンツをドラッグして含めることができる、グループ レイヤのように振舞います。
- ベースマップを構成するレイヤを選択し、ベースマップ レイヤにドラッグします。
- 新しいベースマップ レイヤの名前を変更します。
いったん設定すると、マップを表示するたびに、ベースマップ レイヤは最適化されたマップ表示ロジックを使用して描画されます。その他のレイヤは動的に描画され、データ ソースからの最新の更新情報にアクセスすることができます。
ベースマップ レイヤの描画パフォーマンスを分析する
ベースマップ レイヤに追加したレイヤに、警告アイコンやエラー アイコンが追加されている場合があります。エラー アイコンは、ベースマップ レイヤとの互換性のないコンテンツがあることを示します。警告アイコンは、これらのレイヤをベースマップ レイヤで使用した場合に発生する可能性のある、パフォーマンスの問題や表示の違いを示します。ベースマップ レイヤは、描画を高速化するために、パフォーマンスの高い描画エンジンを使用します。このエンジンでは、一部のレイヤの描き方が異なる場合があります。
描画の違いやその他の問題についての詳細情報を取得するには、ベースマップ レイヤを分析し、表示パフォーマンスを改善するための診断メッセージを使用することができます。
手順
- コンテンツ ウィンドウでベースマップ レイヤを右クリックし、[ベースマップ レイヤの分析] をクリックします。
ベースマップ レイヤ内のレイヤのパフォーマンス分析が開始され、潜在的な描画パフォーマンスの問題についての診断レポートが生成されます。
- エラー レポートは潜在的な描画パフォーマンスの問題を特定し、その問題の解決策を提案します。この分析手法は、マップ サービスを分析および公開する際に使用される手法に似ています。
- 描画パフォーマンスを改善するためのベースマップ レイヤを作成する前に、マップ表示が非常に遅いという問題がすでに発生している場合があります。マップの表示パフォーマンスを分析し、表示パフォーマンスについての深刻な問題を解決することは、どんな場合にも役立ちます。
- 表示パフォーマンスの問題の主な原因は、特殊なカートグラフィック効果を作成するための高度な表示手法の使用と関係があります。マップ分析の結果によっては、効率性を優先して、カートグラフィックの観点からはあまり高度とは言えない手法が提案されます。たとえば、レンダリングにカートグラフィック リプレゼンテーションを使用し、シンボル化を厳密に制御できるものの、マップの描画速度が遅い場合などです。ベースマップ レイヤの表示パフォーマンスを分析する際、ベースマップはいったん表示を計算すると、ArcMap セッション中はその表示を繰り返し使用する点に注意してください。初回の表示に時間がかかっても、マップ設計の高いカートグラフィック品質を実現する価値があると判断するかもしれません。
- ベースマップ レイヤのコンテンツ用に計算されたラベルはキャッシュされません。ラベルは範囲内に変更が加えられるたびに再計算されるので、描画パフォーマンスが遅くなる可能性があります。アノテーションを使用することによって、テキストの配置を事前に計算し、表示パフォーマンスを改善することを検討してください。
- ベースマップ レイヤは、表示パフォーマンスを向上させるために事前に描画された、コンテンツのローカルの表示キャッシュを使用します。キャッシュはベースマップ レイヤによって管理され、一般的な使用においては明示的に管理する必要はありません。
マップ ナビゲーション
ベースマップ レイヤおよびアクセラレートされたラスタ レイヤを含むマップでは、次のような特殊なマウス操作によって、連続的に画面移動したりズームしたりできます。
手順
- データ フレーム内にポインタを置きます。
- マウスの中央ボタンを押したままにします。最初は、ポインタがアクティブな画面移動アイコン(げんこつ) に変わります。
- 数秒すると、ポインタが連続画面移動ポインタ に変わります。
- マウスの中央ボタンを押したまま、画面移動する方向へマップ上をドラッグします。すると、指定した方向へマップ画面が連続的に移動します。画面移動中は、ポインタの形状が「移動方向を示す矢印」 に変わります。
- Ctrl キーを押すとマップ画面の移動速度が速くなり、Shift キーを押すと遅くなります。
マップを画面移動する際、ベースマップ レイヤは比較的スムーズに連続して移動できます。その他のマップ レイヤは、マウスの中央ボタンを離すと再描画されます。
- マップにベースマップ レイヤが含まれる場合、マップの画面移動、ズーム、および操作に標準ツールを使用できます。たとえば、サムホイールを使用して拡大/縮小することもできます。マウスの中央ボタンを押したままにして、すぐに画面移動を開始する場合、げんこつのポインタ で示される、標準の画面移動ツールが使用されます。
- マウスの中央ボタンを使用する代わりに、Q キーを押したままマップ表示の中央を基準にしてポインタを移動しても、マップの連続画面移動を有効にすることができます(つまり、中央の右下にポインタを移動すると、マップはその方向に画面移動します)。Q キーを放すと、マップの画面移動は停止します。表示の中央からの距離に基づいて、画面移動の速度を制御することができます。中央へ近づく方向へ移動すると画面移動の速度が遅くなり、離れる方向へ移動すると速度が速くなります。Q キーを使ってマウスの中央ボタンを回転させて、画面移動時に拡大/縮小することも可能です。
ハードウェア アクセラレーションの使用
ベースマップ レイヤおよびアクセラレートされたラスタ レイヤをハードウェア アクセラレーションと組み合わせて使用すると、マップの画面移動やズームを行う際に、非常に高度なパフォーマンスで連続的で滑らかな表示を実現することができます。ArcMap セッションでハードウェア アクセラレーションをオンにすると、グラフィックス カード処理のパフォーマンスを改善することができます。ベースマップ レイヤまたはアクセラレートされたラスタ レイヤを使用していない場合、ハードウェア アクセラレーションはマップに影響を及ぼしません。ハードウェア アクセラレーションは、[ArcMap オプション] ダイアログ ボックスでオンとオフを切り替えることができます。
手順
- [カスタマイズ] → [ArcMap オプション] の順にクリックして [ArcMap オプション] ダイアログ ボックスを開きます。
- [データ ビュー] タブをクリックして、[サポートされたレイヤに対してハードウェア アクセラレーションを有効にする] をオンにします。
- 対話的な画面移動とズームには、同じツールを使用します。ベースマップ レイヤおよびアクセラレートされたラスタ レイヤに対し、応答性に優れた滑らかな操作環境が実現されます。
現在の ArcMap セッションでハードウェア アクセラレーションが有効になっていない場合、ハードウェア アクセラレーションを有効にするオプションは無効になります。以下のうち 1 つに該当する場合、無効になります。
- グラフィックス カードのドライバが壊れているか、古くなっている場合、またはハードウェア アクセラレーションを利用するのに必要な機能をサポートしていない場合。グラフィックス カードは Shader Model 3.0 仕様を満たしている必要があり、ドライバ ソフトウェアは OpenGL 2.0 仕様を満たしている必要があります。
- リモート デスクトップを介してコンピュータにアクセスしている際に、ハードウェア アクセラレーションを有効にしようとした場合。
- ArcMap のセッションが開いている間に、リモート デスクトップを介してこのコンピュータにアクセスしたことがある場合。
- 低帯域幅のリモート デスクトップ接続では、ベースマップ レイヤまたはアクセラレートされたラスタ レイヤを連続的に描画すると、対話性が低下する可能性があります。デフォルトでは、リモート デスクトップ接続を介して ArcMap にアクセスしている場合、連続的に描画することはできません。高帯域幅接続を使ってリモート コンピュータへアクセスする場合は、[ナビゲーション中にリアルタイムに表示を更新する] オプションをオンにすることにより、ベースマップ レイヤまたはアクセラレートされたラスタ レイヤの高速更新機能を使用して、継続的に描画することができます。
ベースマップ レイヤの霞み表示
ベースマップ レイヤは、多くの点でグループ レイヤと同様に動作しますが、ベースマップ レイヤ上の操作データを見やすくするための、グループ レイヤにはない機能が設計されています。この機能は霞み表示と呼ばれるものです。基本的には、霞み表示はベースマップ レイヤの存在感を弱め、ベースマップ レイヤの上にあるレイヤをより明瞭に表示するための方法です。
ベースマップ レイヤを霞み表示するには、[効果] ツールバーの [霞みレベルの調整] コマンドをクリックし、他の効果を変更する場合と同様に、[霞みレベル] スライダを変更します。ベースマップ レイヤの [霞みレベル] を大きくすると、色が薄くなり、レイヤは部分的に透明になって、操作レイヤがより目立つようになります。これは、視覚化や編集時に便利であり、特に、色の付いた二次元の画像や、上のレイヤの詳細部分を不鮮明にする可能性のある、色の豊富なコンテンツがベースマップ レイヤに含まれている場合には役立ちます。
ベースマップ レイヤの更新
レイヤ プロパティがベースマップ レイヤ内にある場合には、編集できない場合があります。編集できるのは、[一般] および [キャッシュ](該当する場合)タブで使用できるプロパティだけです。ベースマップ レイヤの操作をしているとき、ベースマップ レイヤのコンテンツに対してデータ更新操作を実行することができません。データの編集やレイヤの更新が必要な場合は、ベースマップからマップ レイヤをドラッグして編集します。その後、更新したレイヤをベースマップ レイヤにドラッグして戻します。