演習 4b:ライン エラーを修正するためにデータベース トポロジを使用する

このトピックは、ArcEditor および ArcInfo にのみ適用されます。

複雑さ: 中級者 データ要件: ArcGIS チュートリアル データのセットアップ データ パス: \ArcGIS\ArcTutor\Editing\Topology

ジオデータベース トポロジについて

ジオデータベース トポロジは、1 つ以上のフィーチャクラスのフィーチャがジオメトリを共有する方法を定義する、一連のルールです。ジオデータベース トポロジはカタログ ウィンドウまたは ArcCatalog で作成され、他のデータと同様に、レイヤとして ArcMap に追加できます。フィーチャクラスの編集を終えたら、ジオデータベース トポロジの整合チェックを行い、編集内容がトポロジのルールに違反していないことを確認します。ジオデータベース トポロジの作成、編集、または整合チェックを行うには、ArcEditor または ArcInfo のライセンスが必要です。

この演習では、CAD からインポートされた区画線データのデジタイズ エラーを検出するための、簡単なジオデータベース トポロジ ルールを作成し、トポロジと編集ツールを使用して、これらのエラーを修正します。

ライセンスライセンス:

このチュートリアルをすべて実行するには、ArcEditor または ArcInfo のラインセンスが必要です。

ジオデータベース トポロジを作成する

前提条件:

ArcMap を起動し、[エディタ] および [トポロジ] のツールバーを表示します。

手順:
  1. [標準] ツールバーの [開く] ボタン 開く をクリックします。
  2. チュートリアル データをインストールした「\Editing\Topology」ディレクトリにある「GeodatabaseTopology.mxd」マップ ドキュメントを開きます(デフォルトの場所は「C:\ArcGIS\ArcTutor」)。
  3. マップをクリックして [開く] をクリックします。
  4. 前回の演習からマップ ドキュメントを開いたままにしていて、閉じるように促すメッセージが表示されたら、変更内容を保存せずに閉じることができます。
  5. このマップには、土地区画線のレイヤと調査中のエリアを示すレイヤの 2 つが含まれています。区画線データにある空間エラーを検出して修正できるように、ジオデータベース トポロジを作成する必要があります。
  6. カタログ ウィンドウが開いていない場合は、[標準] ツールバーの [カタログ ウィンドウ] ボタン カタログ ウィンドウ をクリックして表示する必要があります。カタログ ウィンドウでは、データセットを管理できます。また、カタログ ウィンドウは、トポロジの追加先となります。右上の角にあるピンをクリックすると、ウィンドウを ArcMap ユーザ インタフェースに固定することができます。
  7. 必要に応じて、Home - Editing\Topology フォルダを展開し、チュートリアル データとともにインストールされている Topology フォルダの内容を表示します。
    カタログ ウィンドウの StudyArea フィーチャ データセット
  8. 必要に応じて「Topology」ジオデータベースを展開し、「StudyArea」フィーチャ データセットをクリックします。次は、区画線データのエラーを探すためにジオデータベース トポロジを作成します。これは、1 つのフィーチャクラスと 1 つのトポロジ ルールからなる単純なトポロジです。
  9. 「StudyArea」データセットを右クリックして、[新規作成] をポイントし、[トポロジ] をクリックします。
  10. 最初のパネルで [次へ] をクリックします。
  11. ウィザードの次のパネルで、クラスタ許容値を設定することができます。クラスタ許容値は、フィーチャの各部分がフィーチャの一部と見なされるための必要最低限の距離を表します。クラスタ許容値の範囲内にあるフィーチャの頂点やエッジは、相互にスナップされます。ウィザードには、必要最低限のクラスタ許容値が設定されています。この値は、データセットの空間参照の精度によって決定されます。データセットの精度は、距離単位あたりに格納できる座標系の単位数を定義し、データセットに格納される座標の精度を制御します。
  12. デフォルト名とクラスタ許容値が選択された状態で、[次へ] をクリックします。
  13. ここで、データセットのどのフィーチャクラスをトポロジに使用するかを選択することができます。「LotLines」をオンにして、[次へ] をクリックします。
  14. トポロジに複数のフィーチャクラスが含まれている場合は、それぞれに異なるランクを割り当てることができます。フィーチャの頂点またはエッジが互いにクラスタ許容値の範囲内にある場合、どちらのフィーチャを移動するかは、フィーチャクラスのランクによって決定されます。ランクの低いフィーチャクラスは、ランクの高いフィーチャクラスにスナップされます。最高ランクは 1、最低ランクは 50 です。クラスタ許容値の範囲内に含まれている同じランクのフィーチャは、幾何平均されます。
  15. デフォルトのランクが選択された状態で、[次へ] をクリックします。
  16. トポロジを構築する際には、フィーチャ間で許可される空間リレーションシップを制御するルールを選択することができます。
  17. [ルールの追加] をクリックします。
  18. [ルール] 矢印をクリックして、[ダングルがない] をクリックします。
    [ダングルがない] ルールの追加
  19. ダングルとは、フィーチャクラス内の他のラインにスナップしないラインの終点です。ダングルは、インポートされた CAD ラインが正しく接続されない場所を表します。このため、LotLines フィーチャクラスでは、ダングルを検索する必要があります。
  20. [OK] をクリックします。
  21. ルールがトポロジ ルールのリストに追加されます。[次へ] をクリックします。
  22. サマリの内容を確認し、[完了] をクリックします。

    トポロジ作成中のメッセージが表示された後、すぐにトポロジの整合性チェックをするかどうかを尋ねてきます。チェックによって、レイヤ内のエラーが検出されます。

  23. [はい] をクリックします。
  24. トポロジの確認中であることを示すメッセージが表示され、「StudyArea」データセットに新規トポロジが表示されます。

