Jww外部変形 ハッチ のご紹介です

8パターンあり簡単にハッチ図形が出来ます(^^)。

ポーチ

 

完成図

タイル

完成図

 

基礎状

 

完成図

 

帯型

 

完成図

 

割栗

 

完成図

 

図形

 

完成図

 

石記号

 

完成図

 

砕石

 

完成図

 

テキスト内容

————————————————————–
【ソフト名】 ハッチ Ver2.0 (JW_WIN用外部変形)
【登 録 名】 hatchw20.lzh
【著作権者】 神無月
【動作環境】 WIN9X, WIN2000,WINXP
【動作確認】 WINXP + JW_WIN Ver4.01b
【言語環境】 C言語
【作成年月】 2004.8
【種 別】 フリーソフト
【転 載】 禁止
—————————————————————-
○ 概要
このプログラムはハッチングの外部変形です。
JWのハッチコマンドに近い機能を外部変形で実現しています。
使用頻度の高いパラメータを起動ファイルに記述することで、都度設定する手間を 省くことができます。
さらに、閉領域の内部指定が出来るため、線を順番に選ぶ作業もなくなります。
パターンは1,2,3線、タイル馬目地および図形(jwkファイル)を指定出来ます。
1,2,3線ではピッチおよび角度を同時に4種類まで指定でき、線種は同時2種類が指定できます。
タイルでは横・縦寸法が指定できます。
この他に、軸角指定、オプションログ、断線検査などの機能があります。

○ファイル内容

hatchw.txt —– このファイル
hatchw.exe —– プログラム本体
hatchw.bat —– バッチプログラムサンプル
sample.jww —– サンプルデータとオプション説明図
zukei_1_ —– サンプルデータテスト用フォルダ

○インストール方法

任意のフォルダを作成して解凍し、以下のファイル構成になって
いることを確認してください。

<hatchw20> —- hatchw.bat
hatchw.exe
hatchw.txt
sample.jww
<zukei_1_> —– STAR.JWK
砕石.JWK
束位置.JWK

○動作確認

jwwからsample.jwwを読み込んでください。
グループ1から8にサンプルデータがあります。
hatchw.batを起動して、後は指示に従って操作すれば、動くはずです。

○ ハッチング図形指定方法

範囲指定、内部点指定、単線指定および連続線指定の3種類があります。

<範囲指定>

範囲指定は、入力された線分や文字列から閉図形の輪郭線や文字枠を識別し、
その内部をハッチングする方法です。
同時に選択できる閉図形の最大数は256個です。
閉図形の中の閉図形は中抜きされません。
閉図形の中の文字枠内は中抜きされます。但し、閉領域境界線にまたがる
文字枠内では、はみ出した部分はハッチングされます。

<内部点指定>

