スタンダード ビルダーは、ジオメトリック ネットワークを表現する GIS フィーチャからすばやく簡単にスケマティック ダイアグラムを生成するように構成されたビルダーです。この演習では、スケマティック ダイアグラム テンプレートを作成し、サンプルの ElectricNetwork_Net ジオメトリック ネットワークからダイアグラムを生成するように構成する方法を学びます。このジオメトリック ネットワークは、Schematics のチュートリアル データに含まれている ElecDemo チュートリアル ジオデータベースに保存されています。演習 1 で作成した SchematicBuilderSamples スケマティック データセットを使用して、構成を行います。
- C:\ArcGIS\ArcTutor\Schematics\TutorialSchematicDB ジオデータベースに保存されている SchematicBuilderSamples スケマティック データセットを編集します。そのためには、ArcCatalog を使用してこのデータベースを参照し、データセットを右クリックして、[編集] メニュー オプション を選択します。
スタンダード ビルダーに基づくスケマティック ダイアグラム テンプレートを作成する
第 1 段階では、ジオメトリック ネットワーク データからダイアグラムを生成するときに使用するスケマティック ダイアグラム テンプレートを作成します。
- データセット エディターのツリーで [SchematicBuilderSamples] エントリを右クリックし、[新規スケマティック ダイアグラム テンプレート] をクリックします。
エディター ウィンドウの右側に、新しいスケマティック ダイアグラム テンプレートの [プロパティ] タブが自動的に表示されます。 このタブには、さまざまなパラメーターとそのデフォルト値が表示されます。デフォルトのスケマティック ビルダーは、スタンダード ビルダーです。ジオメトリック ネットワーク データを処理するこのダイアグラム テンプレートでは、このビルダーを指定します。
- [名前] ボックスに、「DiagramsFromGeometricNetwork」と入力します。
- 他のパラメーターはデフォルトで必要な値に設定されているので、[OK] をクリックします。
データセット エディターのツリーに、DiagramsFromGeometricNetwork ダイアグラム テンプレートのエントリが自動的に表示されます。エディター ウィンドウの右側に、[関連付け]、[レイアウト]、および [ルール] という 3 つのタブが新たに表示されます。
この手順が完了すると、スケマティック データセット エディターは次のようになります。
フィーチャ レイヤーからのインポートによってスケマティック フィーチャクラスを作成する
スケマティック ダイアグラム テンプレートは、想定される一連のスケマティック フィーチャを含む特定のタイプのスケマティック ダイアグラムを生成することを目的として作成されます。次の段階では、DiagramsFromGeometricNetwork ダイアグラム テンプレートに基づくダイアグラムに含まれると想定されるスケマティック フィーチャクラスを指定します。全体または一部が GIS フィーチャに基づくダイアグラムを生成するときに使用するスケマティック ダイアグラム テンプレートには、[フィーチャ レイヤーからインポート] という簡単な機能があります。この機能を使用すると、スケマティック フィーチャクラスをすばやく作成することができます。[フィーチャ レイヤーからインポート] 機能は、GIS フィーチャが追加されたマップ ドキュメントに保存されているフィーチャ レイヤーから実行されます。この機能では、スケマティック フィーチャクラスが作成されるだけでなく、デフォルトのスケマティック レイヤー プロパティも同時に設定されます。そのため、生成されたダイアグラムに含まれるスケマティック フィーチャは、関連する GIS フィーチャがマップ ドキュメントに表示されるのと同様に表示されます。
- データセット エディターのツリーで [DiagramsFromGeometricNetwork] ダイアグラム テンプレート エントリを右クリックし、[フィーチャ レイヤーからインポート] をクリックします。
[フィーチャ レイヤーからインポート] ダイアログ ボックスが開きます。
- [マップまたはレイヤー ファイル] エリアの参照ボタンをクリックします。
[インポートするマップまたはレイヤー ファイルを選択] ダイアログ ボックスが開きます。
- C:\ArcGIS\ArcTutor\Schematics\Schematics_Configuration\GeometricNetwork_Data フォルダーに保存されている [MapToImport MXD] ドキュメントを参照し、選択します。
このマップ ドキュメントには、ElectricNetwork フィーチャ データセットのフィーチャクラスに関連するフィーチャ レイヤーが含まれています。それらの GIS フィーチャクラスは、C:\ArcGIS\ArcTutor\Schematics\Schematics_In_ArcMap\ElecDemo ジオデータベースに保存されています。
- [追加] をクリックします。
[インポートするマップまたはレイヤー ファイルを選択] ダイアログ ボックスが閉じます。
次のスクリーン キャプチャのように、[フィーチャ レイヤーからインポート] ダイアログ ボックスに自動的に情報が入力されます。指定したマップ ドキュメントの [コンテンツ] ウィンドウ内のすべてのフィーチャ レイヤーが [インポートするフィーチャ レイヤーを選択] リストに表示されます。ElectricNetwork_Net ジオメトリック ネットワークに含まれるアイテムに関連するアイテムのチェックボックスは、デフォルトでオンになります。
- [OK] をクリックします。
インポート プロセスが完了すると、[インポートするフィーチャ レイヤーを選択] リストでオンにした各スケマティック フィーチャ レイヤーについて、スケマティック フィーチャクラスがスケマティック データセット エディターに新たに表示されます。[ProtectionDeviceBank]、[TransformerBank]、[Primaryline]、および [SecondaryLine] の各スケマティック フィーチャクラス アイテムを展開すると、インポートされたこれらのスケマティック フィーチャクラスについて、このプロセスでスケマティック属性が自動的に作成されていることがわかります。これらの属性は、インポートしたマップ ドキュメントで関連する GIS フィーチャのラベル表示または分類に使用されているものと同じフィールドに関連しています。
スケマティック データセット エディターのツリーで [データ ソース] エントリを展開すると、このプロセスで ElecDemo という新しいスケマティック データ ソースが自動的に追加されていることがわかります。このデータ ソースは、インポートしたマップ ドキュメントに含まれている GIS データへの接続に使用されるデータ ソースです。
- [保存] をクリックします。
これで、このマップ ドキュメント、または同じ GIS データを含む他のマップで指定されている選択セットまたはトレース結果からダイアグラムを生成するためのスケマティック データセットの構成が完了しました。
- スケマティック データセット エディターを閉じます。
関連する GIS フィーチャからスケマティック ダイアグラムを生成する
ここでは、新しく作成した DiagramsFromGeometricNetwork ダイアグラム テンプレートに基づく最初のスケマティック ダイアグラムを生成します。
- ArcMap を起動します。
- C:\ArcGIS\ArcTutor\Schematics\Schematics_Configuration\GeometricNetwork_Data フォルダーに保存されている MapToImport MXD ドキュメントを読み込みます。
- メイン メニューの [ブックマーク] ドロップダウン メニューをクリックし、[First GIS Features Set] をクリックします。
- [四角形による選択] ボタン をクリックし、次のスクリーン キャプチャのように一連の GIS フィーチャを選択します。
- [スケマティック] ツールバーの [スケマティック ダイアグラムの新規作成] ボタン をクリックします。
[スケマティック ダイアグラムの新規作成] ダイアログ ボックスが開きます。マップに表示されている GIS データは ElecDemo ジオデータベースに保存されており、このジオデータベースにはすでにスケマティック データセットがあるので、現在選択されている GeoSchematic ダイアグラム テンプレートはこのスケマティック データセットに基づいています。ここでは、新しい SchematicBuilderSamples スケマティック データセットで構成した新しい DiagramsFromGeometricNetwork ダイアグラム テンプレートからダイアグラムを生成するので、まず、このスケマティック データセットを指定する必要があります。
- [スケマティック データセットまたはフォルダー] 参照ボタン をクリックします。
[スケマティック データセット、またはスケマティック フォルダーを選択] ダイアログ ボックスが開きます。
- 演習 1 で C:\ArcGIS\ArcTutor\Schematics に作成した [TutorialSchematicDB] ジオデータベースを参照し、選択します。
- このジオデータベースをダブルクリックし、[SchematicBuilderSamples] スケマティック データセットを選択します。
- [追加] をクリックします。
次のスクリーン キャプチャのように、[スケマティック ダイアグラムの新規作成] ダイアログ ボックスに自動的に情報が入力されます。 [スケマティック ダイアグラムのテンプレート] ドロップダウン リストでは、このスケマティック データセットに含まれている唯一のスケマティック ダイアグラム テンプレート (DiagramsFromGeometricNetwork) が選択されます。
- [スケマティック データセットまたはフォルダー] 参照ボタン をクリックします。
- [スケマティック ダイアグラム名] フィールドに「FirstDiagram_FromSelection」と入力します。
この手順が完了すると、[スケマティック ダイアグラムの新規作成] ダイアログ ボックスの内容は、次のスクリーン キャプチャのようになります。
- [OK] をクリックします。
生成プロセスが開始されて、新しく生成されたダイアグラムが新しいデータ フレームに表示され、自動的にマップ ドキュメントに追加されます。
結合を使用してスケマティック フィーチャを描画し、ラベルを表示する
生成したスケマティック ダイアグラムに含まれているスケマティック フィーチャは、デフォルトのスケマティック レイヤー プロパティで表示されます。これらのデフォルト レイヤー プロパティは、この演習の最初のセクションで、[フィーチャ レイヤーからインポート] コマンドを使用してスケマティック ダイアグラム テンプレートを構成したときに自動的に設定されたものです。インポート プロセスで作成されたスケマティック属性に基づいているので、スケマティック ダイアグラム レイヤーを構成するフィーチャ レイヤーのレイヤー プロパティは、インポートしたジオメトリック フィーチャ レイヤーに指定されているものとまったく同じです。
ただし、スケマティック フィーチャは標準フィーチャなので、スケマティック レイヤー内の各フィーチャ レイヤーのほとんどの部分は、[レイヤー プロパティ] ダイアログ ボックスで他のレイヤーと同様に制御することができます。特に、この演習のようにジオメトリック ネットワークのデータを処理する場合、スケマティック フィーチャでは関連する実際の GIS フィーチャのオブジェクトが追跡されるので、スケマティック フィーチャ レイヤーに結合を構成することで、関連する GIS 属性を取得できます。その後、これらの GIS 属性を使用すると、スケマティック フィーチャクラスでスケマティック属性を特別に構成しなくても、スケマティック フィーチャを描画し、ラベルを表示することができます。ここでは、一部のフィーチャ レイヤーに結合を追加し、結合された属性を使用することによって、生成されたスケマティック ダイアグラムのレイヤー プロパティを変更して、スケマティック フィーチャを描画し、ラベルを表示します。
関連する GIS フィーチャから取得した属性値に従って、スケマティック フィーチャを描画する
次の手順では、ServiceLocation スケマティック フィーチャ レイヤーに結合を構成して、関連する GIS フィーチャから属性を取得し、これらの GIS 属性値を使用して ServiceLocation スケマティック フィーチャを描画する方法を説明します。
- ArcMap の [コンテンツ] ウィンドウで、FirstDiagram_FromSelection スケマティック レイヤーの下にある [ServiceLocation] フィーチャ レイヤーを右クリックします。
- [プロパティ] メニュー オプションを選択します。
[レイヤー プロパティ] ダイアログ ボックスが開きます。
- [属性の結合とリレート] タブをクリックします。
- 左側の [結合] セクションで [追加] をクリックします。
[結合] ダイアログ ボックスが開きます。
- [結合に利用する値を持つフィールド] ドロップダウン リストから [UOID] を選択します。
UOID は、Schematics で実際のフィーチャのオブジェクト ID が保存されるフィールドです。
- [結合対象レイヤーまたはテーブル] ドロップダウン リストの横にある参照ボタンをクリックします。
[追加] ダイアログ ボックスが開きます。
- C:\ArcGIS\ArcTutor\Schematics\Schematics_In_ArcMap\ElecDemo ジオデータベースに格納されている ElectricNetwork フィーチャ データセットに移動し、[ServiceLocation] フィーチャクラスを選択します。
ServiceLocation GIS フィーチャクラスは、ServiceLocation スケマティック フィーチャクラスと関連付けられています。
- [追加] ボタンをクリックします。
- [結合のマッチングに利用するフィールド] ドロップダウン リストから [OBJECTID] を選択します。
これで、スケマティック フィーチャクラスから実際の GIS フィーチャクラスへの結合が作成されました。
- [OK] をクリックします。
[結合] ダイアログ ボックスが閉じます。
- [結合に利用する値を持つフィールド] ドロップダウン リストから [UOID] を選択します。
- 次に、結合された GIS 属性の 1 つを使用して、ダイアグラムに ServiceLocation スケマティック フィーチャを描画します。
- [シンボル] タブをクリックします。
- [表示] セクションで、[カテゴリ] の下にある [個別値] をクリックします。
- [値フィールド] ドロップダウン リストから [ONWHAT] を選択します。
このフィールドは、ServiceLocation GIS フィーチャクラスとの結合によって取得されたものです。[値フィールド] リストには、このフィーチャクラスのすべての GIS 属性が表示されます。
- [すべての値を追加] ボタンをクリックします。
- [Building] の後に表示されるすべての値を選択し、[削除] ボタンをクリックします。
「Building」という値のみが残ります。
- 「建物」という値を持つ ServiceLocation スケマティック フィーチャとその他の値を持つ ServiceLocation スケマティック フィーチャを表すシンボルを設定します。
- [適用] をクリックし、[レイヤー プロパティ] ダイアログ ボックスを閉じます。
結合によって、関連する GIS フィーチャから取得した ONWHAT 属性の値に基づいて、ServiceLocation スケマティック フィーチャが特定のシンボルで表示されます。
関連する GIS フィーチャから取得した属性値に従って、スケマティック フィーチャにラベルを表示する
ここでは、結合された別の GIS 属性を使用して、ServiceLocation スケマティック フィーチャにラベルを表示します。
- ArcMap の [コンテンツ] ウィンドウで、FirstDiagram_FromSelection スケマティック レイヤーの下にある [ServiceLocation] フィーチャ レイヤーを右クリックします。
- [プロパティ] メニュー オプションを選択します。
[レイヤー プロパティ] ダイアログ ボックスが開きます。
- [ラベル] タブをクリックします。
- [このレイヤーのラベルを表示] チェックボックスをオンにします。
- [ラベル フィールド] ドロップダウン リストから [PhaseCode] を選択します。
このフィールドは、ServiceLocation GIS フィーチャクラスとの結合によって取得されたものです。[ラベル フィールド] リストには、このフィーチャクラスのすべての GIS 属性が表示されます。
[ラベル] タブの内容は、次のスクリーン キャプチャのようになります。
- [OK] をクリックします。
- [適用] をクリックし、[レイヤー プロパティ] ダイアログ ボックスを閉じます。
結合によって、関連する GIS フィーチャから取得した PhaseCode 属性の値に基づいて、ServiceLocation スケマティック フィーチャにラベルが表示されます。
関連するスケマティック フィーチャから取得した属性値を使用して、ServiceLocation スケマティック フィーチャを描画し、ラベルを表示しました。現時点では、このカスタマイズは FirstDiagram_FromSelection サンプル ダイアグラムのみに影響します。ただし、必要に応じて、現在構成されているレイヤー プロパティを、関連するダイアグラム テンプレートのデフォルトのスケマティック レイヤー プロパティとして指定して、そのテンプレートに基づくすべてのダイアグラムが同じように表示されるようにすることができます。このような構成の詳細については、詳細構成チュートリアルの最初の演習の「ダイアグラム テンプレートのデフォルトとして使用するレイヤー ファイルを作成する」をご参照ください。