本稿は 2005年にホームページ(Lite & SeenLite)に掲載したものを再編集したものです。
ようこそ JW_CAD 外部変形
JW_CAD 外部変形は 32 ビット バージョンのコマンド プロンプト (Cmd.exe) で実行されます。MS-DOS(エミュレーションモード)です。最近では 64 ビット バージョンのコマンド プロンプト (Cmd.exe) もあるようです。
JW_CAD 外部変形を実行するための バッチファイルを簡単に説明します。
「ようこそ」を MS-DOS プロンプト画面に表示させるなら
echo ようこそ
です。
これをバッチファイル( 000.bat )にすれば
@REM 000 @echo off echo ようこそ pause
となります。
JW_CAD 外部変形のバッチファイル( 001.bat )は、それに
@REM 001 @echo off REM #jww REM #e echo ようこそ pause
として REM #jww と REM #e の2行を追加します。
これで、JW_CAD は、このバッチファイルを 外部変形だと認識します。
「ようこそ」を JW_CAD に書くなら( 002.bat )
@REM 002 @echo off REM #jww REM #0 REM #e echo ch ^"ようこそ > jwc_temp.txt
として jwc_temp.txt に書き込みます。
これで、外部変形プログラム「ようこそ」は完成です。
このバッチファイルを「外変」コマンドで 実行すれば マウスで指示した
場所に「ようこそ」と書けます。
4行目の REM #0 は ようこそ を 記入する位置をマウスで指示する
コマンドです。
6行目の ch "~ は文字列 ~ を書く外部変形のコマンドです。
横文字データは、基点座標x,y、長さlx,ly、文字列を書き込みます。 ch x y lx ly "文字列 長さは 長さの比でも構いません。 x=y=ly=0 なら ch "文字列 で構いません。
出力ファイル jwc_temp.txt は JW_CAD 外部変形の入出力のファイル
です。jwc_temp.txt 以外のファイルに出力しても意味はありません。
JW_CAD 外部変形の流れを簡単に説明します。
[ 第0段階 ] 外部変形の開始
Jw_cad メニュー「その他(A)」→外部変形(G) あるいは ツールバー「
その他(1)」→[外変] を実行(クリック)する。
[ 第1段階 ] プログラムの選択
「ファイル選択」画面でプログラムを選択して実行します。
[ 第2段階 ] データの入力
主要なデータは バッチファイルで REM # 文 に指定します。データには
①「JWC_TEMP.TXT(書き込み)」に 必ず出力されるもの
軸角、スケール、基本文字データ
表示画面のレイヤグループ、レイヤ、各種属性
②「JWC_TEMP.TXT(書き込み)」に出力を REM # 文 で 指定するもの
レイヤグループ、レイヤの名称と状態
指示あるいは選択データのレイヤグループ、レイヤ、各種属性
線・円・点・文字で指示あるいは選択されたデータ
指示あるいは選択された寸法図形・ソリッド図形・ブロック図形データ
データの入出力モードの指定・その他
③コマンドライン引数・環境変数
コマンドライン引数( 文字や数値など REM # 文 で指定するもの )
環境変数
④環境設定ファイル・データファイル
環境設定ファイル
前回値や規格材料のデータファイル
などがあります。
採用する言語ソフトによっては、上記以外にもさまざまなデータベース
に直接アクセスすることなど、十分に考えられます。
[ 第3段階 ] JWC_TEMP.TXT 書き込み
入力の情報は JWC_TEMP.TXT に書き込まれます。
[ 第4段階 ] プログラムの実行
プログラムは、テキストファイル「JWC_TEMP.TXT(書き込み)」を読み
取りすべての作図情報を「JWC_TEMP.TXT(読み込み)」に書き込んでおか
なくてはなりません。
→ 入力データを 前回値としてファイルに保存しておくと便利です。
[ 第5段階 ] JWC_TEMP.TXT 読み込み
プログラムの終了後に Jw_cad が自動的に「JWC_TEMP.TXT(読み込み)
」を読み込んで外部変形は終了します。
[ 第6段階 ] 次のプログラムの選択
次の処理で [外部変形再選択(L)] か [再実行(R)] のどちらかを選択
します。他の処理を選択すれば自動的に終了します。
JW_CAD では プログラムによる作図機能を外部変形と呼んでいます。
AUTO-CAD では AutoLISP を利用して作図する機能に相当します。
ただし、JW_CAD では 線・円・点・文字 および 寸法などの限られたコマンドを「マクロ風」に利用できるだけで、線の交点 や 角度などを JW_CAD は(外部変形では)計算してくれません。
外部変形は「マクロ」と呼べるものでは決してありません。線の交点 や 角度は、簡単に計算できるため、提供していないのだと思います。
マクロ が 写真 なら 外部変形 は 絵 のようなものです。
余談ですが
外部変形を利用して JW_CADを awk や ruby のキャンバスに見立てることも可能です。ボタンやテキストなどの GUI部品は用意されていませんが、JW_CAD で 高品質な印刷ができることは魅力です。
awk や ruby だけでなく WSH や HTA から gnuplot や maxima まで バッチファイル(*.bat)には さまざまなスクリプトが書けます。
ひっくり返して見れば 外部変形は シェルスクリプトで技術計算を行う手法であることもわかってきます。シェルスクリプトに高級言語が使える訳ですから よく考えれば 本当に便利な技術です。
ここでは、JW_CAD 外部変形機能について 独自の側面 から 観察して ラフスケッチを描いてみようと思います。