マップの作成に関する注意事項
Web 上でマップを利用できるようにするには、ArcMap でマップを作成して ArcGIS Server サイトに公開した後に、クライアント アプリケーションでマップ サービスを使用する必要があります。マップ サービスを使ってできることの多くは、初期の作成段階で準備する必要があります。このトピックでは、サイトに公開するマップを作成する際の注意事項について説明します。
一般的なヒント
次のヒントは、ArcGIS Server サイトで公開するすべてのマップ ドキュメントにおいて重要です。
データ フレーム名やレイヤ名での英数字以外の文字(スペースを除く)の使用は避けてください。サービスを公開するときに、データ フレーム名およびレイヤ名は、URL、キャッシュ フォルダ名、および Web サービス リクエスト パラメータで使用される場合があります。英数字以外の文字がこれらに使用された場合、正しく解釈されない恐れがあります。サービスが OGC 仕様によって公開される場合、特に注意してください。たとえば、WMS サービスで使用できない文字の一覧については、「使用可能な WMS サービス プロパティ」をご参照ください。
ドキュメントのプロパティに機密情報を設定しないでください。ArcGIS Server には Services Directory が備わっています。このアプリケーションを使用して、サーバのコンテンツを参照し、サービスに関するメタデータを取得することができます。Services Directory を利用して、すべてのユーザがサービスを表示できるようにする場合でも(ArcGIS Server のデフォルト構成)、マップ ドキュメントに明らかにしたくない機密情報が含まれている場合があります。表示される情報を確認するには、マップ ドキュメントを ArcMap で開き、メイン メニューで [ファイル] → [マップ ドキュメント プロパティ] の順に選択します。マップを公開するときに [サービス エディタ] を使用して、作成者のユーザ名やコメントなどの表示したくない情報を削除することができます。マップ サービスの目的や対象ユーザを反映するように、必要に応じて情報を編集してください。
セキュリティで保護されているマップ サービス レイヤをマップ ドキュメントから削除します。一般に、サービスを他のサービス内に埋め込む方法は推奨されません。代わりに、追加するサービスへ直接接続するようにクライアントを設定してください。これには、ArcGIS Online から追加するデータ([ファイル] → [データの追加] → [ベースマップの追加] または [ArcGIS Online からデータを追加] の順に選択して追加するデータ)も含まれます。
データ フレームの背景色は、デフォルトの NULLl 背景色のままにせず、明示的に設定してください。マップ サービスは背景色を透過表示として扱うため、マップ内の別の場所で使用されている色は選択しないでください。マップの白い部分が透過表示されないようにするには、背景色を白に近い色に設定することができます(RGB 254、255、255 など)。
[データ フレーム プロパティ] ダイアログ ボックスの [フレーム] タブで背景色を設定できます。
パフォーマンスを向上させるためのマップ キャッシュ
変更される可能性の低いデータがマップ内に含まれている場合は、パフォーマンスを向上させるためにマップをキャッシュすることを検討してください。マップをキャッシュすると、特定の縮尺レベルでレンダリングされた一連のマップ イメージを作成します。実際のキャッシュは、マップをサービスとして公開した後に実行されます。ただし、マップをキャッシュすることがわかっている場合、これはマップの作成プロセスに影響します。キャッシュ対象のすべての縮尺で適切に表示されるようにマップを作成します。キャッシュされたタイルはデータの単なる”絵”にすぎず、実際のレンダリング エンジンとラベリング エンジンはキャッシュの作成後には使用されないため、カートグラフィック ツールを使用してもパフォーマンスへの影響はありません。
マップをキャッシュできない場合、レンダリング エンジンとラベリング エンジンはマップ サービスのパフォーマンスに影響を与えます。詳細については、「マップ キャッシュとは」をご参照ください。
キャッシュされていないマップのパフォーマンスに関するヒント
マップ キャッシュは必要に応じて作成してください。ただし、頻繁に変化するデータが大量にある場合は、マップ キャッシュを作成して維持することは不可能かもしれません。そのような場合は、次のヒントを参考にして、マップのパフォーマンスを改善することができます。マップ ドキュメントを公開するときに、[サービス エディタ] を使用してマップを解析することができます。これにより、マップ ドキュメントのパフォーマンスを向上させる方法を簡単に判定できます。
データ レイヤに縮尺範囲を指定したレンダリングを設定する: レイヤを表示する縮尺範囲を指定して、マップが縮小表示されたときに不要なレイヤが描画されないようにします。データ量が多いレイヤまたは詳細データのレイヤを描画させるのは、マップが大縮尺に拡大される場合だけでよいでしょう。
-
不要なレイヤとデータ フレームを削除する: レイアウト ビューとデータ ビューの両方をチェックし、マップの目的とは無関係なデータ フレームとレイヤがマップ ドキュメントに含まれていないことを確認します。たとえば、レイアウト ビューにサービスを使用するどのアプリケーションでも表示されないデータ フレームが含まれている場合は、そのデータ フレームを削除します。
-
フィルタ設定を適切に使用する: フィルタ設定を使用してマップ上のデータ量を制限すれば、マップを高速に描画できます。たとえば、ある県のマップを作成していて、フィーチャクラスに国全体のデータが含まれる場合は、フィルタ設定を使用するとその県の境界線内にあるフィーチャだけを表示し、県外のフィーチャを非表示にすることができます。ただし、フィルタ設定が複雑すぎると、パフォーマンスが低下する可能性があります。
レイヤ シンボルを単純化する: 複雑なシンボルは単純なシンボルよりも描画に時間がかかります。可能であれば、シンプル ライン シンボルとシンプル塗りつぶしシンボルを使用し、マルチレイヤ シンボル、複雑な破線パターン、ハッシュ ライン、アウトラインを含むシンボルは避けてください。高速道路標識シンボルは描画パフォーマンスを遅くさせることがあります。
ピクチャ塗りつぶしシンボルを使用する際は、BMP ではなく EMF ファイルを使ってパフォーマンスを改善することができます。
ESRI_Optimized スタイルを使用すると、マップ内のシンボルを簡単に単純化することができます。このスタイルには、パフォーマンスに優れ、デフォルトの Esri スタイルを使用した場合に近い表示を保つ、ライン シンボルと塗りつぶしシンボルが含まれます。このスタイルの操作方法については、ArcGIS ヘルプの「スタイル コンテンツの整理」をご参照ください。
キャッシュされたマップ サービスを作成する場合、マップを単純化しても、完成したマップの描画速度は変わりません。マップの単純化が影響を与えるのはキャッシュの作成速度だけです。キャッシュの作成時間に問題がない場合は、シンボルの単純化を考慮する必要がありません。
-
ラベルではなくアノテーションを使用する: ラベルの配置を決定するには計算が必要になるので、通常はアノテーション レイヤを使用するほうが高速です。
-
ラベルを単純化する: マップにラベルが含まれている場合は、ラベルとフィーチャの重なり回避のウェイトを控えめに使用します。ハロー、オフセット、およびその他のラベル効果もパフォーマンスを低下させます。
ラベルに縮尺依存のレンダリングを設定する: マップを縮小表示するときに描画が必要なラベルの数が増えると、それだけ時間がかかります。マップ ドキュメントを調べて、小さい縮尺で表示する必要のないラベルかどうかを判断します。
-
データとマップで同じ座標系を使用する: ソース データとマップ ドキュメントの座標系が異なる場合、データをリアルタイムに投影変換する必要があり、それによってパフォーマンスが低下します。パフォーマンスを最適化するために、データとマップ ドキュメントの両方で同じ座標系を使用してください。それが不可能な場合は、リアルタイムに投影変換する必要があるレイヤに適切な地理座標変換が適用されるようにしてください。
マップをモバイル デバイスで表示する場合
[モバイル データ アクセス] ケーパビリティを使用すると、マップ サービスのコンテンツを抽出してタブレット PC や Windows Mobile デバイスで表示できます。マップがモバイル デバイスで表示されることがわかっている場合は、マップを単純にします。背景レイヤや参照レイヤでポリゴンをスムージングする、ラスタの解像度を下げるといった、データの単純化を検討します。これにより、マップの描画が高速になります。
マップを使用して、サーバ上でネットワーク解析を実行する場合
マップをサーバ上でのネットワーク解析に使用する場合は、ネットワーク データセットを参照するネットワーク解析レイヤを追加する必要があります。マップ サービスを公開する際に、[ネットワーク解析] ケーパビリティを有効にできます。これにより、マップ上でネットワーク解析タスクを実行するための Web サービスが作成されます。