シェープファイルのトポロジを修復する方法は?


9

ENVI EXを使用してオブジェクトベースの画像分析を実行し、分類された各機能をシェープファイルとしてエクスポートしました。それらのシェープファイルをArcMap 10に転送し、GeoBaseから取得した同じエリアの他のシェープファイルとそれらを交差させようとしました

交差ツールを実行しようとすると、ENVI EXから抽出されたシェープファイルのトポロジが無効であることを示すエラーメッセージが表示されます。トポロジツールをオンにして、これらのシェープファイルのトポロジを修復しようとしましたが、ボタンがグレー表示されており、クリックできません。トポロジツールは、使用しているどのシェープファイルに対しても機能しません。

解決策はありますか?トポロジを修正して交差を実行するにはどうすればよいですか?

回答:


12

ポリゴンでも同様の問題が発生しました。多分あなたは同様の問題を抱えています。

ESRIによるエラーメッセージ:「無効なトポロジ(不完全なボイドポリ)」

実際のエラー:「無効なジオメトリ」

修正:「ジオメトリの修復」を実行します(データをインプレースで変更します。注意してください。元に戻すことはできません)

報告されているエラーは、トポロジー/ジオメトリのESRI用語を使用していないため、誰もが混乱します。私の場合、エラーはトポロジーについて話していましたが、トポロジーが定義されていません(ESRIトポロジーのようなトポロジー)。しかし、(「ジオメトリのチェック」ツールを使用して)ジオメトリをチェックすると、自分のジオメトリ(ESRIジオメトリの場合と同様)にエラーがあることがわかりました。


4

ArcMapが機能しない場合に備えて、GRASSのv.cleanツールを試してみてくださいQGISでGRASSをインストールできます。インストール後:

GRASSツールボックスを使用したSHAPEファイルのトポロジーのクリーニング

  1. SHAPEファイルをQGISに読み込みます
  2. 投影設定が一致する既存のGRASSマップセットを使用(または新しいマップセットを作成)
  3. 次に、Toolbox-> File management-> Import into GRASS-> Import vector to GRASS-> Import vector to GRASS from QGIS view(v.in.ogr.qgis)を使用して、SHAPEファイルをQGISからGRASSに転送する必要があります。SHAPEファイルの品質によっては、トポロジの問題が報告される場合があります。
  4. トポロジツールを使用してツールボックスを介してGRASSで修正できるこれらのトポロジの問題:ベクトル->マップの開発->ベクトルマップのトポロジをクリーニングするためのツールセット-> v.clean.break。しきい値をマップ単位で定義します(たとえば、0.5 [m]など)。印刷されたレポートを分析します。おそらくしきい値を調整する必要があるか、使用する別のトポロジクリーンアップツールです。次に、ビュー出力をクリックして、結果をマップとして表示します。
  5. クリーンなマップをSHAPE形式にエクスポートします。ファイル管理-> GRASSからエクスポート-> GRASSからベクトルをエクスポート-> v.out.ogr
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.