卡西欧计算器5800测量放样程序.docx
卡西欧计算器5800测量放样程序卡西欧5800程序(修改于湘桂) R 1M :“NEWZ CIRCLE”?M : If M=-1 : Then “JD” ?U :“1-TR-1-TL” ? N : “AT ” ? O : “JX” ? S : “JY ” ? P : “L0 ” ? H : “R” ? R : “ZJ” ? A : IfEnd “OPP NAME ” ?W : If W=-1 : Then “OPPX”?B : “OPPY”?C : Else Prog“CONTREL”: IfEnd Lbl 0: “C”?K : If Int(K÷1000)>0 : Then Int(K÷1000)V :Else “V”?V :K+1000VK:IfEnd If M=1:Then Prog“CIRCLE” IfEnd H÷2-H(3)÷(240R2)+(R+H2÷(24R)tanT:R(A-180H÷÷R)÷180+2HL U-TG:KQ If QG+L÷2:Then Q-GQ: Else G+L-QQ: IfEnd If Q0:Then Prog “L”:Goto1: IfEnd If QH:Then Q-Q(5)÷(40R2H2)X:Q(3)÷(6RH)-Q(7)÷(336R(3)H(3) Y:90Q2÷(RH) F: Else 180(Q-H÷2)÷(R) F:Rsin(F)+H÷2-H(3)÷(240R2) X:R(1-Cos(F)+H2÷(24R) Y: IfEnd Pol(T-X,Y) If KG+L÷2:Then O-180-NJE:NF+OF: “F=”:FDMS Else NA+NJ+ OE: O+NA-NFF: “F=”:FDMSIfEnd “X=”:S+Icos(E)X“Y=”:P+Isin(E)Y If F0:Then 360+FF: IfEnd If F360:Then F-360F: IfEnd Lbl1: “÷1”?Z: If Z=1:Then Prog “I”: IfEnd If Z=2:Then Prog “LD”: IfEnd If Z=-1:Then Prog “Q”: “X=”:X “Y=”: Y IfEnd Prog “P” Goto 0 P Pol(X-B,Y-C): “D=”:I If J0:Then 360+JJ: Else 0+JJ: IfEnd “AQ=”:JDMS L T-QQ:If KG:Then O+180E: OF: “X=”:S+Qcos(E)X “Y=”:P+Qsin(E) Y Else O+NAF: “X=” S+Qcos(F) X “Y=”:P+Qsin(F) Y IfEnd I “RA”?E:“D”?D:E+FE: If E360:Then E-360E: IfEnd X+Dcos(E)X: Y+Dsin(E)Y: “X=”: X “Y=”: Y EF Q “1A”?E:“1D”?D:E+FE X+Dcos(E)X: Y+Dsin(E)Y:EF “2R”?E: “2D”?D: E+FE X+Dcos(E)X: Y+Dsin(E)Y EF LD 40DimZ OZ1:UZ2:SZ3: PZ4 H÷2-H(3)÷(240R2)M: H2÷(24R)-H(4)÷(2688R(3)V:90H2÷(R)D:(R+V)Tan(A÷2)+MT: RA÷180+HK: O+NAJ:Prog“JD”:JZ21:U-T+KZ22: S-Tcos(O)Z5:P-Tsin(O)Z6:Z5+Mcos(O)+(R+V)cos(O+90N)Z7:Z6+Msin(O)+ (R+V)sin(O+90N)Z8 H-H(5)÷(40R2H2)Z:H(3)÷(6RH)-H(7)÷(336R(3)H(3)C: Pol(C,Z):90-JJ:Prog“JD”: O+JNJ:Prog“JD” Z5+Icos(J)Z9:Z6+Isin(J)Z10:S+Tcos(Z21)Z11: P+Tsin(Z21)Z12 Pol(Z10-Z8,Z9-Z7):90-JJ:Prog“JD”:JZ13 J+(A-2D)NJ: Prog“JD”: JZ14 “CEDIAN” Lbl 0: “B”?B:If B=0:Then Prog “R”: IfEnd “XN=”?X: “YN=”?Y:Pol(Y-Z8,X-Z7) 90-JJ: Prog“JD”:JW:J-Z13J Prog“JD”:JZ15 W-Z14J Prog“JD”:JZ16 If N=1:Then Goto 1: IfEnd If N=-1:Then Goto 2: IfEnd Lbl 1: If Z15180:Then Goto 3: IfEnd If Z16 180:Then Goto 5:Else Goto 4 : IfEnd Lbl 2: If Z15180:Then Goto 3: IfEnd If Z16 180:Then Goto 5:Else Goto 4 : IfEnd Lbl 3: “H1” Pol(Y-Z6,X-Z5):90-JJ: Prog“JD” J-Z1+90J: Prog“JD” Isin(J)G If G0:Then 0L:Goto 6: IfEnd If G0:Then “DK=”:Z2-T+GZ19 If N=1:Then “LD=”:-NIcos(J)Z20 Else “LD=”:NIcos(J) Z20 IfEnd “SD=1,LD1”?D:If D=1:Then Prog “SDCQJC”: IfEnd Goto 0 Lbl 4: “Y” If N=-1:Then 360-Z15Z15: IfEnd: “DK=”:Z2-T+H+R(Z15)÷180Z19 If N=1:Then “LD=”:-(I-R)Z20 Else “LD=” :I-RZ20 IfEnd “SD=1,LD1”?D:If D=1:Then Prog “SDCQJC”: IfEnd Goto 0 Lbl 5: “H2” Pol(Y-Z12,X-Z11):90-JJ: Prog“JD”:JW:Z21-90J: Prog“JD”:W-JJ: Prog“JD”:Isin(J)G:If G0:Then 0L: -GG Goto 7: IfEnd If G0:Then “DK=”:Z22+GZ19 IfEnd: If N=1:Then “LD=”:-NIcos(J)Z20 Else “LD=”:NIcos(J)Z20 IfEnd “SD=1,LD1”?D:If D=1:Then Prog “SDCQJC”: IfEnd Goto 0 Lbl 6: L+GL:L-L(5)÷(40R2H2)Z:L(3)÷(6RH)-L(7)÷(336R(3)H(3) C:Pol(C,Z):90-JJ: Prog“JD”:JW:Z1+WNJ: Prog“JD”:Z5+Icos(J)Z17: Z6+Isin(J) Z18 J+2WNJ: Prog“JD”:J-90J: Prog“JD”:JW Pol:90-JJ: Prog“JD” J-WJ: Prog“JD”:Isin(J)G:If Abs(G)0.001:Then Goto 6: IfEnd “DK=”:Z2-T+L+GZ19 If N=1:Then “LD=”:-Ncos(J) Z20 Else“LD=”:NIcos(J) Z20 IfEnd “SD=1,LD1”?D:If D=1:Then Prog “SDCQJC”: IfEnd Goto 0 Lbl 7: L+GL:L-L(5)÷(40R2H2)Z:L(3)÷(6RH)-L(7)÷(336R(3)H(3) C:Pol(C,Z):90-JJ: Prog“JD”:JW:Z21-180-WNJ: Prog“JD” Z11+Icos(J)Z17:Z12+Isin(J)Z18:J-2WNJ: Prog“JD” J-90J: Prog“JD”:JW Pol(Y-Z18,X-Z17):90-JJ: Prog“JD” J-WJ:Prog “JD” Isin(J)G: If Abs(G)0.001:Then Goto 7:IfEnd “DK=”:Z22-L-GZ19 If N=1:Then “LD=”:NIcos(J)Z20 Else“LD=”:-NIcos(J) Z20 IfEnd “SD=1,LD1”?D:If D=1:Then Prog “SDCQJC”: IfEnd Goto 0 JD If J0:Then J+360J: IfEnd If J360:Then J-360J: IfEnd CIRCLE If K缓直点里程:Then 交点里程U:交点X坐标S:交点Y坐标 P:转角值A:-1或1N:圆曲线半径R:缓和曲线长H:直线段起始方位角O:Goto 1: IfEnd If K Lbl 1 CONTREL If W=控制点点号:Then 控制点X坐标B:控制点Y坐标C: IfEnd If W= ZBFS Lbl 0:1W: “NEW OPP”?W:If W=1:Then “OPPX”?X: “OPPY”?Y:Else Prog “CONTREL”:BX:CY: IfEnd Lbl 1:-1W: “NEW CPP”?W: If W=-1:Then “CPPX”?S: “CPPY”?T: Else Prog “CONTREL”:BS:CT: IfEnd Pol(S-X,T-Y): “D=”:I If J0:Then J+360J: Else 0+JJ: IfEnd “AQ=”:JDMS Lbl 2:0W: “ZBFS=0,SQS0”?W:If W=0:Then Goto 1: Else Prog “SQS”: IfEnd Goto 0 SQS Lbl 0: “S1=”?A: “J1=?M: “J2=”?N: “S2=?D:N-MQ: If Q0:Then Q+360Q: IfEnd If Q45°00:Then “ERROR PLEASE REPEAT” Goto 0: IfEnd (A2+D2-2ADos(Q)E: “S3=”:E If Abs(A-D)60:Then “ERROR PLEASE REPEAT” Goto 0: IfEnd If Abs(I-E)0.01:Then cos-1(A2+E2-D2)÷(2AE)R: cos-1(D2+E2-A2) ÷(2DE)G: Else “ERROR PLEASE REPEAT” Goto 0: IfEnd If J0:Then J+360J:IfEnd (X+Acos(J+R)+S+Dcos(J+180-G)÷2F: “X=”:F (Y+Asin(J+R)+T+Dsin(J+180-G)÷2P: “Y=”:P SQX 1S:“NEWZ SQXK”?S: If S=-1:Then ?U:?R:?T:?N:?I:?F: “HB”?B: IfEnd Lbl 0: “C”?K : If Int(K÷1000)>0 : Then Int(K÷1000)V :Else “V”?V :K+1000VK:IfEnd If S-1:Then Prog “SQXK”: IfEnd U-TG:KQ: If QG:Then Q-UQ: Else Q-GW: IfEnd If QG:Then “H=”:B+QN÷1000H Goto 1 Else If QU+T:Then “H=”:B+(Q-U)N÷1000+FW2÷(2R)H Goto 1 Else If QU+T:Then “H=”:B+(Q-U)I÷1000H Goto 1: IfEnd Lbl 1: “P”?P: “O=”:H-PO Goto 0 SQXK If K竖曲线圆直点里程:Then 变坡点里程U:变坡点设计高程 B:竖曲线圆曲线半径R:竖曲线切线长T:竖曲线直线段坡度常数 N:变坡点常数F: Goto 0: IfEnd If K Lbl 0 SDCQJC 40DimZ Lbl 0:Z19Z23:Prog “SQXZ” Z24-Z27Z30: Z23Z31 If Z31Z30:Then Z31-Z24Z31:Else Z31-Z30 Z32: IfEnd If Z31Z30:Then Z25+(Z31)×(Z28)÷1000Z33: Goto 1 Else If Z31Z24+Z27:Then Z25+(Z31-Z24)×(Z28)÷1000+(Z29)×(Z32)2÷(2×Z26)Z33: Goto 1 Else If Z31Z24+Z27:Then Z25+(Z31-Z24)×I÷1000Z33: Goto 1: IfEnd Lbl 1: “H0=”:Z33+内轨面至圆心高差常数Z33 “HN”?K: “h=”:K-Z33Z34 If Z20隧道中心线与设计中心线的偏移量:Then Z20-Z35:Else - Z20Z35 : IfEnd “RN=”:2+2)Z36 “R0”?Z: “RCQ=”: Z36-ZZ37 SQXZ 40DimZ If Z23竖曲线圆直点里程:Then 变坡点里程Z24:变坡点设计高程Z25:竖曲线圆曲线半径Z26:竖曲线切线长Z27:竖曲线直线段坡度常数Z28:变坡点常数Z29:IfEnd If Z23 Lbl 0