JWCのDXF変換

JW_CADののバージョンは、R12J相当である、と考えて良い。但し、読込側のCADが同じバージョンR12Jであっても100%の変換はできない。出来る限りの変換性能を引き出すには、DXF変換プログラム実行前段階での準備も必要となる。また、書出・読込時には、[DXF]コマンドの[3)設定]を変えなければ成らない場合もある。

ここでは、DXF保存・DXF読込に分けて、問題点を上げながら、変換性能を引き出す方法を解説する。

1.DXF保存

1-1. 前準備

1-1-1. 補助線データの消去

DXF変換すると補助線は点線に変換される。不要な補助線は消去する。

[消去]→[1)範囲内消去]→図面全体を範囲指定→[F3]キーを押す(これで補助線のみが選択範囲として「赤表示」になる)→[1)範囲確定]→実行

1-1-2. 図面範囲外データの消去

DXFファイルでの遣り取りを何度も繰り返していると、何かの拍子に、図面範囲外(ディスプレイで表示出来ない範囲)にデータが記述される場合がある。これらのデータもDXFファイルには記述される。DXFファイルの書込・読取には別に問題にならないが、このファイルを出力する時、プリントアウト出来ない場合がある。「不正なデータがあります」等のエラーメッセージが出て、プリントアウト出来ないことになる。

図面範囲外にデータが存在する恐れがある場合は、それらのデータを消去すること。

[消去]→[2)範囲外消去]→図面全体を範囲指定(必要なデータを「赤表示」させない)→[1)範囲確定]→実行

1-1-3. 非表示レイヤのデータ消去

「非表示レイヤ」のデータは、出力する時プリントアウトしないが、DXFファイルへの保存時には、そのデータも記述される。そして、レイヤの表示状態は、DXFファイルには記述されない。
レイヤの表示状態を確認して、「非表示レイヤ」があれば「読取可能レイヤ」に切り替え、不要なデータであれば消去する。

1-1-4. 重複線の整理

 DXFファイルは元のファイルの数倍の容量となる。作図過程で重複線はどうしても生じる。特に寸法線の重複は避けられない。DXFファイルの容量を減らす為にも実行しておいた方が良い。

[オプション]→[4)一括処理]→[3)データ整理]→[1)重複線整理]→実行

1-1-5. レイヤ名を半角文字に変更

レイヤ名に全角文字が使用できないCADソフトがある。その様なCADでは、DXFファイルにレイヤ名に全角文字の記入があっても、読込できない。MacのCAD、AutoCad等では、レイヤ名に全角文字が使用できないようである。
全角文字記入のレイヤ名は半角文字に変更すること。DXFファイル作成を考慮に入れると、「レイヤ名は半角文字記入」を習慣付けることをお勧めする。

1-1-6. 縮尺の整理

 レイヤグループ毎に違う縮尺の設定を行なっている場合は、全て同じ縮尺に設定する。これを行なわないと、DXFファイルに記述される用紙サイズや数値データが、正しい記述にならない。
レイヤグループの縮尺設定は、データが全く無いレイヤグループの縮尺も影響するので注意が必要である。
 違う縮尺データが混在するファイルは、[移動]や[他図面複写]コマンドで全てのデータを1種類の縮尺レイヤグループに記述し、全てのレイヤグループの縮尺を同じ設定にする。こうしておけば、読込側の作業が簡単に成り、寸法精度も確保される。

JW_CADの「縮尺設定」とDXFへの記述

DXFの数値データは常に縮尺1/1で記述される。例えば縮尺1/50のJWCのデータをDXF変換すると、50倍の寸法値として記述される。JWCで[600]の寸法値は、DXFでは[30,000]として記述される。これは「文字大きさ」についても同じことで、[3mm]の文字は[150]として記述される。

