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

OGR Simple Features Libraryは、ベクターファイル形式へのアクセスを提供するC ++オープンソースライブラリ(およびコマンドラインツール)です。

1
GDAL / OGRの「警告」を検出するには?
GDAL / OGRプログラムを使用してバッチスクリプトを実行すると、値1を確認することでエラーが発生したかどうかを検出できます。ERRORLEVEL Pythonまたは.NETでGDAL / OGRを使用すると、エラーが発生すると例外が発生します。 質問:実行中にが発行された かどうかをどのように検出しWarningますか? どうして? 警告が出てもプロセスが最後まで実行される可能性がありますが、予期したデータに関して出力が破損している可能性があります。私はこれらの破損をチェックするべきだと主張するかもしれませんが、私はプロセス全体を制御しているので、警告が出されたときに停止できるようにしたいと思います。
8 python  gdal  .net  ogr 

1
ESRIファイルジオデータベースからPostGISにデータをインポートするときのジオメトリエラー
次のコマンドを実行して、ESRI fgdbからpostgisにデータをインポートすると... ogr2ogr -f "PostgreSQL" -a_srs "EPSG:28355" -t_srs "EPSG:3857" PG:"dbname=tp_test user=postgres port=54321 password=xxxxxxx host=localhost" -overwrite P:\2012\183_TownPlanning_Symbology\Working\QueryLayer\TP_Query_Final_28355.gdb ...私は...! 警告1:OrganizePolygons()が予期しないジオメトリを受け取りました。内部リングを持つポリゴン、または4ポイント未満のポリゴン、または非ポリゴンジオメトリのいずれか。引数をコレクションとして返します。警告1:ポリゴンのジオメトリはシンプルジオメトリに変換できません。すべてのポリゴンはマルチポリゴンに含まれます。 ESRIでジオメトリを確認したところ、エラーは報告されていません。これで問題が解決するかどうかを確認するために、マルチパートからシングルパートを実行していますが、これにより、アークマップ10.1がクラッシュし、ディゾルブが発生します。問題なくソートが実行され、データセットを開くことができます。 以前にデータセットを正常にインポートしましたが、ESRI Diceツールを実行して大きなポリゴンを15,000以下の頂点に分割し、処理を高速化する必要がありました。 私はpostgisが初めてです。 新しいgdbの問題を修正する方法、またはpostgis自体でポリゴンを分割する方法はありますか?

1
GDALでFileGDBのパフォーマンスが遅い
GDAL 1.9.2のコンパイルを使用して、ESRIファイルジオデータベースに多くのASPRS LASポイントファイルを書き込もうとしています。GDAL / OGRのFileGDBドライバーは、大きなファイルを書き込むときに信じられないほど遅く、800万ポイントのレコードを書き込むのに45分もかかります。SATA3ドライブでGDALを使用するFileGDBの書き込み速度は、毎秒200キロバイト程度であり、テラバイトのデータを変換しようとすると許容できないほど低速になります。 FileGDBのドキュメントで、FGDB_BULK_LOADマクロを定義すると大規模なデータセットのパフォーマンスが向上することに気付きましたが、FGDB_LIBの直後に「FGDB_BULK_LOAD = YES」というテキストを含む行を「nmake.opt」ファイルに書き込んだとき、パフォーマンスに変化はありませんでした。ライン。 確かに、FileGDBは何十億ものポイントデータレコードを格納するための理想的な方法ではありませんが、それは別の時代には不便です。FGDB_BULK_LOAD機能を正しく使用しましたか?これは、GDALビルドではなく、私のソースコードにあるはずですか? ありがとう。 更新:適切な使用法:(チャットで回答) FGDB_BULK_LOAD設定が正しくGDAL / OGR・プロセスの環境変数として格納されます。これは、Ragiが示すように、ogr exe呼び出し中にコマンドラインで設定されます。GDAL機能を使用すると、プログラムで設定することができ、全体のプロセスのために CPLSetConfigOption("FGDB_BULK_LOAD", "YES"); または現在のスレッドだけを使用して CPLSetThreadLocalConfigOption("FGDB_BULK_LOAD", "YES"); FGDB_BULK_LOADを呼び出す前に設定する必要がありますFGdbDataSource::CreateLayer()。OGRCleanupAll()この変数の設定を解除するかどうかは明確ではありませんでしたが、念のため複数回呼び出しても安全です。 このオプションを使用すると、数百万から数千万のポイントを書き込む場合のパフォーマンスが約5.5倍速くなりました。

