概要 - バイナリ DXF ファイル(DXF)

ASCII DXF ファイル形式は、AutoCAD 図面を ASCII テキスト形式で完全に表現し、他のプログラムで簡単に処理できます。さらに AutoCAD は、完全な DXF ファイルのバイナリ形式を作成したり読み込むことができます。また、他のバイナリ ファイル形式の入力も制限付きで受け入れることができます。

SAVE[保存]および SAVEAS[名前を付けて保存]コマンドの[バイナリ]オプションを使用して、バイナリ DXF ファイルを書き出すことができます。このようなファイルには、ASCII DXF ファイルに含まれる情報がすべて含まれますが、ファイルはよりコンパクトになり、ファイル サイズが約 25% 小さくなります。また AutoCAD で高速(約 5 倍)に読み込んだり書き込むことができます。ASCII DXF ファイルでは、ファイル サイズを小さくするために浮動小数点の精度を犠牲にしますが、バイナリ DXF ファイルでは、図面データ ベース内での精度がそのまま維持されます(バイナリ DXF ファイル形式を初めてサポートしたバージョンは、AutoCAD GX-III(Release 10)であるため、それより前のバージョンでバイナリ DXF ファイルを読み込むことはできません)。

バイナリ DXF ファイルは、次のような 22 バイトのヘッダで始まります。

AutoCAD Binary DXF<CR><LF><SUB><NULL>

データがバイナリ形式で表されることを除き、ASCII DXF ファイルと同様に、ヘッダの後にデータ ペア(グループ コード、値)が続きます。グループ コードは、2 バイト(前が最下位バイト)の整数値(AutoCAD Release 13 より前の DXF ファイルは 1 バイト)です。各グループコードの後には、割り当てられた値が続きます。割り当てられた値は、次のいずれかになります。

グループ コードに続くデータのタイプは、ASCII DXF ファイルのデコードで使用される規則と同じ規則により、グループ コードから決定されます。角度の度への変換および日付の分数表現(ユリウス日表現)への変換は、ASCII DXF ファイルと同様に、バイナリ ファイルに対しても行われます。コメント グループ 999 は、バイナリ DXF ファイルでは使用されません。

AutoCAD Release 13 より前の DXF ファイルでは、拡張データのグループ コードは、バイナリ DXF では、値 255 の 1 バイトで表され、その後に 2 バイトの整数値(前が最下位バイト)が続きます。この整数値は、実際のグループ コードで、その後に実際の値(グループ値)が続きます。また、拡張データの値は、通常の DXF データの値と同じ方法で表されます。

そのため、AutoCAD Release 13 より前の DXF ファイルでは、たとえば拡張データの長整数グループでは次の値が現れます。値はそれぞれ、1、2、4 バイトです。

255         
Escape group code
1071
True group code
999999
Value for the 1071 group code

SAVEAS コマンドは、ASCII DXF ファイルと同じファイル拡張子(.dxf)でバイナリ DXF ファイルを書き出します。OPEN[開く]コマンドと INSERT[ブロック挿入]コマンドは、ヘッダ文字列によって、バイナリ ファイルであることを自動的に認識します。バイナリ ファイルであることを明示する必要はありません。

OPEN コマンドや INSERT コマンドでバイナリ DXF ファイルを読み込んでいるときにエラーが発生すると、AutoCAD ベースのプログラムによってファイル内のエラーが検出されたバイト アドレスが表示されます。