ベクター タイル作成用のマップの作成

ベクター タイル

ベクター タイルには、さまざまな縮尺にわたるデータのベクター表現が含まれます。ラスター タイルとは異なり、ベクター タイルは表示デバイスの解像度に適合することができ、さまざまな用途に向けてスタイルを変更することができます。ArcGIS Online または ArcGIS Enterprise ポータルで、ベクター タイル レイヤーを共有したり、ベクター タイル パッケージを共有したりすることができます。ベクター タイル パッケージを共有すると、ポータル内に対応するベクター タイル レイヤーが自動的に作成されます。

ベクター タイル レイヤーは、マップおよびシーンに追加することもできます。シーンでは、表示レイヤーとして [2D レイヤー] のカテゴリにのみ含めることができます。ベクター タイル レイヤーまたはベクター タイル パッケージ (*.vtpk ファイル) を参照できます。

ベクター タイル作成用のマップの作成

ArcGIS Pro でマップまたはベースマップからベクター タイルを作成できますが、いくつかの制限や特別な注意事項があります。ベクター タイル作成用のマップを作成する際にまず念頭に置くことは、作成されるタイルが迅速に描画されるように、効果的で効率的なマップを作成することです。ここで概説する方法に従うと、ベクター タイルに適した対象となるマップを作成できます。詳細な手順については、「マルチスケール マップの作成」をご参照ください。

効果的なマップの作成

ベクター タイルは、マップおよびベースマップからのみ作成でき、シーンから作成することはできません。ベクター タイルを作成するためのマップでは、通常、マップ縮尺リストにあるタイル スキーマと一致するマップ縮尺を選択します。このマップは基準縮尺を使用できません。

ベクター タイルは、ポイント、ライン、ポリゴン、またはマルチポイント フィーチャ レイヤーからのみ作成できます。これらのレイヤーは、グループ レイヤーまたはサブタイプ グループ レイヤーに配置できます。マップに他のレイヤーが含まれている場合は、それらのレイヤーを [コンテンツ] ウィンドウでオフにするか、マップからすべて削除します。マップのメタデータが定義されていることを確認します。少なくとも、[説明] フィールドが指定されている必要があります。

マップのシンボル表示

ベクター タイルの作成では、マップでフィーチャがシンボル表示される方法が重要となります。マップ内のシンボルは、バージョン 8 の Mapbox GL スタイル仕様に従ってタイルに変換されます。単一シンボル個別値等級色等級シンボルストレッチでシンボル表示されたレイヤーだけがサポートされています。このような表示でないレイヤーは、シンボル表示し直すか、オフにするか ([コンテンツ] ウィンドウで)、削除します。ポイント シンボルの特定のレンダリング モードはベクター タイルでサポートされていません。これには、ストレッチ属性値を使用した色、および属性値を使用したアウトライン幅が含まれます。

複雑なシンボルシンボル効果は避けてください。シンボル内の各レイヤーは、個別にスタイル設定されます。そのため、複雑なシンボルがあると、描画する必要のある情報やタイルとスタイルに格納する必要がある情報の量が大幅に増加する可能性があります。ハッチ塗りつぶし/グラデーション塗りつぶしラインまたはポリゴンのアウトラインに沿ったマーカー、または概ねのシンボル効果を含むシンボルで、フィーチャを描画しないでください。これらは、作成されるタイルで正しくレンダリングされません。複雑な破線パターンを含むストローク シンボル レイヤーは、出力タイルで単純な破線に置き換わります。[移動] シンボル効果は例外です。これは、単純なリニア移動として正しくレンダリングされます。[移動] シンボル効果を使用して、建物に落ちる単純な影をシミュレートすることができます。