トポロジをマップに追加する

ここでは、区画線データからダングル エラーを検出するためにトポロジを使用します。今後、これらの区画線から、ポリゴン区画フィーチャを作成する必要があるかもしれません。したがって、最初にこのデータをクリーンナップすることが重要です。区画線によって 2 つの区画が完全に分割されないと、土地区画ポリゴンが 1 つしか作成されないからです。

手順:
  1. カタログ ウィンドウで、必要に応じて StudyArea フィーチャ データセットを展開してから StudyArea_Topology をクリックし、マップ上にドラッグします。
  2. トポロジに含まれるすべてのレイヤを追加するかどうかのメッセージが表示されたら、レイヤはすでにマップ内に存在しているため、[いいえ] をクリックします。
  3. カタログ ウィンドウを閉じます。
  4. トポロジ レイヤにすべてのトポロジ エラーが表示されます。ArcMap のコンテンツ ウィンドウでは、トポロジ レイヤでエリア、ライン、ポイント エラーを表示することができます。このトポロジには、1 つのフィーチャクラスと 1 つのルールしかないため、すべてのトポロジ エラーはそのルールに関連しています。トポロジ ルールでは、区画線にはダングルがあってはならないとなっています。ダングルのエラー ジオメトリは、ライン フィーチャのダングル端点にあるポイントです。マップ上の赤いエラー フィーチャ(ここでは紫色)はすべてダングルです。

トポロジ エラーを探す

このデータをクリーンナップするための次のステップは、トポロジ エラーを識別することです。区画線(LotLines)のダングルは、ラインの端点が別のラインに接続していない部分です。土地区画ポリゴンを作成するには、このエラーを検出してクリーンナップする必要があります。ダングルは、ポリゴンを閉じるために延長するか、スナップすべきラインを超えている場合は切詰める必要があります。ここでは、これらのエラーを検出します。

