主程序(QXJS)
程序清单:
Prog “BQXYS”:Q“K—ZH”:F“ZHX=”:G“ZHY=”:N“TZH—JD”:I“(Y1,Z-1)” ↲
Lbl 1:Fixm:{KD}:K“LICHENG=”:D“WAIYI=(Z-,Y+)”:Goto2↲
Lbl 2:K ≤Q =>Goto3:≠> Goto4↲
Lbl 3:“K—OVER”: Goto1↲
Lbl 4:K>Q+L => Goto3:≠> Goto5↲
Lbl 5:K≤Q+B => Goto6:≠> Goto7↲
Lbl 6:S=K-Q:W=B:Prog “HQXY”:O=N+I×90S2÷(Л RB):O<0 => O=O+360⊿O>360 => O=O-360⊿O“FANGWEI=” ◢
X=UcosN-VsinN+F+D×cos(O+90) ◢
Y=VcosN+UsinN+G+D×sin(O+90) ◢
Goto1↲
Lbl 7:K≤Q+L-C => Goto8:≠> Goto9↲
Lbl 8:S=K-Q:O=N+I×90(2S-B)÷(Л R):O<0 => O=O+360⊿O>360 => O=O-360⊿O“FANGWEI=” ◢
Prog “YQXY”:X=UcosN-VsinN+F+D×cos(O+90) ◢
Y=VcosN+UsinN+G+D×sin(O+90) ◢
Goto1↲
Lbl 9: S= Q+L-K:W=C:Prog “HQXY”:E=N+IA+180:O=E-I×90S2÷(Л RC)+180:O<0 => O=O+360⊿O>360 => O=O-360⊿O“FANGWEI=”◢
V=-V↲
X=(U-H)cosE-VsinE+F+T cosN+D×cos(O+90) ◢
Y=VcosE+(U-H)sinE+G+T sinN+D×sin(O+90) ◢
Goto1↲
子程序“BQXYS”
A:R:B“L01”:C“L02” ↲
M“M1”=B÷2-B3÷(240 R2)◢
J“M2”=C÷2-C3÷(240 R2)◢
P“P1”= B2÷(24 R)- B4÷(2688 R3)◢
Z“P2”= C2÷(24 R)- C4÷(2688 R3)◢
T“T1”=M+(R+P)tan(A÷2)+(Z-P) ÷sinA◢
H“T2”=J+(R+Z)tan(A÷2)+( P-Z) ÷sinA◢
L= B÷2+C÷2+A RЛ÷180◢
E= ◢
子程序“HQXY”
U=S-S5÷(40R2 W2)+ S9÷(3456 R4 W4):V=I×(S3÷(6RW)- S7÷(336 R3 W3)
子程序“YQXY”
U=Rsin(180(S-B÷2)÷Л÷R)+M:V=I×(R×(1-cos(180(S-B÷2)÷Л÷R))+P)
程序说明:本程序可以计算等长和不等长“缓+圆+缓”型曲线或者单圆曲线的中线坐标、外移桩坐标以及中线的切线方位角。
先将主、子程序存入计算器,然后运行主程序“QXJS”,输入A(曲线偏角),曲线半径R,第一缓和曲线长L01,第二缓和曲线长L02,(等长缓和曲线时L01= L02),然后显示曲线逐要素,接着输入ZH坐标(ZHX,ZHY),ZH到JD坐标方位角TZH—JD,当曲线为左偏时(Y1,Z-1)输-1,右偏输1,输入计算里程K,外移距离D,计算中桩时D输0,计算左边桩时D输负数,算右边桩时D输正数,当所输里程不在本曲线计算范围内时,屏幕显示K—OVER,继续输入有效里程可继续计算。
对于单圆曲线,缓和曲线长输入0。
本程序缓和曲线X计算取了4项,Y计算取了3项,一般的曲线计算精度都可达到mm级。