@REM 縦線と斜線に接する矩形作図
@echo off
REM #jww
REM #cd
REM #c矩形の横寸法 無指定:1000/_/a
REM #c矩形の縦寸法 無指定:1000/_/b
REM #1ln縦線を指示してください
REM #2ln斜線を指示してください
REM #hp
REM #e
copy jwc_temp.txt temp.txt > nul
ruby -x %~f0 temp.txt %1 %2 > jwc_temp.txt
exit
w,h=1000.0,1000.0
while ARGV.size>1
case argument=ARGV.pop
when /\/a/
w=argument[2..-1].to_f
when /\/b/
h=argument[2..-1].to_f
end
end
sen=[]
while ARGF.gets
xy=split
if xy[0]=~/^hp1/
hpx,hpy=xy[1].to_f,xy[2].to_f
end
if xy[0]=~/^\d|^-/
xy.collect!{|item|item.to_f}
if xy[0]>xy[2]
xy[0],xy[2],xy[1],xy[3]=xy[2],xy[0],xy[3],xy[1]
elsif xy[0]==xy[2]
xy[1],xy[3]=xy[3],xy[1] if xy[1]>xy[3]
end
sen< end
end
sen1,sen2=sen[0],sen[1]
arg1=atan2(sen1[3]-sen1[1],sen1[2]-sen1[0])
arg2=atan2(sen2[3]-sen2[1],sen2[2]-sen2[0])
arg=arg1-arg2
x,y=sen_sen_kouten2(sen1,sen2)
l=(w/sin(arg)).abs
hp_arg=atan2(hpy-y,hpx-x)
if hp_arg>0
lx=w
ly=l*cos(arg)
x1,y1=x,y+ly
x2,y2=x1+w,y1+h
else
lx=-w
ly=l*cos(arg)
x1,y1=x,y-ly
x2,y2=x1-w,y1-h
end