外部変形は データのやり取りをテキストファイルで行うので プログラム言語は 自由に選ぶことができます。図形は機能的かつシンプルなため、数多くのユーザーに受け入れられています。
パワーシェルは Windowsを操作あるいは設定するシェルとスクリプト言語です。
パワーシェルで円を描く
jw_cad 外部変形は バッチファイル(.bat)で処理する設計となっているため コマンドプロンプトからパワーシェルを起動する必要があります。
:パワーシェルで円を描く
@echo off
for /f "delims=:" %%n in ('findstr /n "^#!" %0') do (
more +%%n %0 | powershell -command -
)
goto:eof
REM #jww
REM #1-%d 円の中心を指示してください
REM #2%d 円周上の点を指示してください
REM #e
#!ここから more +n %0 の n 行目:最初の行は 0 行
(gc jwc_temp.txt) | foreach {
switch -regex -case ($_)
{
'^hp1-\s+(\S+)\s+(\S+)' { $p1=$matches[1,2] }
'^hp2 \s+(\S+)\s+(\S+)' { $p2=$matches[1,2]
$1,$2,$3,$4 = ($p1+$p2 | foreach { [double] $_ })
"ci $p1 $([math]::sqrt(($3-$1)*($3-$1)+($4-$2)*($4-$2)))"
}
}
} | sc jwc_temp.txt
#ここまで powershell は 文末に必ず空白行を置いてください
何故か?処理時間がかかります。
外部変形のような使い方はパワーシェルには向いていない?ようです。