多数のシェープファイルをPostGISデータベースに正常にロードしました。SQLクエリに基づいて、特定のジオメトリとレイヤーをdxfファイルとして取得できるようにしたいと思います。
WindowsのOSGeo4WスイートのPostGIS、GDAL、PostgreSQL、Pythonを使用しています。
私はogr2ogrを次のように少し使用する必要があると想像しています:
$ ogr2ogr -sql "SELECT * FROM some_table" -f "dxf" outputfile.dxf -overwrite "PG:dbname=mydb user=dbusername password=dbpassword"
しかし、適切な値でそれを行うと、次のような一連のエラーが発生します。
ERROR 1: DXF layer does not support arbitrary field creation, field 'objectid' not created.
レイヤー内のすべての属性列でエラーが発生しsome_table
ますが、dxfファイルを取得します。
.dxfファイルを既に作成していて、上記のコマンド(-overwrite
オプションを含む)を再実行すると、代わりに次のエラーが発生します。
Layer sql_statement not found, and CreateLayer not supported by driver. ERROR 1: Terminating translation prematurely after failed translation from sql statement.
GDAL_DATA
環境変数が正しく設定されていることを確認しました。(〜C:\OSGeo4W\share\gdal
)
これらのツールはすべて初めてなので、このタスクに間違って取り組んでいる可能性は確かにあります。そのため、SQLクエリに基づいてPostgreSQLに格納されたGISデータから.dxfファイルを作成する方法についての提案やヒントを受け入れることができます。