GeoJSON を DXF に変換

この変換ツールは、1つ以上の GeoJSON ファイルを、AutoCAD、BricsCAD、DraftSight、LibreCAD 用の1つの DXF 図面に変換します。経度・緯度の GeoJSON は、データのある UTM ゾーンのメートル単位、または入力した座標系に変換されます。投影座標系の GeoJSON は、その座標系のままです。ファイルはそれぞれ CAD 画層になり、名前などのフィールドは文字として書き出せます。ブラウザー内で変換され、アップロードされません。

うまく変換できないファイルがありましたか? [email protected] までメールでお知らせください。小さなサンプルファイルを添えていただけると、修正しやすくなります。

要点

GeoJSON を DXF に変換する理由

GeoJSON は Web 地図、geojson.io、OpenStreetMap のエクスポート、多くの地図 API で使われる形式ですが、CAD ソフトでは開けません。座標もたいてい度単位の経度・緯度なので、CAD では小さくゆがんで描かれます。このページは、QGIS を支えるオープンソースのライブラリー GDAL で GeoJSON をブラウザー内で読み込み、座標をデータのある UTM ゾーンのメートル単位(または入力した平面直角座標系などの座標系)に変換して、1つの DXF に書き出します。ポイントは DXF のポイントに、ラインはポリラインに、ポリゴンは穴も含めて閉じたポリラインになります。GeoJSON ファイルはそれぞれ専用の CAD 画層に入ります。フィールドを選べば、その値ごとに画層が分かれます。名前などのフィールドの値は、図形の横に文字として書き出せます。サーバーには何も送信されません。

GeoJSON を DXF に変換する方法

  1. .geojson または .json ファイルを1つ以上ドロップします。複数のファイルは1つの DXF にまとめられ、それぞれ専用の画層に入ります。
  2. 出力の座標系を確認します。経度・緯度のデータにはデータの UTM ゾーンが入力されているので、CAD 図面が使っている座標系、たとえば JGD2011 / 平面直角座標系 IX 系(EPSG:6677)などに置き換えてください。
  3. CAD 画層名に何を使うか、どのフィールドを文字として書き出すかを選び、「DXF に変換」をクリックします。

変換で変わること

図面の座標系を選ぶ

標準の GeoJSON(RFC 7946)は WGS84 の経度・緯度です。変換ツールはデータのある UTM ゾーンを入力するので、図面はメートル単位になり、寸法を測れます。既存の CAD 図面に重ねる必要がある場合は、その図面の座標系を入力してください。たとえば JGD2011 / 平面直角座標系 IX 系(EPSG:6677)、VII 系(EPSG:6675)、JGD2011 / UTM 54N(EPSG:6691)などです。DXF には座標系が保存されないため、どれを選んだかを CAD の担当者に伝えてください。

「crs」のないメートル単位の GeoJSON

QGIS では、GeoJSON を平面直角座標系や UTM などの投影座標系で保存できます。ファイルに「crs」メンバーがあれば、その座標系が読み取られてそのまま使われ、何も自動入力されません。ない場合、メートル単位の座標は WGS84 ではありえないため、変換ツールは変換の前にデータの EPSG コードの入力を求めます。

属性は引き継がれない

DXF には属性テーブルがありません。書き出されるのはジオメトリと画層名、そして希望すれば1つのフィールドの文字だけです。そのほかの属性や geojson.io の simplestyle の色は引き継がれず、すべてのオブジェクトは CAD 画層の色(ByLayer)になります。属性を残したい場合は、同じ GeoJSON をシェープファイルや CSV にも変換してください。

文字の高さは推定値

文字は、図面の幅のおよそ 1/250 の高さで書き出され、1、2、5 メートル(またはそれに 10 のべき乗を掛けた値)に丸められます。高さはステータス行に表示されます。AutoCAD ではクイック選択(QSELECT)ですべての文字を選び、高さをまとめて変更できます。

ファイル形式について

GeoJSON

GeoJSON は地理的なフィーチャーを表すプレーンテキストの JSON 形式で、2016 年に RFC 7946 として標準化されました。 Leaflet、MapLibre、Mapbox などのウェブ地図や、多くの API が標準で使う形式です。

  • 座標は WGS84 の経度、緯度の順です。
  • ポイント、ライン、ポリゴンを1つのファイルに混在させることができます。
  • プロパティには任意の JSON 値を使え、フィールド名の長さに制限はありません。

DXF

DXF(Drawing Exchange Format)は AutoCAD の公開された交換用の形式で、1982 年から Autodesk が仕様を公開しています。 測量、建築、土木の現場で、CAD 図面をソフト間でやり取りするのに使われます。DXF には、名前の付いた画層(レイヤー)上の線、 ポリライン、円弧、円、文字、ハッチング、ブロックが入りますが、属性テーブルと座標系はありません。

  • テキスト(またはバイナリー)形式で、図形のオブジェクトが名前の付いた画層に置かれます。ブロックは、何度も挿入できる再利用可能なシンボルです。
  • 属性テーブルはありません。オブジェクトが持つのはジオメトリのほか、画層、色、線種、文字の場合はその文字列だけです。
  • 座標系は保存されません。座標はただの数値で、国の座標系(日本なら平面直角座標系)か、現場ごとのローカル座標であることがよくあります。
  • DWG は AutoCAD 独自のバイナリー形式で、DXF とは別物です。

よくある質問

どの CAD ソフトで DXF を開けますか?

DXF は AutoCAD 2004 形式で、AutoCAD、AutoCAD LT、BricsCAD、DraftSight、LibreCAD、QCAD、MicroStation、QGIS のいずれでも読み込めます。

DWG で出力できますか?

直接はできません。DXF を AutoCAD、BricsCAD、DraftSight で開いて「名前を付けて保存」で DWG を選ぶか、無料の ODA File Converter で変換してください。

高さは保持されますか?

はい。GeoJSON に 0 以外の値を含む3つ目の座標があれば、DXF には 3D のポイントとポリラインが書き出されます。すべて 0 の座標は取り除かれるため、図面は平らなままです。

GeoJSON が FeatureCollection ではなく単一のジオメトリです。変換できますか?

はい。単独のジオメトリ、1つの Feature、FeatureCollection のどれでも読み込めます。API から取得した .json ファイルも、中身が GeoJSON であれば読み込めます。

GeoJSON はアップロードされますか?

いいえ。DXF はお使いのコンピューター上でブラウザーが書き出し、サーバーには何も送信されません。