外部変形は データのやり取りをテキストファイルで行うので プログラム言語は 自由に選ぶことができます。図形は機能的かつシンプルなため、数多くのユーザーに受け入れられています。
外部変形の寸法図形(6 寸法値)データを考えます。
◎寸法図形(6 寸法値)データ
msg :val (%lg %lg %lg %lg … ) %lg ( "msg" :val, (P1, P2, … ), keta )
P1 : 寸法の始点の座標(x1 y1)
P2 : 寸法の終点の座標(x2 y2)
keta : 寸法値の小数点以下の桁数
・寸法図形データは指示番号や指標の利用ができます
①選択番号の文字データを取り出す
msg 1
②指標(文字列)で点データを代表する
1.msg
③指標(シンボル)で点データを代表する
:msg1
・寸法図形(6 寸法値)データは配列、文字列が利用できます
④配列
( "msg" :val, (P1, P2, … ), keta )
["msg", :val, [[x1, y1], [x2, y2], … ], keta]
⑤文字列
( "msg" :val, (P1, P2, … ), keta )
"msg :val ((#{x1} #{y1})(#{x2} #{y2}) … ) #{keta}"
・配列、文字列の要素にキーワードが利用できます
⑥ハッシュ
( :val, (P1, P2, … ), keta )
msg :val, {P:[[x1, y1], [x2, y2], … ], keta:1}
msg :val, {:P=>[[x1, y1], [x2, y2], … ], :keta=>1}
⑦キーワード引数
( :val, (P1, P2, … ), keta )
msg :val, P:[[x1, y1], [x2, y2], … ], keta:1
msg :val, :P=>[[x1, y1], [x2, y2], … ], :keta=>1
⑧キーワード配列
( :val, (P1, P2, … ), keta )
msg :val, [P:[[x1, y1], [x2, y2], … ], keta:1]
msg :val, [:P=>[[x1, y1], [x2, y2], … ], :keta=>1]
⑨キーワード文字列
( :val, (P1, P2, … ), keta )
msg :val, "P:[[#{x1},#{y1}], [#{x2},#{y2}], … ], keta:1"
msg :val, "P=[[#{x1},#{y1}], [#{x2},#{y2}], … ], keta=1"
使用例
:jw.rbの寸法図形(6 寸法値)
@echo off
ruby -x %0
goto:eof
REM #jww
REM #1- 寸法の始点を指示して下さい
REM #99# 寸法の終点を指示して下さい
REM #e
#!ruby -Ks -rjw
jww
plot ["msg", :val, hp(1..-1), keta:1]
__END__
寸法値はパラメトリック変形には対応しません。