非常に詳細な陸域シェープファイルから海洋シェープファイルを取得するにはどうすればよいですか?


10

シェープファイルを「反転」する可能性を探しています。私がしたいことは、大陸と島のあるシェープファイルを水のポリゴンを持つシェープファイルに変換することです。Natural Earthの既存の海洋シェープファイルは不正確です。

私はアクティブなOSM寄稿者として、OSMの既存のシェープファイルを使用することでうまくいくと思いました。これらははるかに正確ですが、GISの観点からは非常にバグがあります。しかし、mapserverはそれを処理できるので、これらは問題ないはずだと思いました。これらのシェープファイルは、http://metro.teczno.com/#coastlineで見つけることができます が、非常に大きいものもあります。

ワールドバウンド(-180〜180、-90〜90)を持つ1つのポリゴンでシェープファイルを作成しました。次に、陸域が他のシェープファイルにある世界境界シェープファイルから領域を切り取ろうとしました。QGIS、ベクターツール->差分関数で試してみました。100%のCPU使用率で12時間後、私はそれを停止しました。常に100%の進行状況を表示しました。RAMは問題ではありませんでした。

「世界のポリゴン」、できればLinuxコマンドラインから陸地を切り取る別の可能性を探しています。


2
ArcGISでは、記述している操作は消去と呼ばれます。オープンソースのソリューションを探しているように思えるので、その用語を検索すると何かが変わるかもしれません。:MapWindowのルックスは、それが消去ツールを持っていますが、ここでの議論は、あまりにもそれを示唆するような制限がありmapwindow.org/phorum/read.php?4,20317
PolyGeo

2
シェープファイル「ワールドバウンド(-180〜180、-90〜90)を持つポリゴン」を小さなチャンクに分割する必要があります。次に、領域を切り取ることができます。2つの考えられる問題が発生しています。1つは、北半球と南半球の両方で同時にデータを処理していることです。2つ目は、-180 / 180の境界に関する潜在的な問題です。世界の境界を、左上、右上、左下、右下など、4つの小さなチャンクに分割してみてください。
マイケルマルキエタ2012

ワールドポリゴンを作成したときに、土地データと同じシステムに投影したと思いますか?
djq

回答:


6

救助へのラスター!この操作を行うには、シェープファイルをラスターに変換し、「反転」操作を実行してベクターに戻します。

  • ラスター->変換->ラスター化。出力レイヤーraster1
  • フィールド計算機を開き、式raster1 @ 1 = 0を入力します
  • ラスター->変換->ポリゴン化、出力レイヤーocean_polygons
  • 属性テーブルを開き、DN = 0を検索し、編集を切り替え、選択した機能を削除して保存します。残されるのは、海域のポリゴンです。

ここに画像の説明を入力してください


1

SAGA GIS(およびおそらく他の多くも)には、「ポリゴンの交差」と呼ばれるコマンドがあります。全世界を含むポリゴンを作成し、そこから土地のポリゴンを差し引きます。したがって、そのライブラリのメソッド2または3。

Usage: saga_cmd libshapes_polygons "Polygon Intersection" -SHAPES_A <str> [-FIELD_A <str>] -SHAPES_B <str> [-FIELD_B <str>] -SHAPES_AB <str> [-METHOD <str>] [-SPLITPARTS]
  -SHAPES_A:<str>   Layer A
    Shapes (input)
  -FIELD_A:<str>    Attribute A
    Table field
  -SHAPES_B:<str>   Layer B
    Shapes (input)
  -FIELD_B:<str>    Attribute B
    Table field
  -SHAPES_AB:<str>  Intersection
    Shapes (output)
  -METHOD:<str>     Method
    Choice
    Available Choices:
    [0] Complete Intersection
    [1] Intersection
    [2] Difference (A - B)
    [3] Difference (B - A)
  -SPLITPARTS       Split Parts
    Boolean

0

海岸線の詳細が必要な場合、ラスターはデータが多すぎる可能性があります。Spatialthoughtsによって提案されたものと同じ原理ですが、Delaunay TINを使用することはオプションかもしれません。



0

OSMランドシェープファイルの複雑さのため、OSMランドシェープファイルの反転にはあまり成功していませんが、生のOSMデータから陸と海の両方のシェープファイルを生成することは可能です。http://openstreetmapdata.com/dataは、両方のダウンロードを提供しています。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.