スケマティック ダイアグラムのレイアウト
スケマティック レイアウト アルゴリズムは、アクティブなスケマティック ダイアグラムのコンテンツ全体またはその一部に適用することができます。
適用可能なレイアウト アルゴリズムには、次の 3 つのタイプがあります。
- 地理模式図
- 模式図
- 階層図
また、複数のスケマティック レイアウト アルゴリズムの組み合わせである、コンポジット レイアウト アルゴリズムという特別なスケマティック レイアウト アルゴリズムを指定することもできます。
スケマティック レイアウト アルゴリズムのパラメータと実行に関連するコマンドとツールは、すべて [スケマティック エディタ] ツールバーから使用することができます。これらのコマンドとツールは、アクティブなスケマティック ダイアグラムで編集セッションを開始すると有効になります。
スケマティック レイアウト アルゴリズムの適用
スケマティック レイアウト アルゴリズムは、アクティブなスケマティック ダイアグラム、つまり [アクティブ ダイアグラム] リストから選択したスケマティック ダイアグラムに適用されます。このアクティブ ダイアグラムのコンテンツに対してスケマティック レイアウト アルゴリズムを実行するには、まずそのアクティブ ダイアグラムで編集セッションを開始する必要があります。アクティブなスケマティック ダイアグラムでスケマティック フィーチャが選択されている場合、選択されているフィーチャにのみアルゴリズムが適用されます。アクティブなスケマティック ダイアグラムでスケマティック フィーチャが選択されていない場合は、ダイアグラム全体にアルゴリズムが適用されます。
スケマティック レイアウト アルゴリズムは通常、定義済みのパラメータに基づいて実行されます。パラメータ値は、[スケマティック レイアウト アルゴリズム] ダイアログ ボックスで編集することができます。
複数のスケマティック レイアウトを同じスケマティック ダイアグラムまたは同じダイアグラム内の異なる部分に適用できます。
コンポジット レイアウト アルゴリズムでは、アクティブなスケマティック ダイアグラムに対する単一操作として組み合わせる一連のスケマティック レイアウト アルゴリズムを指定できます。
以下に、アクティブなスケマティック ダイアグラムへのスケマティック レイアウト アルゴリズムの適用方法を詳しく説明します。
- [アクティブ ダイアグラム] リストで対象のダイアグラムをクリックします。
- [スケマティック エディタ] ドロップダウン メニューで [ダイアグラムの編集を開始] をクリックします。
- スケマティック レイアウトを適用するスケマティック フィーチャの選択セットを定義する場合は、アクティブなダイアグラムが格納されているデータ フレームをアクティブにし、[スケマティック フィーチャの編集/移動] ボタン をクリックします。
- [レイアウト タスク] リストで、必要なレイアウト アルゴリズムをクリックします。
- 階層レイアウト アルゴリズムで始点ノードと終点ノードを指定する場合は、[始点の設定] ツールと [終点の設定] ツールをそれぞれ使用します。これにより、指定した始点ノードから始まって指定した終点ノードで終わる階層レイアウトが生成されます。注意:
[始点の設定] ツールと [終点の設定] ツールは、このような特定の始点ノードと終点ノードを考慮することができる階層レイアウトでのみ使用可能です。
- 選択したスケマティック レイアウトでパラメータを指定する場合は、[レイアウト アルゴリズム プロパティ] ボタン をクリックして、[スケマティック レイアウト アルゴリズム] ダイアログ ボックスを開き、必要なパラメータ値を確認または変更します。
- [OK] をクリックして [スケマティック レイアウト アルゴリズム] ダイアログ ボックスを閉じます。
新しいパラメータ値を指定した場合は、現在の ArcMap セッションで、選択したスケマティック レイアウト アルゴリズムを同じダイアグラム テンプレートに基づく任意のスケマティック ダイアグラムに適用するときに、アルゴリズムで新しいパラメータ値が考慮されます。この設定は、アルゴリズムのデフォルトのパラメータに戻すか、他のパラメータを指定するまで維持されます。
- [レイアウト タスクの適用] ボタン をクリックして、選択したスケマティック レイアウト タスクをアクティブなスケマティック ダイアグラムに適用します。
スケマティック レイアウトの可用性とレイアウトのデフォルト パラメータの指定
スケマティック レイアウト アルゴリズムの可用性とパラメータのデフォルト値は、スケマティック ダイアグラム テンプレートで管理および指定することができます。この管理にはスケマティック データセット エディタを使用し、あらゆるスケマティック ダイアグラム テンプレートで使用可能な [レイアウト] タブを使って保存する必要があります。この [レイアウト] タブには、コンピュータに登録されているすべてのスケマティック レイアウト アルゴリズムが表示され、各アルゴリズムが特定のアイテムで表現されます。各アルゴリズム アイテムでは、以下の内容について指定できます。
- そのスケマティック レイアウト アルゴリズムを ArcMap の [レイアウト タスク] ドロップダウン リストに表示するかどうか
- 関連付けられたプロパティ タブのデフォルトのパラメータ値として設定する値
- [スケマティック レイアウト アルゴリズム プロパティ] タブを編集可能にするかどうか
これらの構成は、そのスケマティック ダイアグラム テンプレートに基づくすべてのダイアグラムに適用されます。特定のダイアグラム テンプレートに関して、あるアルゴリズムのプロパティが編集可能な場合、デフォルトのパラメータ値を指定していても、必要に応じて他のパラメータ値を指定できます。指定したパラメータ値は、選択したスケマティック レイアウト アルゴリズムのデフォルトのパラメータに戻すか、他のパラメータを指定するまで、現在の ArcMap セッション中はそのアルゴリズムで継続して使用されます。
地理模式図レイアウト アルゴリズム
地理模式図レイアウト アルゴリズムは、スケマティック ダイアグラム内に近接して表示されている各スケマティック フィーチャを、それらのフィーチャの位置をできる限り維持しながら、切り離す目的で使用します。フィーチャの相対的な空間位置は維持されますが、参照系は削除されます。拡大/縮小表示を行わなくても、ビューアまたはプロットに詳細情報を表示することができます。地理模式図レイアウト アルゴリズムの目的とする効果は、ノード フィーチャ間の元の空間リレーションシップをある程度維持しながら、ノード フィーチャの間隔を正規化することです。
地理模式図レイアウト アルゴリズムは、スケマティック フィーチャの現在の位置を実行中に取得するため、このアルゴリズムは通常、スケマティック フィーチャが地理的に配置されたスケマティック ダイアグラムに適用しますが、地理的に配置されていないスケマティック フィーチャを含むスケマティック ダイアグラムにも適用できます。
スケマティック ダイアグラムに適用できる地理模式図レイアウト アルゴリズムには、次の 8 種類があります。
地理模式図 - 角度方向スケマティック レイアウト アルゴリズム
地理模式図 - 角度方向レイアウト アルゴリズムは、ダイアグラムのスケマティック リンクを指定した整列方向に段階的に移動します。スケマティック リンクごとに、その現在の方向が考慮され、指定した方向のうち望ましい方向に最も近いものが検索され、その方向にリンクが移動されます。
地理模式図 - 圧縮スケマティック レイアウト アルゴリズム
地理模式図 - 圧縮レイアウト アルゴリズムは、スケマティック ダイアグラムに含まれているスケマティック フィーチャを、相対的な位置を維持しながらダイアグラムの中心に向かって圧縮します。このアルゴリズムは、たとえば送電設備業種などで、ネットワークの規模が何千マイルにもおよぶために、地理上の実際の位置を示すと、見づらく、わかりにくい場合に役立ちます。
地理模式図 - エネルギー方向スケマティック レイアウト アルゴリズム
地理模式図 - エネルギー方向レイアウト アルゴリズムは、物理的相似法を用いて、エネルギーを局所的に最小化する力学系のグラフを描画します。力学系の平衡状態(各スケマティック ノード上で合力がゼロになる場所)が検索されます。このアルゴリズムでは、スケマティック ダイアグラムに含まれているループが強調される傾向があるため、一般に、上下水道管やガス管などの、網の目のように細かなネットワークを管理するオペレータが使用します。
地理模式図 - 線形配置スケマティック レイアウト アルゴリズム
地理模式図 - 線形配置レイアウト アルゴリズムは、アクティブなスケマティック ダイアグラムでほぼ重なり合って表示されているスケマティック ノードの間隔を広げます。スケマティック ノードは、接続されているスケマティック リンク上を直線的に移動します。この移動は、ノードの現在の位置と、[線形配置] タブで設定されているパラメータによって制御されます。地理模式図 - 線形配置レイアウト アルゴリズムは、ターゲット ノードに接続されているスケマティック リンクに対して機能します。このアルゴリズムでは、このようなノードの接続リンクの数が考慮され、スケマティック リンクのパスを維持できます。
このレイアウト アルゴリズムは上下水道管やガス管を表すのに特に便利ですが、その他の業種でも利用できます。
地理模式図 - 空間配置スケマティック レイアウト アルゴリズム
地理模式図 - 空間配置レイアウト アルゴリズムは、アクティブなスケマティック ダイアグラムでほぼ重なり合って表示されているスケマティック ノードを、それぞれのノードの現在の位置と [地理模式図 - 空間配置] タブに現在設定されているパラメータに従って切り離します。
地理模式図 - リンク方向にノード回転スケマティック レイアウト アルゴリズム
地理模式図 - リンク方向にノード回転レイアウト アルゴリズムは、スケマティック ノードを表すシンボルの回転を、接続されているリンクの方向に基づいて変更します。ノードは、指定した角度に基づいて回転します。必要に応じて、スケマティック リンクに定義されているフロー方向を考慮することもできます。ダイアグラム内のスケマティック フィーチャを手動で移動したり、別のスケマティック レイアウト アルゴリズムを実行するたびに、地理模式図 - リンク方向にノード回転レイアウト アルゴリズムが自動的に実行されるようにするオプションも設定できます。
アルゴリズムの実行中に計算された回転角度は、スケマティック ダイアグラム内のノードを実装する各スケマティック フィーチャクラスの [ROTATION] フィールドに格納されます。スケマティック ノードをシンボル表示して、計算された角度の値に従って自動的に回転させるには、この [ROTATION] フィールドがオンになっていなければなりません。ArcMap で、対象のノード フィーチャ レイヤに関連する [レイヤ プロパティ] ダイアログ ボックスの [高度な設定] ボタン → [回転] をクリックします。表示される [回転] ダイアログ ボックスで、[以下のフィールド値の角度で点を回転] の値として [回転] を選択します。また、割り当てられているシンボルが必要な方向(東から反時計回り)に回転するように、[数学] オプションをオンにする必要があります。
[レイアウト タスクの適用] ボタン は、スケマティック ダイアグラム レイヤ内の 1 つ以上のフィーチャ レイヤで [ROTATION] フィールドがオンになっている場合にのみ使用できます。
地理模式図 - 部分重複リンク スケマティック レイアウト アルゴリズム
地理模式図 - 部分重複リンク レイアウト アルゴリズムは、アクティブなスケマティック ダイアグラム内の完全に、またはほぼ重なり合っている、同一線上にあるスケマティック リンクまたはリンクの一部(リンク セグメント)を検出し、[部分重複リンク] タブに設定されているパラメータに従って切り離します。
このアルゴリズムは、互いに近接し、ほぼ平行でほぼ同じ長さであるリンク セグメント部分を検出してグループ化します。スケマティック ダイアグラム内の各セグメント セットは、セグメント セットの中央から左右に等間隔で配置されます。各セグメントの間隔は、[部分重複リンク] タブで指定されているオフセット パラメータの値と等しくなります。このプロセスでは、セグメント同士の左右の位置関係が維持されるように、セグメントの向きは元の状態のままとなります。
重複リンクの切り離しスケマティック レイアウト アルゴリズムは、同じ原点ノードと端点ノードに接続するスケマティック リンクにのみ作用しますが、地理模式図 - 部分重複リンク アルゴリズムはすべてのスケマティック リンクおよびリンク部分に作用します。
地理模式図 - 初期位置スケマティック レイアウト アルゴリズム
地理模式図 - 初期位置レイアウト アルゴリズムは、アクティブなスケマティック ダイアグラムに含まれるすべてのスケマティック フィーチャの初期ジオメトリを復元します。各スケマティック ノードが地理上の位置に配置され、スケマティック リンク上に最初に配置された頂点が復元されます。
このスケマティック レイアウト アルゴリズムは、パラメータなしで機能します。
模式図レイアウト アルゴリズム
スケマティック ダイアグラムへの模式図レイアウト アルゴリズムの適用時には、ネットワークの接続は維持されますが、それぞれのスケマティック ノードの相対的な位置を決定する一連のルールに従って各ノードが配置され、ノード間の間隔を正規化するパターン化されたレイアウトが作成されます。また、近接するノードの周囲の空白の量が管理され、最小化されます。ノードの相対的な位置は維持されず、参照系は削除されます。空間座標値は、レイアウト アルゴリズムによって生成される座標値に置き換えられます。
スケマティック ダイアグラムに適用できる模式図レイアウト アルゴリズムには、次の 5 種類があります。
グリッド スケマティック レイアウト アルゴリズム
グリッド レイアウト アルゴリズムは、アクティブなスケマティック ダイアグラム内のスケマティック ノードを磁気グリッドを基準にしてレイアウトします。1 つのグリッド セルにはノードが 1 つだけ対応するように、ノードの現在の位置を基準にして、[グリッド] タブで設定されているパラメータに従ってノードが移動します。スケマティック ノードは、データベースから読み込まれた順序で、左から右、上から下にグリッドに沿って配置されます。このアルゴリズムは、グリッド ポイントを使用してレイアウトを作成してスケマティック ノードを移動するときに使用します。
メイン リング スケマティック レイアウト アルゴリズム
メイン リング レイアウト アルゴリズムは、アクティブなスケマティック ダイアグラム内のスケマティック ノードとスケマティック リンクをメイン リングの周囲に配置し、検出されたメイン リングのノードに接続しているスケマティック ノードとスケマティック リンクを [メイン リング] タブで設定されているパラメータに従って階層化します。メイン リングとは、スケマティック ダイアグラムで最も多くのリンクから成るループです。スケマティック ダイアグラムにループがない場合、メイン リング レイアウト アルゴリズムを実行しても効果がありません。このアルゴリズムは通常、通信業界で使用されます。
直交配置スケマティック レイアウト アルゴリズム
直交配置レイアウト アルゴリズムは、アクティブなスケマティック ダイアグラム内のスケマティック ノードとスケマティック リンクを、[直交配置] タブで設定されているパラメータに従って直交配置します。アクティブなダイアグラムで始点ノードが設定されている場合、この始点ノードを基準にしてレイアウトが計算されます。始点ノードは一番下に配置され、その他のスケマティック ノードとスケマティック リンクはこのノードから直交方向に配置されます。
相対主軸スケマティック レイアウト アルゴリズム
相対主軸アルゴリズムは、アクティブなスケマティック ダイアグラム内のスケマティック ノードとスケマティック リンクを、接続されているすべてのリンクが同じ属性値を持つ平行な直線に沿って配置し、これらの直線からの分岐を配置します。直線に対する分岐の方向と、最初の距離に比例し、相互に相対的な距離は維持されます。このアルゴリズムは、[相対主軸] タブに現在設定されているパラメータに従って処理されます。このアルゴリズムは、直線のどちらか一方(主軸)が始まる始点ノードから処理を開始することができます。このルート スケマティック ノードを指定するには、[始点の設定] ツール を使用します。始点ノードを指定しないと、スケマティック ノードのいずれかが自動的に始点ノードに設定されます。
このアルゴリズムはあらゆる種類のデータに適用できますが、線路を表現するような平行線が含まれるダイアグラムで使用すると、特に便利です。
重複リンクの切り離しスケマティック レイアウト アルゴリズム
重複リンクの切り離しレイアウト アルゴリズムは、同じ原点ノードと端点ノードに接続するスケマティック リンクに作用します。このアルゴリズムは次の 2 つのタイプのリンクに適用されます。
- 原点ノードと端点ノードが同じでパスがまったく同じであるスケマティック リンク。頂点の数が同じですべての頂点が重なっているため、スケマティック リンクも完全に重なっています。
- 原点ノードと端点ノードは同じであるがリンク パスが異なるスケマティック リンク。
どちらの場合も、[重複リンクの切り離し] タブで設定されているパラメータに従って、検出されたリンクが切り離されます。このタブにある [原点リンクを使用] チェックボックスを使用して操作の対象を切り替えることができます。
頂点削減スケマティック レイアウト アルゴリズム
頂点削減レイアウト アルゴリズムは、頂点があるセグメントがなす角度およびリンクを構成する各セグメントの長さと最も長いセグメントの長さの比を基準にして、スケマティック リンク上に表示されている頂点を削除します。セグメントの長さまたは付随するセグメントがなす角度に基づく条件が確認されない場合、頂点は維持されます。
階層図レイアウト アルゴリズム
階層図レイアウト アルゴリズムは、スケマティック ダイアグラム内のスケマティック フィーチャを階層化して配置するスケマティック レイアウトです。スケマティック ダイアグラムに適用できる階層図レイアウト アルゴリズムには、次の 4 種類があります。
階層図 - コンパクト ツリー スケマティック レイアウト アルゴリズム
階層図 - コンパクト ツリー レイアウト アルゴリズムは、アクティブなスケマティック ダイアグラム内のスケマティック ノードとスケマティック リンクを階層化し、[階層図 - コンパクト ツリー] タブで現在設定されているパラメータに従ってコンパクト ツリーとして配置します。このアルゴリズムは、コリドー(Corridor)に沿ったスケマティック フィーチャの配置を最適化する目的で使用します。このアルゴリズムの始点が、作成されたコンパクト ツリーのルート スケマティック ノードになります。このルート スケマティック ノードを指定するには、[始点の設定] ツール を使用します。始点ノードを指定しないと、スケマティック ノードのいずれかが自動的に始点ノードに設定されます。
階層図 - 主軸ツリー スケマティック レイアウト アルゴリズム
階層図 - 主軸ツリー レイアウト アルゴリズムは、アクティブなスケマティック ダイアグラム内のスケマティック ノードとスケマティック リンクを主軸に沿って階層化し、[階層図 - 主軸ツリー] タブで設定されているパラメータに従ってスケマティック フィーチャを配置します。
[始点の設定] ツールと [終点の設定] ツールを使用して、ダイアグラム内で始点ノードと終点ノードを指定できます。これにより、始点ノードと終点ノード間にパスが存在する場合、指定した始点ノードから指定した終点ノードまでの主軸からアルゴリズムの処理が開始されます。始点ノードと終点ノードが設定されていない場合、デフォルトで、ダイアグラム内で最も多くのリンクから成る分岐が主軸として検出されます。
いずれの場合も、主軸が中心に配置され、[分枝の配置方法] オプションに従って主軸の両側、左側、または右側に関連する分岐が配置されます。
階層図 - 放射状ツリー スケマティック レイアウト アルゴリズム
階層図 - 放射状ツリー レイアウト アルゴリズムは、アクティブなスケマティック ダイアグラム内のスケマティック フィーチャを階層化し、[階層図 - 放射状ツリー] タブで設定されているパラメータに従って放射状ツリーに配置します。このアルゴリズムは、円の中心として使用するダイアグラムのスケマティック ノードを検出し、そのノードを始点として、各階層レベルを表す同心円上にサブツリーを配置します。スケマティック ノードが特定の始点ノードとして設定されている場合、このルート スケマティック ノードが同心円の中心とみなされます。始点ノードは、[始点の設定] ツール を使用して指定することができます。
このスケマティック レイアウト アルゴリズムでは、階層ネットワークのコンパクト ビューが生成されます。このレイアウトはあらゆる業種で使用できますが、網の目状のネットワークでの使用は推奨されません。
階層図 - スマート ツリー スケマティック レイアウト アルゴリズム
階層図 - スマート ツリー レイアウト アルゴリズムは、アクティブなスケマティック ダイアグラム内のスケマティック フィーチャを階層化し、[階層図 - スマート ツリー] タブで設定されているパラメータに従ってスマート ツリーに配置します。このアルゴリズムの始点が、作成されたスマート ツリーのルート スケマティック ノードになります。このルート スケマティック ノードを指定するには、[始点の設定] ツール を使用します。ルート スケマティック ノードを指定しないと、スケマティック ノードのいずれかが自動的に始点ノードに設定されます。
コンポジット レイアウト アルゴリズム
コンポジット レイアウト アルゴリズムは、一連のスケマティック レイアウト アルゴリズムを組み合わせて構成することができます。各アルゴリズムは、コンポジット パラメータの設定時に指定した順序になります。
デフォルトでは、ArcMap の [レイアウト タスク] にコンポジット アルゴリズムは表示されません。スケマティック データセット エディタを使用して、対象とするスケマティック ダイアグラム テンプレートの [レイアウト] タブでこのアルゴリズムを有効にする必要があります。