Indexへ
(23178)//【23177】→(23180)
------------------------
【タイトル】外部変形プログラムでハッチ掛け・印刷
【記事番号】 23177 (*)
【 日時 】07/08/27 21:53
【 発言者 】mie

こんにちは。

プログラムはあまり書いたことがないのですが、
外部変形ファイルを作ってみようとあれこれ試行錯誤しています。
使用しているJw_cadのバージョンは5.11eです。

まずは外部変形を理解しようと練習のつもりで
線を引いたり、円を書いたりする外部変形を作って、
タートルグラフィックのような感じの簡単な絵を自動で
描けるような.batファイルを作っています。
可能な限りrubyやVBAなどインストールせずに、
完結するようにしたいと思っています。

過去ログや検索サイトなどで調べてみたものの
以下の2点を実現する方法がわからず、立ち往生してしまいました。

(1)外部変形.bat経由でハッチ掛けする方法
(2)外部変形.bat経由で印刷範囲を設定し、印刷する方法

■(1)に関しては
「円などの閉じた図形を描画し、その中身をハッチングする」というようなことをしたいのですが、「作図(D)→ハッチ(H)→範囲選択→実行」というマウスでの一連の作業を
外部変形で実行することはできないのでしょうか?
今のところ一本一本線を描画するコマンドを書く方法しか思い付かず、
ちょっぴりくやしいです。

■(2)に関しては、
「外部変形を実行したらあらかじめ.batファイル内で設定した印刷範囲を指定し
印刷ダイアログが出て、後は印刷実行ボタンを押すだけ」というような形に
したいと考えています。
地道にツールバーからマウスで「ファイル(F)→印刷(P)→範囲変更(R)→印刷(L)]と
クリックしていけばよいのですが、これを.batファイルで実現したいのです。

そもそもバッチファイルで全てを完結させることはできないのかな、とも
思い始めております。
「そういうことはできません」
「やっぱりrubyやperlを使わないと難しいのでは?」などの
アドバイスでも大変ありがたいです。

ビギナー故、やや的外れな質問かもしれませんが、
皆様のお知恵を拝借したく、何卒よろしくお願いいたします。

#万一失礼な質問でしたら、どうぞお許しください。


Indexへ
(23177)←【23180】→(23198)
------------------------
【タイトル】Re(1):外部変形プログラムでハッチ掛け・印刷
【記事番号】 23180 (23177)
【 日時 】07/08/27 23:49
【 発言者 】joker
【 リンク 】http://www.atsmile.com/jw/



▼mieさん:
>まずは外部変形を理解しようと練習のつもりで
>線を引いたり、円を書いたりする外部変形を作って、
>タートルグラフィックのような感じの簡単な絵を自動で
>描けるような.batファイルを作っています。
>可能な限りrubyやVBAなどインストールせずに、
>完結するようにしたいと思っています。

現在、どういう .batファイルを作って、どうやって動かして
いるのでしょうか?
外部変形をプログラミングするには、何らかのプログラミング言語で作成
する必要があると思いますが、何を使っている/使う予定なのでしょうか?

>「円などの閉じた図形を描画し、その中身をハッチングする」というような
> ことをしたいのですが、「作図(D)→ハッチ(H)→範囲選択→実行」という
> マウスでの一連の作業を外部変形で実行することはできないのでしょうか?

私は外部変形に詳しく無いですが、
外部変形を実行するバッチファイルの中で、REM #h1 や #h2 で
指定すれば良いような気がしますが。

出力される一時ファイル JWC_TEMP.TXT の内容を読み込んで、
ハッチング線を作図させるプログラムで
JWC_TEMP.TXT を書き換えて保存させ、
JWWがそれを読み込み解釈して、作図系なら 作図してくれる、
みたいな感じだと思うんですが〜

>「外部変形を実行したらあらかじめ.batファイル内で設定した印刷範囲を指定し
>印刷ダイアログが出て、後は印刷実行ボタンを押すだけ」というような形に
>したいと考えています。

