タグ付けされた質問 「ogr2ogr」

ogr2ogrは、さまざまなベクトル空間データ形式との間で変換を行うために広く使用されているオープンソースのコマンドラインユーティリティです。

2
ogr2ogrは複数のシェープファイルをマージします:-nlnタグの目的は何ですか?
サブフォルダーを再帰的に繰り返し、すべてのシェープファイルを単一のシェープファイルにマージするための基本的なスクリプトは次のとおりです。 #!/bin/bash consolidated_file="./consolidated.shp" for i in $(find . -name '*.shp'); do if [ ! -f "$consolidated_file" ]; then # first file - create the consolidated output file ogr2ogr -f "ESRI Shapefile" $consolidated_file $i else # update the output file with new file content ogr2ogr -f "ESRI Shapefile" -update -append $consolidated_file …

1
投影についてogr2ogrを教えるにはどうすればよいですか?
私がしているJSONのArcGISから生成された私は、これが失敗したEPSG 4326でにGeoJSONに変換したいこと: $ ogr2ogr -f GeoJSON -t_srs EPSG:4326 out.geo.json in.arcgis.json OGRGeoJSON ERROR 6: EPSG PCS/GCS code 102100 not found in EPSG support files. Is this a valid EPSG coordinate system? 102100を3857に変更できるというフォーラム投稿を見つけましたが、これは数学的には同じです。したがって、これは同じエラーメッセージで機能します。 $ ogr2ogr -f GeoJSON -s_srs EPSG:3857 -t_srs EPSG:4326 out.geo.json in.arcgis.json OGRGeoJSON ERROR 6: EPSG PCS/GCS code 102100 not found …

1
og2ogr文字エンコードの問題
シェープファイルをディゾルブしているとき: ogr2ogr "b:\out.shp" "b:\Tele.shp" -dialect sqlite -sql "SELECT ST_Union(geometry), nev, jar FROM Tele GROUP BY jar" 次のようなエラーメッセージが表示されました。 警告1:1つまたは複数の文字をUTF-8からISO-8859-1に正しく変換できませんでした。 Tele.cpgに "UTF-8"が含まれているため、理解できません これを試すとき: ogr2ogr "b:\out.shp" "b:\Tele.shp" -dialect sqlite -sql "SELECT ST_Union(geometry), nev, jar FROM Tele GROUP BY jar" ENCODING=UTF-8 エラーメッセージは次のとおりです。 警告1:-sqlと組み合わせてレイヤー名は無視されます。エラー1:フィールド名 'nev'の作成に失敗しました:「UTF-8」に変換できません それで、私の奇妙なハンガリーの性格を保つために私は何をすべきですか?
10 ogr2ogr  utf-8  encode 

2
ogr2ogrへのデータのパイピング
データを直接パイプすることは可能ogr2ogrですか?私はcurl、GeoJSONファイルにパイプしてogr2ogr、それを別の形式に変換するためにパイプします。 パイプを使用せずに、最初にファイルを書き込んでから次のコマンドを使用して変換することでこれを実現できましたが、その手順をスキップできるかどうか知りたいです。 curl "https://raw.githubusercontent.com/nvkelso/natural-earth-vector/master/geojson/ne_50m_admin_0_countries.geojson" -o "countries.geojson" && ogr2ogr -f "KML" countries.kml countries.geojson パイプする代わりにcurl出力で変数を作成しようとしましたogr2ogrが、読み取ることができませんでした。 DATA=$(curl -s "https://raw.githubusercontent.com/nvkelso/natural-earth-vector/master/geojson/ne_50m_admin_0_countries.geojson") && ogr2ogr -f "KML" countries.kml $DATA
10 gdal  ogr2ogr 

1
シェープファイルを再投影する方法は?
QGISプロジェクトを再投影したかったのですが、そのようなオプションはありません。回答を検索するときogr2ogr、各ベクターレイヤー(この例ではシェープファイル)を再投影することにより、このタスクの提案が表示されます。ただし、期待した結果が得られません。 C:\temp>ogrinfo -al -so misc.shp INFO: Open of `misc.shp' using driver `ESRI Shapefile' successful. Layer name: misc Geometry: Line String Feature Count: 10 Extent: (21.267388, 42.015857) - (21.270225, 42.017470) Layer SRS WKT: PROJCS["MGI_Balkans_zone_7_deprecated", GEOGCS["GCS_MGI", DATUM["Militar_Geographische_Institute", SPHEROID["Bessel_1841",6377397.155,299.1528128]], PRIMEM["Greenwich",0], UNIT["Degree",0.017453292519943295]], PROJECTION["Transverse_Mercator"], PARAMETER["latitude_of_origin",0], PARAMETER["central_meridian",21], PARAMETER["scale_factor",0.9999], PARAMETER["false_easting",7500000], PARAMETER["false_northing",0], UNIT["Meter",1]] id: Integer (10.0) C:\temp>ogr2ogr -t_srs …