複雑なポイント シンボルの代わりに円形マーカーを使用すると、ベクター タイルでのポイント レイヤーの外観を改善できます。円形マーカーを使用してシンボル化されたポイント レイヤーは、ベクター タイル スタイルに円レイヤーとして格納されます。円レイヤーには、属性値から割り当てられる色など、スプライト アイコンでサポートされていないシンボルをレンダリングおよびサポートするスプライトは必要ありません。また、円レイヤーは、サイズが属性を使用したサイズの場合スプライト アイコンで発生するピクセレーションおよびぼかしを回避します。複数のシンボル レイヤーを含むシンボルは常にスプライトとして格納されます。

詳細については、「ベクター タイルのシンボル」をご参照ください。

注意:

ベクター タイルを生成する前に、サービスで使用されるマップ内のフォントに対する適切なライセンス権限を取得していることを確認してください。フォントは実際にはタイルに埋め込まれませんが (フォントからラスター表現が作成されます)、フォント ライセンスは Web、モバイル、デスクトップ用に別の条件を指定することがあります。

効率的なマップの作成

余分なデータ、重複データ、および過度な詳細があると、有用なベクター タイルを生成できません。効率的なマップは、各縮尺で必要なデータだけが含まれること、およびフィーチャと頂点の密度が適切であることを保証するために作成されます。これを実現するための方法がいくつかあります。

クリーンなデータの確保

効率的なマップを作成する際にまず念頭に置くことは、クリーンなデータを使用していることを確認することです。過度なフィーチャ詳細、過度なフィーチャ密度、および重複フィーチャのデータ ソースを確認します。レイヤーに対するフィルター設定を指定して、不要なフィーチャを簡単に非表示にすることができます。ただし、作成しているマップに完全に無関係なデータがある場合は、それらのフィーチャを完全に除外して新しいフィーチャクラスを作成することをお勧めします。

まず、[ジオメトリのチェック (Check Geometry)] ツールと [ジオメトリの修正 (Repair Geometry)] ツールでジオメトリ エラーを検出して修正します。詳細については、「ジオメトリのチェックと修正」をご参照ください。トポロジを使用して、データを整合チェックすることもできます。トポロジの使用については、「トポロジの編集の概要」をご参照ください。

表示可能な縮尺範囲の制限によるデータ密度の低減

縮尺を小さくするにつれて、より広範囲のデータが取得されますが、詳細を表示するスペースが狭くなります。小縮尺のマップにあまりにも多くのフィーチャ頂点があると、タイルが迅速に描画されなかったり、ひどい場合だと、そもそもタイルが作成されなかったりします。これは、特にポイント フィーチャに当てはまります。タイルの作成中、頂点を減らすために、ライン フィーチャとポリゴン アウトライン フィーチャに対して控えめな単純化が実行されますが、ポイントの密度と配置は変更されません。密度の高いポイント フィーチャ レイヤーは、必ず、それらを識別および理解できる大きな縮尺だけで描画します。縮尺を小さくするにつれて、これらのレイヤーを非表示にします。

これを管理する最も簡単な方法は、目的のベクター タイル パッケージの全縮尺範囲で適切に表示できないレイヤーに対して、表示可能な縮尺範囲を設定することです。レイヤー内の個々のシンボル クラスの表示可能な縮尺範囲を調整することで、この制限を微調整することもできます。データ重複の最小化および縮尺範囲の表示制限のための特定の方法については、「マルチスケール マップの作成」をご参照ください。

注意:

フィーチャ ビニングはデータ密度を低減させるもう 1 つの方法ですが、ビン化されたフィーチャ レイヤーを含むマップに対してベクター タイルを作成する場合、ビン ポリゴンは含まれません。結果のベクター タイルにはポイント フィーチャのみが描画されます。

ジェネラライズによるデータ密度の低減

単に特定の縮尺で一部のフィーチャを非表示にする他に、ジェネラライズ プロセスでデータ量 (視覚的な詳細とファイル サイズの両方) を制限することもできます。ジェネラライズは広義の用語で、小さな縮尺での表示に適合させるためのデータに対する変更を意味するために使用されます。ジェネラライズ処理には、何らかの基準を満たすフィーチャの詳細または実際のフィーチャの除去、フィーチャの詳細の単純化、大きな代表的フィーチャを作成するためのフィーチャの集約などが含まれます。

