2021年5月20日 (木)

矢印変換

寸法線の端末を矢印から点に変換する外部変形です。
寸法図形をグループ化している場合は、
曲線属性の解除後に実行してください。

操作方法は、
◇曲線属性解除
 範囲選択から左AM0時「確定 基点(free)」
◇矢印変換
 範囲選択から矢印の交点上で、右AM0時「確定 基点<Read>」
注) 矢印以外は選択しないでください。消去されます。

Photo_20210520221701

続きを読む "矢印変換"

| | コメント (0)

2021年5月10日 (月)

曲線属性解除

曲線属性を解除する外部変形です。
グループ化された寸法図形を、
寸法属性を維持してグループ解除できます。

@REM 曲線属性解除
@echo off
REM #jww
REM #cd
REM #zz ハッチ・図形・寸法・建具属性
REM #zw 線幅の設定・変更の書込・読込
REM #zc 文字基準点の書込
REM #h2 範囲内データ・範囲内外に跨る線データを選択
REM #hc 範囲選択してください
REM #ht10 ブロック図形除外
REM #ht40 ソリッド図形除外
REM #e
jgawk '/hq/{print "hd";next}/pl/{next}{print $0}' jwc_temp.txt>temp.txt
echo h#曲線を解除しました >>temp.txt
copy temp.txt jwc_temp.txt
del temp.txt
goto end
2021.5.10 by somem
@end

| | コメント (0)

2021年5月 5日 (水)

文字コード

Windows10 バージョン1903から
メモ帳の規定の文字コードがUTF-8になっています。 
記載された外部変形用バッチファイルを、UTF-8で保存すると、
文字化けが発生します。
「名前を付けて保存」から、文字コードはANSIで保存してください。
Ansi

| | コメント (0)

2018年9月12日 (水)

接頭/接尾文字

久しぶりに、外部変形を作成しました。
作図済文字の前後に、記号・文字列を追加します。

例) 
・接頭/接尾文字 『¥』  『作図済文字』
・接頭文字のみ /  /作図済文字
・接尾文字のみ ¥/  作図済文字/
注)接頭/接尾文字の区切りは、¥(全角)

◇対象文字は、書込みレイヤグループ/横文字
◇スキップで前回文字を作図

任意のファイル名でバッチファイルとして保存してください。

続きを読む "接頭/接尾文字"

| | コメント (0) | トラックバック (0)

2014年5月24日 (土)

線_文字色一括変更

Jw_cad情報交換室から、線色と文字色を指定線色で一括変更する外変です。
任意のファイル名でバッチファイルとして保存してください。

@REM 線_文字色一括変更
@echo off
REM #jww
REM #cd
REM #h1 範囲内データ選択
REM #hc 線、文字を範囲選択してください
REM #g1 全レイヤグループ対象
REM #ht10 ブロック図形除外
REM #ht30 寸法図形除外
REM #ht40 ソリッド図形除外
REM #hr
REM #e
jgawk 'BEGIN{lc="lc3";cc=substr(lc,3,1)}/hq/{print "hd";next}/^^hcw/{for(i=0;i^<=9;i++)cw[i+1]=$(i+2)}/^^hch/{for(i=0;i^<=9;i++)ch[i+1]=$(i+2)}/^^hcd/{for(i=0;i^<=9;i++)cd[i+1]=$(i+2)}/^^lc/{m=m+1;if(m==1){culc=$0;print lc;next}{next}}/^^cn/{n=n+1;cnn=substr($1,3,1);if(n==1){cucn=$0}if(n==1 ^|^| n^>=3){if(cnn==0){$5=cc;print $0;next}else{print "cn0",cw[cnn],ch[cnn],cd[cnn],cc;next}}}{print}END{print culc;print cucn}' jwc_temp.txt>temp.txt
copy temp.txt jwc_temp.txt
del temp.txt
goto end
##
# 選択した全レイヤグループの線、文字に適用
# 範囲選択から左AM0時「確定 基点(free)」を実行
# 指定線色を変更する場合は、lc="lc3"を変更 ⇒ 線色5の場合 lc5
# 2014.5.24  by somem
:end