手順:
  1. [ブックマーク] をクリックし、「Dangle errors」をクリックします。

    ブックマークしたエリアが拡大します。3 つのダングル エラーが表示され、これらをこの演習で修正します。

    チュートリアルで修正するエラー

  2. [エディタ] ツールバーの [エディタ] メニューをクリックし、[編集の開始] をクリックします。
  3. [フィーチャ作成] ウィンドウを閉じます。この演習では、これは必要ありません。
  4. [トポロジ] ツールバーの [エラー インスペクタ] エラー インスペクタ をクリックします。
  5. [エラー インスペクタ] ウィンドウを使用するとマップ上のすべてのトポロジ エラーを管理し操作することができます。
  6. [エラー インスペクタ] ウィンドウを開いた状態で、マップ上に同じ 3 つのエラーが表示されていることを確認します。マップの画面移動を実行して、再度表示させる必要があるかもしれません。
  7. [エラー インスペクタ] ウィンドウの [エラー] および [表示範囲のみ] チェックボックスをオンにします。
  8. [エラー インスペクタ] ウィンドウの [検索開始] をクリックします。

オーバーシュート エラーを修正する

マップ上のすべてのエラーは、[ダングルがない] ルールに対する違反です。しかし、この種のエラーを引き起こす原因は複数あります。ダングル エラーは、本来接続すべきラインをはるかに超える、または長さが足りないラインによって引き起こされます。これらはそれぞれオーバーシュートとアンダーシュートです。

ダングルは、隣り合った複数のマップ シートからフィーチャがデジタイズされている場合にも発生する可能性があります。場合によっては、それらが 1 つのラインとしてつながるように、互いにスナップさせる必要があります。ダングル エラーはマップ シートの切れ目(元のソース データでラインが中断している部分)でも発生します。

次は、このマップ上で 1 つのエラーを修正します。

手順:
  1. マップ最北端のフィーチャが点滅し、選択されたことを示す黒に変化するまで、[エラー インスペクタ] ウィンドウの [Feature 1] 列をクリックします。
  2. エラーが含まれている区画線と別の区画線が交差している場所が表示されるまで、エラーを拡大します。
    修正されるオーバーシュート ダングル エラー
  3. これはオーバーシュート エラーであり、CAD プログラムからインポートされた線画で、またはデジタイズ時のライン フィーチャの接続制御にスナップを使用しなかった場合によく発生します。
  4. [エラー インスペクタ] でエラーを右クリックし、[切詰め] をクリックします。
  5. [最大距離] テキスト ボックスに「3」と入力し、Enter キーを押します。
    オーバーシュート エラーが修正された

    ダングル セグメントは、ラインが交差するところまで切詰められ、エラーが削除されます。[エラー インスペクタ] ショートカット メニューには、このエラーの修正方法が一覧表示されています。ライン フィーチャを切詰めて、このエラーを修正しました。また、エラーを例外としてマークする、あるいは別のフィーチャに接続するまでスナップまたは延長することも可能です。

アンダーシュート エラーを修正する

手順:
  1. 残り 2 つのエラーが表示されるまで、[ツール] ツールバーの [前の表示範囲に戻す] ボタン 前の表示範囲に戻す をクリックします。次に、別の種類のダングル エラーを修正します。
    修正が必要な残り 2 つのエラー
  2. 残り 2 つのエラーの西側の端を拡大します。
    修正されるアンダーシュート ダングル エラー
  3. 必要に応じて、区画線がもう 1 つの区画線に接続されていないことを確認できるよう再度拡大します。
  4. これはアンダーシュート エラーです。CAD からインポートしたライン、あるいはスナップを使用してライン フィーチャの接続性を制御せずにデジタイズしたラインに見られることの多いもう一種のエラーです。このラインの端点は、約 50 センチ短すぎます。スナップすべきラインに接続するまでアンダーシュートを延長することにより、このエラーを解決します。
  5. [トポロジ] ツールバーの [トポロジ エラーの修正] ボタン トポロジ エラー修正ツール をクリックします。このツールを使用すると、マップ上のトポロジ エラーを対話形式で選択し、定義済みの修正を適用することができます。
  6. エラーの周囲にボックスをドラッグします。
    トポロジ エラーの修正 ツールを使ったエラーの選択
  7. マップを右クリックし、[延長] をクリックします。
  8. [最大距離] テキスト ボックスに「3」と入力し、Enter キーを押します。
    アンダーシュート エラーが修正された

    ダングルがあるラインを他のラインに延長して、アンダーシュートを修正しました。ラインとの距離が、指定した 3 メートルの最大距離を超えていた場合、ラインは延長されません。