但し、JWCでは、データが存在するデータの縮尺が常に反映されるとは限らない。断定は出来ないが、どうも[0]グループレイヤの縮尺設定で変換されるようだ。例えば[7]グループレイヤに縮尺1/50で作成したデータでも、[0]グループレイヤに縮尺1/100の設定があると、DXFデータには100倍の寸法値として記述されてしまう。

「グループレイヤ毎の縮尺設定」と「DXF変換」がどういう関係にあるのか?、は今一つハッキリ解らない。よって、ここでは「全てのレイヤグループを同じ縮尺設定」をお勧めする。

 

1-2. DXFの保存設定

JW_CADのDXF保存には4っのオプション設定が可能である。

[入出力]→[1)ファイル]→[6)DXF]→[3)設定]

下記は初期設定の内容で、頭の★付きが選択した設定を示す。
出力時の設定

点の出力 ★点のまま    円に変換
円の出力 ★円のまま    線に変換
レイヤ名  全角あり   ★半角のみ
空白出力 ★標  準     最小限

1-2-1. 点の出力

実点機能はJW_CAD独特の機能である、と考えた方が良い。殆どのCADソフトでは実点の概念を持っていない。多くのCADでは、寸法線の始点・終点を小さな円で表示している。
よって、DXF保存時には、読取側のCADに実点機能がある場合を除き、「実点は円に変換」を選択する。

点の出力  点のまま   ★円に変換

1-2-2. 円の出力

通常、「円」は問題なく読取側に変換可能であるが、「楕円」は完全に読取側で変換出来ないケースがある。その様な場合は「円を線に変換」を選択する。但し、前記の「実点は円に変換」を同時に選択設定した場合は、この円も線に変換される。そのため、DXFファイルの容量(byte数)が膨大なものになる。
通常は、初期設定の「円の出力は円のまま」を選択し、「楕円」等、曲線の変換に問題がある場合のみ「円の出力は線に変換」を選択する。

1-2-3. レイヤ名

前述した様に、レイヤ名には半角文字記入を習慣付けた方が良い。通常は、「レイヤ名は半角のみ」を選択。
読込側のCADでレイヤ名に全角文字使用可、と事前に分かっている場合のみ、「レイヤ名は全角あり」を選択する。

1-2-4. 空白出力

この設定については、詳しくは分からない。「図面範囲の記述が違う?」とも思っているのだが....。「標準」と「最小限」との違いが分からないので、初期設定の「空白出力は標準」で使用して構わないようである。

1-3. JW_CADのDXF保存の特徴

JW_CADのDXFファイルデータ内には、[BLOCKS]セクション(複合図形の定義を記述)がある。但し、このセクションの記述は読込時のみ有効であり、保存時では複合図形は単純線に分解して記述される。
JW_CADの複合図形とは

[曲線]→[1)サイン曲線2)2次曲線3)スプライン4)ベジュ曲線5)手書線]
[オプション]→[5)日影図]→[2)日影図3)等時間図]

で作成した線を指す。
複合図形は、編集する時支障となる場合がある。そんな時、一度[DXF]→[1)保存]でDXFファイルを作成し、[DXF]→[2)読込]でそのDXFファイルを読込めば、複合図形は単純線に分解されているので、編集が容易になる。また、読込んだDXFファイル内に複合図形があり、編集に支障がある場合は、同じ様に[DXF保存]→[DXF読込]を実行すれば、複合図形は単純線に分解される。

2.DXF読込

DXFにはスケールという概念がない。読込側の用紙サイズに合わせてスケールを自動調節している。これは、AutoCadが縮尺を1/1しか持っていない、常に原寸で作図しているためである。
DXFファイルのデータはXY座標で記述されているが、この座標の原点位置は各CADソフトで違う。そのため、読込時にデータが用紙範囲外に表示されることがある。
これらの問題を解決するには、事前に、そのDXFファイルの「用紙サイズ」・「縮尺」・「文字大きさ」を知っている事、が重要になる。以上を踏まえ、「事前情報有」・「事前情報無」に分けて解説する。

2-1. 事前情報有

2-1-1. 前準備