| | コメント (15) | トラックバック (0)

2013年11月19日 (火)

複数種文字列変更

複数種類の文字列を、メモ帳を使って個別に変更する外部変形です。

メモ帳には、対象文字、¥(全角)、置換文字の順で書込み上書き保存。
注)ANSIで保存してください。
例)2種類の場合は、2行に分けて書込んでください。
ABCDE¥12345
FGHIJ¥6789

外変用バッチファイル
----------
@REM 複数種文字列変更
@echo off
REM #jww
REM #cd
REM #h3 範囲内の文字選択
REM #hc 文字を範囲選択してください
REM #ht10 ブロック図形除外
REM #e
notepad memo.txt
jgawk '{if($1!=""){print "¥",$0}{}}' memo.txt>tmemo.txt
jgawk -f pl_chr.awk tmemo.txt jwc_temp.txt>temp.txt
copy temp.txt jwc_temp.txt
del temp.txt
del tmemo.txt
goto end
# 範囲選択から左AM0時「確定 基点(free)」を実行
# メモ帳に対象文字¥置換文字を書込み
2021/4/26 行削除
jgawk '{print ""}' tmemo.txt>memo.txt
:end

続きを読む "複数種文字列変更"

| | コメント (0) | トラックバック (0)

2013年11月11日 (月)

円周分割点

円周上の任意点を基準に、円周上の等分割点に実点を作図する外部変形です。
※書込レイヤグループ/レイヤに補助線色で作図

正規表現 /^^AA/ は、/AA/ でも問題なく実行できます。

----------
@REM 円周分割点
@echo off
REM #jww
REM #cd
REM #1ci 円を選択してください (L)クリック
REM #2 分割基準点(任意位置)を指示してください (R)クリック
REM #c 分割数を入力してください |前回値/スキップ|
REM #e
jgawk -vn=%1 'BEGIN{if(n!=""){print "div",n;exit}}{print}' div.txt>tdiv.txt
copy tdiv.txt div.txt
copy tdiv.txt+jwc_temp.txt
jgawk 'BEGIN{OFMT="%%.15g";pi=atan2(0,-1)}/div/{if(n==""){if($2==""){print "he 半径を入力してください";exit}{n=$2}}}/hp2/{xs=$2;ys=$3}/ci/{xc=$2;yc=$3;r=$4;bth=atan2(ys-yc,xs-xc);dth=2*pi/n}END{print "pn9";for(i=0;i^<=n-1;i++){th=bth+i*dth;xp=xc+r*cos(th);yp=yc+r*sin(th);print "pt",xp,yp}}' tdiv.txt>jwc_temp.txt
del tdiv.txt
goto end
# 書込レイヤグループ/レイヤに補助線色で作図
# 2013.11.11 by somem
:end

| | コメント (0) | トラックバック (0)

2013年11月 8日 (金)

実点に円(拡張版)

"実点に円(改)" に実点を円に変換を追加しました。
実点を円は、外変実行後、実点を消去します。
※円は、実点と同一レイヤに書込み線色/線種で作図
※寸法線端点にも適用されますので注意してください