2
ogr2ogrを使用してWKTデータのCSVファイルをシェープファイルに変換しますか?
この質問は、シェープファイルからテキスト(ASCII)ファイルへの変換に関連していますか?。 1列のCSVファイルがあり、すべての行がWKT POLYGON()に対応しています。 WKT POLYGON(...) POLYGON(...) ... シェープファイルからwktに変換する方法は知っていますが、逆の方法をとる必要があります。このタスクを実行する方法は? ogr2ogrの設定/フラグをいじってみましたが、実際には何も役に立ちませんでした。 QGISを使用してこれを実行できることも知っていますが、データセットがかなり大きいため、フリーズ/クラッシュします。
8 convert  ogr  csv 

3
OGRとPythonのデータ型の間のマッピング?
PythonでOGRを使用してシェープファイルを作成し、Pythonデータソースからオンザフライでフィールドを作成しています。新しいフィールドの作成にはOGRデータ型が必要ですが、OGRとpythonデータ型の間にマッピングはありますか? たとえば、これは標準です。 new_field = ogr.FieldDefn('MYFLD', ogr.OFTInteger) 理想的には: ogr_datatype = get_ogr_data_type(python_data) new_field = ogr.FieldDefn('MYFLD', ogr_datatype) 現在、変換はハードコーディングされています(たとえば、int = ogr.OFTInteger)。

1
OGRを使用してShapefileジオメトリをWKBに変換する方法
シェープファイルの機能のジオメトリを取得し、そのジオメトリをpostgisに保存したいと思います(shp2pgsqlおよびpsqlコマンドを使用してシェープファイルをインポートすると発生するようなWKB形式で)。次に変換する方法 ジオメトリを取得するために、OSGeo OGRライブラリを使用しました。例: feat = layer.GetFeature(0) geometry = feat.GetGeometryRef() そして私は持っています <osgeo.ogr.Geometry; proxy of <Swig Object of type 'OGRGeometryShadow *' at 0x0096A2D8> > それでは、それをWKBジオメトリにどのように変換しますか?これにはPythonを使用しています。

4
OGRで3D dxfを作成することは可能ですか?
OGRで3D dxfを作成することが可能かどうか誰かが知っていますか?等高線にZ値を割り当て、CAD作業のためにそれらをdxfにエクスポートします。 PS。私はFMEがこれを実行できることを知っていますが、私は無料のソリューションを試してみて、可能であればQGISでそれを実行したいと考えています。
8 qgis  open-source-gis  ogr  3d  dxf 

4
OGRを使用してラインが交差するポリゴンを検​​索しますか?
1本の線(GPSトラック)で交差するすべてのポリゴンを見つけようとしています。私はこれを計算するために(Pythonからの)OGRライブラリーを使用していますが、現在は少し「総当たり」(そして遅い)です。私のトラックのすべてのポイントについて、すべてのポリゴンでintersectメソッドを呼び出します。明らかな最適化は、隣接するポリゴンでのみチェックすることです。しかし、これは既知の解決策(私が見つけられない...)の古典的な問題だと思います。 スタンドアロンソフトウェアを作成しようとしているので、専用データベースの使用は避けたいと思います(DBを使用する場合、spatialiteがオプションです)。 (参考までに、現在のソースコードはこちらから入手できます:https : //github.com/dkm/airspace-checker)

2
C#GDAL / OGRバインディングを使用したアプリケーションのデプロイ
私は、C#OGRバインディングを使用していくつかの単純な幾何学的機能を実行する比較的単純なWebアプリを開発しました。バッファ、クリップ...など 私は、FWToolsがインストールされているローカルマシンでこのアプリケーションを開発したので、すべてをうまく再生することはそれほど難しくありませんでした。 当然、私がこのアプリケーションをサーバーにデプロイしたとき、C#バインディングに関連する依存関係がすべて欠落しているため、何も機能しませんでした。とにかく、このアプリケーションのbinフォルダーに必要なすべてのファイルを含めることができますか?それとも、その価値よりも問題が多く、サーバーにFWToolsをインストールする必要がありますか?
8 gdal  c#  ogr 
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.