難しい曲線の命令の定義が続いたので、少しここで休憩しましょう。
ただの 無向線分は「線」命令で簡単に表せますが、有向線分を表したい場合もあるでしょう。そこで、線に矢尻をつけた矢印を描く命令を作ってみます。
矢尻比率とは数値=0.2 矢角度とは数値=PI/6 # 「100,200から300,400へ矢印」のように使う ●矢印({グループ=?母艦}OBJのX1,Y1からX2,Y2へ) Rとは数値。θとは数値。ΔXとは数値。ΔYとは数値 OBJのX1,Y1からX2,Y2へ線 ΔX=X1-X2。ΔY=Y1-Y2 ΔX,ΔYをR,θへ極座標変換 Rに矢尻比率を直接掛ける R,θ+矢角度をΔX,ΔYへデカルト座標変換 OBJのX2,Y2からX2+ΔX,Y2+ΔYへ線 R,θ-矢角度をΔX,ΔYへデカルト座標変換 OBJのX2,Y2からX2+ΔX,Y2+ΔYへ線 ●デカルト座標変換(R,θを{参照渡し}X,{参照渡し}Yに|Yへ) X = R * COS(θ) Y = R * SIN(θ) !HALF_PIとは数値=PI/2 ●偏角(X,Yの) もしXが0ならば もしY>0ならば HALF_PIを戻す 違えば # もしY≦0ならば -HALF_PIを戻す 違えば、もしX>0ならば ARCTAN(Y/X)を戻す 違えば # もしX<0ならば ARCTAN(Y/X)+PIを戻す ●極座標変換(X,Yを{参照渡し}R,{参照渡し}θへ|θに) R=HYPOT(X,Y) θ=X,Yの偏角
中身は3本の線分を組み合わせているだけなので、実に単純です。今まで作った命令を利用して簡潔に記述できていますね。単純な分応用も利かせやすいので、一筆書きの矢印や、両側に矢尻がついた矢印など、色々工夫ができるでしょう。試しに作ってみるのがいいでしょう。