外部変形というよりは、キーのマクロのような感じですね。
http://hpcgi2.nifty.com/jw_cad/c-board.cgi?cmd=ntr;tree=9462;id=003


ハッチングは、範囲選択で読み取った線・円弧データと
作図するハッチング線の交点計算をして並び替えをして、みたいな
プログラミングをしますから、プログラミング言語は必須になると
思います。

ハッチングの外部変形でしたら、
siegelさんのサイトで便利な「図形ハッチ発展系」の外部変形アプリが
公開されていますので、参考にされるのも良いかもしれません。
http://homepage2.nifty.com/siegel/


Indexへ
(23180)←【23198】→(23207)
------------------------
【タイトル】Re(2):外部変形プログラムでハッチ掛け・印刷
【記事番号】 23198 (23180)
【 日時 】07/08/28 18:49
【 発言者 】mie

▼jokerさん:

>>可能な限りrubyやVBAなどインストールせずに、
>>完結するようにしたいと思っています。
>現在、どういう .batファイルを作って、どうやって動かして
>いるのでしょうか?

特に何かの言語の実行環境を導入したりはしておらず、
EXEで動かしています。
(というので説明で合っているでしょうか?)
こちらのページを参考にさせていただいています。
http://www17.ocn.ne.jp/~lite/gaihendoc.html

>>「円などの閉じた図形を描画し、その中身をハッチングする」というような
>> ことをしたいのですが、「作図(D)→ハッチ(H)→範囲選択→実行」という
>> マウスでの一連の作業を外部変形で実行することはできないのでしょうか?
>外部変形を実行するバッチファイルの中で、REM #h1 や #h2 で
>指定すれば良いような気がしますが。

確かにREM #h1 #h2で範囲選択ができそうですね。
こんなことを質問してしまい、お恥ずかしいです。

>>「外部変形を実行したらあらかじめ.batファイル内で設定した印刷範囲を指定し
>>印刷ダイアログが出て、後は印刷実行ボタンを押すだけ」というような形に
>>したいと考えています。
>外部変形というよりは、キーのマクロのような感じですね。
>http://hpcgi2.nifty.com/jw_cad/c-board.cgi?cmd=ntr;tree=9462;id=003

なるほど!
外部変形だけで何とかしようとばかり考えておりました。

>ハッチングは、範囲選択で読み取った線・円弧データと
>作図するハッチング線の交点計算をして並び替えをして、みたいな
>プログラミングをしますから、プログラミング言語は必須になると
>思います。

やはりハッチングに関してはプログラミング言語の実行環境の
導入を考えたほうがよさそうですね。
ご紹介いただいた「図形ハッチ発展系」も試してみたいと思います。

jokerさんのコメントがよいヒントになりそうです。
もう少し悩んだり考えてみたいと思います。
ありがとうございました。


Indexへ
(23198)←【23207】//(23188)
------------------------
【タイトル】Re(3):外部変形プログラムでハッチ掛け・印刷
【記事番号】 23207 (23198)
【 日時 】07/08/29 12:02
【 発言者 】chi chi@mocha.ocn.ne.jp
【 リンク 】http://www6.ocn.ne.jp/~chika/



▼mieさん:
 ハッチングのプログラムが済みとして
コメントします。
windowsで印刷するにはwindowsのディバイスドライバへ図形を
書き込めるプログラム言語となります。
お勧めは「C#.net」です。フリーだし、参考書も多い。
ピクチャBOXへ線を引く要領で印刷のディバイスドライバへ
線を引けと命令する。pen_move(0,0)->lineto(100,100)みたいな。
C#のピクチャBOXは面白いオブジェクトで書き込んだ内容を
「新メタファイル」として保存できます。これを
利用すれば外部変形で選択した図形をメタファイル経由で
「エクセル」や「イラストレータ」
に持ち込めます。