一部のジェネラライズは、タイル サイズを管理可能にするために、ベクター タイル生成時にデータに対して自動的に実行されます。これらは控えめな処理で、(このトピックと「マルチスケール マップの作成」トピックに記載されているガイドラインに従って) マップが適切に作成されている時は、ほとんどの場合、これらの変更は目に見える形ではわかりません。小縮尺マップにおけるフィーチャのジェネラライズ方法を詳細に制御する場合は、次のジオプロセシング ツールを 1 つ以上実行して、ベクター タイル作成前にマップの異なる縮尺範囲に対して異なるフィーチャ レイヤーを作成します。ライン フィーチャとポリゴン アウトライン フィーチャでは、これらのツールでの事前処理に関係なく、ベクター タイル作成プロセス中に、シンボル表示と縮尺 (詳細レベル) に基づいて何らかのディゾルブと単純化が実行されることを理解しておいてください。

ArcMap では、この他にも、ArcGIS Pro でマップにデータを追加する前にデータに対して実行できるジェネラライズ ジオプロセシング ツールが用意されています。

関連する属性の保持

作成されるタイルをできるだけ小さく効率的に保つために、マップからベクター タイルが作成されるときに、フィーチャの描画に必要なフィールドだけがベクター タイルに渡されます。場合によっては、迅速なレンダリングに役立つように追加のフィールドが取得されます。たとえば、等級色または等級シンボルで描画されるレイヤーには、クラス閾値に対応する整数値の新しいフィールドが含まれます。

ベクター タイルは、関連付けられているスタイル ファイルを編集してカスタマイズできるため、ベクター タイルに他のフィールドを取り込んで、このカスタマイズをサポートする場合もあります。たとえば、別の (現地の) 言語の地名ラベル文字列を含む別のフィールドを利用して、スタイル ファイル内のそれらの文字列にアクセスできます。ベクター タイルに特定のフィールドを取り込むには、レイヤーのフィールド ビューでそのフィールドをハイライトします。ObjectID フィールドをハイライトすると、フィーチャレベル ID がベクター タイルに追加され、タイルそのものからポップアップを表示できるようになります。ベクター タイル レイヤーを表示すると、関連 Web フィーチャ レイヤーを使用してポップアップを有効にすることもできます。

注意:

タイルに属性を追加すると (ポップアップをサポートする ObjectID など)、サイズが大幅に大きくなることがあります。不要なフィールドをハイライトしないでください。

  1. [コンテンツ] ウィンドウでフィーチャ レイヤーをハイライトします。
    リボンに [フィーチャ レイヤー] コンテキスト タブが表示されます。
  2. [フィーチャ レイヤー] の下にある [データ] タブの [設計] グループで、[フィールド] をクリックしてレイヤーのフィールド ビューを開きます。
  3. タイル作成時にベクター タイルに追加する任意のフィールドで、[ハイライト] 列のチェックボックスをオンにします。

ベクター タイルの作成

マップが完成したら、ベクター タイルを作成できます。これには、そのマップを Web レイヤーとして共有します。

  1. [コンテンツ] ウィンドウでそのマップをハイライト表示します。
  2. [共有] タブの [共有] グループで、[Web レイヤー] Web レイヤー メニューをクリックした後、[Web レイヤーの公開] Web レイヤーの公開 をクリックします。
  3. [Web レイヤーとして共有] ウィンドウの [一般] タブで、[レイヤー タイプ] 見出しの下にある [ベクター タイル] を選択します。
  4. [構成] タブと [コンテンツ] タブで、ベクター タイルの詳細を指定します。詳細については、下記の説明をご参照ください。

また、[ベクター タイル パッケージの作成 (Create Vector Tile Package)] ツールを使用することもできます。このツールでは、マップまたはベースマップ、から、完全なベクター タイル パッケージ (*.vtpk ファイル) が生成されます。その後、ArcGIS Online または ArcGIS Enterprise でベクター タイルを共有および使用できます。

