「DXF」の版間の差分
細 (→図形タイプ) |
細 (→OBJECTS セクション) |
||
154行目: | 154行目: | ||
非グラフィカル オブジェクトに適用されるグループ コードは、OBJECTS セクションに含まれる他、AutoLISP や ObjectARX アプリケーションでも、図形定義リスト内で使用される。 | 非グラフィカル オブジェクトに適用されるグループ コードは、OBJECTS セクションに含まれる他、AutoLISP や ObjectARX アプリケーションでも、図形定義リスト内で使用される。 | ||
<div class="mcol2"> | |||
* 関連資料 | * 関連資料 | ||
* [[OBJECT]] セクションのグループ コード(DXF) | ** [[OBJECT]] セクションのグループ コード(DXF) | ||
* | ** [[ACAD_PROXY_OBJECT]] ACAD プロキシ オブジェクト (DXF) | ||
* [[ACAD_PROXY_OBJECT]] ACAD プロキシ オブジェクト (DXF) | ** [[ACDBDICTIONARYWDFLT]] (DXF) | ||
* [[ACDBDICTIONARYWDFLT]] (DXF) | ** [[ACDBPLACEHOLDER]] (DXF) | ||
* [[ACDBPLACEHOLDER]] (DXF) | ** [[DATATABLE]] データ テーブル (DXF) | ||
* [[DATATABLE]] データ テーブル (DXF) | ** [[DICTIONARY]] ディクショナリ (DXF) | ||
* [[DICTIONARY]] ディクショナリ (DXF) | ** [[DICTIONARYVAR]] ディクショナリ変数 (DXF) | ||
* [[DICTIONARYVAR]] ディクショナリ変数 (DXF) | ** [[DIMASSOC]] 自動調整管理 (DXF) | ||
* [[DIMASSOC]] 自動調整管理 (DXF) | ** [[FIELD]] フィールド (DXF) | ||
* [[FIELD]] フィールド (DXF) | ** [[GEODATA]] (DXF) | ||
* [[GEODATA]] (DXF) | ** [[GROUP]] グループ (DXF) | ||
* [[GROUP]] グループ (DXF) | ** [[IDBUFFER]] ID バッファ (DXF) | ||
* [[IDBUFFER]] ID バッファ (DXF) | ** [[IMAGEDEF]] イメージ定義 (DXF) | ||
* [[IMAGEDEF]] イメージ定義 (DXF) | ** [[IMAGEDEF_REACTOR]] イメージ定義リアクタ (DXF) | ||
* [[IMAGEDEF_REACTOR]] イメージ定義リアクタ (DXF) | ** [[LAYER_INDEX]] 画層インデックス (DXF) | ||
* [[LAYER_INDEX]] 画層インデックス (DXF) | ** [[LAYER_FILTER]] 画層フィルタ (DXF) | ||
* [[LAYER_FILTER]] 画層フィルタ (DXF) | ** [[LAYOUT]] レイアウト (DXF) | ||
* [[LAYOUT]] レイアウト (DXF) | ** [[LIGHTLIST]] 光源一覧 (DXF) | ||
* [[LIGHTLIST]] 光源一覧 (DXF) | ** [[MATERIAL]] マテリアル (DXF) | ||
* [[MATERIAL]] マテリアル (DXF) | ** [[MLINESTYLE]] マルチライン スタイル (DXF) | ||
* [[MLINESTYLE]] マルチライン スタイル (DXF) | ** [[OBJECT_PTR]] オブジェクト プリンタ (DXF) | ||
* [[OBJECT_PTR]] オブジェクト プリンタ (DXF) | ** [[PLOTSETTINGS]] 印刷設定 (DXF) | ||
* [[PLOTSETTINGS]] 印刷設定 (DXF) | ** [[RASTERVARIABLES]] ラスター変数 (DXF) | ||
* [[RASTERVARIABLES]] ラスター変数 (DXF) | ** [[RENDER]] [レンダリング (DXF) | ||
* [[RENDER]] [レンダリング (DXF) | ** [[SECTION]] [断面 (DXF) | ||
* [[SECTION]] [断面 (DXF) | ** [[SPATIAL_INDEX]] 空間インデックス (DXF) | ||
* [[SPATIAL_INDEX]] 空間インデックス (DXF) | ** [[SPATIAL_FILTER]] 空間フィルタ (DXF) | ||
* [[SPATIAL_FILTER]] 空間フィルタ (DXF) | ** [[SORTENTSTABLE]] SORTENTS テーブル (DXF) | ||
* [[SORTENTSTABLE]] SORTENTS テーブル (DXF) | ** [[SUNSTUDY]] 日照シミュレーション (DXF) | ||
* [[SUNSTUDY]] 日照シミュレーション (DXF) | ** [[TABLESTYLE]] 表スタイル (DXF) | ||
* [[TABLESTYLE]] 表スタイル (DXF) | ** [[UNDERLAYDEFINITION]] アンダーレイ定義 (DXF) | ||
* [[UNDERLAYDEFINITION]] アンダーレイ定義 (DXF) | ** [[VISUALSTYLE]] 表示スタイル (DXF) | ||
* [[VISUALSTYLE]] 表示スタイル (DXF) | ** [[VBA_PROJECT]] VBA プロジェクト (DXF) | ||
* [[VBA_PROJECT]] VBA プロジェクト (DXF) | ** [[WIPEOUTVARIABLES]] (DXF) | ||
* [[WIPEOUTVARIABLES]] (DXF) | ** [[XRECORD]] 拡張レコード (DXF) | ||
* [[XRECORD]] 拡張レコード (DXF) | </div> | ||
[[category:dxf]] | [[category:dxf]] |
2014年7月6日 (日) 14:13時点における版
DXF 形式は、AutoCAD の図面ファイルに格納されるすべての情報をタグ付きデータで表現したもの。 「タグ付きデータ」とは、ファイル内の各データ要素の前に、「グループ コード」と呼ばれる整数が付いたデータのこと。グループ コードの値は、それに続くデータ要素のタイプを表し、この値は特定のオブジェクト(またはレコード)タイプのデータ要素の意味も表している。
実際には、図面内でユーザが指定したすべての情報は、DXF 形式で表現することができる。(一部を例外あり)
LISP や ObjectARX、SDS などで高度・高速なカスタマイズする際は、DXFの「グループ コード」に対する理解が必要といっていい。
ASCII DXF と バイナリ DXF
一般的にDXFファイル言うと、ASCII DXF となるが、バイナリ DXFというものもある。 バイナリ DXFにはASCII DXFのファイルに含まれる情報がすべて含まれているが、いくつかの特徴がある。
- ASCII DXF ファイルに比べて約25% 小さいファイルサイズになる。
- AutoCAD では約5倍程度高速に読み書きできる。(互換CADでも同様に高速に扱えるものもある)
- ASCII DXF ファイルでは、浮動小数点の精度を犠牲するが、バイナリ DXF ファイルでは、DWGと同様な精度が維持される。
バイナリ DXF ファイル形式を初めてサポートしたバージョンは、AutoCAD Release 10(日本だとGX-III)以降なので、それ以前のバージョンではない。また、DXFが扱えると謳っているソフトでもバイナリ DXFをサポートしていないケースが多い。
バイナリ DXF は次のようなヘッダになっている。
AutoCAD Binary DXF<CR><LF><SUB><NULL>
ヘッダの後にはグループコードと値のペアが続くが、バイナリ DXF ではバイナリ形式で表現される。 グループコードは 2バイトのバイナリ値(R14以前は1バイト)でそれに続く値は以下のいづれかの種類になる。
- 2バイト整数値。前が最下位バイト、後ろが最上位バイト。
- 8バイトの IEEE 倍精度浮動小数点数。初めが最下位バイト、最後が最上位バイト。
- 0(NULL)バイトで終了するASCII文字列。
文字の扱い
2007形式以降のDXFはユニコード(UTF-8)になっている。
グループ コードの値のタイプ
グループ コードは、対応する値のタイプを定義します。値のタイプには、整数、浮動小数点数、文字列がある。
次に、グループ コード範囲を示す。
グループ コードの値のタイプ
コード範囲 … グループ値のタイプ
- 0-9 … 文字列(AutoCAD 2000 の拡張シンボル名の説明にある 255 文字の制限は、2049 文字(シングルバイト)に拡張された。文字数に行末の改行コードは含まない)。
- 10-39 … 倍精度 3D 点
- 40-59 … 倍精度浮動小数点値
- 60-79 … 16 ビット整数値
- 90-99 … 32 ビット整数値
- 100 … 文字列(最大 255 文字、Unicode 文字列ではそれ以下)
- 102 … 文字列(最大 255 文字、Unicode 文字列ではそれ以下)
- 105 … 16 進数のハンドル値を表す文字列
- 110-139 … 倍精度浮動小数点値
- 140-149 … スカラー倍精度浮動小数点値
- 170-179 … 16 ビット整数値
- 210-239 … 倍精度浮動小数点値
- 270-289 … 16 ビット整数値
- 290-299 … 真偽フラグ値
- 300-309 … 任意のテキスト文字列
- 310-319 … バイナリ チャンクの 16 進数を表す文字列
- 320-329 … 16 進数のハンドル値を表す文字列
- 330-369 … 16 進数のオブジェクト ID を表す文字列
- 370-389 … 16 ビット整数値
- 390-399 … 16 進数のハンドル値を表す文字列
- 400-409 … 16 ビット整数値
- 410-419 … 文字列
- 420-429 … 32 ビット整数値
- 430-439 … 文字列
- 440-449 … 32 ビット整数値
- 450-459 … 長整数
- 460-469 … 倍精度浮動小数点値
- 470-479 … 文字列
- 999 … コメント(文字列)
- 1000-1009 … 文字列(コード範囲 0-9 で示したのと同じ制限が適用されます)
- 1010-1059 … 倍精度浮動小数点値
- 1060-1070 … 16 ビット整数値
- 1071 … 32 ビット整数値
すべての図形(グラフィカルオブジェクト)にあるグループコード
以下のグループコードは、すべての図形(グラフィカルオブジェクト)にあるコードである。 CAD のプロパティでいうところの一般や3Dの項目だと思えばイメージしやすいかもしれない。
グループ コード | 意味 | 省略時の既定... |
---|---|---|
-1 | APP: 図形名(図面を開くたびに変わる) | 省略されない |
0 | 図形タイプ | 省略されない |
5 | ハンドル | 省略されない |
102 | アプリケーション定義グループの開始、 | "{アプリケーション名" (省略可能) 既定なし。
アプリケーション定義のコード || グループ 102 内のコードと値は、アプリケーションによって定義される(省略可能)。 || 既定なし |
102 | グループの終了。"}" (省略可能) | 既定なし |
102 | "{ACAD_REACTORS" は、AutoCAD 不変リアクタ グループの開始を示す。このグループは、不変リアクタがこのオブジェクトにアタッチされているときにのみ存在する(省略可能)。 | 既定なし |
330 | オーナー ディクショナリのソフト ポインタ ID/ハンドル(省略可能) | 既定なし |
102 | グループの終了。"}" (省略可能) | 既定なし |
102 | "{ACAD_XDICTIONARY" は、拡張ディクショナリ グループの開始を示す。このグループは、拡張ディクショナリがこのオブジェクトにアタッチされているときにのみ存在する(省略可能)。 | 既定なし |
360 | オーナー ディクショナリへのハード オーナー ID/ハンドル(省略可能) | 既定なし |
102 | グループの終了。"}" (省略可能) | 既定なし |
330 | BLOCK_RECORD オブジェクトへのソフト ポインタ ID/ハンドル | 省略されない |
100 | サブクラス マーカー(AcDbEntity) | 省略されない |
67 | 省略または 0 の場合、図形がモデル空間にあることを示す。1 は、図形がペーパー空間にあることを示す(省略可能)。 | 0 |
410 | APP: レイアウト タブ名 | 省略されない |
8 | 画層名 | 省略されない |
6 | 線種名(BYLAYER 以外の場合に現れる)。特殊な名前 BYBLOCK は、浮動型の線種を示す(省略可能)。 | BYLAYER |
347 | マテリアル オブジェクトへのハードポインタ ID/ハンドル(BYLAYER 以外の場合に現われる)。 | BYLAYER |
62 | 色番号(BYLAYER 以外の場合に現れる)。0 は、色 BYBLOCK(浮動)を示す。256 は、BYLAYER を示す。負の値は、その画層が非表示になっていることを示す(省略可能)。 | BYLAYER |
370 | 線の太さの値。16 ビット整数として格納され、転送される。 | 省略されない |
48 | 線種尺度(省略可能) | 1.0 |
60 | オブジェクトの可視性(省略可能): 0 = 可視、1 = 不可視 | 0 |
92 | バイナリ チャンク レコードである、後続のグループ 310 に表示されるプロキシ図形グラフィックスのバイト数(省略可能) | 既定なし |
310 | プロキシ図形グラフィックス データ(複数の線、1 本の線あたり最大 256 文字)(省略可能) | 既定なし |
420 | 0 ~ 255 の値を持つバイトとして扱われなければならない 24 ビット色値。この場合最下位バイトは青の値で、中間バイトは緑の値、第 3 バイトは赤の値になる。最上位バイトは常に 0。このグループ コードは AcDbEntity クラスレベル色データおよび AcDbEntity クラスレベル透過性データのために予約されているので、それぞれのデータのカスタム図形により使用することはできない。 | 既定なし |
430 | 色名。このグループ コードは AcDbEntity クラスレベル色データおよび AcDbEntity クラスレベル透過性データのために予約されているので、それぞれのデータのカスタム図形により使用することはできない。 | 既定なし |
440 | 透明度の値。このグループ コードは AcDbEntity クラスレベル色データおよび AcDbEntity クラスレベル透過性データのために予約されているので、それぞれのデータのカスタム図形により使用することはできない。 | 既定なし |
390 | 印刷スタイル オブジェクトへのハードポインタ ID/ハンドル | 既定なし |
284 | 影のモード | 0 = 投影し、受影する。、1 = 投影し、受影しない。、2 = 投影せず、受影する。、3 = 投影も受影もしない。 |
図形タイプ
図形の種類を参照。
OBJECTS セクション
非グラフィカル オブジェクトに適用されるグループ コードは、OBJECTS セクションに含まれる他、AutoLISP や ObjectARX アプリケーションでも、図形定義リスト内で使用される。
- 関連資料
- OBJECT セクションのグループ コード(DXF)
- ACAD_PROXY_OBJECT ACAD プロキシ オブジェクト (DXF)
- ACDBDICTIONARYWDFLT (DXF)
- ACDBPLACEHOLDER (DXF)
- DATATABLE データ テーブル (DXF)
- DICTIONARY ディクショナリ (DXF)
- DICTIONARYVAR ディクショナリ変数 (DXF)
- DIMASSOC 自動調整管理 (DXF)
- FIELD フィールド (DXF)
- GEODATA (DXF)
- GROUP グループ (DXF)
- IDBUFFER ID バッファ (DXF)
- IMAGEDEF イメージ定義 (DXF)
- IMAGEDEF_REACTOR イメージ定義リアクタ (DXF)
- LAYER_INDEX 画層インデックス (DXF)
- LAYER_FILTER 画層フィルタ (DXF)
- LAYOUT レイアウト (DXF)
- LIGHTLIST 光源一覧 (DXF)
- MATERIAL マテリアル (DXF)
- MLINESTYLE マルチライン スタイル (DXF)
- OBJECT_PTR オブジェクト プリンタ (DXF)
- PLOTSETTINGS 印刷設定 (DXF)
- RASTERVARIABLES ラスター変数 (DXF)
- RENDER [レンダリング (DXF)
- SECTION [断面 (DXF)
- SPATIAL_INDEX 空間インデックス (DXF)
- SPATIAL_FILTER 空間フィルタ (DXF)
- SORTENTSTABLE SORTENTS テーブル (DXF)
- SUNSTUDY 日照シミュレーション (DXF)
- TABLESTYLE 表スタイル (DXF)
- UNDERLAYDEFINITION アンダーレイ定義 (DXF)
- VISUALSTYLE 表示スタイル (DXF)
- VBA_PROJECT VBA プロジェクト (DXF)
- WIPEOUTVARIABLES (DXF)
- XRECORD 拡張レコード (DXF)