ogr2ogrまたはgpcでポリゴンを解決/集約しますか?


16

米国の郡の境界を表す多数のポリゴンがあり、それらをできるだけ少ないポリゴンにマージする必要があります。

非商用ソフトウェア、またはリーズナブルな価格のソフトウェアでこれを行うことは可能ですか?

PostGISもJavaも利用できませんが、Cは利用できます。


OpenSourceSoftwareは多くのことができますが、何が必要ですか...ツール、ライブラリ、Cコンパイラもどの環境/オペレーティングシステムで動作しますか?
ハックフィン

www.qgis.orgからqgisをダウンロード
Antonio Locandro 14

@huckfinn:私はCentOSを使用していますが、コマンドラインツールまたはPerl-XSまたはCライブラリが理想的です。ソースデータはESRI Shapefilesにありますが、ポリゴンのコピーをMySQLに持っています。ogr2ogrはありますが、MySQLの方言はありません。
リージー14

私は推測gpcタイトルで参照される一般的なポリゴンクリッパーライブラリ- GPCマンチェスター大学から
マットウィルキー

回答:


31

ogr2ogr(GDAL SpatiaLiteサポート付き> = 1.10):

ogr2ogr output.shp input.shp -dialect sqlite -sql "SELECT ST_Union(geometry), dissolve_field FROM input GROUP BY dissolve_field"

1
Windows用のGdal / Ogrビルドには、Spatialiteサポート、MS4W、OSGeo4w、gisinternals、geoinformaticaが含まれていますか?
-klewis

AFAIK OSGeo4WおよびTamas Szekeres(vbkto.dyndns.org/sdk)によって維持されているパッケージは確かです。
アントニオファルチャーノ14

1
使用しているGDALのバージョン(gdalinfo --version)回避策として、最初にシェープファイルを作成してからKMLに変換してみてください。KMLドライバーには制限があります。
アントニオファルチャーノ14

3
私は「ジオメトリ」に何を使用するかを決定する時の悪魔を持っていました、そのような列ではないエラーを取得していました:geometry。ここのStackおよびリファレンスドキュメントの同様の例はすべて、geothe_geomなどの壊れたバリアントも使用しています。最後に、ogrinfo -so要約のみのスイッチを発見しましたogrinfo -so somedata.gdb my_layer_name、および「Geometry Column = "
マットウィルキー

3
あなただけの一つの大きな多角形にシェープファイル内のすべてのポリゴンを溶解する場合にも、あなたができる: ogr2ogr output_dissolved.shp input.shp -dialect sqliteの-sql「SELECTにST_Union(幾何学)入力からジオメトリとして」 あなたが建てる場合、覚えてGDAL自分でsqliteをインストールし、少なくともsqliteとspatialiteを構成に含める必要があります。つまり、フラグ--with-sqlite --with-spatialite = yesなどです。
cm1

3

純粋な軽量のCアクセスが必要な場合は、Frank WarmerdamのshapelibとAlan Murtaのgpcの組み合わせを使用できます。shapelibでのDBFの処理は少し注意が必要ですが、気に入らなくても大丈夫です。perlの場合、CPANリポジトリのGeo :: Shapelibおよび Math :: Geometry :: GPCエントリにあります。座標変換のためのGeo :: Proj4に加え て、GIS操作への最小限のアクセスが可能です。私はすきです。


おかげで—私はそれを試してみましたが、非常に遅く見えました。MacBookPro4gigで2,000の郡を集約するのに1時間以上かかりました。おそらくそれは私のコーディングです:)
LeeGee 14

たとえば、重複するbboxなど、何らかのインデックスを使用しますか?
huckfinn 14

いいえ—暗闇の中でつまづいているので、何年もこれをやっていたり、PostGISを実行しているとは思わないrefを見つけるのは困難です。
LeeGee

しかし、Postgresql / PostGISは、すべての高度なもののインデックス付け、リレーション...操作とともに使用できます。shp2pgツールを使用すると、形状のデータインポートが非常に簡単になります。そして、SQL構文は...学ぶことはそれほど難しいことではない
huckfinn

PostGISは、特にogr2ogrを使用すると、数秒で見事にシンプルになりました。しかし、私はむしろGPCを使用します:UNIONを作成するたびにファイルからポリゴンを蓄積しており、PostGISが文字通り数秒で実行するのに何時間もかかりました。 。
リージー14
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.