Web レイヤーを公開してベクター タイルを作成する場合でも、ジオプロセシング ツールを使用してベクター タイルを作成する場合でも、作成の前にいくつかの意思決定を下す必要があります。

タイル スキーマの遵守

マップからベクター タイルが生成される際、タイル スキーマによって定義されている縮尺ごとに、正方形のタイルの連続メッシュが作成されます。このスキーマでは、縮尺が 2 倍ずつ推移する必要があります (2 のべき上の推移とも呼ばれます)。

タイル形式の選択

ベクター タイルの生成を管理できる 2 つの方法があります。タイルの標準的な連続メッシュは、各タイルに含まれるフィーチャの密度に関係なく、各縮尺レベルで生成できます。このタイプのメッシュが生成されるのは、[タイル形式][フラット] に設定されている場合です。

タイルのサイズを最小化するさらに最適化された方法は、インデックス ポリゴンを作成して保存することです。この場合、フィーチャの密度が低すぎてコンテンツが大縮尺のタイルにオーバーズームされてしまう場合を認識できるロジックに従って、タイルが作成されます。また、最小限のフィーチャ詳細を含むタイルを、より大きな縮尺で再利用して再描画し、処理とストレージを節約できる場合は、より小さなタイル (より大きな縮尺) を作成、格納、要求、描画する必要はありません。たとえば、縮尺範囲内の小縮尺の大きなタイルが、海のポリゴンだけを表示するとします。このような最小限のフィーチャ詳細のタイルは、大縮尺でも簡単に使用できるため、大縮尺に向けたより小さなタイル、より小さくほとんど空のタイルを生成する必要がなくなります。この最適化されたタイル作成方法が使用されるのは、[タイル形式][インデックス構築済み] に設定されている場合 (デフォルト設定の場合) です。

インデックス ポリゴンの使用

最適化されたインデックス構築済みのタイル形式を使用する場合は、タイルの事前作成済みインデックス ポリゴン セットを指定できます。このポリゴン セットを作成するための最適な方法は、[ベクター タイル インデックスの作成 (Create Vector Tile Index)] ツールを使用することです。

まず、ベクター タイルの作成に使用するマップに対してこのツールを実行します。次に、出力ポリゴン フィーチャクラスを [インデックス ポリゴン] として、使用します。[ベクター タイル パッケージの作成 (Create Vector Tile Package)] ツールでは、これはオプションのパラメーターであるため、インデックス構築済みタイル形式の使用時に空白のままにしておくと、処理中に、最適化されたインデックス ポリゴン セットが動的に作成されます。インデックス ポリゴンは、ツールの終了後に破棄されます。

同じマップを複数回処理する場合や、将来的に更新を予定している場合は、[ベクター タイル インデックスの作成 (Create Vector Tile Index)] ツールで、インデックス ポリゴン セットを生成して保存することをお勧めします。既存のインデックス ポリゴンを使用すると、タイル生成プロセスが高速化するだけでなく、高速な描画に適したサイズのタイルが作成されます。また、タイル作成前にデータのフィーチャ密度を解析するために、これらのインデックス ポリゴンを個別に描画するのも良い方法です。

タイルの縮尺範囲の選択

[最小キャッシュ縮尺] および [最大キャッシュ縮尺] パラメーターで縮尺を指定して、パッケージで作成されるベクター タイルの縮尺範囲を制限できます。選択する縮尺は、タイル スキーマに定義されている縮尺でなければなりません。

コンテンツを効率的に共有するために、マルチスケール マップからベクター タイルを作成することをお勧めします。これらのタイルは、ダウンロードが高速で、高解像度で鮮明に表示され、回転時に適切に反応し、更新しやすく、カスタマイズ可能です。ベクター タイルを最大限に活用するには、描画および格納する必要がある余分なフィーチャと詳細を制限する選択によって、マップを効果的に作成します。

関連トピック