ダブル デジタイズ ラインを修正する

データを作成する際に、ラインを 2 度にわたってデジタイズしてしまうことがあります。この問題は、CAD ドローイングまたはデジタイズ タブレットでデジタイズされたラインで発生します。

手順:
  1. 残り 1 つのエラーが表示されるまで、[ツール] ツールバーの [前の表示範囲に戻す] ボタン 前の表示範囲に戻す をクリックします。
    修正が必要な残り 1 つのエラー
  2. 残りのエラーを拡大します。
  3. [エラー インスペクタ] ウィンドウの [検索開始] をクリックします。
  4. [Feature 1] 列で数値をクリックします。
    ライン エラーの点滅

    ダングルがあるライン フィーチャが点滅します。区画全体が点滅しなかったことに注意してください。

  5. ほぼ平行な 2 つの区画線(そのうちの 1 つにダングルが含まれている)が表示されるまで拡大します。
    二重にデジタイズされたラインのエラー
  6. 余分なラインを削除することにより、このエラーを修正します。
  7. [Feature 1] 列で数値を右クリックして [フィーチャ選択] をクリックし、Delete キーを押します。これによって余分なラインが削除されます。
  8. 作業していたエリアが表示されるまで、[ツール] ツールバーの [前の表示範囲に戻す] ボタン 前の表示範囲に戻す をクリックします。
    このエリアのすべてのエラーが修正された

編集したエリアを見直す

[ダングルがない] ルールに違反したために発生した 3 つのエラーを修正しました。各エラーの修正方法は、フィーチャの切詰め、延長、削除による区画線フィーチャのジオメトリ編集でした。

トポロジ エラーの表示は、エラーの場所を検索するには便利ですが、ユーザ自身がエラーの修正をする必要があります。トポロジ エラー フィーチャ レイヤを直接編集することはできません。

トポロジ内のフィーチャを編集する際には、変更が加えられた場所がトポロジに記録されます。これらの場所は、編集内容がトポロジ ルールに違反している可能性があるために「ダーティ エリア」と呼ばれます。ただし、エラーが存在したとしても、ダーティ エリアを再度整合チェックしなければ、エラーを発見することはできません。トポロジを再度整合チェックすると、ダーティ エリアだけがチェックされます。

トポロジ レイヤのダーティ エリアを表示することによって、編集されたエリアを確認することができます。

手順:
  1. コンテンツ ウィンドウでトポロジを右クリックし、[プロパティ] をクリックします。
  2. [シンボル] タブをクリックします。
  3. [ダーティ エリア] をオンにします。
  4. [OK] をクリックします。
    ダーティ エリアの表示
  5. これでダーティ エリアを確認することができます。ダーティ エリアには、編集したフィーチャが含まれています。ダーティ エリアだけエラーを調べればよいので、整合チェック処理が最適化されます。必要に応じて縮小し、ダーティ エリア ボックスの範囲全体を表示できるようにします。
  6. [トポロジ] ツールバーの[指定エリア内のトポロジ整合チェック] ボタン 指定エリア内のトポロジ整合チェック をクリックします)。
  7. 北側のダーティ エリアの周囲にボックスをドラッグします。
    北側のダーティ エリアの整合チェック

    ダーティ エリアは削除され、整合チェックをしたエリアにはエラーがないことがわかります。

  8. [トポロジ] ツールバーの [現在の表示範囲でトポロジ整合チェック] ボタン 現在の表示範囲でトポロジ整合チェック をクリックします。
    すべてのダーティ エリアが削除される

    編集したもう 1 つのエリアでトポロジの整合チェックが行われ、ダーティ エリアが削除されます。

