角度寸法値反転
角度寸法値を寸法線(円弧)の接線を対称に位置反転する外部変形です。 download
範囲選択から、左AM0時「確定 基点(free)」で実行します。
(参考) 初期に公開した、バッチファイル、AWKスプリクト
----------
@REM 角度寸法値反転
@echo off
REM #jww
REM #cd
REM #zc
REM #h3
REM #hc 寸法値を範囲選択してください
REM #hr
REM #e
jgawk -f rev_dim.awk jwc_temp.txt>temp.txt
copy temp.txt jwc_temp.txt
del temp.txt
< rev_dim.awk>
----------
##### 角度/円周寸法値反転
BEGIN{
## 選択図形消去
print "hd"
## オフセット
dl=1
}
#####
## 縮尺
/^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]}
##
/^#/,/NF==0/{
##
if(NF==1){print $0}
if($1=="cn0" || $1=="ch" || $1=="cv" || $1=="co" || $1=="cr"){print $0}
## 角度寸法
if($1=="cp" || $1=="cs"){th=atan2($5,$4)
$2=$2+dl*sc*sin(th);$3=$3-dl*sc*cos(th);$4=minus($4);$5=minus($5)
printf "%s %.15g %.15g %.15g %.15g %s\n",$1,$2,$3,$4,$5,$6
}
}
#####
### ユーザー定義関数
## 正負逆転
function minus(x){return -x}
# 寸法図形が解除された一般寸法/直径/半径も反転してしまうので注意
| 固定リンク
コメント