卡西欧计算器5800测量放样程序
卡西欧5800计算器工程应用程序.
卡西欧5800计算器测量专用程序一、程序功能主要功能:采用交点法方式计算多条线路坐标正反算,可算任意复杂线型及立交匝道,包括C型,S型、卵型、回头曲线等;极坐标放样,全线路基边坡开挖口及坡脚放样计算、路基任意点设计高程、横坡、设计半幅宽度.隧道欠超挖放样计算。
新版本优化:1、优化程序语句、2、取消原线元法计算,化线元法为交点法。
3、高程计算修改,4、附计算坐标及高程参数设计要素输入实例二、源程序(绿色为程序名;蓝色为输入计算器内容)0.总主程序(1、坐标计算放样程序2、坐标反算程序;3、高程计算查阅程序;4、路基半幅标准宽度查阅程序;5、路基边坡及开挖口放样程序;6、路基标准距离放样;7、桥梁锥坡计算放样程序;8、极坐标计算程序;9、隧道超欠挖计算程序)运行后按1~9数子约半秒,则选择1至9的程序,返回时,在桩号输入-1,返回选择计算类型。
输入-2,返回选择线路。
程序名:0(数子0)ClrMat:ClrVar:12→DimZ:Norm 2:Do:"(XY=1,ZD=2 ,GC=3,GD=4,BP=5,FM=6,ZP=7,JS=8,SD=9)===>QING AN 1-9":Getkey→Z[3]:While Z[3]=35:Prog"1XY”:WhileEnd:While Z[3]=36:Prog"2ZD":WhileEnd: While Z[3]=37:Prog"3GC":WhileEnd: While Z[3]=21:Prog"4GD":WhileEnd: While Z[3]=22:Prog"5BP":WhileEnd: While Z[3]=23:Prog"6FM":WhileEnd: While Z[3]=31:Prog"7ZP":WhileEnd: While Z[3]=32:Prog"8JS":WhileEnd: While Z[3]=33:Prog"9SD":WhileEnd:LpWhile Z[3]≠25:”XIE XIE SHI YONG”:1.主程序:一般坐标计算及放样程序程序名:1XYProg "DX":Prog"QX":90→A: "PJ1"?A:A→B: "PJ2"?B:A→Z [1]:B→Z[9]: Do:"KM"?Z:Z=-1=>Stop:Z=-2=>Break: Prog"K": ? D: 0→L: "L0"?L:L→Z[10]: Porg"A":Z[2]+Z[1] →A :A-Z[9]→E:I+Dcos(A)+Z[10]cos(E→X:J+Dsin(A)+Z[10]sin(E→Y:Prog"XY": Prog"JS":LpWhile Z≠-12.主程序:由大概桩号及坐标反算桩号及距离程序名:2ZDProg"QX":Do: "KM"?Z:Z=-1=>Stop:Z=-2=>Break: Prog"K": "XO"?X: "Y0"?Y: Porg"B": Prog"ZD":LpWhile Z≠-1(反算带显示设计高程和横坡.在2ZD程序中修改这:Prog"QX":"KM"?Z:Do: Prog"K":"XO"?X:X=-1=>Stop:X=-2=>Break:"Y0"?Y: Porg"B":Prog"H": Prog"ZD": " H=": Locate 6,4,H:" I=":Locate 6,4,I◢LpWhile X≠-1 )3.主程序:任意点高程计算及横坡程序名:3GCP rog"QX":0→B: "H-B"?B: B→Z[9]: Do: "KM"?Z:Z=-1=>Stop:Z=-2=>Break:?D:Prog"H":Fix 3: " H=": Locate 6,4,H-Z [9]:" I=":Locate 6,4,I:LpWhile Z≠-14.主程序:任意桩号位置的标准路基宽度计算程序名:4GDProg"QX": Do: "KM"?Z:Z=-1=>Stop:Z=-2=>Break:-1→D:Prog"C":L→P:1→D: Prog"C":Fix 3: " LGD=": Locate 6,4,P:" RGD=":Locate 6,4,L:LpWhile Z≠-15、主程序:路基开挖边线及填方坡脚线放样程序程序名:5BPProg "DX":Prog"QX":0.5→B: "TH-GD"?B: B→Z[7]: Do:"K M"?Z:Z=-1=>Stop:Z=-2=>Break: Prog"K": “X0"?X:"Y0"?Y:Z[8]→M:"M0"?M:M→Z[8]: Porg"B":D→P :Prog"C":If D<0:Then 0. 75-L→D:Else L-0.75→D: IfEnd: Prog“H”:H-0.03-Z[8] →G: Prog “W1”:If G>0:Then Goto T: IfEnd:-G→H:If H>E+F:Then L+M+N+U+C(H-E-F)+BF+AE→S:Goto 0:IfEnd:If H>E:Then L+M+N+ B(H-E)+AE→S:Goto 0:IfEnd:If H<E:Then L+M+HA→S:Goto 0:IfEnd:LbI T:If G>W:Then L+Z[7]+V+J(G-W)+IW→S:Else L+Z[7]+GI→S:IfE nd:LbI 0: Fix 2: P→D :Abs(D)-S→T: " LX=":Locate 6,4,T:Prog"ZD":" TW=": Locate 6,4,G◢LpWhile Z≠-16、主程序:定值放样路基桩计算填挖值程序名:6FMProg "DX":Prog"QX": Do:"KM"?Z:Z=-1=>Stop:Z=-2=>Break: P rog"K": ?D: Porg"A":Z[2]+90→A :I+Dcos(A→X:J+Dsin(A→Y:P rog"XY":Prog"JS":Z[8]→M:”M0”?M:M→Z[8]:Prog “H”:” T W=”:Locate 6,4,H-Z[8]: LpWhile Z≠-17、主程序:桥梁锥坡计算放样程序名:7ZPProg"DX":Prog"QX":"Z0"?Z:"LD:Z-,Y+"? D:Abs(D) →R: "LR"?R: D→Z[7]:R→Z[10]:Z→Z[9]:Prog”C”:L→Z[10]:Prog”K”: Do:Z[10]→Y:"L0:SZ+,DZ-"?Y: Y=-1=>Stop:Y=-2=>Break: √(Z[7]2(1-Y2/Z[10]2))→X:Z[9]+Y→Z: Prog”C”: If D>0:Then L+X→D:Else –L-X→D:IfEnd:Prog”A”: Z[2]+90→A :I+Dcos(A→X:J+Dsin(A →Y:Prog"XY":Prog"JS": LpWhile Y≠-18、主程序:由坐标计算方位角及距离程序名:8JSProg "DX":Do:?X: X=-1=>Stop:X=-2=>Break:?Y:Prog”JS”: LpWhi le X≠-19、主程序:隧道超欠挖放样计算程序名:9SDProg"DX":0.65→A:”CQHD”?A:A→Z[7]:Do:"KM"?Z:Z=-1=>Stop:Z =-2=>Break: Prog"K": “X0"?X:"Y0"?Y:Z[8]→M:"M0"?M:M→Z[8]: Porg"B":D→Z[9]:0→D:Prog”H”:Prog”SD1”:Z[9] →D:Z[8]→M:Z[7]→X:Rcos(P→C:H+A→A:H+B→B:C+A→E:If M<E:Then R-V→S: S=0=>Goto 1:√(S2-(B-A)2)S÷Abs(S→T:Abs(D-Q)-T→T:√(T2+(M-B)2) -V-X→L:Goto 0:IfEnd:LbI 1:√((D-Q)2+(M-A)2)-R-X→L:LbI 0:Fix 2:” LX=”: Locate 6,4,L:Prog”ZD”:“ H0=”: Locate 6,4,M-H◢LpWhile Z≠-110. 交点法正算子程序(A)程序名:AP÷Abs(P→W:O-T+ΠR×Abs(P)÷180+H÷2-N÷2→Q:H→C:0→M:If Z≤O-T:Then Z-O→S:G→Z[2]:Goto 1: IfEnd:If Z≤O-T+H:Then Z-O+T→S:Prog “HX”:G+WK→Z[2]:A-T→A:G→E: Goto 2:IfEnd:If Z≤Q: Then 180(Z-O+T-0.5H)÷R÷Π→S : Prog”AB”:A+R(1-Cos (S→E:B+Rsin(S→A:E→B:R→M:G+WS→Z[2]:A-T→A:G→E:Goto 2: If End:If Z≤Q+N:Then Q+N-Z→S:N→H:Prog “HX”:G+P→E:E-WK→Z[2]:F-A→A:C→H:Goto 2:IfEnd:Z-Q-N+F→S:G+P→Z[2]: LbI 1:U+Scos(Z[2]→I:V+Ssin(Z[2]→J:Ret urn:LbI 2:U+Acos(E)-WBsin(E→I:V+Asin(E)+WBcos(E→J11. 交点法反算子程序(B)程序名:B0→D:Do:Z+D→Z:Prog”A”:Pol(X-I,Y-J+×10-9:J-Z[2]→J:Isin(J→S: Icos(J→D:If M≠0:Then Pol(M-WS,D:JMΠ÷180→D:IfEnd: LpWhile Abs(D)>.001:Z+D→Z:S→D12.缓和曲线段直角坐标计算子程序(AB)程序名:ABH2÷R÷24-H∧(4)÷2688÷R∧(3)+H∧(6)÷506880÷R∧(5)- H∧(8)÷154 828800÷R∧(7)→A:H÷2-H∧(3)÷240÷R2+ H∧(5)÷34560÷R∧(4)- H∧(7)÷8386560÷R∧(6)+ H∧(9)÷3158507520÷R∧(8)→B13. 计算缓和曲线段坐标增量及偏角子程序(HX)程序名:HXS-S∧(5)÷40÷R2÷H2+S∧(9)÷3456÷R∧(4)÷H∧(4)-S∧(13)÷599040÷R∧(6)÷H∧(6)+S∧(17)÷175472640÷R∧(8)÷H∧(8)→A:S∧(3)÷6÷R÷H-S∧(7)÷336÷R∧(3)÷H∧(3)+S∧(11)÷42240÷R∧(5)÷H∧(5)-S∧(15)÷9676800÷R∧(7)÷H∧(7)+S∧(19)÷3530097000÷R∧(9)÷H∧(9)→B:9 0S2÷Π÷R÷H→K:If S=0:Then 0→M:Else RH÷S→M:IfEnd14.高程计算子程序(H)程序名:HProg “S1”:N-I→A:A÷Abs(A→W:R×Abs(A÷2→T:If Z<C-T:Then G+ I(Z-C→H:Goto 0:IfEnd:If Z<C+T:Then G-TI+(I+(Z-C+T)W÷2÷R)×(Z-C+T→H:Goto 0: IfEnd:N→I: G+I(Z-C→H:LbI 0:If D=0:Then H→H:Return:Else Prog “I”:H+I(Abs(D)-K→H:IfEnd15.高程超高计算横坡子程序(I)程序名:IProg “I1”:If S=0:Then M→I: Return:Else If W=1:Then ((N-M)×(Z-C)÷S+M→I:Return:Else (((3((Z-C)÷S)2-2((Z-C)÷S)∧(3))×(N-M))+M→I:IfEnd:16.路基宽度子程序程序名:C1→S: Prog “G1”:Z-C→E:(B-A)E÷S+A→L17:极坐放样计算程序(计算放样点至置仪点方位角及距离)程序名:JSZ[5]→K:Z[6]→L:Pol(X-K, Y-L:IF J<0:Then J+360→J:IFEnd:Int(J) +0.01Int(60Frac(J))+0.006Frac(60Frac(J→J: Fix 4:” FWJ=”: Lo cate 6,4,J:Fix 3:” S=”:Locate 6,4,I◢18.导线点子程序(DX)程序名:DXZ[5]→K:Z[6]→L:“XZ”?K:”YZ”?L:K→Z[5]:L→Z[6]19.线路选择子程序(线路选择输0时。
CASIO fx—5800计算器 工程测量与公路测量程序
CASIO fx—5800计算器工程测量与公路测量程序1、坐标正算〝X0=〞?X:〝Y0=〞?Y:〝I=〞?I:〝J=〞?JX+ICos(J)→U:Y+ISin(J)→V〝X=〞:U (待求点的X坐标)〝Y=〞:V (待求点的Y坐标)说明:X0 Y0:已知点坐标I:两点的距离J:方位角2、坐标反算Lbl 0〝X1=〞?X:〝Y1=〞?Y:〝X2=〞?U:〝Y2=〞?VPol(U-X,V-Y):J<0 J+360→J〝I=〞:I〝J=〞:J DMSGOTO 0说明:X1Y1:第一点的坐标,X2Y2第二点的坐标,I:两点的距离,J:方位角3、圆曲线〝X0=〞?X: 〝Y0=〞?Y:〝FWJ=〞?D:〝QDHAO=〞?G: 〝ZDHAO=〞?C: 〝R=〞?R Lbl 1〝DQHAO=〞?LL<G Or L﹥C GOTO 2〝PY=〞?K180(L-G)÷(πR) →E2RSin(0.5E) →FReC(Abs(F),D+0.5E):Cls〝X=〞:X+I+KCos(D+E+90) →A〝Y=〞:Y+J+KSin(D+E+90) →BD+E→o:o<0 360+o→0o〝FWJ=〞:o DMSGoto 1Lbl 2〝END〞说明:X0Y0:起始点的坐标,FWJ:起始点的方位角,QDHAO:起点里程,ZDHAO 终点里程,R:半径,DQHAO:待求点里程,PY:偏移量4、竖曲线〝QZHAO =〞?J: 〝H+B〞=?B:〝I1=〞?C:〝I2=〞?D:〝R=〞?R:〝T=〞?T: ((D-C)÷100) ÷Abs((D-C) ÷100)→A:Abs(0.5R(D-C) ÷100)→S〝T〞:SJ-T→XJ+T→YLbl 0〝DQ=〞?LIf L<X:Then Goto 1:Else If L﹥Y:Then Goto 1:If End:If End〝GC=〞:B+C(L-J) ÷100+A(L-J+T) ÷(2R) →HGoto 0Lbl 1〝END〞说明:QZHAO:曲中点里程,H+B:曲中点高程,I1:第一坡度,I2:第二坡度,R:半径,T:切线长,DQ:待求点里程。
卡西欧5800边坡测量放样程序隧道测量
卡西欧5800边坡测量程序U″XO″:V″YO″:A″X1″:B″Y1″:POL(G″X2″-A,D″Y2″-B:W=J:I:LBI1:{LKM}:X″XA="=A+LCOSW+KCOS(W+M)◢Y"YA="=B+LSinW+Ksin(W+M)◢POL(S-U),Y-U:J <0=>J=J+36O⊿X″DIX=″=I◢FiX3:O″FW=″=J◢Goto15800边坡测量程序″XO=″?U:″YO=″?V:″X1=″?A:″Y1″?B:″X2″?G:″Y2″?D↙POL(G-A,D-B):J→W:Fix 3:CLS↙Lbi 1 ↙″L=″?L:″K=″?K:″M=″?M↙A+LCOSW+KCOS(W+M)→X↙B+LSinW+Ksin(W+M)→Y↙Cls↙"XA=":Locate 5,1,X:"YA=":Locate 5,2,Y◢Pol(X-U,Y-V):If J <0:Then J+36O→J :Else J→J↙Cls↙″DIX=″:Locate 5,1,I:″FW=″:J▲DMS◢Goto 1程序特点:全线标高数据一次性程序化输入,扩充变量数据库,无需修改程序内容;全线贯通计算,标高计算时将全线数据分为4等分,首先判断待求点在哪个区间,再循环选择,提高运算时间;傻瓜操作,适用初级用户。
一、程序:M CW“1.BG 2.SZ ”:W=1=> Goto 1ΔO“KOU LING”:O≠1 23456=>O=0:Goto 5ΔO=0:Z[1]=0: Goto 0←┘Lbi 0←┘”No.”:Z[1]+1◢{ZHPR}:Z“D0” :H“BG” :P“PD” :R“R0” :Z[Z[1]×4+ 3]=Z:Z[Z[1]×4+4]=H:Z[Z[1]×4+5]=P:Z[Z[1]×4+6]=R:“NEXT”◢Isz Z[1]:Goto0←┘Lbi 1←┘Z[2]= Z[1]←┘{D}:D≤Z[Int(Z [2]÷4+1)×4+3]=>Z[2]= Int(Z [2]÷4) :Goto2ΔD≤Z [Int (Z[2] ÷2+1)×4+3]=>Z[2]=Int(Z[2]÷2):Goto2ΔD≤Z [Int (Z[2]×.75+1)×4+3]=>Z[2]=Int (Z[2]×.75):Goto2ΔGoto 2←┘Lbi 2←┘D<Z[Z[2]×4+3]=>Dsz Z[2]:Goto 2ΔGoto 3←┘Lbi 3←┘Z[Z[2]×4+6]≠0=>G=Z[Z[2]×4+4]+(D-Z[Z[2]×4+3])×Z[Z[2]×4+ 5]÷100+(D-Z[Z[2]×4+3]) ^2÷2÷Z[Z[2]×4+6]:Goto 4ΔG=Z[Z [2]×4+4]+(D-Z[Z[2]×4+3])×Z[Z[2]×4+5]÷100:Goto 4←┘Lbi 4←┘{Z}:Z:G=G-0.02Abs(Z):“G”: G◢(4850输出){Z}:Z:G=G-0.02Abs(Z): G“G”◢(4800输出)Goto 1←┘Lbi 5←┘“OUT”◢程序操作说明程序分为两部分:1.BG为标高计算,2.SZ为参数设置。
CASIO-5800测量程序
CASIO-5800测量程序CASIO-5800测量程序5800中边桩任意点坐标计算程序一、文件名:HZ ZH 输入文件名Deg:Fix 4 基本设置"FWJ∠α="?Q8起点切线方位角"ZX(m)="?O: "ZY(m)= "?P8 置镜点坐标"HX(m)= "?M: "HY(m)= "?N 8 后视点坐标Pol(A-O,B-P) 8If J<0:Then J+360"H:Else J"H:IfEnd8"QX(m)="?U: "QY(m)="?V: "QDK(m)="?G8 起算点坐标和里程Ldl 08"GDK(m)="?Z 8 观测点里程G-Z"C8"GX(m)=":U+cos(Q) ×C"Ay 置镜点至中桩X坐标"GY(m)=":V+sin(Q) ×C"By 置镜点至中桩Y坐标Pol(A-O,B-P) 8 置镜点到中桩方位角J-H"J8If J-H<O:Then J+360"J:Else J"J:IfEnd8"SPJ∠α=":J}DMSy显示顺拔夹角"I(m)=":Iy 置镜点至中桩距离Ldl 18"BJ(m)= "?S 8 边距If S=0:Then Goto 0:IfEnd8"JIA JIAO L(-),R(+)="?E8Q+E"W8"GX(m)=":A+cos(W) ×S"Xy 显示观测点X 坐标"GY(m)=":B+sin(W) ×S"Yy 显示观测点Y 坐标Pol(X-O,Y-P) 8If J<0:Then J+360"J:IfEnd8J-H"J8 置镜点到观测点方位角If J<0:Then J+360"J:Else J"J:IfEnd8"SPJ∠α=":J}DMSy显示顺拔夹角"I(m)=":Iy 显示置镜点到观测点距离Goto 1 回到前面重复下一观测点二、文件名:ZH HY 缓和曲线段内任意点坐标计算程序“Deg:Fix 4“FWJ∠a =”?Q“ZX(m)=”?O:”ZY(m)=”?P“HX(m)=”?M:”HY(m)=”?N Pol(M-O,N-P)If J<0:Then J+360→H:Else J→H:IfEnd “HWJ∠a =”:H?DMS◢“ZHUAN XIANG L(-1),R(1)=”?T“R(m)=”?R“LS(m)=”?D“KZH=”?G“ZH X(m)=”?U“ZH Y(m)=”?VLbI 0“QDK=”?ZAbs(Z-G)→CC-C^5/(40R^2D^2)+C^9/(3456 R^4D^4) →WC^3/(6RD)-C^7/(336R^3D^3)+C^11/(42240R^5D^5)→KQ+(C^2/(2RD)×(180/Π)) →FIf J<0:Then F+360→F:Else F→F:IfEnd “QFWJ ∠a =”:F?DMS◢“QS X(m)=”:U+W×Cos(Q)+K×Cos(Q+90) →A: A ◢“QS Y(m)=”:V+W×Sin(Q)+K×Sin(Q+90) →B: B ◢Pol(A-O,B-P)If J<0:Then J+360→J:Else J→J:IfEnd J-H→JIf J<0:Then J+360→J:Else J→J:IfEnd“SPJ∠a=”:J?DMS◢“I(m)=”:I◢LbI 1“BJ(m)=”?SIf S=0:Then Goto 0: IfEnd“JIA JIAO L(-),R(+) =”?E“BZ X=”:A+SCos(F+E) →X: X ◢“BZ Y=”:B+S Sin(F+E) →Y:Y ◢Pol(X-O,Y-P)If J<0:Then J+360→J:Else J→J:IfEnd J-H→JIf J<0:Then J+360→J:Else J→J:IfEnd “∠BIAN ZHUANG PJ=”:J?DMS◢“I(m)=”:I◢Goto 0三、文件名:HY YH 园和曲线段内任意点坐标计算程序“Deg:Fix 4“FWJ∠a=”?Q起算点方位角“ZX(m)=”?O:”ZY(m)=”?P置镜点坐标“HX(m)=”?M:”HY(m)=”?N后视点坐标Pol(M-O,N-P)If J<0:Then J+360→H:Else J→H:IfEnd “HFWJ ∠a=”:H?DMS◢后视方位角“ZHUAN XIANG L(-1),R(1)=”?T曲线转向左负右正“R(m)=”?R曲线半径“LS(m)=”?D缓和曲线长度“KZH(m)=”?G曲线起点ZH里程“XZH(m)=”?U曲线起点X“YZH(m)=”?V曲线起点YLbI 0“QDK(m)=”?Z观测点里程Abs(Z-G)→CR×Sin(180×(C- D)/(πR)+90D/(πR))+D/2-D^3/(240R ^2)→WR×(1-Cos(180(C-D))/(πR)+90D/(πR))+ D^2/(24R)- D^4/(2688R ^3)→KQ+(180(C-D)/(πR)+90D/(πR))→F If F<0:Then F+360→J:Else F→J:IfEnd “Q FWJ=”:F?DMS◢观测点切线方位角“QS X(m)=”:U+√(W²+K²)×Cos((Q)+tan?¹(K÷W)) →A: A ◢观测点X坐标“QS Y(m)=”:V+√(W²+K²)×Sin((Q)+tan?¹(K÷W)) →B: B ◢观测点Y坐标Pol(A-O,B-P)If J<0:Then J+360→J:Else J→J:IfEndJ-H→JIf J<0:Then J+360→J:Else J→J:IfEnd“SPJ∠a=”:J?DMS◢观测点所拨偏角“I(m)=”:I◢置镜点到观测点距离“BIAN JU(m)=”?S边距,左负右正If S=0:Then Goto 0: IfEnd“JIA JIAO L(-),R(+) =”?E边桩至中桩切线方向的夹角左负右正“BZ X(m)=”:A+SCos(F+E) →X: X ◢“BZ Y(m)=”:B+S Sin(F+E) →Y:Y ◢Pol(X-O,Y-P)If J<0:Then J+360→J:Else J→J:IfEnd J-H→JIf J<0:Then J+360→J:Else J→J:IfEnd “BZ ∠a =”:J?DMS◢“I(m)=”:I◢Goto 0四、文件名:YH HZ 另一端缓和曲线段内任意点坐标计算程序“Deg:Fix 4“FWJ∠a=”?Q起算点方位角“ZX(m)=”?O:”ZY(m)=”?P置镜点坐标“HX(m)=”?M:”HY(m)=”?N后视点坐标Pol(M-O,N-P)If J<0:Then J+360→H:Else J→H:IfEnd “HFWJ ∠a=”:H?DMS◢后视方位角“ZHUAN XIANG L(-1),R(1)=”?T曲线转向左负右正“R(m)=”?R曲线半径“LS(m)=”?D缓和曲线长度“KZH(m)=”?G曲线起点ZH里程“XZH(m)=”?U曲线起点X“YZH(m)=”?V曲线起点YLbI 0“QDK(m)=”?Z观测点里程Abs(G-Z)→CC-C^5/(40R^2D^2)+C^9/(3456 R^4D^4) →WC^3/(6RD)-C^7/(336R^3D^3)+C^11/(42240R^5D^5)→KQ-(C^2/(2RD)×(180/Π)) →FIf F<0:Then F+360→F:Else F→F:IfEnd If F>360:Then F-360→F:Else F→F:IfEnd “QFWJ∠a =”:F?DMS◢“QS X(m)=”:U-W×Cos(Q)+K×Cos(Q+90) →A: A ◢“QS Y(m)=”:V-W×Sin(Q)+K×Sin(Q+90) →B: B ◢Pol(A-O,B-P)If J<0:Then J+360→J:Else J→J:IfEndJ-H→JIf J<0:Then J+360→J:Else J→J:IfEnd“SPJ∠a=”:J?DMS◢“I(m)=”:I◢LbI 1“BJ(m)=”?SIf S=0:Then Goto 0: IfEnd“JIA JIAO L(-),R(+) =”?E“BZ X=”:A+SCos(F+E) →X: X ◢“BZ Y=”:B+S Sin(F+E) →Y:Y ◢Pol(X-O,Y-P)If J<0:Then J+360→J:Else J→J:IfEnd J-H→JIf J<0:Then J+360→J:Else J→J:IfEnd “BZ∠a =”:J?DMS◢“I(m)=”:I◢Goto 0。
FX5800计算器公路桥梁隧道测量程序
FX5800计算器公路桥梁隧道测量程序FX5800卡西欧计算器公路测量常用程序一、程序功能主要功能:采用交点法方式计算多条线路坐标正反算,可算任意复杂线型及立交匝道,包括C型,S型、卵型、回头曲线等;极坐标放样,全线路基边坡开挖口及坡脚放样计算、路基任意点设计高程、横坡、设计半幅宽度.隧道欠超挖放样计算。
新版本优化:1、优化程序语句、2、取消原线元法计算,化线元法为交点法。
3、高程计算修改,4、附计算坐标及高程参数设计要素输入实例二、源程序(绿色为程序名;蓝色为输入计算器内容)红色为网友调试后修改笔误。
0.总主程序(1、坐标计算放样程序2、坐标反算程序;3、高程计算查阅程序;4、路基半幅标准宽度查阅程序;5、路基边坡及开挖口放样程序;6、路基标准距离放样;7、桥梁锥坡计算放样程序;8、极坐标计算程序;9、隧道超欠挖计算程序)运行后按1~9数子约半秒,则选择1至9的程序,返回时,在桩号输入-1,返回选择计算类型。
输入-2,返回选择线路。
程序名:0(数子0)ClrMat:ClrVar:12→DimZ:Norm 2:Do:"(XY=1,ZD=2 ,GC=3,GD=4, BP=5,FM=6,ZP=7,JS=8,SD=9)===>QING AN 1-9":Getkey→Z[3]:While Z[3]=35:Prog"1XY”:WhileEnd:While Z[3]=36:Prog"2ZD":WhileEnd: While Z[3]=37:Prog"4.主程序:任意桩号位置的标准路基宽度计算程序名:4GDProg"QX": Do: "KM"?Z:Z=-1=>Stop:Z=-2=>Break:-1→D: Prog"C":L→P:1→D: Prog"C":Fix 3: " LGD=": Loc ate 6,4,P:" RGD=":Locate 6,4,L:LpWhile Z≠-15、主程序:路基开挖边线及填方坡脚线放样程序程序名:5BPProg "DX":Prog"QX":0.5→B: "TH-GD"?B: B→Z[7]: D o:"KM"?Z:Z=-1=>Stop:Z=-2=>Break: Prog"K": “X0"? X:"Y0"?Y:Z[8]→M:"M0"?M:M→Z[8]: Porg"B":D→P :P rog"C":If D<0:Then 0.75-L→D:Else L-0.75→D: IfEnd: Prog“H”:H-0.03-Z[8] →G: Prog “W1”:If G>0:Then Goto T: IfEnd:-G→H:If H>E+F:Then L+M+N+U+C(H-E-F)+BF+AE→S:Goto 0: IfEnd:If H>E:Then L+M+N+ B(H-E)+AE→S:Goto 0:IfEnd:If H<E:Then L+M+HA→S:Goto 0:IfEnd:LbI T:If G>W:Then L+Z[7]+V+J(G-W)+IW→S:Else L+Z[7]+GI →S:IfEnd:LbI 0: Fix 2: P→D :Abs(D)-S→T: " LX=": Locate 6,4,T:Prog"ZD":" TW=": Locate 6,4,G◢LpWhi le Z≠-16、主程序:定值放样路基桩计算填挖值程序名:6FMProg "DX":Prog"QX": Do:"KM"?Z:Z=-1=>Stop:Z=-2=>B reak: Prog"K": ?D: Porg"A":Z[2]+90→A :I+Dcos(A→X: J+Dsin(A→Y:Prog"XY":Prog"JS":Z[8]→M:”M0”?M:M→Z [8]:Prog “H”:” TW=”:Locate 6,4,H-Z[8]: LpWhile Z≠-17、主程序:桥梁锥坡计算放样程序名:7ZPProg"DX":Prog"QX":"Z0"?Z:"LD:Z-,Y+"? D:Abs(D) →R: "LR"?R: D→Z[7]:R→Z[10]:Z→Z[9]:Prog”C”:L→Z[1 0]:Prog”K”:Do:Z[10]→Y:"L0:SZ+,DZ-"?Y: Y=-1=>Stop:Y =-2=>Break: √(Z[7]2(1-Y2/Z[10]2))→X:Z[9]+Y→Z: Prog”C”: If D>0:Then L+X→D:Else –L-X→D:IfEnd:Prog”A”: Z[2]+90→A :I+Dcos(A→X:J+Dsin(A→Y:Prog"XY":Prog"J S": LpWhile Y≠-18、主程序:由坐标计算方位角及距离程序名:8JSProg "DX":Do:?X: X=-1=>Stop:X=-2=>Break:?Y:Prog”JS”: LpWhile X≠-19、主程序:隧道超欠挖放样计算程序名:9SDProg"DX":0.65→A:”CQHD”?A:A→Z[7]:Do:"KM"?Z:Z=-1=> Stop:Z=-2=>Break: Prog"K": “X0"?X:"Y0"?Y:Z[8]→M:"M0"?M:M→Z[8]: Porg"B":D→Z[9]:0→D:Prog”H”:P rog”SD1”:Z[9] →D:Z[8]→M:Z[7]→X:Rcos(P→C:H+A→A:H+ B→B:C+A→E:If M<E:Then R-V→S:S=0=>Goto 1:√(S2-(B-A)2) S÷Abs(S→T:Abs(D-Q)-T→T:√(T2+(M-B)2)-V-X→L:Goto 0:If End:LbI 1:√((D-Q)2+(M-A)2)-R-X→L:LbI 0:Fix 2: ” L X=”: Locate 6,4,L:Prog”ZD”:“ H0=”: Locate 6,4,M-H◢L pWhile Z≠-110. 交点法正算子程序(A)程序名:AP÷Abs(P→W:O-T+ΠR×Abs(P)÷180+H÷2-N÷2→Q:H→C:0→M:If Z≤O-T:Then Z-O→S:G→Z[2]:Goto 1: IfEnd:If Z≤O-T+H:Then Z-O+T→S:Prog “HX”:G+WK→Z[2]:A-T→A: G→E:Goto 2:IfEnd:If Z≤Q: Then 180(Z-O+T-0.5H)÷R÷Π→S : Prog”AB”:A+ R(1-Cos(S→E:B+Rsin(S→A:E→B:R→M:G+WS→Z[2]:A-T→A:G→E:Goto 2: IfEnd:If Z≤Q+N:Then Q+N-Z→S:N→H:Prog “HX”:G+P→E:E-WK→Z [2]:F-A→A:C→H:Goto 2:IfEnd:Z-Q-N+F→S:G+P→Z[2]: LbI 1:U+Scos(Z[2]→I:V+Ssin(Z[2]→J:Return:LbI 2:U+Acos(E)-WBsin(E→I:V+Asin(E)+WBcos (E→J11. 交点法反算子程序(B)程序名:B0→D:Do:Z+D→Z:Prog”A”:Pol(X-I,Y-J+×10-9:J-Z[2]→J:Is in(J→S:Icos(J→D:If M≠0:Then Pol(M-WS,D:JMΠ÷180→D: IfEnd: LpWhile Abs(D)>.001:Z+D→Z:S→D12.缓和曲线段直角坐标计算子程序(AB)程序名:ABH2÷R÷24-H∧(4)÷2688÷R∧(3)+H∧(6)÷506880÷R∧(5)- H∧(8)÷154828800÷R∧(7)→A:H÷2-H∧(3)÷240÷R2+ H∧(5)÷34 560÷R∧(4)- H∧(7)÷8386560÷R∧(6)+ H∧(9)÷3158507520÷R∧(8)→B13. 计算缓和曲线段坐标增量及偏角子程序(HX)程序名:HXS-S∧(5)÷40÷R2÷H2+S∧(9)÷3456÷R∧(4)÷H∧(4)-S∧(13)÷59 9040÷R∧(6)÷H∧(6)+S∧(17)÷175472640÷R∧(8)÷H∧(8)→A:S ∧(3)÷6÷R÷H-S∧(7)÷336÷R∧(3)÷H∧(3)+S∧(11)÷42240÷R ∧(5)÷H∧(5)-S∧(15)÷9676800÷R∧(7)÷H∧(7)+S∧(19)÷35300 97000÷R∧(9)÷H∧(9)→B:90S2÷Π÷R÷H→K:If S=0:Then 0→M:Else RH÷S→M:IfEnd14.高程计算子程序(H)程序名:HP rog “S1”:N-I→A:A÷Abs(A→W:R×Abs(A÷2→T:If Z<C-T: Then G+I(Z-C→H:Goto 0:IfEnd:If Z<C+T:Then G-TI+(I+(Z-C+T)W÷2÷R)×(Z-C+T→H:Goto 0: IfEnd:N→I: G+I(Z-C→H: LbI 0:If D=0:Then H→H:Return:Else Prog “I”:H+I(Abs(D) -K→H:IfEnd15.高程超高计算横坡子程序(I)程序名:IProg “I1”:If S=0:Then M→I: Return:Else If W=1:Then ((N-M)×(Z-C)÷S+M→I:Return:Else (((3((Z-C)÷S)2-2((Z-C)÷S)∧(3))×(N-M))+M→I:IfEnd:16.路基宽度子程序程序名:C1→S: Prog “G1”:Z-C→E:(B-A)E÷S+A→L17:极坐放样计算程序(计算放样点至置仪点方位角及距离) 程序名:JSZ[5]→K:Z[6]→L:Pol(X-K, Y-L:IF J<0:Then J+360→J:IFEn d:Int(J)+0.01Int(60Frac(J))+0.006Frac(60Frac(J→J: Fix 4:” FWJ=”: Locate 6,4,J:F ix 3:” S=”:Locate 6,4, I◢18.导线点子程序(DX)程序名:DXZ[5]→K:Z[6]→L:“X Z”?K:”YZ”?L:K→Z[5]:L→Z[6]19.线路选择子程序(线路选择输0时。
CASIO5800计算器测量计算程序精品文档5页
CASIO 5800计算器测量计算程序来自: ritsing(祥瑞之士) 2009-08-17 14:51:21简要介绍:1. 新版程序把线元法和交点法已经集成在一个模块中了,用户只需修改JD程序和ZA程序中的数据部分即可,其余不需作任何的改动。
2. 因为每条路高程计算不尽相同,且比较复杂,现在可利用PC机EXCEL计算好打印成表格带到工地上使用,所以本版程序未对线路高程序进行专门的编程计算,而是利用统计计算模式中来输入桩号(第一列X)及左、右高程(第二、三列Y,Freq),这种输入数据的方式最为直观,易发现错误,也易修改,输入完毕后运行S程序对数据按桩号进行排序,在程序中通过调用GG 程序来进行内插计算,SG=-1得左标高,SG=1得右标高(若SG输入0,则可进行一般的线性内插计算)。
3. 在JD程序和XY程序中,先将一个计算单元的数据置入矩阵F中(1行8列或1行9列),这样程序可读性极好。
4.相比原CASIO4850程序操作习惯,作了一点小小的改动,测站坐标存在Z[10],N中,X 坐标原存在M中容易被误操作修改,而设计标高存在M中,这样易于修改,因为CASIO5800没有IN,OUT功能,很不方便。
4. 程序利用Z[2]变量值来判断是采用交点法还是线元法模型计算,Z[2]=0为线元法,否则为交点法。
一、PQX程序:计算中边桩坐标及近似的桩号反算,在运行模式直接调用。
①Z[10]→S:”XO”?S:S→Z[10]:”YO”?N:Prog “AU”②Lbl 2:?L:Prog “Z”:Prog “E”:1n→O:90→S③Lbl 4:”JJ”?S:”YC”?O:SO=0 =>Goto 2‘原来lbl 后没有标号4的。
④O=-1 =>Goto 6⑤“X,Y”:R+OCos(Z+S)→X▲U+OSin(Z+S)→Y▲Prog “D”:Goto 4⑥Lbl 6:Z[7]→X:Z[8]→Y:”XF”?X:”YF”?Y:XY=0 =>Goto 4⑦X→Z[7]:Y→Z[8]:Pol(X-R,Y-U+1p):Z+S-J→J:”YC,DL,L”:ICos(J)→O▲ISin(J)→I▲L+I▲Goto 6二、P程序:在程序中提供一个自由运算的模式。
卡西欧5800基本测量程序
卡西欧5800程序(完整版)Lbl 31If A>P-T+L:Then P-T+S-B-I^Z: Else P-T+B+I-Z:IfEndlIf K=l:Then If A<P-T+S-L:Then D-E -> B: Else E-D-B:IfEnd:IfEndlIf K=-l:Then If A<P-T+S-L:Then E・D - B: Else D ・E- B:IfEnd:IfEndFSHHQX1Z[5]->X:Z[6]->Y:Z[l]+90K->JlProg " HHQX u IX—Z[3]:Y—Z[4]lRYJ+2Fr+90K—JlProg " XZBH " IX—G:Y—Z1Z[3]->X:Z[4]->Y IProg、' DOTLINE u JDZBProg ” QDZB IZ[5]-Z[3]:Z[6]-Z[4] IIf O=-l:Then P-T+S—A: Prog n QDZB n :Z[3]^Z[5]:Z[4]^ Z[6]: Else Z[l]+90K+K(L^(6R))r^J:L-L A34-(9eR2)^C: Prog ”XZBH ” "End I(Z[6]-Y+Xtan(Z[2])-Z[5]tan(Z[l]))^(tan(Z[2])-tan(Z[l]))->G ItanZ[2](G-X)+Y->ZlProg n FWJ HZFXZ If M=6:Then Prog " ZSPD " : Else Prog n FSTJ n :IfEndFSLINE Prog ” QDZB IX—G:Y—Z:J—NlProg M FWJ H IN—J:F-J—FlIcos(F)-GlIf G<D:Then If A>P-T+S-L:Then P・T+S+G—Z:Isin(F)-B:Else P-T-G^Z:-Isin(F)^B:IfEnd :1-A:2-O: Else 0-A:IfEndXZBHX+Ccos(J)^XlY+Csin(J)-YHENG PO If A<P-T+L-Z[10] :Then Z[8]->V:Gotol:IfEndlE:Z[8] + (A-P+T-L+Z[10])E->V: Goto l:IfEndlIf A<P-T+S-L:Then Z[9]^V:Goto l:IfEndlIf A<P-T+S-L+Z[10]:Then (Z[8]-Z[9])vZ[10]->E:Z[9] + (A-P+T-S+L)E->V: Goto l:IfEndlZ[8]->V ILbl 1GAO CHENG……(交点桩号)-0:……(交点高程)-D:……(小桩号坡度)-N:……(切线长度)-G:……(圆曲线半径)-R I If A<O-G:Then 0^K: Goto l:IfEndlIf A<O+G:Then 1-K: Goto l:IfEndl(K=0为直线、K=1为凸圆、K二・l为凹圆)……(同上)Lbl l:Prog " HENG PO " IK ( A6G ) 2+(2R)-P ID+N(A-O)-P+WV^Fl FWJJS (测回法测坐标)A 1 XA u:B ” YA n :C H XB ':D " YB 1: K H CHANG DU ” :G11JIAO DU 11I=0:J=0:Pol(C-A,D-B):J<0 J=J + 360zlE=J+GlJ " FWJ 1X"X " =A+KcosE,Y ' Y n二B+KsinE,”END M说明:H JIAO DU ”顺时钟为正、逆时针为负,“ XA “、' YA ”为测站点坐标.”XB“. ”YB”为后视点坐标,“X”. “Y”为前视即待测点坐标," CHANG DU ”为测站点到待测点距离。
卡西欧5800测量实用程序(含直线、圆曲线、大地转施工程序)
卡西欧5800测量实用程序(含直线、圆曲线、大地转施工程序)卡西欧5800测量实用程序(含直线、圆曲线、大地转施工程序)一、直线计算程序0→I:0→J:”X0”?D:”Y0”?E:”X1”?B:”Y1”?C:Pol(B-D,C-E):J →A:If A<0:Then A+360→A:Else A→A:IfEnd:Lbl 0:?O:?S:If O≠0:Then Goto 1:IfEnd:D+Scos(A) →X:”X=”:X ◢E+Ssin(A) →Y:”Y=”:Y ◢Goto 0:Lbl 1:D+Scos(A)+Ocos(A+90) →X:”X=”:X ◢E+Ssin(A)+Osin(A+90) →Y:”Y=”:Y ◢Goto 0说明:输入程序时注意区别字母O 与数字0程序运行时符号说明X0? Y0? 分别输入直线起点的XY 坐标值X1? Y1? 分别输入直线终点的XY 坐标值O? 输入边桩与中桩的距离( 左边桩为负值, 右边桩为正值), 如计算中桩坐标输入0S? 输入所求点到直线起点的距离二、圆曲线计算程序0→I:0→J: ”X0”?C:”Y0”?D:”X1”?E:”Y1”?F:?R:”L:-1 R:1”?N:”ZY”?W:Lbl 0:”LN”?T:T-W→O:Pol(E-C,F-D):I→S:J→A: If A<0:Then A+360→A:Else A →A:IfEnd:sin-1(S÷(2R)) →K:2∏RK÷180→L:180O÷(2∏R) →G:(2R)sin(G) →H:C+Hcos(A-KN+GN) →X:”X=”:X ◢D+Hsin(A-KN+GN) →Y:”Y=”:Y ◢R-0.5√(4R2-H2) →Q:”Q=”:Q ◢“S=”?V:If V=0:Then Goto 0:IfEnd:”L:-90 R:90”?U:X+Vcos(A-KN+2GN+U) →X:”X=”:X ◢Y+Vsin(A-KN+2GN+U) →Y:”Y=”:Y ◢Goto 0说明:输入程序时注意区别字母O 与数字0程序运行时符号说明X0? Y0? 分别输入直线起点的XY 坐标值X1? Y1? 分别输入直线终点的XY 坐标值R? 输入圆曲线半径L:-1 R:1? 圆曲线向左转弯时输入-1, 向右转弯时输入1ZY? 输入起点桩号LN? 输入所求点桩号( 按下exe 键后显示中桩坐标)S? 输入所要求的边桩与中桩的距离L:-90 R:90 要求左边边桩输入-90, 右边边桩输入90( 按下exe 键后显示边桩坐标)三、大地转施工“QK=”?Z:“QX=”?A:“QY=”?B:“ZX=”?O :“ZY=”?Q ↙Pol( O -A,Q-B) ↙J<0=>J+360→J ↙J>360=>J-360→J ↙J→F:“JF=”:F ◆DMS ◢Lb1 0 ↙X:?Y ↙Pol (X-A,Y-B):I→D ↙J<0=>J+360→J ↙J>360=>J-360→J ↙J-F→T:T→G ↙T<0=>T+360→G ↙T>360=>T-360→G ↙Z+Dcos (G)→K:“K=”:K ◢Dsin (G)→C:“C=”:C ◢GoTo 0 ↙说明:QK-- 输入线路起始点里程QX-- 输入线路起始点中桩X 坐标QY-- 输入线路起始点中桩Y 坐标ZX-- 输入线路前进方向中桩X 坐标ZY-- 输入线路前进方向中桩Y 坐标JF=-- 显示线路测量坐标方位角X-- 输入线路附近任意点测量X 坐标Y-- 输入线路附近任意点测量Y 坐标K-- 显示计算结果:里程桩号,即工程X 坐标C-- 显示计算结果:左右偏距,即工程Y 坐标, 中桩=0 ,左偏= 负值,右偏= 正值。
卡西欧计算器5800测量放样程序
卡西欧5800程序(修改于湘桂)R(主程序,通过里程求中桩、边桩坐标,在输入测站坐标后并求极坐标放样要素)1→M :“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+1000V→K:IfEnd↙If M=1:Then Prog“CIRCLE” IfEnd↙H÷2-H^(3)÷(240R2)+(R+H2÷(24R))tan(A÷2)→T:πR(A-180H÷π÷R)÷180+2H→L↙U-T→G:K→Q↙If Q≤G+L÷2:Then Q-G→Q: Else G+L-Q→Q: IfEnd↙If Q<0:Then Prog “L”:Goto1: IfEnd↙If Q≤H: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 K≤G+L÷2:Then O-180-NJ→E:NF+O→F: “F=”:F▲DMS◢ ElseNA+NJ+ O→E: O+NA-NF→F: “F=”:F▲DMS◢IfEnd↙“X=”:S+Icos(E)→X◢“Y=”:P+Isin(E)→Y◢If F<0:Then 360+F→F: IfEnd↙If F≥360:Then F-360→F: 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(子程序,受主程序R调用,求极坐标放样要素:方位角及平距)Pol(X-B,Y-C): “D=”:I◢If J<0:Then 360+J→J: Else 0+J→J: IfEnd↙“AQ=”:J▲DMS◢L(子程序,受主程序R调用,求直线上点位坐标及切线方位角)T-Q→Q:If K<G:Then O+180→E: O→F: “X=”:S+Qcos(E)→X◢“Y=”:P+Qsin(E) →Y◢ Else O+NA→F: “X=” S+Qcos(F) →X◢“Y=”:P+Qsin(F) →Y◢IfEnd↙I(子程序,受主程序R调用,求边桩坐标)“RA”?E:“D”?D:E+F→E: If E≥360:Then E-360→E: IfEnd↙X+Dcos(E)→X: Y+Dsin(E)→Y: “X=”: X◢“Y=”: Y◢E→F↙Q(子程序,受主程序R调用,求副线边桩坐标)“1A”?E:“1D”?D:E+F→E↙X+Dcos(E)→X: Y+Dsin(E)→Y:E→F↙“2R”?E: “2D”?D: E+F→E↙X+Dcos(E)→X: Y+Dsin(E)→Y↙E→F↙LD(子程序,受主程序R调用,通过坐标反求里程和偏距)40→DimZ↙O→Z[1]:U→Z[2]:S→Z[3]: P→Z[4] ↙H÷2-H^(3)÷(240R2)→M: H2÷(24R)-H^(4)÷(2688R^(3))→V:90H2÷(πR)→D:(R+V)Tan(A÷2)+M→T: πRA÷180+H→K:O+NA→J:Prog“JD”:J→Z[21]:U-T+K→Z[22]: S-Tcos(O)→Z[5]:P-Tsin(O)→Z[6]:Z[5]+Mcos(O)+(R+V)cos(O+90N)→Z[7]:Z[6]+Msin(O)+ (R+V)sin(O+90N)→Z[8] ↙H-H^(5)÷(40R2H2)→Z:H^(3)÷(6RH)-H^(7)÷(336R^(3)H^(3))→C: Pol(C,Z):90-J→J:Prog“JD”: O+JN→J:Prog“JD”↙Z[5]+Icos(J)→Z[9]:Z[6]+Isin(J)→Z[10]:S+Tcos(Z[21])→Z[11]: P+Tsin(Z[21])→Z[12] ↙Pol(Z[10]-Z[8],Z[9]-Z[7]):90-J→J:Prog“JD”:J→Z[13] ↙J+(A-2D)N→J: Prog“JD”: J→Z[14] ↙“CEDIAN”◢Lbl 0: ↙“B”?B:If B=0:Then Prog “R”: IfEnd↙“XN=”?X: “YN=”?Y:Pol(Y-Z[8],X-Z[7]) ↙90-J→J: Prog“JD”:J→W:J-Z[13]→J↙Prog“JD”:J→Z[15] ↙W-Z[14]→J↙Prog“JD”:J→Z[16] ↙If N=1:Then Goto 1: IfEnd↙If N=-1:Then Goto 2: IfEnd↙Lbl 1: ↙If Z[15]>180:Then Goto 3: IfEnd↙If Z[16]≤180:Then Goto 5:Else Goto 4 : IfEnd↙Lbl 2: ↙If Z[15]<180:Then Goto 3: IfEnd↙If Z[16] >180:Then Goto 5:Else Goto 4 : IfEnd↙Lbl 3: ↙“H1”◢Pol(Y-Z[6],X-Z[5]):90-J→J: Prog“JD”↙J-Z[1]+90→J: Prog“JD”↙Isin(J)→G↙If G>0:Then 0→L:Goto 6: IfEnd↙If G≤0:Then “DK=”:Z[2]-T+G→Z[19]◢If N=1:Then “LD=”:-NIcos(J)→Z[20]◢Else “LD=”:NIcos(J) →Z[20]◢IfEnd↙“SD=1,LD≠1”?D:If D=1:Then Prog “SDCQJC”: IfEnd↙Goto 0↙Lbl 4: ↙“Y”◢If N=-1:Then 360-Z[15]→Z[15]: IfEnd: “DK=”:Z[2]-T+H+πR(Z[15])÷180→Z[19]◢If N=1:Then “LD=”:-(I-R)→Z[20]◢Else “LD=” :I-R→Z[20]◢IfEnd↙“SD=1,LD≠1”?D:If D=1:Then Prog “SDCQJC”: IfEnd↙Goto 0↙Lbl 5: ↙“H2”◢Pol(Y-Z[12],X-Z[11]):90-J→J: Prog“JD”:J→W:Z[21]-90→J: Prog“JD”:W-J→J: Prog“JD”:Isin(J)→G:If G<0:Then 0→L: -G→G↙Goto 7: IfEnd↙If G≥0:Then “DK=”:Z[22]+G→Z[19]◢IfEnd: If N=1:Then “LD=”:-NIcos(J)→Z[20]◢Else “LD=”:NIcos(J)→Z[20]◢IfEnd↙“SD=1,LD≠1”?D:If D=1:Then Prog “SDCQJC”: IfEnd↙Goto 0↙Lbl 6: ↙L+G→L:L-L^(5)÷(40R2H2)→Z:L^(3)÷(6RH)-L^(7)÷(336R^(3)H^(3)) →C:Pol(C,Z):90-J→J: Prog“JD”:J→W:Z[1]+WN→J: Prog“JD”:Z[5]+Icos(J)→Z[17]: Z[6]+Isin(J) →Z[18] ↙J+2WN→J: Prog“JD”:J-90→J: Prog“JD”:J→W↙Pol(Y-Z[18],X-Z[17]):90-J→J: Prog“JD”↙J-W→J: Prog“JD”:Isin(J)→G:If Abs(G)>0.001:Then Goto 6: IfEnd↙“DK=”:Z[2]-T+L+G→Z[19]◢If N=1:Then “LD=”:-Ncos(J) →Z[20]◢Else“LD=”:NIcos(J) →Z[20]◢IfEnd↙“SD=1,LD≠1”?D:If D=1:Then Prog “SDCQJC”: IfEnd↙Goto 0↙Lbl 7: ↙L+G→L:L-L^(5)÷(40R2H2)→Z:L^(3)÷(6RH)-L^(7)÷(336R^(3)H^(3)) →C:Pol(C,Z):90-J→J: Prog“JD”:J→W:Z[21]-180-WN→J: Prog“JD”↙Z[11]+Icos(J)→Z[17]:Z[12]+Isin(J)→Z[18]:J-2WN→J: Prog“JD”↙J-90→J: Prog“JD”:J→W↙Pol(Y-Z[18],X-Z[17]):90-J→J: Prog“JD”↙J-W→J:Prog “JD”↙Isin(J)→G: If Abs(G)>0.001:Then Goto 7:IfEnd↙“DK=”:Z[22]-L-G→Z[19]◢If N=1:Then “LD=”:NIcos(J)→Z[20]◢Else“LD=”:-NIcos(J) →Z[20]◢IfEnd↙“SD=1,LD≠1”?D:If D=1:Then Prog “SDCQJC”: IfEnd↙Goto 0↙JD(子程序,受LD程序调用,计算角度归化值)If J<0:Then J+360→J: IfEnd↙If J≥360:Then J-360→J: IfEnd↙CIRCLE(子程序,线路平面曲线要素,受主程序R调用)If K≤缓直点里程:Then 交点里程→U:交点X坐标→S:交点Y坐标→P:转角值→A:-1(曲线段左偏)或1(曲线段右偏)→N:圆曲线半径→R:缓和曲线长→H:直线段起始方位角→O:Goto 1: IfEnd↙If K≤……(同上输完全部曲线要素为止)Lbl 1↙CONTREL(控制点坐标数据库子程序,受主程序R和ZBFS调用)If W=控制点点号:Then 控制点X坐标→B:控制点Y坐标→C: IfEnd ↙If W=……(同上输完全部控制点数据为止)ZBFS(主程序,求两已知点方位角及平距,或已知两点求后方交会点坐标)Lbl 0:1→W: “NEW OPP”?W:If W=1:Then “OPPX”?X: “OPPY”?Y:Else Prog “CONTREL”:B→X:C→Y: IfEnd↙Lbl 1:-1→W: “NEW CPP”?W: If W=-1:Then “CPPX”?S: “CPPY”?T: Else Prog “CONTREL”:B→S:C→T: IfEnd↙Pol(S-X,T-Y): “D=”:I◢If J<0:Then J+360→J: Else 0+J→J: IfEnd↙“AQ=”:J▲DMS◢Lbl 2:0→W: “ZBFS=0,SQS≠0”?W:If W=0:Then Goto 1: ElseProg “SQS”: IfEnd↙Goto 0↙SQS(子程序,受主程序ZBFS调用,通过角度边长求交会点坐标值)Lbl 0: “S1=”?A: “J1=?M: “J2=”?N: “S2=?D:N-M→Q: If Q <0:Then Q+360→Q: IfEnd↙If Q<45°0′0″: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 J<0:Then J+360→J:IfEnd↙(X+Acos(J+R)+S+Dcos(J+180-G))÷2→F: “X=”:F◢(Y+Asin(J+R)+T+Dsin(J+180-G))÷2→P: “Y=”:P◢SQX(主程序,竖曲线求线路各里程点中桩设计高程)1→S:“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+1000V→K:IfEnd↙If S≠-1:Then Prog “SQXK”: IfEnd↙U-T→G:K→Q: If Q≤G:Then Q-U→Q: Else Q-G→W: IfEnd↙If Q≤G:Then “H=”:B+QN÷1000→H◢Goto 1↙Else If Q≤U+T:Then “H=”:B+(Q-U)N÷1000+FW2÷(2R)→H◢Goto 1↙Else If Q≥U+T:Then “H=”:B+(Q-U)I÷1000→H◢Goto 1:IfEnd↙Lbl 1: “P”?P: “O=”:H-P→O◢Goto 0↙SQXK(子程序,受主程序SQX调用,竖曲线要素)If K≤竖曲线圆直点里程:Then 变坡点里程→U:变坡点设计高程→B:竖曲线圆曲线半径→R:竖曲线切线长→T:竖曲线直线段坡度常数(上、下坡有正负之分)→N:变坡点常数(凸为-1,凹为1)→F: Goto 0: IfEnd↙If K≤……(同上输完全部竖曲线要素为止)Lbl 0↙SDCQJC(子程序,受LD程序调用,采集隧道支护位置坐标高程数据一次性计算出该支护位置的超欠挖量)40→DimZ↙Lbl 0:Z[19]→Z[23]:Prog “SQXZ”↙Z[24]-Z[27]→Z[30]: Z[23]→Z[31] ↙If Z[31]≤Z[30]:Then Z[31]-Z[24]→Z[31]:Else Z[31]-Z[30] →Z[32]: IfEnd↙If Z[31]≤Z[30]:Then Z[25]+(Z[31])×(Z[28])÷1000→Z[33]: Goto 1↙Else If Z[31]≤Z[24]+Z[27]:Then Z[25]+(Z[31]-Z[24])×(Z[28])÷1000+(Z[29])×(Z[32])2÷(2×Z[26])→Z[33]: Goto 1↙Else If Z[31]≥Z[24]+Z[27]:Then Z[25]+(Z[31]-Z[24])×I÷1000→Z[33]: Goto 1: IfEnd↙Lbl 1: “H0=”:Z[33]+内轨面至圆心高差常数→Z[33]◢“HN”?K: “Δh=”:K-Z[33]→Z[34]◢If Z[20]≥隧道中心线与设计中心线的偏移量ω:Then Z[20]-ω→Z[35]:Else ω- Z[20]→Z[35] : IfEnd↙“RN=”:√((Z[34])2+(Z[35])2)→Z[36]◢“R0”?Z: “RCQ=”: Z[36]-Z→Z[37]◢SQXZ(子程序,受主程序SDCQJC调用,竖曲线要素)40→DimZ↙If Z[23]≤竖曲线圆直点里程:Then 变坡点里程→Z[24]:变坡点设计高程→Z[25]:竖曲线圆曲线半径→Z[26]:竖曲线切线长→Z[27]:竖曲线直线段坡度常数(上、下坡有正负之分)→Z[28]:变坡点常数(凸为-1,凹为1)→Z[29]:IfEnd↙文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持. If Z[23]≤……(同上输完全部竖曲线要素为止)Lbl 0↙。
卡西欧5800计算器公路测量常用程序集_secret
2.1 版一、程序功能主要功能:采用线元法与交点法相结合计算多条线路坐标正反算,可算任意复杂线型及立交匝道,包括C型,S型、卵型、回头曲线等;极坐标放样,全线路基边坡开挖口及坡脚放样计算、路基任意点设计高程、横坡、设计半幅宽度.隧道欠超挖放样计算。
新版本特点:1、建主程序合并原所有计算类型,在主程序中可选择操作类型。
隧道欠超挖增加变量衬砌厚度,因有设计衬砌厚度根据石岩来定的。
增加锥坡放样计算。
二、源程序1.总主程序(1、坐标计算放样程序2、坐标反算程序;3、高程计算查阅程序;4、路基半幅标准宽度查阅程序;5、路基边坡及开挖口放样程序;6、路基标准距离放样;7、桥梁锥坡计算放样程序;8、极坐标计算程序;9、隧道超欠挖计算程序)运行后输入1~9数子则选择1至9的程序,返回时,在桩号输入-1,返回选择选择计算类型。
输入-2,返回选择线路。
坐标计算中输入-3,则显示本段曲线要素。
程序名:0ZCXLbI Q: 15→DimZ:Norm 2:1→A:"A:XY=1, ZD=2 ,GC=3, GD=4,BP=5, FM=6, ZP=7, JS=8, SD=9"?A:A=1=>Goto 1:A=2=>Goto 2:A=3=>Goto 3:A=4=>Goto 4:A=5=>Goto 5:A=6=>Goto 6:A=7=>Goto 7:A=8=>Goto 8:A=9=>Goto 9LbI 1:Prog "DX":LbI A:Prog"QX":90→B: "PJ1"?B:B→C: "PJ2"?C:B→Z[1]:C→Z[8]:LbI B:1→F: "KM"?Z:Z= -1=>Goto 0:Z=-2=>Goto A:Z=-3=>Goto X:Prog"KM":?D:Porg"THB":O→L: "L0"?L:Z[2]+Z[1]-Z[8] →E:X+L cos(E) →X:Y+Lsin(E) →Y:Prog"XY":Prog"JS":Goto BLbI 2:2→F:90→Z[1]:Prog"QX":LbI C: "KM"?Z:Z=-1=>Goto 0:Z=-2=>Goto 2:Z=-3=>Goto X:Prog"KM": "XO"? X: "Y0"?Y:Prog"THB":Porg"ZD":Goto C:LbI 3:Prog"QX":0→B: "H-B"?B:B→Z[9]:LbI D: "KM"?Z: Z=-1=>Goto 0:Z=-2=>Goto 3:?D:Porg"H":Fix 3: " H=":Lc oate 6,4,H-Z[9] ◢" I=":Locate 6,4,I◢ Goto DLbI 4:Prog"QX":LbI E: "KM"?Z:Z=-1=>Goto 0:Z=-2=>Goto 4:?D:Prog"GD":Fix 3: " SJGD=":Locate7,4,L◢ Goto ELbI 5:Prog"QX":0.5→B:"TH-GD"?B:B→Z[15]:LbI F:2→F:90→Z[1]:"KM"?Z:Z=-1 =>Goto 0:Z=-2 =>Goto 5:Prog"KM": "X0"?X: "Y0"?Y:0→M:”M0”?M: M→Z[4]:Prog"3FBZ"Fix 2:Z[3] →D:Abs(D)-S→O: " L0=":Locate 6,4,O◢Prog"ZD": Z[5]→T:" TW=":Lcoate 6,4,T◢ Goto F:LbI 6:Prog"DX":LbI G:Prog"QX":LbI H:1→F:90→Z[1]: "K M"?Z:Z=-1=>Goto 0:Z=-2=>Goto G:Prog"KM":?D:Prog"THB": Prog"XY":Prog"JS":Prog"H":0→M: "M0"?M:Fix 2:H-M→T: " TW=":Locate 6,4,T◢ Goto H:LbI 7:Prog"DX":LbI I:Prog"QX":0→D: "LD:Z-,Y+"? D:Ab s(D) →R: "LR"?R: "Z0"?Z: D→Z[6]:R→Z[7]:Z→Z[8]:LbI J:0→Y: "L0:SZ+,DZ-"?Y:Y=-1=>Goto 0:Y=-2=>Goto I:Prog"Z P":Goto J:LbI 8:Prog"DX":LbI K:?X:X=-1=>Goto 0:X=-2=>Goto 8:?Y:Prog"JS":Goto K:LbI 9:Porg"DX":LbI L:Prog”QX”:LbI M:2→F:90→Z[1]: "K M"?Z:Z=-1=>Goto 0:Z=-2=>Goto L:Z=-3=>Goto X: Prog"SD1": 0.5→A:“CQHD"?A:“X0"?X:"Y0"?Y:0→M="M0"?M:M→Z[8]: A→Z[15]:Prog"5SD": Goto M:LbI X:Mat F◢ Goto 02、次程序:路基开挖边线及填方坡脚线放样程序(输入填方放宽值、大概桩号及测量坐标、地面标高计算出偏移距离、桩号、距中距离、填挖高度)程序名:3FBXProg”THB”:D→P:Prog”GD”:If D<0:Then 0.75-L→D:Goto H:E lse L-0.75→D:Goto H:IfEndLbI H:Prog“H”:H-0.03-Z[4] →Z[4]: Prog “W1”:If Z[4]<0: Then –Z[4] →G:Goto W:Else Z[4] →G:Goto T:LbI W:Z[8]+Z[9] →A: If G>A:Then Goto 1:Else If G>Z[8]:The n Goto 2:Else Goto 3:IfEnd:LbI 1:L+Z[10]+Z[11]+Z[12]+(G-A)×Z[7]+Z[9]×Z[6]+Z[8]×Z[5]→S:Goto Z:LbI 2:L+Z[10]+Z[11]+(G-Z[8])×Z[6]+Z[8]×Z[5] →S:Goto Z: LbI 3:L+Z[10]+G×Z[5] →S:Goto Z:LbI T:L+Z[17]→T:If G>Z[15]:Then (T+Z[16]+(G-Z[15])×Z[14] +Z[15]×Z[13])→S:Goto Z:Else (T+G×Z[13])→S:Goto Z:LbI Z3.次程序3.隧道超欠挖值计算放样程序(输入隧道线路,大概桩号、输入衬砌厚度、测量三维坐标,计算准确桩号及位置、计算欠超挖值)程序名:5SDProg”KM”:Prog“THB”: D→Z[13]:0→D:Prog“H”:Cos(Z[10]) ×Z[4] →E: H+Z[5] →Z[5]: H+Z[7] →Z[7]: E+Z[5] →Z[10]:I f Z[8]>Z[10]:Then Goto R:Else Goto S:IfEnd:LbI R:√((Z[13]-Z[9]) 2+(Z[8]-Z[5]) 2 )- Z[4]-Z[15] →L:Goto L:LbI S:Z[4]-Z[6] →S:√(S 2-(Z[7]-Z[5]) 2 ) ×S÷Abs(S)→T:Abs(Z[13]-Z[9])-T→T:√(T 2+(Z[8]-Z[7]) 2 )- Z[6]-Z[15] →L:Goto L:LbI L: Fix 2:” L0=”: Locate 6,4,L◢Prog”ZD”:“ H0=”: Locate 6,4,Z[8]-H◢4:极坐放样计算程序(计算放样点至置仪点方位角及距离)程序名:JSX:Y:Z[11]→K:Z[12]→L:Pol(X-K, Y-L):IF J<0:Then J+360→J:IFEnd:Int(J)+0.01Int(60Frac(J))+0.006Frac(60Frac(J)) →J: Fix 4:” FWJ=”: Locate 6,4,J◢F ix 3:” S=”:Locate 6,4,I◢5.路基宽度子程序6:路基标准半幅宽度计算程序(对于设计有加宽渐变的有用,如路基宽度无变化,则把此程序直接输入半幅宽度值至L)程序名: GD1→S: Prog “G1”:Z-C→E:(B-A)*E/S+A→L:6.坐标计算次程序(THB)程序名:THBIf Q=2:Then Goto J: Else 1÷P→C:(P-R)÷(2HPR)→S:180÷Π→E:If F=1:Then Abs(Z-0) →W:Prog "A":Goto 2:El se X→I:Y→J:Prog "B":O+W→Z:D→D:Goto 2: IfEnd:LbI J: If F=1:Then Prog "Z":Goto 1:Else Prog "ZX":Go to 2: IfEnd:LbI 1:I+D×COS(Z[2]+Z[1]) →X: J+D×Sin(Z[2]+Z[1]) →Y: Lb I 27. 线元法正算子程序(A)程序名:A0.1184634425→A: 0.2393143352→B:0.2844444444→N:0.0469 10077→K: 0.2307653449→L:0.5→M: U+W(Acos(G+QEKW(C+KW S))+Bcos(G+QELW(C+LWS))+Ncos(G+QEMW(C+MWS))+Bcos(G+QE(1 -L)W(C+(1-L)WS))+Acos(G+QE(1-K)W(C+(1-K)WS))) →X:V+W(Asin(G+QEKW(C+KWS))+Bsin(G+QELW(C+LWS))+Nsin(G+QEMW (C+MWS))+Bsin(G+QE(1-L)W(C+(1-L)WS))+Asin(G+QE(1-K)W(C+(1-K)WS))) →Y:G+QEW(C+WS)→Z[2]:X+Dcos(Z[2]+ Z[1])→X: Y+Dsin(Z[2]+ Z[1])→Y8. 线元法反算子程序(B)程序名:BG-90→T: Abs((Y-V)cos(T)-(X-U)sin(T)) →W: 0→D:Lbl 0:Prog "A": T+QEW(C+WS) →L: (J-Y)cos(L)-(I-X)sin(L)→D:IF Abs(D)<0.01:Then Goto 1:Else W+D→W:Goto 0: If End:←┘Lbl 1:0→D:Prog "A":(J-Y)÷sin(Z[2]+90) →D9. 交点法正算子程序(Z)程序名:ZH2÷R÷24-H∧(4) ÷2688÷R∧(3)→A:H÷2-H∧(3) ÷240÷R2→B:(R+A)tan(Abs(P) ÷2)+B→T:O-T→C:C+H→L:L+ΠR×Abs(P) ÷180→N:N-H→E:P÷Abs(P) →W:0→M:If Z<C:Then Z-O→S:G→Z[2]:Goto 2: IfEnd: If Z≥N:Then Z-N+T→S:G+P→Z[2]:Goto 2: IfEnd: If Z≥E:Then N-Z→S:Prog“HX”:G+P→S:S-WK→Z[2]:U+(T-A)Cos(S)-WBSin(S)→I:V+(T-A)Sin(S)+WBcos(S)→J:Goto 3: IfEnd:If Z>L:Then 180(Z-L+0.5H) ÷R÷Π→S :H÷2-H∧(3) ÷240÷R2+Rsin(S)→A:H2÷R÷24-H∧(4) ÷2688÷R∧(3)+R(1-Cos(S))→B:R→M:G+WS→Z[2]:Goto 4: IfEnd:Z-C→S:Prog “HX”:G+WK→Z[2]:LbI 4:U+(A-T)cos(G)-WBsin(G)→I:V+(A-T)Sin(G)+WBcos(G) →J:Goto 3:LbI 2:U+Scos(Z[2])→I:V+Ssin(Z[2]) →J: LbI 310. 交点法缓和段转化子程序(HX)程序名:HXS-S∧(5) ÷40÷R2÷H2+S∧(9) ÷3456÷R∧(4) ÷H∧(4)→A:S∧(3)÷6÷R÷H-S∧(7) ÷336÷R∧(3) ÷H∧(3)+S∧(11) ÷42240÷R∧(5)÷H∧(5)→B:90S2÷Π÷R÷H→K:RH÷S→M11. 交点法反算子程序(ZX)程序名:ZXZ:0→D:LbI 0:Prog “Z”:Pol(X-I,Y-J):J-Z[2] →J:Isin(J) →S: Icos(J) →I:If Abs(I)<0.1:Then Z+I→Z:S→D:Goto 2:Else Got o 1: LbI 1:If M=0:Then Z+I→Z:Goto 0:Eles Pol(M-WS,I):(JM Π)/180→I:Z+I→Z:Goto 0:IfEndLbI 212.高程计算子程序(H)程序名:HP rog “S1”:C-T→F:Z-F→S:C+T→E:G-TI→Q:If T=O:Then Q+SI →H:Goto 0:Else If Z<F:Then Q+SI→H:Goto 0:Else If Z≤E:Th en Q+SI+S2÷2÷R→H:Goto 0:LbI 0:H:If D=0:Then Got o I:Else Prog “I”:H+V→H:Goto I:L bI I13.高程超高计算程序(I)程序名:IIf Z[3]=1:Then Prog “I1”:Goto 1:Else Prog “I2”:Goto1: IfEnd:LbI 1: If W=1:Then:Goto Z:Else:Goto X: IfEndLbI Z:If S=0:Then Abs(D)×M→V:Goto 2:Else Abs(D)×((N-M)×(Z-C)÷S+M)→V:Goto 2:IfEnd:LbI X:If S=0:Then Abs(D)×M→V:Goto 2:Else Abs(D)×(((3((Z -C)÷S)2-2((Z-C)÷S)∧(3))×(N-M))+M)→V:Goto 2:IfEnd:LbI 2:Abs(D)→E:V÷E→I:I(E-K)→V14.导线点子程序(DX)程序名:DXZ[11] →K:Z[12] →L:“X Z”?K:”YZ”?L:K→Z[11]:L→Z[12]15.线路选择子程序(线路选择输0时。
卡西欧5800计算器全线坐标计算放样正反算(线路测量必备)
5800计算器全线坐标计算放样正反算(定稿)5800计算器全线坐标计算放样正反算程序(定稿)彭赐明主程序坐标正反算程序名称:ZBZFSLB1 A↙Cls : Fix 4 : 30→Dim Z :"0=ZS,1=FS,2=FY"?Z ↙If Z=0:Then Goto B:IfEnd↙(Z=0进入里程点坐标正算)If Z=1:Then Prog"FSLCBZ ": Goto A:IfEnd↙(Z=1进入反算里程边桩)If Z=2:Then Goto C:IfEnd↙Lb1 B ↙“K=”?K :(计算里程)Prog"SJK1 ":”XI=”:Locate6,4,Z[18]:”YI=”: Locate6,4,Z[19]◢“PJ=”?P:”PD=”?D:Z[18]+D*Cos(T+P)→Z[20]:Z[19]+D*Sin(T+P)→Z[21]:Z[18]- D*Cos(T+P) →Z[22]: Z[19]-D*Sin(T+P)→Z[23]:”XLP=”:Locate6,4,Z[22]:”YLP=”: Locate6,4,Z[23]: ”XRP=” :Locate6,4,Z[20]:”YRP=”: Locate6,4,Z[21] ◢Goto B↙Lb1 C"XZJ="?M(置镜点X):"YZJ="?N(置镜点Y): “XHS="?G(后视点X):"YHS="?L(后视点Y): Pol(G-M,L-N):"DH=":I(后视距)◢J<0=>J+360→J:"FH=":J→DMS◢(后视方位角)Lb1 D ↙“K=”?K :(计算里程)Prog"SJK1 ": Prog" ZBFY " :Goto D子程序数据库SJK1IF K<本段曲线终点里程AND K≥上段曲线终点里程:THEN 本段曲线终点里程→Z[1] : 上段曲线终点里程→Z[2] :1→O (注:左偏曲线输入-1→O,右偏曲线输入1→O): 半径→R : 曲线偏角→A:第一缓和曲线→Z[6] : 第二缓和曲线→Z[7] : 交点X→B :交点Y→C : 小里程向交点方位角→E : 交点向大里程方位角→F : Prog”XLZBJSCX”:Return: IFEND ↙IF…………Prog”XLZBJSCX”:Return:IFEND(曲线段分段输入)↙补充直线段输入如下(单独直线段)IF K<本段直线终点里程AND K≥本段直线起点里程:THEN 本段直线终点里程→Z[3]:终点X→Z[16]:终点Y→Z[17]:方位角→E: Z[16]+ (K- Z[3])*COS E→Z[18]:Z[17]+ (K- Z[3])*SIN E→Z[19] : Return:IFEND子程序坐标正算,名称:XLZBJSCXLB1 2 ↙(曲线要素计算)Z[6]/2- Z[6]^3/(240*R^2)+ Z[6]^5/(34560*R^4) →Z[8] ↙(M1)Z[7]/2- Z[7]^3/(240*R^2)+ Z[7]^5/(34560*R^4) →Z[9] ↙(M2)Z[6]^2/(24*R)- Z[6]^4/(2688*R^3) →Z[10] ↙(P1)Z[7]^2/(24*R)- Z[7]^4/(2688*R^3) →Z[11] ↙(P2)π*A*R/180+0.5*( Z[6]+ Z[7])→Z[25] ↙(曲线总长)90* Z[6]/(R*π) →Z[14] ↙(第一缓和曲线总偏角)90* Z[7]/(R*π) →Z[15] ↙(第二缓和曲线总偏角,可以省略)Z[8]+(R+Z[10])TAN(A/2)-(Z[10]-Z[11] )/SIN A→Z[12]↙(切线T1)Z[9]+(R+Z[11])TAN(A/2)+(Z[10]-Z[11] )/SIN A→Z[13]↙(切线T2)B+ Z[12]*COS (E+180)→Z[16] ↙(ZH点X)C+ Z[12]*SIN(E+180)→Z[17] ↙(ZH点Y)Z[1]- Z[25]→Z[3] ↙(ZH点里程)Z[3]+ Z[6]→Z[4] ↙(HY点里程)Z[1]- Z[7]→Z[5] ↙(YH点里程)GOTO 3 ↙LB1 3 ↙(判断里程点与曲线关系)IF K≤Z[3] AND K> Z[2] : THEN GOTO 4 : IFEND ↙IF K≤Z[4] AND K> Z[3] : THEN GOTO 5 : IFEND ↙IF K≤Z[5] AND K> Z[4] : THEN GOTO 6 : IFEND ↙IF K≤Z[1] AND K> Z[5] : THEN GOTO 7 : IFEND ↙LB1 4 ↙(里程小于直缓点直线独立坐标)K- Z[3] →Z[23] : 0→Z[24] : E→T : GOTO 8↙LB1 5 ↙(第一缓和曲线独立坐标)K- Z[3] →H ↙H-H^5/(40*R^2* Z[6]^2)+H^9/(3456*R^4* Z[6]^4) →Z[23] ↙H^3/(6*R* Z[6])-H^7/(336*R^3* Z[6]^3) →Z[24] ↙90*H^2/( R*π* Z[6]) →T ↙IF O>0 :THEN T +E→T : ELSE E-T →T : T<0=>360+T→T : IFEND ↙GOTO 8 ↙LB1 6 ↙(圆曲线独立坐标)K- Z[4] →H ↙H*180/( R*π)+ Z[14]→T ↙R*SIN T+ Z[8]→Z[23] ↙R*(1-COS T)+ Z[10]→Z[24] ↙IF O>0 :THEN T +E→T : ELSE E-T →T : T<0=>360+T→T : IFEND ↙GOTO 8 ↙LB1 7 ↙(第二缓和曲线独立坐标)Z[1] -K →H ↙H-H^5/(40*R^2* Z[7]^2)+H^9/(3456*R^4* Z[7]^4) →U↙H^3/(6*R* Z[7])-H^7/(336*R^3* Z[7]^3) →V ↙90*H^2/( R*π* Z[7]) →T ↙Z[13]COS A+ Z[12]-U*COS A-V*SIN A→Z[23] ↙Z[13]*SIN A-U*SIN A+V*COS A→Z[24] ↙IF O>0 :THEN F-T→T : T<0=>360+T→T : ELSE F+T →T : IFEND ↙GOTO 8 ↙LLb1 8IF O<0 : THEN - Z[24]→Z[24] : IFEND ↙Z[16]+Z[23]*COS E-Z[24]*SIN E→Z[18] ↙Z[17]+Z[23]*SIN E+Z[24]*COS E→Z[19] ↙ReTurn↙子程序反算里程边桩,名称:FSLCBZLb1 1↙"XK="?X:"YK="?Y↙(输入任意测点的XY坐标):“K=”?K (试算里程,任意输入标段内里程点即可,也可以输入大致的估算里程加快速度)↙Lb1 2↙Prog"SJK1 ":T-90 →W:W<0=>360+W→W:Abs((Y-Z[19])*Cos W-(X-Z[18])*Sin W)→S↙If S<0.0001:Then Goto 4:Else Goto 3:Ifend↙Lb1 3↙K+S→K: Prog"SJK1":T-90 →W:W<0=>360+W→W:Abs((Y-Z[19])*Cos W-(X-Z[18])*Sin W)→Q↙If Q<0.0001 :Then Q→S: Goto 4:Else IF Q<S: THEN K+Q→K: Goto 2 :Else IF Q>S :THEN K-Q→K:Goto 2:Ifend:Ifend:Ifend↙Lb1 4↙Pol (X-Z[18],Y-Z[19]:"DP(-Z+Y)=":I◢(偏距)(由于该程序不能准确判断边桩左右方向,暂作修改,取消左右边判定)"K=":K+S→K◢(里程)Return↙子程序坐标放样:ZBFYLB1 0 ↙“QXJ=”:T◢(计算里程点切线方位角,可以不显示)Pol(Z[18]-M,Z[19]-N):"DI=":I(后视距)◢J<0=>J+360→J:"FI=":J→DMS◢(后视方位角)“XI=”: Z[18] ◢(中线X)“YI=”: Z[19] ◢(中线Y)“PJ=”?P:”PD=”?D:Z[18]+D*Cos(T+P)→Z[20]:Z[19]+D*Sin(T+P)→Z[21]Pol(Z[20]-M,Z[21]-N):"DP=":I◢J<0=>J+360→J:"FP=":J→DMS◢“XP=”: Z[20] ◢(边桩X)“YP=”: Z[21] ◢(边桩Y)Return↙。
CASIOfx-5800P放样程序优化7页word文档
CASIO fx-5800P放样程序(优化)声明:编程使用的通用积分公式出自李艳阳前辈!在此致敬!本程序加入了测站,方便喜爱用方位角、平距放样的朋友!正算主程序[KB-MN]?X:?YLbl 1:Fix 3:X→S:?K:?B:90→AProg“YS-1”:Prog“ZDYS”:S→X:M-X+×10-9→I:N-Y+×10-9→J:Pol( I,J):J<0=>J+360→J:Cls:Locate 1,1,“J=”:Locate 4,1,J°:Locate 1,2,“I=”:Locate 9,2,I:Locate 1,3,“M=”:Locate6,3,M:Locate 1,4,“N=”:Locate 7,4,N◢Cls:Goto 1反算主程序[MN-KB]?KLbl 0:Fix 3:?M:?N:M→E:N→QLbl 1:90→A:0→B:Prog“YS-1”:Prog“ZDYS”Pol(E-M+×10-9,Q-N+×10-9):Isin(L-J)→A:Icos(L-J)→BIf Abs(A)>0.001:Then K+A→K:Goto 1:Else Cls:Loca te1,1,“K=”:Locate 7,2, K:Locate 1,3,“B=”:Locate 9,4,B◢IfEnd:Goto 0数据库子程序[YS-1]If K<线元终点里程:Then线元起点切线方位角→C:线元起点X坐标→U:线元起点Y坐标→V:线元起点里程→O:线元长度→F:±线元起点曲率半径(左转为负,直线及右转为正)→P:±线元止点曲率半径→R:Return:IfEndIf K<下一线元终点里程:Then线元起点切线方位角→C:线元起点X坐标→U:线元起点Y坐标→V:线元起点里程→O:线元长度→F:±线元起点曲率半径→P:±线元止点曲率半径(左转为负,直线及右转为正)→R:Return:IfEnd子程序[ZDYS]0.5(1÷R -1÷P)÷F→D:K-O→XU+∫(cos(C+180(X÷P+DX2)÷π,0,X)→MV+∫(sin(C+180(X÷P+DX2)÷π,0,X)→NC+180(X÷P+DX2)÷π+A→L:M+Bcos(L)→M:N+Bsin(L)→N正算主程序[KB-MN]输入:X---测站X坐标 Y---测站Y坐标 K---桩号 B---距中(左负右正中零)结果:J=测站到放样点的方位角 I=测站到放样点的平距M=放样点X坐标 N=放样点Y坐标若果求斜交时边桩坐标,主程序[KB-MN]中90→A修改为斜交角度→A反算主程序[MN-KB]输入:K---待反算点附近的大概桩号 M---待反算点X坐标 N---待反算点Y坐标结果:K=反算点的桩号 B=反算点的距中(左负右正中零)备注:字母后所带数字为次方,如:DX2式中2均为平方。
CASIO fx-5800p计算器测量实用程序加数据库
CASIO fx-5800p道路主线坐标放样程序简化使用程序说明:此程序是根据教科书结合工地实践应用继续开发,本程序包含一个母程序和两个子程序,本程序简化了部分详细输出内容,加快了实地放样计算的速度,本程序还有一大优点就是有“一劳永逸”的效果,先把子程序输入计算器,然后根据曲线要素表,用其中的数据代替母程序中的文字提示(包括括号),输入计算器,在运行母程序,然后检核,每一个曲线至少检查一个点,检核无误后即可,每次去工地放样就可以免带图纸,同时也大大的提高了野外放样计算的速度。
ZBFY(道路主线坐标放样程序母程序):Lbl 0↵“KP=”?P↵If P<(第一个曲线的结束桩号):Then↵(第一个曲线的交点x坐标)→X↵(第一个曲线的交点y坐标)→Y↵(第一个曲线的上一交点x坐标)→M↵(第一个曲线的上一交点y坐标)→N↵(第一个曲线的转角,左-右+)→O↵(第一个曲线的半径)→R↵(第一个曲线的第一缓和曲线长度)→B↵(第一个曲线的第二缓和曲线长度)→C↵(第一个曲线的交点桩号)→K↵Prog“-ZBFY”:Goto 0:IfEnd↵If P<(第二个曲线的结束桩号):Then↵(第二个曲线的交点x坐标)→X↵(第二个曲线的交点y坐标)→Y↵(第二个曲线的上一交点x坐标)→M↵(第二个曲线的上一交点y坐标)→N↵(第二个曲线的转角,左-右+)→O↵(第二个曲线的半径)→R↵(第二个曲线的第一缓和曲线长度)→B↵(第二个曲线的第二缓和曲线长度)→C↵(第二个曲线的交点桩号)→K↵Prog“-ZBFY”:Goto 0:IfEnd↵...(重复If到IfEnd的语句,有n个曲线,就重复n-1次) ...(最后一个曲线的交点x坐标)→X↵(最后一个曲线的交点y坐标)→Y↵(最后一个曲线的上一交点x坐标)→M↵(最后一个曲线的上一交点y坐标)→N↵(最后一个曲线的转角,左-右+)→O↵(最后一个曲线的半径)→R↵(最后一个曲线的第一缓和曲线长度)→B↵(最后一个曲线的第二缓和曲线长度)→C↵(最后一个曲线的交点桩号)→K↵Prog“-ZBFY”:Goto 0 (结束)-ZBFY(带“-”号的程序表示子程序):Deg:Fix3:26→DimZ↵Lbl0↵If O<0:Then -1→W:Else 1→W:IfEnd:W O→A↵B2÷24÷R-B∧(4) ÷2688÷R∧(3)+B∧(6)÷506880÷R∧(5)→Z〔6〕↵C2÷24÷R-C∧(4) ÷2688÷R∧(3)+C∧(6)÷506880÷R∧(5)→Z〔7〕↵B÷2-B∧(3)÷240÷R2+B∧(5)÷34560÷R∧(4)→Z〔8〕↵C÷2-C∧(3)÷240÷R2+C∧(5)÷34560÷R∧(4)→Z〔9〕↵Z〔8〕+(R+ Z〔7〕-(R+ Z〔6〕)cos(A))÷sin(A)→S↵Z〔9〕+(R+ Z〔6〕-(R+ Z〔7〕)cos(A))÷sin(A)→T↵RAπ÷180÷(B+C)÷2→L↵K-S→Z〔1〕↵Z〔1〕+B→Z〔2〕↵Z〔1〕+L÷2+(B-C) ÷4→Z〔3〕↵Z〔1〕+L-C→Z〔4〕↵Z〔4〕+ C→Z〔5〕↵Pol(X-M,Y-N):J →Z〔20〕:J+O→Z〔19〕↵X-Scos(Z〔20〕) →Z〔21〕↵Y-Ssin(Z〔20〕) →Z〔22〕↵X+Tcos(Z〔19〕) →Z〔23〕↵Y+Tsin(Z〔19〕) →Z〔24〕↵If P> Z〔1〕:Then Goto1:IfEnd↵Z〔1〕-P →L↵“XP=”:X-(S+L)cos(Z〔20〕) →F“YP=”:Y-(S+L)sin(Z〔20〕) →GZ〔20〕→Z↵Goto 5↵Lbl 1↵If P> Z〔2〕:Then Goto 2:IfEnd↵P- Z〔1〕→L:L→Z〔14〕:B→Z〔15〕:Prog”-FY”↵“XP=”: Z〔21〕+ Z〔16〕cos(Z〔20〕)-W Z〔17〕sin(Z〔20〕) →F“YP=”: Z〔22〕+ Z〔16〕sin(Z〔20〕)+W Z〔17〕cos(Z〔20〕) →GZ〔20〕+90WL2÷(BRπ)→Z↵Goto 5↵Lbl 2↵If P> Z〔4〕:Then Goto 3:IfEnd↵P- Z〔1〕→L:90(2L-B) ÷R÷π→Z〔13〕↵Rsin(Z〔13〕)+ Z〔8〕→Z〔16〕:R(1-cos(Z〔13〕))+ Z〔6〕→Z 〔17〕↵“XP=”: Z〔21〕+ Z〔16〕cos(Z〔20〕)-W Z〔17〕sin(Z〔20〕) →F“YP=”: Z〔22〕+ Z〔16〕sin(Z〔20〕)+W Z〔17〕cos(Z〔20〕) →GZ〔20〕+W Z〔13〕→Z↵Goto 5↵Lbl 3↵If P> Z〔5〕:Then Goto 4:IfEnd↵Z〔5〕-P→L:L→Z〔14〕:C→Z〔15〕:Prog”-FY”↵“XP=”: Z〔23〕- Z〔16〕cos(Z〔19〕)-W Z〔17〕sin(Z〔19〕) →F“YP=”: Z〔24〕- Z〔16〕sin(Z〔19〕)+W Z〔17〕cos(Z〔19〕) →GZ〔19〕-90WL2÷(CRπ)→Z↵Goto 5↵Lbl 4↵P- Z〔5〕→L↵“XP=”:X+(T+L)cos(Z〔19〕) →F“YP=”:Y+(T+L)sin(Z〔19〕) →GZ〔19〕→Z↵Lbl 5↵“D ANGLE”?H↵If H=0:Then Goto 9:IfEnd:?D↵“XB=”:F+Dcos(Z+H) →Z〔11〕“YB=”:G+Dsin(Z+H) →Z〔12〕Goto 5↵Lbl 9 (结束)-FY(子程序2):If Z〔14〕=0:Then 0→Z〔16〕:0→Z〔17〕:Else↵Z〔14〕- Z〔14〕∧(5) ÷40(RZ〔15〕)2+ Z〔14〕∧(9) ÷3456÷(RZ 〔15〕)∧(4) →Z〔16〕↵Z〔14〕∧(3) ÷6÷(RZ〔15〕)- Z〔14〕∧(7) ÷336÷(RZ〔15〕)∧(3)+ Z〔14〕∧(11) ÷42240÷(RZ〔15〕)∧(5) →Z〔17〕↵IfEnd (结束)CASIO fx-5800p道路匝道坐标放样程序简化使用程序说明:本程序根据主线坐标放样程序的思想编写,原理相同,优点相同,使用相同。
卡西欧5800程序
卡西欧FX5800计算器公路测量全线中边桩正反算交点法程序修改版1.主程序:一般坐标计算及放样程序-----交点法程序名:1-JDLal 0:10→DimZ:Norm 2:1→A:"A: XY=1,KMD=2"? A:A=1=>Goto 1:A=2=>Goto 2: (选择正算还是反算)Lal 1:Lal A:Prog"QX": 90→B "PJ"?B:B→Z[1]: (默认与道路切线方向90度)Lal B:"KM"?Z:Z=-1=>Stop:Z=-2=>Break: Prog"K":?D:(输入正算计算里程,输入-1则停止,输入- 2转反算),偏距默认中桩0,左为-,右为+,)Porg"Z":I+Dcos(Z[2]+Z[1]→X:J+Dsin(Z[2]+Z[1]→Y:Fix 3:"X=":Locate 6,4,X: "Y=":Locate 6,4,Y: "FWJ"=:Locate 6,4,Z[2]◢(显示坐标,切线方位角)Prog “S-Z”: Prog “3-GC”: “H=”:H◢(高程计算并显示,如不需要高程此部分可以省略) Prog"5-SD":"-CW +QW=":M◢(隧道超欠挖,如不需要此部分可以省略)LpWhile Z≠-1(Goto B此处也可以用这个命令)Lal 2 Prog"QX": (选线,默认(线路1) X1=1,(线路2)X2=2.........)Lal C:Do:"KM"?Z:Z=-1=>Stop:Z=-2=>Break: (反算时输入大概桩号,输入-1则停止,输入-2正算)Prog"K": "X0"?X: "Y0"?Y: Porg"B"Fix 3: "KM":Lcoate6,4,Z: "D=":Locate 6,4,D◢Prog “S-Z”: Prog “3-GC”: “H=”:H◢Prog"5-SD":"-CW +QW=":M◢LpWhile Z≠-1(Goto C此处也可以用这个命令)2.线路中线元段判别子程序(K)程序名:KIf Z[3]=0:Then Return: IfEnd:If Z[3]=1:Then Prog “X1”:Return:IfEnd:If Z[3]=2:Then Prog “X2”:Return:IfEnd:If Z[3]=n:Then Prog “Xn”:Return:IfEnd.....(后面可以增加N条线路!!但需要在QX程序里面"QX:?=0,X1=1,X2=2,Xn=n"做更改)。
5800计算器全线坐标计算放样程序(修改第三版)
5800计算器全线坐标计算放样程序(修改第三版)5800计算器全线坐标计算放样程序(修改第三版)5800计算器全线坐标计算放样程序(修改版)“XLZBJSCX” ◢LB1 0 ↙CLS : FIX 4 : 30→DIM Z ↙“XHS="?G(后视点X):"YHS="?L(后视点Y):"XZJ="?M(置镜点X):"YZJ="?N(置镜点Y)0l(G-M,L-N):"DH=":I(后视距)◢J<0=>J+360→J:"FH=":J→DMS◢(后视方位角)LB1 1 ↙“K=”?K ◢(计算里程)IF K<本段曲线终点里程AND K≥上段曲线终点里程:THEN 本段终点里程→Z[1] : 上段曲线终点里程→Z[2] :1→0 (注:左偏曲线输入-1→0,右偏曲线输入1→0): 偏角→A:半径→R : 第一缓和曲线→Z[6] : 第二缓和曲线→Z[7] : 交点X→B :交点Y→C : 小里程向交点方位角→E : 交点向大里程方位角→F: G0T0 2 : IFEND↙…………(曲线段分段输入)补充直线段输入如下IF K<本段直线终点里程AND K≥本段直线起点里程:THEN 1→0:本段直线终点里程→Z[2]:终点X→Z[16]:终点Y→Z[11]:方位角→E:G0T0 4:IFENDLB1 2 ↙(曲线要素计算)Z[6]/2- Z[6]^3/(240*R^2)+ Z[6]^5/(34560*R^4) →Z[8] ↙(M1)Z[7]/2- Z[6]^3/(240*R^2)+ Z[7]^5/(34560*R^4) →Z[9] ↙(M2)Z[6]^2/(24*R)- Z[6]^4/(2688*R^3) →Z[10] ↙(P1)Z[7]^2/(24*R)- Z[7]^4/(2688*R^3) →Z[11] ↙(P2)π*A*R/180+0.5*( Z[3]+ Z[2])→W ↙(曲线总长)90* Z[6]/(R*π) →Z[14] ↙(第一缓和曲线总偏角)90* Z[7]/(R*π) →Z[15] ↙(第二缓和曲线总偏角,可以省略)Z[8]+(R+Z[10])TAN(A/2)-(Z[11]-Z[11] )/SIN A→Z[11]↙(切线T1) Z[9]+(R+Z[12])TAN(A/2)+(Z[10]-Z[12] )/SIN A→Z[12]↙(切线T2) B+ Z[12]*C0S (E+180)→ Z[13] ↙(ZH点X)C+ Z[12]*SIN(E+180)→ Z[15] ↙(ZH点Y)Z[1]-S→Z[3] ↙ (ZH点里程)Z[3]+ Z[6]→Z[4] ↙(HY点里程)Z[1]- Z[7]→Z[5] ↙(YH点里程)G0T0 3 ↙LB1 3 ↙(判断里程点与曲线关系)IF K≤Z[3]AND K> Z[2] : THEN G0T0 4 : IFEND ↙IF K≤Z[4]AND K> Z[3] : THEN G0T0 5 : IFEND ↙IF K≤Z[5]AND K> Z[4] : THEN G0T0 6 : IFEND ↙IF K≤Z[1]AND K> Z[5] : THEN G0T0 7 : IFEND ↙LB1 4 ↙(里程小于直缓点直线独立坐标)K- Z[3] →X : 0→Y : E→T : PR0G“TYZBCX” :G0T0 1 ↙LB1 5 ↙(第一缓和曲线独立坐标)K- Z[3] →H ↙H-H^5/(40*R^2* Z[6]^2)+H^9/(3456*R^4* Z[6]^4) →X ↙H^3/(6*R* Z[6])-H^7/(3362*R^3* Z[6]^3) →Y ↙90*H^2/( R*π* Z[6]) →T ↙IF 0>0 :THEN T +E→T : ELSE E-T →T : T<0=>360+T→T : I FEND ↙PR0G“TYZBCX” :G0T0 1 ↙LB1 6 ↙(圆曲线独立坐标)K- Z[4] →H ↙H*180/( R*π)+ Z[14]→T ↙R*SIN T+ Z[8]→X ↙R*(1-C0S T)+ Z[13]→Y ↙IF 0>0 :THEN T +E→T : ELSE E-T →T : T<0=>360+T→T : IFEND ↙PR0G“TYZBCX” :G0T0 1 ↙LB1 7 ↙(第二缓和曲线独立坐标)Z[1] -K →H ↙H-H^5/(40*R^2* Z[7]^2)+H^8/(3456*R^4* Z[4]^4) →U↙H^3/(6*R* Z[7])-H^7/(336*R^3* Z[7]^3) →V ↙90*H^2/( R*π* Z[7]) →T ↙Z[13]C0S A+ Z[12]-U*C0S A-V*SIN A→X ↙Z[13]*SIN A-U*SIN A+V*C0S A→Y ↙IF 0>0 :THEN F-T→T : T<0=>360+T→T : ELSE F+T →T : IFEND ↙PR0G“TYZBCX” :G0T0 1 ↙子程序:“TYZBCX” ↙(统一坐标计算)IF 0<0 : THEN -Y→Y : IFEND ↙“QXJ=” :T◢(计算里程点切线方位角,可以不显示)Z[16]+X*C0S E-Y*SIN E→Z[15] ↙Z[17]+X*SIN E+Y*C0S E→Z[12] ↙“XI=” : Z[13] ◢(中线X)“YI=” : Z[19] ◢(中线Y)P0l(Z[18]-M,Z[13]-N):"DI=":I(中桩放样距)◢J<0=>J+360→J:"FI=":J→DMS◢(中桩放样方位角)“PJ=”?P◢(输入边桩与线路夹角,左-右+)“PD=”?D◢(输入边桩距)Z[12]+D*C0S(T+P) →Z[20] ↙Z[13]+D*SIN(T+P) →Z[21] ↙“XP=”: Z[20] ◢(边桩X)“YP=”: Z[21] ◢(边桩Y)P0l(Z[20]-M,Z[21]-N):"DP=":I◢(边桩放样距)J<0=>J+360→J:"FP=":J→DMS◢(边桩放样方位角)一、程序功能主要功能:采用交点法方式计算多条线路坐标正反算,可算任意复杂线型及立交匝道,包括C型,S型、卵型、回头曲线等;极坐标放样,全线路基边坡开挖口及坡脚放样计算、路基任意点设计高程、横坡、设计半幅宽度.隧道欠超挖放样计算。
卡西欧CASIO fx-5800 道路坐标放样程序
卡西欧CASIO fx-5800 道路坐标放样程序源程序包括:一个主程序和两个子程序主程序:PRO-ROAD行号程序说明1 Deg:Fix3:26→DimZ2 “X(JD1)”?X:“Y(JD1)”?Y:“X(JD0)”?M:“Y(JD0)”?N3 Prog”SUB-QXYS1”4 Pol(X-M,Y-N):J→Z[20]:J+O→Z[19]5 X-Scos(Z[20]) →Z[21]:Y-Ssin(Z[20]) →Z[22]6 X+Tcos(Z[19]) →Z[23]:Y+Tsin(Z[19]) →Z[24]7 “X0”?U:”Y0”?V8 Lbl 09 “KP”?P:IFP>Z[1]:Then Goto 1 :IfEnd10 Z[1]-P→L11 “XP=“:X-(S+L)cos(Z[20]) →F12 “YP=“:Y-(S+L)sin(Z[20]) →G13 Z[20] →Z :Goto 514 Lbl 115 If P>Z[2] :Then Goto 2 :IfEnd16 P-Z[1] →L :L→Z[14]:B→Z[15]:Prog”SUB-HXY”17 “XP=“:Z[21]+Z[16]cos(Z[20]-WZ[17]sin(Z[20]) →F18 “YP=“:Z[22]+Z[16]cos(Z[20]-WZ[17]sin(Z[20]) →G19 Z[20]+90WLL÷(BRπ) →Z20 Goto 521 Lbl 222 If P>Z[4] :Then Goto 3 :IfEnd23 P-Z[1] →L :90(2L-B)÷R÷π→Z[13]24 Rsin(Z[13])+Z[8] →Z[16]:R(1-cos(Z[13]))+Z[6] →Z[17]25 “XP=“:Z[21]+Z[16]cos(Z[20])-WZ[17]sin(Z[20]) →F26 “YP=“:Z[22]+Z[16]sin(Z[20])-WZ[17]cos(Z[20]) →G27 Z[20]+WZ[13] →Z28 Goto 529 Lbl 330 If P>Z[5]:Then Goto 4:IfEnd31 Z[5]-P→L:L→Z[14]:C→Z[15]:Prog”SUB-HXY”32 “XP=“:Z[23]-Z[16]cos(Z[19])-WZ[17]sin(Z[19]) →F33 “YP=“:Z[24]-Z[16]sin(Z[19])+WZ[17]cos(Z[19]) →G34 Z[19]-90WLL÷(CRπ) →Z35 Goto 536 Lbl 437 P-Z[5] →L38 “XP=“:X+(T+L)cos(Z[19]) →F39 “YP=“:Y+(T+L)sin(Z[19]) →G子程序1:SUBQXYS1子程序2:SUB-HXY40 Z[19] →Z41 Lbl 542 If Z<0 :Then Z+360→Z:IfEnd43 “BP=“:Z DMS44 If U=0:Then Goto 7:Else Pol(F-U,G-V):IfEnd45 Lbl 646 If J<0:Then J+360→J:IfEnd47 “A1=“:J DMS48 “D1=“:I49 Lbl 750 “D ANGLE”?H:IfH=0:Then Goto 0 :IfEnd :?D51 “XB=“:F+Dcos(Z+H) →Z[11]52 “YB=“:G+Dsin(Z+H) →Z[12]53 If U=0:Then Goto 7:Else Pol(Z[11]-U,Z[12]-V):IfEnd54 Goto 6行号程序说明1 “ANGLE”?O:?R:”LS1”?B:”LS2”?C:”K(JD1)”?K2 If O<0:Then -1→W:Else 1→W:IfEnd:WO→A3 B2÷24÷R-B^(4)÷2688÷R^(3)+B^(6)÷506880÷R^(5) →Z[6]4 C2÷24÷R-C^(4)÷2688÷R^(3)+B^(6)÷506880÷R^(5) →Z[7]5 B÷2-B^(3)÷240÷R2+B^(5)÷34560÷R^(4) →Z[8]6 C÷2-C^(3)÷240÷R2+C^(5)÷34560÷R^(4) →Z[9]7 “T1=“:Z[8]+(R+Z[7]-(R+Z[6])cos(A))÷sin(A) →S8 “T2=“:Z[9]+(R+Z[6]-(R+Z[7])cos(A))÷sin(A) →T9 “L=“:RAπ÷180+(B+C)÷2→L10 “LY=“:L-B-C→Q11 “E=“:(R+(Z[6]+Z[7])÷2)÷cos(A÷2)-R→E12 “K(ZH)=“:K-S→Z[1]13 “K(HY)=“:Z[1]+B→Z[2]14 “K(QZ)=“:Z[1]+L÷2+(B-C)÷4→Z[3]15 “K(YH)=“:Z[1]+L-C→Z[4]16 “K(HZ)=“:Z[4]+C→Z[5]行号程序说明1 If Z[14]=0:Then 0→Z[16]:0→Z[17]:Else2 Z[14]-Z[14]^(5)÷40÷(RZ[15])2+Z[14]^(9)÷3456÷(RZ[15])^(4) →Z[16]3 Z[14]^(3)÷6÷(RZ[15])-Z[14]^(7)÷336÷(RZ[15])^(3)+Z[14]^(11) ÷42240÷(RZ[15])^(5) →Z[17]4 IfEnd。
(整理)5800计算器全线坐标计算放样程序.
任意桩号坐标及高程一、程序功能本程序由一个主程序(ZHUCHENXU)和几个子程序——正算子程序(SUB1)、反算子程序(SUB2)、数据库(SUB3)、曲线要数(SUB4,4-1)、边坡放样程序(BIANPO),可以根据直线、圆曲线、缓和曲线(完整或非完整型)的线元要素(起点坐标、起点里程、起点切线方位角、线元长度、起点曲率半径、止点曲率半径)及里程边距或坐标及中桩高程,对该曲线段范围内任意里程中边桩坐标进行正反算。
二、源程序增加变量18→DimZ1.主程序(ZHUCHENXU)"1.SZ → XY,2.XY → SZ,3.SDYX,4. BIANPO "?N:Lbl 1:”ZHUANGHAO=”?S: Prog "SUB3":N≥2=>Goto 2: Abs(S -O)→W:”BIANZHU=”?→Z:Prog "SUB1":Prog"SUB4":“H=”H◢"XS=”:X→X◢"YS=”:Y→Y◢"FS=”:(F-90) →F:F►DMS◢ Goto1 Lbl 2:”CX=”?X: X→I:”CY=”?Y: Y→J:”DMG=”?→Z[7]:P rog "SUB2": "S=":(O+W) →S◢"Z="Z→Z◢ Z→Z[17] :If N=3:Th en Prog”SDYX”: IfEnd :If N=4:Then Prog”BIANPO”:IfEnd:G oto 22.SUB1(正算子程序名)0.1739274226→A:0.3260725774→B 0.0694318442→K:0.330009482→L 1-L→F:1-K→MG+QEKW(C+KWD)→Z[1]G+QELW(C+LWD)→Z[2]G+QEFW(C+FWD)→Z[3]G+QEMW(C+MW D)→Z[4]A×cos(Z[1])→X(剩號可省略) X+Bcos(Z[2])→XX+Bcos(Z[3])→XX+Acos(Z[4])→XU+WX→XAsin(Z[1])→YY+Bsin(Z[2])→YY+Bsin(Z[3])→YY+Asin(Z[4])→YV+WY→YG+QEW(C+WD)+90→FX+Zcos(F)→XY+Zsin(F)→Y3.SUB2(反算子程序名)G-90→T(Y-V)cos(T)-(X-U)sin(T)→WAbs(W)→W:0→ZLbI 4:Prog"SUB1"T+QEW(C+WD)→L(J-Y)cos(L)-(I-X)sin(L)→ZIf Abs(Z)<1E-6:Then 0→Z :Prog"SUB1"(J-Y)÷sin(F)→ZElse W+Z→W:Goto 4:IfEnd注:1E-6即是10的負6次方,亦即是等於0.000001輸入時按SHIFT---log---(-)---64. 数据库(SUB3)If S<226100:Then Cls:Stop: IfEndIf S<226255.833:Then 226100→O:99037.9736→U: 4282.3590→V:201.3266304→G:1045→P:1045→R:253.543→H:0→Q: Goto 1:IfEndIf S>And S<…………If S>236005.651:Then Cls:Stop: IfEndLbl 1: 1÷P→C:(P-R)÷(2HPR) →D:180÷π→E:5、曲线主程序: 1-E.BG(SUB4)Fix 3:Prog”Z.EBG”:R Abs(D-C)/2→T:if D-C>θ :Then 1→W:Else -1→W:ifendif S<A:Then -C→I:Else D→I:ifendAbs (A-S)→Lif L-T>θ:Then Z+IL→H:Else Z+IL+W(T-L)2/2/R→H:"HS=":H◢曲线数据库: Z.EBG(SUB4-1)if S<332.599:Then 0.02793→C:-0.03309→D:1800→R:235→A:32. 7→Z: goto 1:ifendif S>322.599 And K<734.085:Then -0.03309→C:-0.00485→D:60 00→R:460→A:25.254→Z: goto 1:ifend----Lbl 1C—前坡:D—后坡:R—呵呵,都知道是什么!A—变坡点:Z—变坡点设计高O—从设计高程点处垂直向下的距离:N—距设计高程处的平距(若你的设计高程线是路中线的话,请把0.75改为0):J—所求桩号处的横坡.6. 边坡放样程序(BIANPO) (SUB6)“QPDJL=”? → Z[3]: “QPDGD=” : Prog “(SUB4)”:H→ Z[4]◢“PG=” ?→ Z[5]:PTK→Z[6]:“P1=” ? → Z[8]:“P2=”? → Z[9]:“P3=” ? → Z[10] (没有的话就删): Z[7]-Z[4] → Z[11]:If Z[11]〈0 Then AbsZ[11] →Z[11]: “T=”:Z[1 1] ◢Else“W=”:Z[11] ◢IfEnZ[11]÷Z[5] →Z[12]:If Z[12]〈1 Then Z[8]×Z[11] →Z[13]:Else Z[8]×Z[5]+Z[9]×Z[5]×(Z[12]-1)→Z[13]:IfEnd: AbsZ [17]-(Z[13]+Z[6] ×Int (Z[12])+Z[3])→Z[14]:“BP+C-J=”: Z[14] ◢说明:Z[3]= QPDJL ………………起坡点离中桩距离Z[4]=“QPDGD” ……………起坡点设计标高Z[5]=“PG” ………………坡高Z[6]=“PTK” ……………… 平台宽度Z[7]=“DMG” ………………实测地面高度Z[8]=“P1” ………………一级边坡坡度Z[9]=“P2” ………………二级边坡坡度Z[10]=“P3” ……………… 三级边坡坡度(没有的话就删)Z[14]=“BP+C-J=” ………………边坡超欠挖宽度(+表超,-表欠)三、使用说明1、规定(1) 以道路中线的前进方向(即里程增大的方向)区分左右;当线元往左偏时, Q=-1;当线元往右偏时,Q=1;当线元为直线时,Q=0。
CASIO-5800计算器公路测量常用程序
CASIO-5800计算器公路测量常用程序一、程序功能本程序由6个主程序、5个次子程序及5个参数子程序组成。
主要用于公路测量中坐标正反算,设计任意点高程及横坡计算,桥涵放样,路基开挖口及填方坡脚线放样。
程序坐标计算适应于任何线型.二、源程序1.主程序1:一般放样反算程序(①正算坐标、放样点至置仪点方位角及距离;②反算桩号及距中距离)程序名:1ZD-XYLb1 0:Norm 2F=1:(正反算判别,F=1正算,F=2反算,也可以改F前加?,改F为变量)Z[1]=90(与路线右边夹角)Prog"THB":F=1=>Goto 1:F=2=>Goto 2Lb1 1:Fix 3:"X=":Locate 6,4,X◢"Y=":Locate 6,4,Y◢Prog"3JS”:Goto 0:Lb1 2:Fix 3:"KM=":Locate 6,4,Z◢"D=":Locate 6,4,D◢Goto 02.主程序2:高程序横坡程序(设计任意点高程及横坡)程序名:2GCLbI 0:Norm 2“KM”?Z:?D:Prog”H”:Fix 3:”H=”:Locate 6,4,H◢“I=”: Locate 6,4,I◢Goto 03.主程序3:极坐放样计算程序(计算放样点至置仪点方位角及距离)程序名:3JSX:Y:1268.123→K(置仪点X坐标)2243.545→L(置仪点Y坐标,都是手工输入,也可以建导线点数据库子程序,个人认为太麻烦)Y-L→E:X-K→F:Pol(F,E):IF J<0:ThenJ+360→J:Int(J)+0.01Int(60Frac(J))+0.006Frac(60Frac(J)) →J:(不习惯小数点后四位为角度显示的,也可以用命令J◢DMS◢来直接显示) Fix 4:” FWJ=”: Locate 6,4,J◢(不习惯小数点后四位为角度显示的,也可以用命令J◢DMS◢来直接显示)Fix 3:”S=”:Locate 6,4,I◢4.主程序4:涵洞放样程序(由涵中心桩号计算出各涵角坐标、在主程序3中输入置仪点坐标后计算放样点至置仪点方位角及距离)程序名:4JH-XYLbI 0:Norm 290→Z[1](涵洞中心桩与右边夹角,手工输入,也可以修改成前面加?后变为变量)1→F:Prog”THB”:?L:Z[2]-Z[1] →E:X+Lcos(E) →X:Y+Lsin(E) →Y:Fix 3: "X=":Locate 6,4,X◢"Y=":Locate 6,4,Y◢Prog"3JS”:Goto 0:5.主程序5:路基开挖边线及填方坡脚线放样程序(输入大概桩号及测量坐标、地面标高计算出偏移距离、桩号、距中距离、填挖高度)程序名:5FBXLbI 0:Norm 2: 18→DimZ:2→F:90→Z[1]:Prog“THB”:Z:D:”M0”?M:M→Z[4]:D→Z[3]:Prog”6GD”:L→Z[6]:If D<0:Then 0.75-L→D:Goto H:Else L-0.75→D:Goto H:IfEndLbI H:Prog”H”:H-0.03-Z[4] →Z[5]:Z[6] →L:If Z[5]<0:Then –z[5]→G:Goto W:Else Z[5] →G:Goto T:LbI W:Prog “W0”:Z[10]+Z[11] →A: If G>A:Then Goto 1:Else IfG>Z[10]:Then Goto 2:Else Goto 3:IfEnd:LbI 1:L+Z[12]+Z[13]+Z[14]+(G-A)×Z[9]+Z[11]×Z[8]+Z[10]×Z[7]:Goto Z:LbI 2:L+Z[12]+Z[13]+(G-Z[10])×Z[8]+Z[10]×Z[7]:Goto Z:LbI 3:L+Z[12]+G×Z[7]:Goto z:LbI T:L+0.5→N:If G>Z[17]:Then(N+Z[18]+(G-Z[17])×Z[16]+Z[17]×Z[15])→S:Goto Z:Else(N+G×Z[15])→S:Goto z:LbI Z:Z[3]→D:Fix 2:Abs(D)-S→T:”L0=”:L Locate 6,4,T◢"KM=":Locate 6,4,Z◢"D=":Locate 6,4,D◢“TW=”: Locate 6,4,Z[5]◢Goto 06.主程序6:路基标准半幅宽度计算程序(对于设计有加宽渐变的有用,如路基宽度无变化,则把此程序直接输入半幅宽度值至L)程序名:6GDProg “G0”Z-C→E:(B-A)×E/S+A→L:L:7.坐标计算次程序(THB)程序名:THB18→DimZ:"KM"?Z:Prog "X0"1÷P→C: (P-R)÷(2HPR) →S:180÷π→E:F=1=>Goto 1:F=2=>Goto 2←┘Lbl 1:?D: Abs(Z-O) →W:Prog "A":X:Y:Goto 3LbI 2:X:Y:X→I:Y→J:Prog "B":O+W→Z:D→D:Goto 3 LbI 3:IF F=1Then X:Y:Else Z:D8. 正算子程序(A)程序名:A0.1184634425→A:0.2393143352→B:0.2844444444→N 0.046910077→K:0.2307653449→L:0.5→M: U+W(Acos(G+QEKW(C+KWS))+Bcos(G+QELW(C+LW S))+Ncos(G+QEMW(C+MWS))+Bcos(G+QE(1-L)W(C+(1-L)WS))+Acos(G+QE(1-K)W(C+(1-K)WS))) →X:V+W(Asin(G+QEKW(C+KWS))+Bsin(G+QELW(C+LWS))+Nsin(G+QEMW(C+MWS))+Bsin(G+QE(1-L)W(C+(1-L)WS))+Asin(G+QE(1-K)W( C+(1-K)WS))) →Y:G+QEW(C+WS)+Z[1]→Z[2]:X+Dcos(Z[2])→X: Y+Dsin(Z[2])→Y9. 反算子程序(B)程序名:BG-90→T: Abs((Y-V)cos(T)-(X-U)sin(T)) →W:0→D:Lbl 0:Prog "A":T+QEW(C+WS) →L: (J-Y)cos(L)-(I-X)sin(L)→D:IF Abs(D)<0.01:Then Goto1:Else W+D→W:Goto 0←┘Lbl 1:0→D:Prog "A":(J-Y)÷si n(Z[2]) →D:10.高程计算子程序(H)程序名:HProg “S0”:R:T:C:G:I:C-T→F:Z-F→L:C+T→E:G-TI→Q:If T=O:ThenQ+LI→H:Goto 0:Else If Z<F:Then Q+LI→H:Goto 0:Else If Z≤E:ThenQ+LI+L2÷2÷R→H:Goto 0:LbI 0:H:If D=0:Then Goto I:Else Prog “I”:H+V→H:Goto I:LbI I:H:I: 11.高程超高计算程序(I)程序名:IProg”I0”:W=1=> Goto 0:W=2=>Goto 1:LbI 0:If L=0:Then Abs(D)×M→V:Goto 2:ElseAbs(D)×((N-M)×(Z-C)÷L+M)→V:Goto 2:IfEnd:LbI 1:If L=0:Then Abs(D)×M→V:Goto 2:ElseAbs(D)×(((3((Z-C)÷L)2-2((Z-C)÷L)∧(3))×(N-M))+M)→V:Goto 2:IfEnd: LbI 2:Abs(D)→E:V÷E→I:I(E-K)→V:12.数据子程序(附后示例)①程序名:X0(坐标计算要素程序)If Z≥25900 And Z≤26615.555:Then25900→O:11587.421→U:1847.983→V:101。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
卡西欧5800程序(修改于湘桂)R(主程序,通过里程求中桩、边桩坐标,在输入测站坐标后并求极坐标放样要素)1→M :“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+1000V→K:IfEnd↙If M=1:Then Prog“CIRCLE” IfEnd↙H÷2-H^(3)÷(240R2)+(R+H2÷(24R))tan(A÷2)→T:πR(A-180H÷π÷R)÷180+2H→L↙U-T→G:K→Q↙If Q≤G+L÷2:Then Q-G→Q: Else G+L-Q→Q: IfEnd↙If Q<0:Then Prog “L”:Goto1: IfEnd↙If Q≤H: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 K≤G+L÷2:Then O-180-NJ→E:NF+O→F: “F=”:F▲DMS◢ ElseNA+NJ+ O→E: O+NA-NF→F: “F=”:F▲DMS◢IfEnd↙“X=”:S+Icos(E)→X◢“Y=”:P+Isin(E)→Y◢If F<0:Then 360+F→F: IfEnd↙If F≥360:Then F-360→F: 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(子程序,受主程序R调用,求极坐标放样要素:方位角及平距)Pol(X-B,Y-C): “D=”:I◢If J<0:Then 360+J→J: Else 0+J→J: IfEnd↙“AQ=”:J▲DMS◢L(子程序,受主程序R调用,求直线上点位坐标及切线方位角)T-Q→Q:If K<G:Then O+180→E: O→F: “X=”:S+Qcos(E)→X◢“Y=”:P+Qsin(E) →Y◢ Else O+NA→F: “X=” S+Qcos(F) →X◢“Y=”:P+Qsin(F) →Y◢IfEnd↙I(子程序,受主程序R调用,求边桩坐标)“RA”?E:“D”?D:E+F→E: If E≥360:Then E-360→E: IfEnd↙X+Dcos(E)→X: Y+Dsin(E)→Y: “X=”: X◢“Y=”: Y◢E→F↙Q(子程序,受主程序R调用,求副线边桩坐标)“1A”?E:“1D”?D:E+F→E↙X+Dcos(E)→X: Y+Dsin(E)→Y:E→F↙“2R”?E: “2D”?D: E+F→E↙X+Dcos(E)→X: Y+Dsin(E)→Y↙E→F↙LD(子程序,受主程序R调用,通过坐标反求里程和偏距)40→DimZ↙O→Z[1]:U→Z[2]:S→Z[3]: P→Z[4] ↙H÷2-H^(3)÷(240R2)→M: H2÷(24R)-H^(4)÷(2688R^(3))→V:90H2÷(πR)→D:(R+V)Tan(A÷2)+M→T: πRA÷180+H→K:O+NA→J:Prog“JD”:J→Z[21]:U-T+K→Z[22]: S-Tcos(O)→Z[5]:P-Tsin(O)→Z[6]:Z[5]+Mcos(O)+(R+V)cos(O+90N)→Z[7]:Z[6]+Msin(O)+ (R+V)sin(O+90N)→Z[8] ↙H-H^(5)÷(40R2H2)→Z:H^(3)÷(6RH)-H^(7)÷(336R^(3)H^(3))→C: Pol(C,Z):90-J→J:Prog“JD”: O+JN→J:Prog“JD”↙Z[5]+Icos(J)→Z[9]:Z[6]+Isin(J)→Z[10]:S+Tcos(Z[21])→Z[11]: P+Tsin(Z[21])→Z[12] ↙Pol(Z[10]-Z[8],Z[9]-Z[7]):90-J→J:Prog“JD”:J→Z[13] ↙J+(A-2D)N→J: Prog“JD”: J→Z[14] ↙“CEDIAN”◢Lbl 0: ↙“B”?B:If B=0:Then Prog “R”: IfEnd↙“XN=”?X: “YN=”?Y:Pol(Y-Z[8],X-Z[7]) ↙90-J→J: Prog“JD”:J→W:J-Z[13]→J↙Prog“JD”:J→Z[15] ↙W-Z[14]→J↙Prog“JD”:J→Z[16] ↙If N=1:Then Goto 1: IfEnd↙If N=-1:Then Goto 2: IfEnd↙Lbl 1: ↙If Z[15]>180:Then Goto 3: IfEnd↙If Z[16]≤180:Then Goto 5:Else Goto 4 : IfEnd↙Lbl 2: ↙If Z[15]<180:Then Goto 3: IfEnd↙If Z[16] >180:Then Goto 5:Else Goto 4 : IfEnd↙Lbl 3: ↙“H1”◢Pol(Y-Z[6],X-Z[5]):90-J→J: Prog“JD”↙J-Z[1]+90→J: Prog“JD”↙Isin(J)→G↙If G>0:Then 0→L:Goto 6: IfEnd↙If G≤0:Then “DK=”:Z[2]-T+G→Z[19]◢If N=1:Then “LD=”:-NIcos(J)→Z[20]◢Else “LD=”:NIcos(J) →Z[20]◢IfEnd↙“SD=1,LD≠1”?D:If D=1:Then Prog “SDCQJC”: IfEnd↙Goto 0↙Lbl 4: ↙“Y”◢If N=-1:Then 360-Z[15]→Z[15]: IfEnd: “DK=”:Z[2]-T+H+πR(Z[15])÷180→Z[19]◢If N=1:Then “LD=”:-(I-R)→Z[20]◢Else “LD=” :I-R→Z[20]◢IfEnd↙“SD=1,LD≠1”?D:If D=1:Then Prog “SDCQJC”: IfEnd↙Goto 0↙Lbl 5: ↙“H2”◢Pol(Y-Z[12],X-Z[11]):90-J→J: Prog“JD”:J→W:Z[21]-90→J: Prog“JD”:W-J→J: Prog“JD”:Isin(J)→G:If G<0:Then 0→L: -G→G↙Goto 7: IfEnd↙If G≥0:Then “DK=”:Z[22]+G→Z[19]◢IfEnd: If N=1:Then “LD=”:-NIcos(J)→Z[20]◢Else “LD=”:NIcos(J)→Z[20]◢IfEnd↙“SD=1,LD≠1”?D:If D=1:Then Prog “SDCQJC”: IfEnd↙Goto 0↙Lbl 6: ↙L+G→L:L-L^(5)÷(40R2H2)→Z:L^(3)÷(6RH)-L^(7)÷(336R^(3)H^(3)) →C:Pol(C,Z):90-J→J: Prog“JD”:J→W:Z[1]+WN→J: Prog“JD”:Z[5]+Icos(J)→Z[17]: Z[6]+Isin(J) →Z[18] ↙J+2WN→J: Prog“JD”:J-90→J: Prog“JD”:J→W↙Pol(Y-Z[18],X-Z[17]):90-J→J: Prog“JD”↙J-W→J: Prog“JD”:Isin(J)→G:If Abs(G)>0.001:Then Goto 6: IfEnd↙“DK=”:Z[2]-T+L+G→Z[19]◢If N=1:Then “LD=”:-Ncos(J) →Z[20]◢Else“LD=”:NIcos(J) →Z[20]◢IfEnd↙“SD=1,LD≠1”?D:If D=1:Then Prog “SDCQJC”: IfEnd↙Goto 0↙Lbl 7: ↙L+G→L:L-L^(5)÷(40R2H2)→Z:L^(3)÷(6RH)-L^(7)÷(336R^(3)H^(3)) →C:Pol(C,Z):90-J→J: Prog“JD”:J→W:Z[21]-180-WN→J: Prog“JD”↙Z[11]+Icos(J)→Z[17]:Z[12]+Isin(J)→Z[18]:J-2WN→J: Prog“JD”↙J-90→J: Prog“JD”:J→W↙Pol(Y-Z[18],X-Z[17]):90-J→J: Prog“JD”↙J-W→J:Prog “JD”↙Isin(J)→G: If Abs(G)>0.001:Then Goto 7:IfEnd↙“DK=”:Z[22]-L-G→Z[19]◢If N=1:Then “LD=”:NIcos(J)→Z[20]◢Else“LD=”:-NIcos(J) →Z[20]◢IfEnd↙“SD=1,LD≠1”?D:If D=1:Then Prog “SDCQJC”: IfEnd↙Goto 0↙JD(子程序,受LD程序调用,计算角度归化值)If J<0:Then J+360→J: IfEnd↙If J≥360:Then J-360→J: IfEnd↙CIRCLE(子程序,线路平面曲线要素,受主程序R调用)If K≤缓直点里程:Then 交点里程→U:交点X坐标→S:交点Y坐标→P:转角值→A:-1(曲线段左偏)或1(曲线段右偏)→N:圆曲线半径→R:缓和曲线长→H:直线段起始方位角→O:Goto 1: IfEnd↙If K≤……(同上输完全部曲线要素为止)Lbl 1↙CONTREL(控制点坐标数据库子程序,受主程序R和ZBFS调用)If W=控制点点号:Then 控制点X坐标→B:控制点Y坐标→C: IfEnd↙If W=……(同上输完全部控制点数据为止)ZBFS(主程序,求两已知点方位角及平距,或已知两点求后方交会点坐标)Lbl 0:1→W: “NEW OPP”?W:If W=1:Then “OPPX”?X: “OPPY”?Y:Else Prog “CONTREL”:B→X:C→Y: IfEnd↙Lbl 1:-1→W: “NEW CPP”?W: If W=-1:Then “CPPX”?S: “CPPY”?T: Else Prog “CONTREL”:B→S:C→T: IfEnd↙Pol(S-X,T-Y): “D=”:I◢If J<0:Then J+360→J: Else 0+J→J: IfEnd↙“AQ=”:J▲DMS◢Lbl 2:0→W: “ZBFS=0,SQS≠0”?W:If W=0:Then Goto 1: Else Prog “SQS”: IfEnd↙Goto 0↙SQS(子程序,受主程序ZBFS调用,通过角度边长求交会点坐标值)Lbl 0: “S1=”?A: “J1=?M: “J2=”?N: “S2=?D:N-M→Q: If Q <0:Then Q+360→Q: IfEnd↙If Q<45°0′0″: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 J<0:Then J+360→J:IfEnd↙(X+Acos(J+R)+S+Dcos(J+180-G))÷2→F: “X=”:F◢(Y+Asin(J+R)+T+Dsin(J+180-G))÷2→P: “Y=”:P◢SQX(主程序,竖曲线求线路各里程点中桩设计高程)1→S:“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+1000V→K:IfEnd↙If S≠-1:Then Prog “SQXK”: IfEnd↙U-T→G:K→Q: If Q≤G:Then Q-U→Q: Else Q-G→W: IfEnd↙If Q≤G:Then “H=”:B+QN÷1000→H◢Goto 1↙Else If Q≤U+T:Then “H=”:B+(Q-U)N÷1000+FW2÷(2R)→H◢Goto 1↙Else If Q≥U+T:Then “H=”:B+(Q-U)I÷1000→H◢Goto 1:IfEnd↙Lbl 1: “P”?P: “O=”:H-P→O◢Goto 0↙SQXK(子程序,受主程序SQX调用,竖曲线要素)If K≤竖曲线圆直点里程:Then 变坡点里程→U:变坡点设计高程→B:竖曲线圆曲线半径→R:竖曲线切线长→T:竖曲线直线段坡度常数(上、下坡有正负之分)→N:变坡点常数(凸为-1,凹为1)→F: Goto 0: IfEnd↙If K≤……(同上输完全部竖曲线要素为止)Lbl 0↙SDCQJC(子程序,受LD程序调用,采集隧道支护位置坐标高程数据一次性计算出该支护位置的超欠挖量)40→DimZ↙Lbl 0:Z[19]→Z[23]:Prog “SQXZ”↙Z[24]-Z[27]→Z[30]: Z[23]→Z[31] ↙If Z[31]≤Z[30]:Then Z[31]-Z[24]→Z[31]:Else Z[31]-Z[30] →Z[32]: IfEnd↙If Z[31]≤Z[30]:Then Z[25]+(Z[31])×(Z[28])÷1000→Z[33]: Goto 1↙Else If Z[31]≤Z[24]+Z[27]:Then Z[25]+(Z[31]-Z[24])×(Z[28])÷1000+(Z[29])×(Z[32])2÷(2×Z[26])→Z[33]: Goto 1↙Else If Z[31]≥Z[24]+Z[27]:Then Z[25]+(Z[31]-Z[24])×I÷1000→Z[33]: Goto 1: IfEnd↙Lbl 1: “H0=”:Z[33]+内轨面至圆心高差常数→Z[33]◢“HN”?K: “Δh=”:K-Z[33]→Z[34]◢If Z[20]≥隧道中心线与设计中心线的偏移量ω:Then Z[20]-ω→Z[35]:Else ω- Z[20]→Z[35] : IfEnd↙“RN=”:√((Z[34])2+(Z[35])2)→Z[36]◢“R0”?Z: “RCQ=”: Z[36]-Z→Z[37]◢SQXZ(子程序,受主程序SDCQJC调用,竖曲线要素)40→DimZ↙If Z[23]≤竖曲线圆直点里程:Then 变坡点里程→Z[24]:变坡点设计高程→Z[25]:竖曲线圆曲线半径→Z[26]:竖曲线切线长→Z[27]:竖曲线直线段坡度常数(上、下坡有正负之分)→Z[28]:变坡点常数(凸为-1,凹为1)→Z[29]:IfEnd↙If Z[23]≤……(同上输完全部竖曲线要素为止)Lbl 0↙。