DXFファイルフォーマット
- 概要
- 公式の仕様書
- フォーマット
- 構文
- 解説
- サンプルファイル
概要
Autodesk社のAutoCADというソフト用のファイルフォーマットです。
多くのCGソフト、CADソフトがサポートし、CGソフト、CADソフトの中間ファイルフォーマットとして広く使用されています。
点データ、直線データ、円弧データ、折れ線データ、スプライン曲線データ、3D面データなど、多くの種類の3Dモデルデータの記録に対応しています。
DXFファイルフォーマットは、アスキーフォーマットです。
公式の仕様書
- AutoCAD Release 14 Format
- Autodesk.comホーム > Products > AutoCAD > Documentation > DXF Reference > AutoCAD Release 14 Format HTML
- AutoCAD 2000 Format
- Autodesk.comホーム > Products > AutoCAD > Documentation > DXF Reference > AutoCAD 2000 Format HTML
- AutoCAD 2002 Format
- Autodesk.comホーム > Products > AutoCAD > Documentation > DXF Reference > AutoCAD 2002 Format PDF
- AutoCAD 2004 Format
- Autodesk.comホーム > Products > AutoCAD > Documentation > DXF Reference > AutoCAD 2004 Format PDF
- AutoCAD 2005 Format
- Autodesk.comホーム > Products > AutoCAD > Documentation > DXF Reference > AutoCAD 2005 Format PDF
- AutoCAD 2006 Format
- Autodesk.comホーム > Products > AutoCAD > Documentation > DXF Reference > AutoCAD 2006 Format PDF
フォーマット
構文
0 SECTION 2 ENTITIES 0 3DFACE 8 (レイヤー名) 10 (1点目の頂点座標値のX成分値) 20 (1点目の頂点座標値のY座標値) 30 (1点目の頂点座標値のZ座標値) 11 (2点目の頂点座標値のX成分値) 21 (2点目の頂点座標値のY成分値) 31 (2点目の頂点座標値のZ成分値) 12 (3点目の頂点座標値のX成分値) 22 (3点目の頂点座標値のY成分値) 32 (3点目の頂点座標値のZ成分値) 13 (4点目の頂点座標値のX成分値) 23 (4点目の頂点座標値のY成分値) 33 (4点目の頂点座標値のZ成分値) 62 (色番号) 0 3DFACE 8 (レイヤー名) 10 (1点目の頂点座標値のX成分値) 20 (1点目の頂点座標値のY座標値) 30 (1点目の頂点座標値のZ座標値) 11 (2点目の頂点座標値のX成分値) 21 (2点目の頂点座標値のY成分値) 31 (2点目の頂点座標値のZ成分値) 12 (3点目の頂点座標値のX成分値) 22 (3点目の頂点座標値のY成分値) 32 (3点目の頂点座標値のZ成分値) 13 (4点目の頂点座標値のX成分値) 23 (4点目の頂点座標値のY成分値) 33 (4点目の頂点座標値のZ成分値) 62 (色番号) 0 ENDSEC 0 EOF |
解説
2行で一つのデータグループという形式になっています。
1行目がグループコード
2行目がグループデータ
となっています。
セクションというデータのまとまりがあります。
1つのセクションは、
グループコード 0 、グループデータ SECTION というデータグループに始まり、
グループコード 0 、グループデータ ENDSEC
というデータグループで終わります。
セクションには、HEADERセクション、TABLESセクション、BLOCKSセクション、ENTITIESセクションがあります。
セクションの種類は、グループコード 2 のデータグループのグループデータで指定します。
グループコード 2、グループデータ HEADER は、そのセクションがHEADERセクションであることを表します。
グループコード 2、グループデータ TABLES は、そのセクションがTABLESセクションであることを表します。
グループコード 2、グループデータ BLOCKS は、そのセクションがBLOCKSセクションであることを表します。
グループコード 2、グループデータ ENTITIES は、そのセクションがENTITIESセクションであることを表します。
- HEADERセクション
- このセクションで図面に関する一般情報を記述します。
各パラメターには、変数名と関連値があります。 - TABLESセクション
- このセクションで名前のついた項目の定義を記述します。
o ラインタイプのテーブル(LTYPE)
o レイヤーのテーブル(LAYER)
o テキストスタイルのテーブル(STYLE)
o 視点のテーブル(VIEW)
o ユーザ座標系のテーブル(UCS)
o ビューポート構成のテーブル(VPORT)
o 寸法スタイルのテーブル(DIMSTYLE)
o アプリケーション識別のテーブル(APPID) - BLOCKSセクション
- このセクションで、図面中の各ブロックを作るエンティティを表現する、ブロック定義エンティティを記述します。
- ENTITESセクション
- このセクションで、どんなブロックリファレンスをも含む、ドローイングエンティティを記述します。
DXFファイルフォーマットのすべてを解説するのは困難なので、3Dモデル表現に関するフォーマット部分にフォーカスして解説します。
- ENTITIESセクション
- 3Dモデル表現に関係のあるセクションは、ENTITIESセクションです。
エンティティ記述は、エンティティのタイプを表すデータグループで始まります。
エンティティのタイプを表すデータグループのグループコードは 0 です。
エンティティのタイプを表すグループデータ、
LINE、POINT、CIRCLE、ARC、TRACE、SOLID、TEXT、SHAPE、BLOCK、ENDBLK、INSERT、ATTDEF、ATTRIB、POLYLINE、VERTEX、SEQEND、3DFACE、VIEWPORT、DIMENSION、Linear、Angular、Diameter、Radius、Ordinate
などがあります。
すべてのエンティティは、レイヤー名を表す記述があります。レイヤー名を表すデータグループのグループコードは 8 です。
それぞれのエンティティは、立面図情報、太さ情報、線種情報、色情報を指定する記述があるかもしれません。 - 3DFACEエンティティ
- 1枚の面データを表すエンティティとして、3DFACEエンティティがあります。
- グループコード 0、グループデータ 3DFACE
- ENTITIESセクション内、もしくは、BLOCKSセクション内で、本記述があったときには、1枚の面データの記述の開始を表します。
1枚の面データの記述は、次にグループコード 0のデータグループが現れるまで続きます。
(他のセクション内で本記述があったときに、何を表すかに関しては、公式の仕様書を参照ください。) - グループコード 10(、20、30)、グループデータ (頂点座標値の1成分値)
- 1枚の面データの記述中の、グループコードが10(、20、30)のデータグループのグループデータは、その面の1点目のX(、Y、Z)座標値を表します。
- グループコード 11(、21、31)、グループデータ (頂点座標値の1成分値)
- 1枚の面データの記述中の、グループコードが11(、21、31)のデータグループのグループデータは、その面の2点目のX(、Y、Z)座標値を表します。
- グループコード 12(、22、32)、グループデータ (頂点座標値の1成分値)
- 1枚の面データの記述中の、グループコードが12(、22、32)のデータグループのグループデータは、その面の3点目のX(、Y、Z)座標値を表します。
- グループコード 13(、23、33)、グループデータ (頂点座標値の1成分値)
- 1枚の面データの記述中の、グループコードが13(、23、33)のデータグループのグループデータは、その面の4点目のX(、Y、Z)座標値を表します。