DXFファイルを読込む前に、事前情報を元に「用紙サイズ」・「縮尺」・「文字大きさ」を設定する。
この時、「縮尺」・「文字大きさ(縦寸法・横寸法・間隔)」は事前情報と同じ設定にするが、「用紙サイズ」は事前情報より大きなサイズとした方が良い。

2-1-2. DXFの読込設定

[入出力]→[1)ファイル]→[6)DXF]→[3)設定]

で設定するが、初期設定は「図面の範囲を読み取る」となっているが、「図面の範囲を無視する」に変更する。

入力時の設定

図面の範囲 読み取る  ★無視する

ここで、「読み取る」を選択すると、前準備で設定した「縮尺」が、DXFファイルの用紙サイズを元に読込と同時に変更されてしまう。

2-1-3. 用紙サイズの変更

DXFファイルを読込んでも、図面データが用紙範囲外、画面をスクロールしても表示範囲に納まりきれない場合がある。これは書出側と読込側での座標原点位置が違う場合に生じるようだ。
JW_CADの座標原点は、用紙範囲(赤の点線枠)の左下である。DXFファイルを読込むと、この原点より左下にデータが表示される場合がある。極端な場合は、画面上に全くデータが現れない場合もある。この様な場合は、これらのデータが完全に表示できるまで更に用紙サイズを上げる。

A0以上の用紙設定はJW_CADの画面 T]の「用紙・縮尺ウィンドウ」項目参照。

2-1-4. 図面データの移動・用紙サイズ変更

データ全体を、用紙範囲(赤の点線枠)内に移動させる。この時、JW_CADの座標原点より右側&上側に配置する。そして、用紙サイズを元に戻す。

但し、事前情報が有っても、正確な読込が出来ない場合がある。この原因は、書込時の縮尺設定にある。1/100の図面であつても、DXF書込時に他のレイヤに違う縮尺の設定がある場合は、DXFファイルには正しい「用紙サイズ」や「数値データ」の記述が出来ない。また、縮尺が混在するファイルの場合は、縮尺設定が違うままでは、「用紙サイズ」や「数値データ」が正しく記述されないことがある。

この様な場合は、次の「事前情報無」の方法で読込む。

2-2. 事前情報無

 「用紙サイズ」・「縮尺」の情報が事前に無い場合、読込方法は2っ考えられる。「読込を1度で済ます方法」・「1度読込んでそこで前記の情報を確認して再読込」である。

2-2-1. 読込を1度で済ます方法

入力時の設定は、初期設定の「図面の範囲を読み取る」。読込後は、前項の「2-1-3. 用紙サイズの変更」・「2-1-4. 図面データの移動・用紙サイズ変更」と同じ操作をして用紙範囲にデータが表示されるようにする。
ここでは、表示縮尺と図面データの縮尺が違うケースが多い。寸法値と[測定]コマンドの測定値を比べて確認する。両者の数値が違う場合は、本来の縮尺に編集しなければならない。

編集方法は2っある。

2-2-1-1. 縮尺変更

データが無い「レイヤグループ」に移動し、そのレイヤグループの縮尺を変更して、[測定]コマンドの測定値を比べて確認する。仮に、「読込レイヤグループ」の縮尺が1/200であっても、例えば、縮尺1/100で測定して、この測定値と寸法値が同じであれば、その図面は本来1/100の図面である。「読込レイヤグループ」にある全データを、縮尺1/100に設定した「レイヤグループ」に移動させる。

[移動]→図面全体を範囲指定→[1)範囲確定]→[7)レイヤ移動]→[1)書込みグループ[?]に移動]→「縮尺が違うグループに移動しようとしています。強行しますか?」のメッセージが出る→実行

データが縮尺1/100のレイヤグループに移動し、本来のデータと同じになる。

2-2-1-2. 数値倍率での変更

寸法値と[測定]コマンドの測定値を比べて確認し、その数値を記憶しておく。[移動]コマンドの数値倍率で拡大・縮小をして縮尺と図面データを一致させる。