3
通常のJSONをGeoJSONに変換することは可能ですか?
これが繰り返し質問である場合は申し訳ありませんが、ここで検索したところ、回答が見つかりませんでした。Openpaths.ccからエクスポートしたJSONデータがあり、緯度と経度の値が含まれています。ただし、データはGeoJSON形式ではないため、OGR2OGRで読み取ることができません。私のデータをGeoJSONに変換する方法について誰かが正しい方向に向けてくれますか?最終的にはリーフレットで表示したいです。データは次のようになります。 [ { "lon": -73.97, "device": "iPhone3,3", "version": "1.1", "t": 1381167616, "lat": 40.66, "alt": 67, "os": "6.1.3" }, { "lon": -73.96, "device": "iPhone3,3", "version": "1.1", "t": 1381171200, "lat": 40.66, "alt": 45, "os": "6.1.3" } ]

1
QGISが.prjファイルからCRSを検出しないのはなぜですか?
私は米国のさまざまな郡をカバーする1 kmの六角形グリッドをpostgreSQL / postGISデータベースに多数持っています。各グリッドにはCRS EPSG:3857があり、countiesレイヤーにはEPSG:3857があります。QGISで郡のグリッドを表示すると、すべてが壮大に見えます。 しかし...これらのグリッドを同僚と共有するために、ogr2ogrを使用してそれらをシェープファイルにエクスポートする必要がありました。これらをQGISで表示すると、各グリッドは約20 kmほどナッジされたように見え、QGISは自動的にCRSをEPSG:3395(プロジェクトのCRSではない)に設定します。 QGISから postGISテーブルをシェープファイルとしてエクスポートすると、.prjファイルはogr2ogrエクスポートされたシェープファイルとまったく同じに見えますが、postGISエクスポートされたテーブルは正しく表示されます。QGIS からシェープファイルをエクスポートすると、QGISが.qpjファイルを作成することに気付いたので、QGISが.prjを無視し、代わりに.qpjを探しているという結論に達しました。.qpjがないと.prjを読み取れないのはなぜですか?他のシェープファイル(米国国勢調査のものなど)には.qpjがありませんが、QGISはこれらを正しく表示します。 default.qpjを保存し、ogr2ogrを使用してエクスポートするすべてのファイルに対してこれから新しい.qpjを作成することで回避策を考え出しましたが、EPSG:3857でしか機能しないため、これは煩雑で、再現性がないようです。 補足:QGIS 2.0.1を使用しています。 編集: これが私が使用したogr2ogrコマンドです。 ogr2ogr -f "ESRI Shapefile" /home/matt/data/hex_grid_1 PG:'dbname=mydb user=matt' hex_grid_1 .prjの内容: PROJCS ["WGS_84_Pseudo_Mercator"、GEOGCS ["GCS_WGS_1984"、DATUM ["D_WGS_1984"、SPHEROID ["WGS_1984"、6378137,298.257223563]]、PRIMEM ["Greenwich"、0]、UNIT ["Degree"、0.01745329251994J3TION] ["メルカトル"]、PARAMETER ["central_meridian"、0]、PARAMETER ["false_easting"、0]、PARAMETER ["false_northing"、0]、UNIT ["Meter"、1]、PARAMETER ["standard_parallel_1"、0.0] ] .qpjの内容: PROJCS ["WGS 84 /疑似メルカトル"、GEOGCS ["WGS 84"、DATUM ["WGS_1984"、SPHEROID ["WGS 84"、6378137,298.257223563、AUTHORITY ["EPSG"、 "7030"]]、AUTHORITY …
9 qgis  postgis  ogr2ogr  epsg 

3
コマンドラインからシェープファイルの属性を見つける方法は?
私はマイクボストックのチュートリアル「マップを作ろう」に従っています。彼はogr2ogr、機能の属性に基づいてシェープファイルをフィルタリングする方法を説明しています。QGISでシェープファイルを開き、属性テーブルを見て、それらの機能を確認できます。コマンドラインからその情報を見つける方法はありますか?

1
ogr2ogrの代わりにshp2pgsqlを使用してシェープファイルをPostGISにインポートしますか?[閉まっている]
休業。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善してみませんか?この投稿を編集して、事実と引用で回答できるように質問を更新してください。 2年前休業。 私はここで何か悪いことをしているかもしれませんが、 shp2pgsqlを使用していくつかのシェープファイルをPostGISデータベースにインポートする場合、まずそのシェープファイルのSRID / EPSGを把握する必要があります。これは、少なくとも2つのステップからなるプロセスだと思います。まず、次のようにシェープファイルを照会します。 >ogrinfo -al -so someshapefile.shp これは、既知のテキスト(wkt)投影情報を返しますが、少し冗長で、やや不透明です(私には)。何かのようなもの: GEOGCS["NAD83", DATUM["North_American_Datum_1983", SPHEROID["GRS 1980",6378137,298.257222101, AUTHORITY["EPSG","7019"]], AUTHORITY["EPSG","6269"]], PRIMEM["Greenwich",0, AUTHORITY["EPSG","8901"]], UNIT["degree",0.01745329251994328, AUTHORITY["EPSG","9122"]], AUTHORITY["EPSG","4269"]] 次に、通常はPrj2EPSGなどの変換ツールを使用してwkt情報を実行し、EPSG / SRIDを見つけます。 この時点で、次を使用してシェープファイルをインポートできます。 >shp2pgsql -I -s 4269 someshapefile.shp <schema>.<table> | psql -U <user> -d <dbname> -h <hostaddress> -p 5432 -sフラグでSRIDを指定していることに注意してください。 SRIDを指定せずにshp2pgsqlを実行すると、プロジェクションが設定されず、geom列を手動で更新してプロジェクションを含める必要があると思います。 または、ルックアップをスキップして、ogr2ogrを使用することもできます。 >ogr2ogr -f "PostgreSQL" "PG:host=<hostaddress> …

1
ogr2ogr TPSスプラインメソッドが進行性エラーを作成する
私は次のようなcmdコマンドでogr2ogrスプライン変換を使用してシェープファイルを調整しようとしています: C:\OSGeo4W64\bin\ogr2ogr.exe -f "ESRI Shapefile" C:\path\output.shp -tps --optfile C:\path\gcp.txt C:\path\input.shp 私は1000を超えるコントロールポイントを持っています(したがって、それらは別のファイルにあります)。そして、私はこの方法の精度に奇妙な問題があります。この質問で、ogr2orgのスプライン法は実際には正確ではないことをすでに見ました。しかし、GCPの数とデータセットの範囲により、精度が北から南に向かって劇的に低下していることがわかります。このような: 北では、この方法はほぼ正確(0.001 mの誤差)であり、スムーズに精度が失われ、南では、約60 mの誤差が生じます。 すべてのGCPのRMSEを計算し、それを座標とコントロールポイントのID番号に対してプロットしました(ほとんどの場合、北から始まるGCPを作成していました)。そして、私が持っています: gdalのソースコード(gdal_tps、thinplatespline、ogr2ogr_libモジュールを見つけました)を見つけて読み込もうとしましたが、その言語(C ++?)がわからず、メソッドのしくみがわかりません。ogr2ogrの多項式1、2、および3次は正常に機能しています(これらは正確な方法ではありませんが、エラーは進行していません)。 では、なぜY座標に応じてスプライン精度が対数的に減少するのでしょうか。(X座標の場合、16000 mごとに精度のジャンプが見られます)。これはどのようにして可能ですか?この調整方法はどのように機能しますか?この問題を解決するにはどうすればよいですか?(Windows 7、64ビットを使用しています)

1
OGRを使用してPostGISにインポートするジオメトリタイプを設定する
ogr2ogrPostGISデータベースへのデータのインポートに使用しています。インポートする必要がある各データセットは、(理論的には)正確に同じデータ構造を持っていますが、それらは同じジオメトリタイプではないようです。例、最初のレイヤーを既にインポートしており、「streets」というレイヤーがあります。このコマンドを実行して、最初のデータベースから最初のフィーチャクラスをインポートします(GDALを読み取るように構成しています.mdb)。 ogr2ogr -f PostgreSQL PG:"host=localhost user=postgres dbname=database port=5432" city1.mdb streets -nln streets -nlt MULTILINESTRING -lco GEOMETRY_NAME=geometry -appendから同じストリートレイヤーを(フラグを使用して)追加しようとするcity2.mdbと、このエラーが発生します(おそらく2つの「ストリート」レイヤーのジオメトリタイプが競合していることが原因です)。 Warning 1: Geometry to be inserted is of type 3D Line String, whereas the layer geometry type is 3D Multi Line String. Insertion is likely to fail ERROR 1: INSERT command for new …

2
GeoJSONデータのファイルサイズを縮小する方法
私のプロジェクトでは、米国の州の虎のシェイプファイル情報をGeoJSON形式に変換しようとしています ただし、ogr2ogrツールを使用すると、データファイルは約20 MBになります。他の場所にある88KB程度の米国のgeoJSONファイルを見ました。 出力をgeoJSONファイルに削減するにはどうすればよいですか?
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.