jw_cad 外部変形 - (791) rubyで点マーカを描く -

外部変形は データのやり取りをテキストファイルで行うので プログラム言語は 自由に選ぶことができます。図形は機能的かつシンプルなため、数多くのユーザーに受け入れられています。

 

rubyで点マーカを描く

:rubyで点マーカを描く
@echo off
set c=%*
if defined c call:set %c%
if exist %~dpn0.txt (
  for /f "tokens=*" %%a in (%~dpn0.txt) do call:set %%a
)
if not defined code set code=0
if not defined size set size=1
if defined c (
  echo %code% %size% > %~dpn0.txt
)

ruby -x %~f0 jwc_temp.txt
goto:eof

REM #jww
REM #1%d 点位置を指示して下さい
REM #99#
REM #c マーカコード番号, 倍率
REM #e

:set
if not defined code set code=%1
if not defined size set size=%2
if "%1" == "/" set code=
if "%2" == "/" set size=
goto:eof

#!ruby -Ks -an -i.bak
case $_
  when /^hk/ then hk = $F[1].to_f
  when /^hp[1-9][0-9]?/
    code = (ENV["code"] || 0).to_i
    size = (ENV["size"] || 1).to_f
    size = 1 if size == 0
    puts "pt" + " %s" * 5 % [$F[1], $F[2], size, hk, code]
end
__END__