外部変形は データのやり取りをテキストファイルで行うので プログラム言語は 自由に選ぶことができます。図形は機能的かつシンプルなため、数多くのユーザーに受け入れられています。
gawkで矩形に内接する楕円を描く(ov)
:gawkで矩形に内接する楕円を描く(ov)
@echo off
for /f %%n in ('gawk "/^#!/ { print NR }" %0') do (
copy jwc_temp.txt myfiles > nul
more +%%n %0 | gawk -f - myfiles > jwc_temp.txt
)
goto:eof
REM #jww
REM #1-%d 始点を指示してください
REM #2%d 終点を指示してください
REM #e
#!ここから more +n %0 の n 行目:最初の行は 0 行
function abs(x) { return x > 0 ? x : -x }
/^hk/ { hk = $2 }
/^hp1/ { p1 = $2 FS $3 }
/^hp2/ { p2 = $2 FS $3
CONVFMT = OFMT = "%.15g"
$0 = p1 FS p2
co = cos(d = hk * atan2(1, 1) / 45)
si = sin(d)
ww = ($3 - $1) * co + ($4 - $2) * si
hh =-($3 - $1) * si + ($4 - $2) * co
p = ($1 + $3) / 2 FS ($2 + $4) / 2
r = abs(ww) / 2
w = abs(hh / ww)
print "ci", p, r, 0, 360, w, hk
}