超初心者金公の超初心者のための外部変形作成講座
(もちろん for WindowsのJw_cadですよ)
Jw_cadサイトをあちこち見てみると外部変形に関する話題がとても多いですね。 そこで外部変形とはどんなものかと興味がわいてきましたので、解説サイトを回って見ましたが、cadは(も)超初心者である金公にはちんぷかんで理解出来ません。 そこで、Jw_cadをインストールすると、本体と同じ場所にあるJWW_SMPL.BAT(三 斜 計 算)を繰り返し読むうちにチョットだけ理解出来てきましたので金公と同レベルの超初心者のみなさんに少しでも外部変形の理解をお手伝い出来ないかと思い、おこがましくも外部変形超初心者講座のコーナーを作ってみました。 内容は金公が解った部分だけを、金公の独断と偏見でお伝えしますので、間違っているところも多々あると思います。 「又バカなことを書いちょるな」と笑い飛ばしながらおつき合い下さい。 |
||
|
||
■ 外部変形はバッチファイルなので、バッチファイル(MS-DOS)の知識がすこし必要だ。 ■ Jw_cadは自らの画面上データ(線など)を「JWC_TEMP.TXT」という名前のテキストファイルに書き出す能力を持っている。 ■ それを書き出すおまじない(命令)は外部変形バッチファイルにJw_cad独自の書式、コマンドを書き込む必要がある。 ■ 外部変形バッチファイルには本来のバッチコマンドとJw_cad独自のコマンドがお互いの干渉なしで混在する。 ■ 外部変形バッチファイルを動作させると、データの書出の後、そのデータを読み込み作画する能力を持っている。 ■ 書き出したデータをそのまま読み込んでも画面上の変化はなく同じデータが2重になるだけでなんの役にもたたない。 ■ 役に立つ外部変形にする為にはJw_cadが書き出したデータを誰かが読み取り、それを元に加工しなければならない。 ■ 加工後のデータをテキストファイルとして書きだし、それをJw_cadに読み込ませることで、役立つ外部変形が出来る。 ■ 以上のことから、書き出されたデータを加工する為にテキスト加工出来るプログラムが必要である。 ■ そのプログラムで主に使われている言語が[AWK]や[Ruby]スクリプト言語だ。
|
||
目 次
|
||
|
||
|
||
■ 以下の文章をメモ帳やエディターに書き込み、任意のフォルダに [ no1.bat ] という名前で保存。 ■ ちなみに [ REM ] というコマンドはバッチファイルではコメント行と認識され、プログラム的には無効ですが、Jw_cadではその事を利用して独自のコマンドとして認識するようです。この 外部変形ファイル内で、バッチファイルとして有効なコマンドは [ echo off ] のみです。 |
||
REM 金公の超初心者外変検証1 @echo off REM #jww REM #cd REM #h4 REM #e |
||
■ Jw_cadを起動して、用紙A4、縮尺1/1に設定。 ■ 長さ200mmの水平線を画面中央付近に作画する。 ■ メニューバーの [ その他(A) ] → [ 外部変形(G) ] から保存済みの [ no1.bat ] をダブルクリック ■ 画面上には [ 未実行 ] と表示されますが、今は検証作業ですから無視して [ no1.bat ] のあるフォルダに [ JWC_TEMP.TXT ] と云う名前のファイルが出来ていると思いますので開いてみてください。 |
||
hq hk 0 hs 1 30 30 30 30 30 30 30 30 30 30 30 30 30 100 1 hcw 2 2.5 3 4 5 6 7 8 9 10 hch 2 2.5 3 4 5 6 7 8 9 10 hcd 0 0 0.5 0.5 0.5 1 1 1 1 1 hcc 1 1 2 2 3 3 4 4 5 5 hn -117.35393258427 -56.7303370786517 124.584269662921 62.8483146067416 lg0 ly0 lc2 lt1 cn3 cn"$<MS ゴシック> # -105.674157303371 0 94.3258426966292 0 |
||
■ 金公の結果は上のような文字列になっています。(各自の環境や線データの位置の違いで、同じとは限りません。) ■ これが貴方のJw_cadの現在のデータです。 ■ 一番下行の数値に注目してください。 -105.674157303371 0 94.3258426966292 0 ■ 良くみると、半角スベースをはさんだ4ブロックに分かれています。 |
||
目 次 | ||
■ 検証2の作業にあたり、Jw_cadを一旦終了して起動し直す。 ■ 以下の文章をメモ帳に書き込み、任意のフォルダに [ no2.bat ] という名前で保存。 ■ 今度は [ copy no2.txt jwc_temp.txt ] が有効なバッチファイルとして追加され、 [ REM #h4 ] が削除されました。 |
||
REM 金公の超初心者外変検証2 @echo off REM #jww REM #cd REM #e copy no2.txt jwc_temp.txt |
||
■ 先ほどJw_cadから書き出された [ JWC_TEMP.TXT ] の一番下の数値4ブロックをコピーして新規作成したメモ帳などに貼付。 ■ 特に先頭の「hq」が残ってるとJw_cadに知らんぷりされます。本来は、加工されていないデータを読み込まないための機能だそうです。(makumaさんよりご指導頂きました。) ■ その後、[ no2.txt ] と云う名前で保存する。 元の [ JWC_TEMP.TXT ] は削除。 ■ フォルダ内には、 [ no1.bat ] 、[ no2.bat ] 、[ no2.txt ] の3つのファイルが存在している状態です。 ■ 検証1と同じ方法でメニューから外部変形を呼び出して、今度は [ no2.bat ] を実行します。 ■ 何も書かれていないはずのJw_cadの画面中央付近に [ 200mm ] の水平線が作図されましたね。 ■ 又、削除したはずの [ JWC_TEMP.TXT ] が再度出来上がっているはずです。 ■ すなわち、[ REM #h4 ] がデータの書き出し、 [ copy no2.txt jwc_temp.txt ] の一行が、読み込みをする部分だと解ります。 ■ ただし、[ REM #h4 ] はJw_cadに対する命令で [ copy no2.txt jwc_temp.txt ] はバッチファイルへの命令とJw_cadへの命令を兼ねています。 |
||
如何でしたか?検証1と検証2を体験して、外部変形の動作が見えてきたでしょうか? 本当に役立つ外部変形を作成するには、検証1と検証2の間で加工する為のプログラムが必要だと云うことがご理解出来たと思います。ここから先へ進まれる方は、自分にあった言語を選び、そのプログラムの勉強へと進んでください。 ここまで理解出来たなら、外部変形作成の講座を開いておられる多くのサイトでの解説が理解しやすくなったと思います。ガンバッテね。
と云うわけでエクセルで動作する役に立たない外部変形を次の検証3で紹介します。 |
||
|
||
目 次 | ||
とりあえずソース。(スマートなコードではありませんが、動作確認はしてあります。) | ||
----- no3.bat -------------------------------
REM
金公の超初心者外変検証3 -------------------------------------------- |
||
以下、Excel VBA no3.xls | ||
----- オープンイベントマクロ -------- Option Explicit ----- 標準マクロ ----------------------------------------------------------- |
||
【 使用方法 】 |
||
■ 作成した [ no3.bat ] [ no3.xls ] を任意のフォルダへ保存。 ■ Jw_cadに水平線 or 斜線 を1本〜複数本引いてください。 ■ 外部変形 [ no3.bat ] を指定すると、今書いた直線を1辺とした正四角形を線の数だけ作画します。 ■ バッチファイルからエクセルを起動して、オープンイベントマクロを実行したあとエクセルは消えます。 ■ エクセルは見えないと思いますが、DOSプロンプトはエクセルの終了を待ちますので、少しの間DOS画面は表示されます。 ■ エクセルを起動させる部分のコードは、金公のPCではちゃんと起動しますが、すべてのPCで起動するかどうかは自信がありません、その部分で起動しないときはFUMIさんのサイトから、「金公さんのSOFT」内の「JWWから外変で起動させるには」をご一読ください。 |
||
■ うまく動作しない、作り方が解らないの時は下の、 検証3 教材をダウンロードして動作をご確認下さい。 ■ これは役に立たない検証用のサンプル外部変形です。役に立つ外部変形の作成を目指している方はご自分の手でソースを書き、テストされた方がより理解が深まると思います。 ■ 金公はこれが限度です、Jw_cadを使わないのでアイデアすら出てきません。(^_^;) |
||
エクセルでの外部変形プログラムに関心のある方は 検証3の解説 へどうぞ。 VBスクリプト版も作ってみました。金公も初めて挑戦してみましたがこちらの方が動きは軽いですね。 これからプログラムの勉強をされる方はこちらの方がいいです。ネットでの情報が豊富、こちらもただ、メモ帳でもプログラム出来る、いいことだらけです。
|
||
目 次 | ||
検証4
|
||
--- あとがき --- |
||
目 次 | ||
金公の間違いに気づかれた方は、掲示板にて教えてくださいね。m(_ _)m すぐに書き直すようにしたいと思います。 |
Copyright (C) 2003/3 F.Tohyama, All rights reserved.
あなたは累計 |
|
人目の訪問者です。 |
(本日は |
|
番目のアクセスです。 また昨日は |
|
人のご来場者がありました) |