例えば、寸法値が[2,000]で、測定値が[1,830]の場合、

[移動]→図面全体を範囲指定→[1)範囲確定]→[3)数値倍率]→[倍率X,Y= ]→ここで[2000/1830]とキー入力→実行→移動位置をクリック

以上の操作は、[変形]の[1)パラメトリック変形]でも同じ様に可能である。但し、ここで再度[測定]コマンドでの測定を行なうと、測定値が[1,999.9]となる場合がある。
これは2度のスケール変更を行なった結果であり、書込側・読込側それぞれのCADの寸法精度にも影響されている。

また、読込時に縮尺が1/7などに成る場合がある。建築図面であればこの様な縮尺は通常使用しないので、用紙サイズを変更して縮尺1/5に変更することになる。結局、3度のスケール変更を行う結果となる。縮尺変更を行なう度に寸法精度は落ちる。

正確な寸法を反映させるためには、次の「1度読込んでそこで情報を確認して再読込」を実行した方が良い。

2-2-2.1度読込んでそこでの情報を確認して再読込

まずは、DXFファイルを読み込む。「寸法値と[測定]コマンドの測定値を比較」や「用紙サイズの変更」を実行して、そのDXFファイルの「用紙サイズ」・「縮尺」を読み取る。
建築図面では限られた縮尺しか使用しないので、「縮尺」を特定するのは、難しい問題では無いはずである。
ここで得られた情報を元に、『2-1. 事前情報有』で説明した方法で再度DXFファイルの読込を実行する。この方法により、寸法精度は確保できるはずである。

「2-1. 事前情報有」の方法で、同じDXFファイルを、縮尺設定を変えて読込んだ場合、文字の大きさが違う。1/100設定で読込んだ時と1/50設定で読込んだ時では、文字のPenNoが違う。これは、DXFファイルに記述された「文字大きさのデータ値」が、縮尺の設定値により変換されてしまうためである。文字の正確な変換を確保する為にも、正しい「縮尺」
を事前情報として得ることは、重要な要素である。

又、用紙サイズも同じように重要な情報である。用紙サイズは[HEADER]セクションに記述してある。これを観て、用紙サイズと縮尺を読み取ることも可能であるが、これには、ある程度の訓練が必要である。

3.便利なDXF変換フリーソフト

DXFは記述ルールが分かり安く、解析も容易で変換プログラムも作り安い。といった特徴により、JW_CAD用として多くのDXF変換用のフリーソフトやシェアウエアソフトが存在する。DRACad用、AutoCad用それぞれ専用のソフトもある。しかし、その殆どがDOS版であり、DOSプロンプトからの起動であったり、DXFの旧バージョン専用であったり、使うに
はイロイロ問題がある。
そんな中で、「AJ_DXF」をここに紹介する。中原 勝明氏が作成したプログラムで、フリーソフトであり、配布は自由です。Win95のデスクトップからの起動が可能で、メッセージに従って操作するだけで良いので、使い勝手も良好である。

AJ_DXF

「DXFファイル」を「JW_CADで読込み可能なDXFファイル」に変換ずるDOS版のプログラムです。AutoCadから出力されたDXFファイルを変換することを前提としたものですが、R13J以上のバージョンで変換されたDXFファイルも、ほぼ読込み可能なDXFファイルに変換してくれます。
AutoCadでの書出は、R12Jでの書出よりR13J・R14Jでの書出の方が変換率が良い、とのこと。また、JW_CADでは読込めない記述のデータは自動的に消去されるので容量も小さくなります。検証結果は、読込不可だった「寸法」が読込み可能になりました。

同じ様なソフトで、「TY_DXF」というプログラムがあるそうです。JW_CAD専用に特化していなくて、汎用のDXF変換ソフトとのこと。興味のある方はニフティーサーブの建築フォーラムCAD館LIB3に登録してあるそうですから、誰かダウンロードして試してみて下さい。

トップページへ