DXFデータの様式


うん…これが理解出来たら言う事、無いですね。
早々から”逃げ?”を打つつもりでもないのですが、なかなか厄介な問題です。
何故、DXFデータが厄介かと言うと、
1.データ量が膨大で、解析をする気にはなれない。
2.参考文献が無い。(ヘルプの利用法すら良く分からない)
そんなところかな?

ここでは、出来るだけ”分かり易く”を念頭にDXFデータを解説します。
(専門的な問題は、自ら”ヘルプ”で調べて下さい。)

1.ヘルプ画面の表示方法とDXFデータの解析方法
そもそも、これが問題ですね。
社内の”システム担当”とか呼ばれている方々は、何故か”ヘルプ”の利用法に精通しています。
(傍から見ると、コンピュータと”会話”でもしているかのような操作に絶句!…ですよね。)

あなたがオートCADの正式ユーザーならば、ヘルプボタンをクリックして、
”オートCADヘルプ”をクリックすると、”DXFリファリンス”の表題が見えるはずです。
その表題をクリックして”印刷ボタンをクリックすれば、”マニュアル?”がプリンターから出て来ます。
(印刷ボタンを押さずに、各項目をクリックすれば、画面で読む事も出来ます。)

次は、DXFデータをプリンターから出力します。
何度も言うように、DXFデータは膨大な大きさになっています。
線を2、3本に円を一つと寸法一つ位のデータを作成して、印刷するのが良いでしょう。
(それでも、A4用紙に5枚〜10枚出力されるはずです。)

後は、一行ずつDXFデータと”ヘルプマニュアル?”を比較していきます。
DXFデータは、二行おきにマニュアルに書かれた”制御コード”が、出現します。
(DXFデータは、”二行で一組”と覚えておきましょう。)
それさえ分かれば、詳細な意味は分からなくでも、その概要を知る事が出来るはずです。

これが、”正式”なDXFデータの解析方法なのですが…。
(そんなので分かれば、苦労は必要ないですね。)



2.データ構成
数有るプログラミング言語の中で”COBOL”をかじられた方は、ピンとくるはず。
DXFデータの中身は複数のセクション(節?…大分類)に分かれています。
制御コード”0”の次行に、”SECTION”というアルファベットが現れ、次行に”2”が現れます。、
0
SECTION
2
この”2”の次行に現れるアルファベットが、セクション名です。
(ちなみに、”0”も”2”も3カラム目に現れる…1、2カラムは空白です。)

(1)HEADER(ヘッダ)セクション
   DXFデータのバージョン、原点、カレントレイア、文字の大きさ等が記述されています。
   正式には”図面に関する変数の設定”が記述されている訳です。
   (例えばバージョンは、”$ACADVER”と記述された2行後の”AC○○○○”です。)
   全部説明していたら、それだけで夜が明ける(約200の変数が有る)
   ヘルプで調べて下さい…としか言えない理由は、”その数の多さ”ですね。
(2)CLASSES(クラス)セクション
   あれれ^^;が従事するお仕事では、使用されていないSECTIONです。
   (あれれの客先は、バージョンR12を必要とされているので…。)
   アプリケーション定義のクラスに関する情報が記述されているようです。
(3)TABLES(テーブル)セクション
   テーブルSECTIONは、複数のテーブル(小分類)に分かれています。
   @APPID(アプリケーションID)テーブル
   ABLOCK_RECORD(ブロックレコード)テーブル
   BDIMSTYLE(寸法スタイル)テーブル
   CLAYER(画層)テーブル
   DLTYPE(線種)テーブル
   EUCS(ユーザ座標系)テーブル
   FVIEW(ビュー)テーブル
   GVPORT(ビューポート)テーブル
   凄いですね。あれれ^^;が意識した事の有るのは”LAYERテーブル”だけです。
   画層とか線種が”BYLAER”と言う表現を聞いたら、TABLEに記述されている訳です。
   逆に、”BYLAERじゃダメ!”と言われたら、ここに何を記述しても無駄のようです。
(4)BLOCKS(ブロック)セクション
   あれれ^^;が従事するお仕事では、あまり意識しないSECTION。
   ”BYBLOCK”が必要な場合は、このSECTIONに記述されるようです。
   ちなみに、あれれ^^;のCADでは、BLOCKの内容が”ENDSEC”だけしか無い。
   (END−SECTIONだけならば、何故、必要なのか?よく分からない。)
(5)ENTITIES(エンティティ…図形)セクション[必須]
   他のSECTIONが無くても、ここだけ有れば”DXFデータ”???です。
   何しろ、図面を形成する全要素(グラフィカルオブジェクト)の情報が記述されています。
   通常は、全データ量の九割以上が”ENTITIES”に割り当てられています。
   例1)LINE(線分)
      レイア名、始点、終点の座標値等が記述されています。
   例2)ARC(円弧)
      レイア名、中心点、開始角度、終了角度、半径等の情報が記述されています。
   例3)TEXT(文字)
      レイア名、原点位置、文字の角度、文字列そのもの等が記述されています。
      よく、”DXFは文字の受け渡しがうまく行かない”と言う声を聞きます。
      ここへ記述された文字列が、”全角”なのか”半角”なのかの影響は無視出来ません。
   例4)DIMENSION(寸法)
      文字と同様、データの受け渡しでトラブルの多い要素です。
      平行寸法、角度寸法など、多種多様で説明困難です。
      困った時には、”分解”(ダイナマイトのアイコン)で、線と文字に分解しましょう。
(6)OBJECTS(オブジェクト)セクション
   そのようなSECTIONも有るのですね????
   正直なところ”ヘルプ”を見るまで知れませんでした。
   少なくとも、あれれ^^;のCADのDXFには有りません。
(7)THUMBNAILIMAGE(サムネールイメージ)セクション
   これも初めて聞いたSECTIONです。
   当然、あれれ^^;のCADでは、出力出来ません。



ここまで読まれて、”なんといい加減な説明だ!”とお怒りの方も居られるでしょう。
しかし、ここで重要なのは、”客先がどのようなDXFデータを欲しているか?”なのです。
つまり、DXFデータが”どの様に利用されるのか?”を知らなければ、あなたの知識は空回り…なのです。


次のコーナーでは、有りがちな問題を取上げて、それを説明しましょう。






DXFデータに戻る メニューに戻る