----------
@REM 実点に円(拡張版)
@echo off
goto %1
REM #jww
REM #cd
REM #hm|実点に円|実点を円|
REM #:1
REM #:2
REM #h1 範囲内データ選択
REM #hc 範囲選択してください
REM #ht10 ブロック図形除外
REM #c 半径を入力してください |前回値/スキップ|
REM #e
:1
:2
jgawk -vR=%2 'BEGIN{if(R!=""){print "rad",R;exit}}{print $0}' rad.txt>trad.txt
copy trad.txt rad.txt
copy trad.txt+jwc_temp.txt
jgawk -vT=%1 -vR=%2 '/hq/{if(NR==1){print "he 半径を入力してください";exit}if(T==2){print "hd";next}}/rad/{if(R==""){if($2==""){print "he 半径を入力してください";exit}{R=$2}}next}/ly/{ly=$1;cnt=0;if(T==1){p=0;next}}/lc/{m=m+1;if(m==1){lc=$1;next}}/lt/{n=n+1;if(n==1){lt=$1;next}}/pn/{next}/pt/{p=p+1;if(T==1 ^&^& cnt==0 ^&^& p==1){print ly}if(T==2 ^&^& p==1){print lc;print lt};$1="ci";$4=R;print;next}{if(T==2){print}}' trad.txt>jwc_temp.txt
del trad.txt
goto end
# 対象図形は、同一レイヤグループのみ
# 範囲選択 ⇒ 左AM0時「確定 基点(free)」 ⇒ 半径入力
# 実点以外の図形(ブロック図形を除く)を選択しても可
# 注)寸法線端点の実点にも適用
# 書込み線色/線種で作図
# 実点と同一レイヤに円を作図
# 右クリックで再実行
# 2013.11.8    by somem
:end

| | コメント (0) | トラックバック (0)

2013年10月29日 (火)

取消し線

Jw_cad相談室での質問ですが・・・・・
文字に取消し線を作図する外部変形を作ってみました。m(__)m

--------------------
@REM 取消し線
@echo off
REM #jww
REM #cd
REM #h3    文字選択
REM #hc    文字(水平横文字)を選択してください
REM #e
jgawk '/hs/{for(i=0;i^<=9;i++)S[i]=$(i+2);S["a"]=$12;S["b"]=$13;S["c"]=$14;S["d"]=$15;S["e"]=$16;S["f"]=$17}/lg/{lg=substr($1,3);sc=S[lg]}/hch/{for(i=0;i^<=9;i++)ch[i+1]=$(i+2)}/cn/{if($1=="cn0"){cwh=$2;cht=sc*$3}else if(substr($1,4,1)=="$"){}else{h=substr($1,3);cht=sc*ch[h]}}/^^ch/{x0=$2;y0=$3;lth=$4;dh=int(100*cht/3)/100;xe=x0+lth;y1=y0+dh;y2=y1+dh;print x0,y1,xe,y1;print x0,y2,xe,y2}' jwc_temp.txt>temp.txt
copy temp.txt jwc_temp.txt
del temp.txt
goto end
# 水平横文字のみ適用
# 書込み線色・線種で作図
# 2013.10.29 by somem
:end

| | コメント (0) | トラックバック (0)

2013年9月 1日 (日)

実点作図(改)

以前、作成した"実点作図"のスプリクトを見直しました。
実点作図は、始点/構成点に加えて、終点の作図を追加しました。
消去は、寸法線の補助点が消去される不具合を修正し、
外変実行時のレイヤグループ/レイヤに戻すスプリクトを追加しています。

<点作図>
◇/^^[#cl]/
先頭フィールドに"#"、"c"、"l"を含む場合にパターンマッチングします。
◇f(k==1){if(i==1){print "pt",$1,$2;print "pt",$3,$4}{print "pt",$3,$4}}
曲線属性 "pl" の後に記述される線データの始点/終点に実点を作図
その他の線データは、終点のみの作図
※ if 文の "else" は、省略可。
<消去>
◇NR==9{lg=$1}NR==10{ly=$1}・・・END{print lg;print ly}
書込みレイヤグループ/レイヤ情報を取得、END文で情報を書出し。
◇/^^pn/{if(substr($1,3,1)=="9"){er=1;next}{er=0}}/^^pt/{if(er==1){next}{}}
線色9の実点だけを消去、その他は、再作図

続きを読む "実点作図(改)"

| | コメント (0) | トラックバック (0)

より以前の記事一覧