データのステータス レポートを作成する

手順:
    次は、残りのトポロジ エラーの数を要約するレポートを作成します。
  1. コンテンツ ウィンドウでトポロジを右クリックし、[プロパティ] をクリックします。
  2. [エラー] タブをクリックします。
  3. [サマリの作成] をクリックします。
  4. サマリには、トポロジ エラー数と例外数が表示されます。これらのエラー数は、異なることがあります。このレポートをテキスト ファイルに保存してデータのステータスを記録することができますが、この演習では必要ありません。
    残りのトポロジ エラーのサマリ
  5. [OK] をクリックします。

一度に複数のエラーを修正する

二重にデジタイズされたラインなどの多くのエラーは、フィーチャを削除、変更、または移動することにより、1 つずつ修正する必要があります。エラーによっては、新しいフィーチャを作成して修正する必要があります。しかし、オーバーシュートやアンダーシュートなど、フィーチャクラスに含まれる多くのエラーの修正は簡単な場合もあります。このような場合は、トポロジ エラー修正ツールを使用して複数のエラーを一度に選択し、それらすべてに同じ修正を適用することができます。必要に応じて、[エラー インスペクタ] ウィンドウを使用して、それぞれのエラーを個々にチェックすることもできます。これは、複数のトポロジ エラーを修正する前に必要な、ワーク フローと品質管理についての判断です。

データを確認しながら、修正が適切かどうかを検証することをお勧めします。実際には別のラインにスナップする必要があるダングル付きのラインを切詰める、または実際には切詰める必要があるラインを延長するようなことは避けてください。この場合、別のラインから 3 メートル以内のダングルを持つラインを延長しても、区画や公道用地は 3 メートル以上なのでデータに問題は発生しません。

次に、この方法を使用して一度に複数のエラーを修正します。

手順:
  1. [ツール] ツールバーの [全体表示] ボタン 全体表示 をクリックします。
  2. [トポロジ] ツールバーの [トポロジ エラーの修正] ボタン トポロジ エラー修正ツール をクリックします。
  3. マップ上のすべてのエラーを囲むように、ボックスをドラッグします。これですべてのエラーが選択されます。ここで、アンダーシュートを修正します。
  4. マップを右クリックし、[延長] をクリックします。
  5. 他のアンダーシュートを修正したときに設定した最大距離を使用できるので、Enter キーを押します。この処理には数秒かかります。ダングルがあるすべてのフィーチャをオンにして、3 メートル以下の延長できるフィーチャがあるかどうかを調べます。

    アンダーシュートが修正され、マップ上にいくつかのダーティ エリアが表示されます。各ダーティ エリアには、延長によるエラーの修正で編集されたフィーチャを囲むボックスが表示されます。

  6. [エラー インスペクタ] ウィンドウの [検索開始] をクリックします([エラー インスペクタ] ウィンドウを閉じてしまった場合は、[トポロジ] ツールバーから開くことができます)。
  7. トポロジ エラーの数が、[表示] ドロップダウン メニューの右に表示されます。多くのエラーが修正されていないことがわかります。必要に応じて、残りのエラーを切詰め、トポロジ エラーの修正を続行して、このデータをクリーンアップすることができます。
  8. [エディタ] ツールバーの [エディタ] メニューをクリックし、[編集の終了] をクリックします。
  9. [はい] をクリックして編集内容を保存します。
  10. チュートリアルが完了したら、ArcMap を閉じます。マップ ドキュメントを保存する必要はありません。
  11. 次の演習を続ける場合は「演習 5a:データの変換」をクリックしてください。

この演習では、データの修正に役立つ簡単なルールを持つジオデータベース トポロジを作成しました。[エラー インスペクタ] を使用して特定の種類のエラーを検出する方法と、一部の編集ツールを使用してデータのエラーを修正する方法を学習しました。


7/10/2012