ハッチングする閉図形の内部をマウスで点指示する方法です。
同時に97箇所(指示点[#3]~[#99])まで指定できます。(99は未確認です)
閉図形の中にある閉図形(文字枠含む)は中抜きされます。

<単線指定>

単線を選択した場合にはマウス指示側(指示点[#3])に、同ー長さの長方形
を閉図形と想定してハッチングします。
長方形の巾はこの線とマウス指示との鉛直距離となります。
長方形内の文字枠内は中抜きされます。

<連続線指定>

直線でつながっている連続する線のマウス指示側(指示点[#1])に、
指定巾で帯状にハッチをします。
帯内にある文字枠内は中抜きされます。
閉図形や、円、楕円は不可です。
軸角指定は(指示点[#2ln])で行って下さい。

○ハッチパターンの軸角指定

軸角にする基準線をマウス指示(指示線[#1ln]または[#2ln])で指定できます。
/aで指定した角度に軸角が加算されてハッチングされます。

○ハッチの基準点指定

基準点をマウス指示(指示点[#2])で指定できます。
ランダム指定時では無視されます。

○オプションログ機能

本プログラム終了時には以下のオプション内容がカレントディレクトリ上に
ログファイル(HATCHLOG.TXT)として記録されます。
/s,/a,/p,/v,/t,/f,/r,/w,/z,/jのオプションがログされます。
この内容を次回起動時の既定値として使うためには、別途/iオプションで
指定する必要があります。

○ コマンドオプションの説明
使用例についてはバッチプログラムサンプルを参照してください。
アルファベットは大文字、小文字いずれも可です。

/s

s1:1本線
s2:2本線
s3:3本線
s4:タイル馬目地
s5:図形データ(JWK)をパターンとして使用
s6:図形データ(JWK)をマーカーとして使用
s7:GLパターン(単線指定)
s8:割栗パターン(単線指定)

/a<数値1,2,3,4>

線、パターンの角度を±90度の範囲で指定します。
線は同時に4種類まで設定できます。
(既定値は0度で1種類)

/<p,v><数値1,2,3,4>

線のピッチ(実寸mm)を数値で指定します。番号は角度指定と対応します。
角度4種類すべて同一なら数値1のみの設定で可です。
pで平行距離を意味します。
vで角度0~45度の線は垂直距離となり、45~90度の線は水平距離となります。
マーカーでは/pで縦ピッチ指定に使います。
(既定値はp100mmで1種類)

/w<数値>

2本線、3本線での線間隔を指定します。
マーカーの横ピッチ指定にも使います。
(既定値は実寸で50mm)

/t<数値1,数値2>

タイル馬目地の寸法を指定します。
数値1に横巾、数値2に縦巾を指定します。
(既定値は実寸で200,100mm)

/r<点数>

乱数により図形をランダムにハッチングします。
/s5,/s6の図形データで使えるオプションです。
/p,/v,/w,/aオプションは無視されます。
点数は書き込む数を指定します。
書かれる数は指定数より少なくなる場合もあります。
複数の閉領域を選択した場合は時間がかかることがあります。
(点数の既定値は50)

/f<図形filename>

ハッチングデータとして図形データを指定します。
図形ファイルはフルパスで指定します。最後に”.JWK”はつけないで下さい。
図形は直線、円、円弧、楕円、楕円弧、実点が使用できます。
図形範囲を補助線(任意色)により矩形で示してください。
補助線はハッチングデータとしては書かれません。
図形属性はレイヤ、線種、線色が出力に反映されます。
ハッチの基準点は図形登録時の原点となります。
/s5と/s6で図形の扱いが次のように異なります。

</s5のパターン指定>
図形データ(含補助線)のX、Y座標の最小値と最大値を対角とする長方形として
/a角度で傾斜して繰り返しハッチングします。
閉領域の境界線では図形データはクリッピングされます。

</s6のマーカー指定>
/pで縦ピッチ,/wで横ピッチを指定します。/a角度でピッチが傾斜します。
マーカは非幾何学図形として扱いますので、/a角度での自身の回転はしません。
閉領域の境界線では図形原点の内外判定による図形データの全表示、全非表示
の処理となり図形データの部分クリッピングはされません。

/g<図形倍率|分割数>

/s5,/s6のときに図形倍率を実数で指定します。
(図形倍率の既定値は1.0)

/s7のときにGL模様の斜線で書き込む際の分割数を指定します。
(/a0を同時に設定して下さい。)
(分割数の既定値は5)

/k<x,y>

マウス指示(3)で入力したハッチの基準座標点に<x,y>を加算します。
コマンドを連続したときにそれぞれのパターンの座標整合を取るために使います。
(使用例 hatchw.batの:exe-3参照)

/h<レイヤ><線種><線色>,<レイヤ><線種><線色>

線、タイル馬目地のレイヤ(0-f)と線種と線色を指定します。
線では2種類指定でき、交互に書かれます。
タイル馬目地は最初の1種類のみ有効です。
xを指定した所は現在値となります。
(既定値は1種類で全て現在値)

/j<レイヤグループ>

検出した閉領域の輪郭線を指定レイヤグループ(0-f)のレイヤ0-fまで順番に書き込みます。
文字枠は書かれません。
閉領域が16個を越えた場合は、残りは全てレイヤfに書かれます。
書き込み線種、線色は/h指定と同一になります。
入力図面内に”/j*”と書き込むことでもOKです。

/l<レイヤ><線種><線色>

探索する閉領域のレイヤ(0-f)と線種と線色を指定します。
xを指定した所は任意となります。
(既定値は全て任意)

/z<0,1>

/z0:ハッチ属性を書きません。
/z1:ハッチ属性を書きます。

/i

/iはログファイルの内容を既定値として使用します。
同ーパラメータで繰り返しハッチングする場合に利用できます。

/o<数値>

連続線指定モードにします。
また、帯の巾(既定値は実寸)を数値で指定します。
数値の省略は不可です。

/b
寸法の指定を全て図寸にします。

/e
断線箇所を調べて円で表示します。 ハッチは行いません。
塗れなかったり、塗り残しがあったときに、その原因を探る場合に有効です。
図面に”/e”と書き込むこんでも有効です。、

○ 注意事項、制限事項

jwと塗り形が一部異なる場合があります。

文字列について、「内部点指定」と「単線指定」と「連続線指定」のときに閉図形を またぐような文字列では閉領域を分断しますので注意して下さい。

閉図形が極端に短い線分(0.5mm以下)でつながっている場合はエラーとなります。
少なくとも1mm以上の線分でつなげるようにして下さい。

円や楕円同志が接する部分では自動選択がうまく行きません。
必ず弧にして、開始点か終了点で双方が接続するようにして下さい。
それでも、時々ダメなケースがあります。

多重線があるとプログラムが暴走する恐れがありますので、線整理してから実行
して下さい。
「内部点指定」で自動選択がうまく行かないときは未接続の可能性があります。
/eオプションで未接続箇所を調べて、修正してから再度起動してください。

このプログラムは閉領域を調べるため全線分を探索しますので、線分が多いと
時間も掛かり、メモリも沢山消費しますので不要線は極力除いて入力して下さい。

入力可能な線、円弧等の合計数はメモリ上限まで可能ですが、閉領域の辺数の
上限は2000本迄です。
円弧、楕円弧があるとそれ以下でもメモリ不足エラーとなる場合があります。

連続線の帯モードで指定巾以下の突起や鋭角の箇所があると正しくハッチングできな い場合があります。

/jの輪郭線表示および/eの探索ルート表示では現在次のバグがあります。
<バグ内容>
円弧、楕円弧同志で交差するケースでは正しくつながって表示されません。

○ マウス指示点、指示線の指定方法

マウス指示点と指示線は次のように対応しています。
バッチプログラムをカスタマイズする際に参考にして下さい。

REM #1 連続線の帯ハッチ方向

REM #1ln 軸角線指示

REM #2 ハッチ基準点指示(既定値は0,0)

REM #2ln 軸角線指示(帯ハッチ時)

REM #3 閉領域内部指示(1)
REM #4 閉領域内部指示(2)
| |

○ 免責事項

このプログラムを使用した事によって発生した損害は、一切保証しません。
このプログラム、および同梱ファイルに不備があっても、作者はそれを訂正する義務を負いません。

○ 改版情報
v1.00 00.11.26 初版作成
00.12.04 ローカルリリース。
v1.01 00.12.16 弧と直線が混在する閉領域を認識できないバグを修正。
v1.10 00.12.23 閉領域以外にハッチングするバグを修正。
/jで文字枠は書かないようにした。
/jで円弧が表示しないバグを修正。
v1.20 01.01.22 GLと割栗のパターンをオプションに追加。
v1.21 01.03.01 楕円のエラー修正。
線同時2種以上で楕円内に不正ハッチのバグ修正。
v1.22 01.03.08 楕円のエラー修正。
v1.30 01.03.10 連続線に帯ハッチ機能追加。
v1.31 01.03.12 帯ハッチでハッチ方向を誤るバグを修正。
v1.32 01.03.12 帯ハッチで帯巾より短い線があるとハッチしないバグを修正。
v1.40 01.07.08 帯ハッチで軸角指定を可能にした。
v1.50 01.07.27 コマンドオプションを記述したファイル指定を可能にした。
v1.51 02.01.29 線整理機能を盛込み、エラーの頻度を軽減した。
v1.52 02.01.29 v1.51の改修で劣化した箇所があり戻す。
v1.53 02.02.15 /jオプションを入力図面内書込もOKとした。
v1.54 02.03.02 ときどきフリーズするバグを少し修正した。まだあるかも。
v1.55 02.05.11 /iオプション指定時に時々フリーズするバグを修正した。
v1.60 02.07.17 縮尺の異なるグループから起動できるようにした。
パラメータの寸法で図寸指定(/bオプション)を追加した。
v1.61 02.08.15 内部での重複線整理処理のバグ修正。
v1.62 02.08.18 範囲指定での自己交差「8の字」バグ修正。
v1.63 02.09.25 フリーズするバグ修正。
v1.64 02.10.03 /eオプションで断線箇所を円で書き込むようにした。。
v1.65 02.10.25 図形で楕円弧も可能にした。JWK矩形範囲の補助線化。
v1.66 02.11.06 v1.65で劣化した楕円弧でハングするバグ修正。
v1.7 03. 8.18 jw_win対応で一般公開。
v1.8 04. 2.07 図形ファイルがみつからないときに暴走するバグの修正。
v1.9 04. 5.06 図形ファイルの円弧属性が反映されないバグ修正。
縮尺1/1等のときに正しくハッチできないバグ修正。
出力精度を15桁まで上げた。
v2.0 04. 8.22 閉領域の辺数上限を200本から2000本へ増やした。
————————- END ———————————————-

まとめ

管理人は、仕事では使用してませんが便利ですよね(^^)。

スポンサードリンク