卡西欧计算器FX-5800正反算、隧道超欠挖计算程序
卡西欧5800程序坐标正反算[1]
![卡西欧5800程序坐标正反算[1]](https://img.taocdn.com/s3/m/5459ba14a216147917112868.png)
卡西欧5800程序坐标正反算修改 ZX-WN (其他的程序不用改,所有程序输完后退出进行扩展变量:5→Dimz 按EXE出现Done就OK了)WN(子程序不运行)" ZS=1,FS=2 "?N: 1÷P →C:(P-R)÷(2HPR)→D:180÷π→E: If N=1: Then Goto 1: Else Goto 2: IfEnd← ┚LbI 1:1 →I:0 →Z : Abs(K- O) →W: Prog " ZS "← ┚F-90→F← ┚" JJ " ?K: " PJ " ?L: " ZX= ":X+Lcos(F+K) →Z[3] ◢" ZY= ": Y+Lsin(F+K) →Z[4] ◢" QXFWJ= ":F DMS ◢Abs(Z) →Z:Goto 8← ┚LbI 2: " X " ?I: " Y " ?J: Prog " FS " : " FSZH= " : O+W→K ◢" FSJL= ":Z ◢Lbl 8正算子程序( ZS )(不运行)1÷P→C:(P-R)÷(2HPR) →D: 180÷π→E← ┚0.1739274226→A :0.3260725774→B :0.0694318442→K :0.3300094782→L : 1-L→F : 1-K→M : U+W ( Acos ( G+QEKW ( C+KWD ))+Bcos ( G+QELW ( C+LWD )) +Bcos ( G+QEFW ( C+FWD )) +Acos ( G+QEMW ( C+MWD )))→X : V+W ( Asin ( G+QEKW ( C+KWD )) +Bsin ( G+QELW ( C+LWD )) +Bsin ( G+QEFW ( C+FWD )) +Asin ( G+QEMW ( C+MWD )))→Y : G+QEW ( C+WD )+90→F :X+ZcosF→X :Y+ZsinF→Y3 反算子程序( FS )(不运行)G-90→T : Abs (( Y-V )) cos ( T ) - ( X-U ) sin ( T )→W :0→Z← ┚Lbl 0← ┚prog " ZS ": T+QEW ( C+WD )→L :( J-Y ) cosL- ( I-X )sinL→Z :If Abs(Z) < 0.001: Then Goto1 :Else W+Z→W :IfEnd :Goto 0← ┚ Lbl 1 :0→Z : Prog " ZS ":( J-Y )÷sinF→ZZX-WN主程序(运行主程序是一个数据库),该程序适用于匝道,对全段完整非对称曲线计算太过麻烦)" CZX " ?S( 仪站 X 坐标 ): " CZY " ?W (仪站 Y 坐标)LbI 0: " K "?K: If K≤126.9 (第 1 条单一曲线的终点下面同上) : Then Goto A :Else If K≤176.9 And K >126.9: Then Goto B:Else If K≤259.562 And K >176.9: Then Goto C:Else If K≤309.562 And K > 259.562: Then Goto D :IfEnd:IfEnd:IfEnd:IfEnd← ┚LbI A:92094.336 (起点 X 坐标)→U:8287.962 (起点 Y 坐标)→V:0 起点桩号→O:145°11 ' 54 "(方位角)→G:126.9 (曲线长度)→H:10^(45) (起点半径)→P:10^(45) (止点半径)→R:+1 (路线左右偏,左负右正,直线输 0 )→Q:Prog " WN " :Goto WLbI B:91990.134→U:8360.388→V:126.9→O:145°11 ' 54 "→G:50→H:10^(45) →P:150 →R:+1→Q:Prog " WN " :Goto WLbI C:91947.609→U:8386.570→V:176.9→O:154°44 ' 51 "→G:82.662→H:150 →P:150 →R:+1→Q:Prog " WN " :Goto WLbI D:91867.101→U:8399.992→V:259.562→O:186°19 ' 19 "→G:50→H:150 →P: 10^(45) →R:+1→Q:Prog " WN " :Goto WLbI W: " PJ1 "?T← ┚ (该项是只左右边桩再左右偏距,输 0 为不再左右偏,可以直接出方位角、距离,适用于桥梁桥台、盖梁、涵洞八字墙等放样,以路线前进方向,前 - ,后 + )If T=0 :Then Z[3]→Z: Z[4]→M: Goto P: Else Goto V: IfEnd← ┚LbI V: " JJ1 "? O← ┚ (左右边桩再偏夹角,用180° 减去路线夹角)" X1= " : Z[3]+Tcos ( F+N+ O )→U ◢" Y1= " :Z[4]+Tsin ( F+N+ O )→V ◢U→Z: V→M: GotoP← ┚LbI P:Pol(Z-S,M-W): If J≤0 :Then J+360°→J: IfEnd← ┚" JL= ":I ◢ (仪站至测点的距离)" FWJ= ":J DMS ◢ (仪站至测点的方位角)Goto01.规定以道路中线前进方向(即里程增大的方向)区分左右;当线元往左偏时Q=-1 ;当元线往右偏时, Q=1 :当元线为直线时,Q=0 °2.当所求点位于中线时, Z=0 ;当位于中线左侧时, Z 取负值:当位于中线右侧时, Z 取正值°当线元为直线时,其起点、止点的曲率半径为无穷大,以 10 的 45 次方代替°3.当线元为圆曲线时,无论其起点、止点与什么线元相接,其曲率半径均等于圆弧的半径°4.当线元为完整的缓和曲线时,起点与直线相接时,曲率半径为无穷大,以 10 的 45 次方代替°与圆曲线相接时,曲率半径等于圆曲线的半径,止点跟直线相接时,曲率半径为无穷大,以 10 的 45 次方代替;与圆曲线相接时,曲率半径等于圆曲线的半径°5.当线元为非完整缓和曲线时,起点与直线相接时,曲率半径等于设计规定的值;与圆曲线衔接时,曲率半径等于圆曲线的半径°止点与直线相接时,曲率半径等于设计规定的值;与圆曲线衔接时,曲率半径等于圆曲线的半径°二、输入与显示说明1. 输入部分:2. . 输入3. ZS=1 , FS=2 ,选择计算方式,输入 1 正算;输入 2 反算4. 数据库的输入5. U ?线元起点的 X 坐标6. V ?线元起点的 Y 坐标7. O ?线元起点的里程8. G ?线元的起点切点方位角9. H ?线元的长度10. P ?线元起点的曲率的半径11. R ?线元止点的曲率的半径 .12. ZY ?线元左右偏标志(左偏 Q=-1 ,右偏 Q=1 ,直线段 Q=0 )13. 计算时:14. K ?正算时所求的里程15. JJ ?夹角,(正交90 °,斜交直接输角度)16. PJ ?偏距(左负右正)17. . 结果18. ZX= 正算时,计算得出的测点的 X 坐标19. ZY= 正算时,计算得出的测点的 Y 坐标20. QXFWJ= 正算时,测点对应中线点的切线方位角21. PJ1? :左右桩号再偏距离,不需要时输 022. JJ1? : 左右边桩再偏角度23. JL= 仪站与测点的距离24. FWJ= 仪站与测点的方位角25. 反算时输入:26. X ?反算时所求点的 X 坐标27. Y ?反算时所求点的 Y 坐标28. 结果29. FSZH= 反算时,计算得出的所求点的里程30. FSJL= 反算时,计算得出的所求点的边距(负为左偏,正为右偏)出售 5800 计算器带主线正反算(正交 / 斜交),匝道全段正反算,全段高程(超高、加宽)中边桩出售 5800 计算器带程序1 、全路段主线坐标正反算(正交 / 斜交)2 、匝道全段坐标正反算(正交 / 斜交 )3 、全路段中边桩高程(带超高)有电子版的范例,初学者包教会,使用简单,快捷 . 让你短时间成为一个熟练的测量者。
卡西欧fx-5800p计算器测量程序

卡西欧fx-5800p计算器测量程序(作者:水江华)1.坐标反算程序"ZBFS QH1-4"◢Deg:Fix 3←┘"X+YiS(m)="?A←┘Lb1 0:"X+YiE(m),0=>END="?B←┘Abs(B)=0=>Goto E←┘Arg(B-A)→JJ<0=>J+360→J"DIST(m)=":Abs(B-A)◢"α(DMS)=":J▶DMS◢Goto 0←┘Lb1 E:"ZBFS QH1-4=>END"2.坐标正算程序"ZBZS QH1-3"◢Deg:Fix 3←┘"XS(m)= "?A:"YS(m)= "?B←┘Lb1 1:"DIST(m)= "?L←┘If L≤0:Then Goto 2:IfEnd←┘"α(Deg)="?R←┘A+Lcos(R)→C←┘B+Lsin(R)→D←┘Fix 3:"XE(m)= ":C◢"YE(m)= ":D◢Goto 1←┘Lb1 2:"ZBZS QH1-3=>END"3.单一闭、附合导线近似平差程序"BFHDXPC QH1-8"◢Deg:Norm 1:FreqOn←┘n→N←┘If List Y[N]=0:Then N-1→DimZ:Goto 0←┘Else N→DimZ:Goto 1: IfEnd←┘Lb1 0: "CLOSE Or CONECT TRA VE"◢"ANGLE NUM=":N◢"SIDE NUM=":N-1◢"UNKNOWN P NUM=":N-2◢"CLOSE(0),CONNECT(≠0)="?→Z←┘Fix 3:"XA(m),≤0=>αA→B(Deg)="?A←┘If A>0:Then "YA(m)= "?B:Else "αA→B(Deg)="?R:IfEnd←┘"XB(m)= "?C:"YB(m)= "?D←┘C+Di→U:U→V←┘If A>0:Then Pol(C-A,D-B):Cls←┘J<0=>J+360→J:J→R←┘"DIST A→B(m)=":I◢"αA→B(DMS)=":R▶DMS◢IfEnd←┘If Z≠0:Then "XC(m)= "?E:"YC(m)= "?F←┘E+Fi→V←┘"XD(m),≤0=>αC→D(Deg)="?G←┘If G>0:Then "YD(m)= "?H←┘Pol(G-E,H-F):Cls←┘J<0=>J+360→J:J→S←┘"DIST C→D(m)=":I◢"αC→D(DMS)=":S▶DMS◢Else "αC→D(Deg)="?S:IfEnd←┘Else If R>180:Then R-180→S:Else R+180→S:IfEnd←┘IfEnd←┘∑y→M←┘For 1→I To N←┘If I=1:Then R+List X[I]→L:Else L+List X[I]→L:IfEnd←┘If L>180:Then L-180→L:Else L+180→L:IfEnd←┘Nent←┘3600(L-S)→T←┘"α CLOSE ERROR(S)=":T◢40→W←┘Abs(T)>W=>"α CLOSE ERROR OVRE!"←┘-T÷N÷3600→P:0→O←┘For 1→I To N←┘If I=1:Then R+List X[I]+P→L←┘Else L+List X[I] +P→L:IfEnd←┘If L>180:Then L-180→L:Else L+180→L:IfEnd←┘If I<N:Then List Y[I]<L→Z[I] :Z[I]+O→O:IfEnd←┘Nent←┘3600(L-S)→T←┘"CHECK α CLOSE ERROR(S)=":T◢U+O-V→O←┘Int(M÷Abs(O))→K←┘"DELTA X(m)= ":ReP(O)◢"DELTA Y(m)= ":ImP(O)◢"RELAT CLOSE ERROR=1÷":K◢K<4000=>"RELAT CLOSE ERROR OVER! "←┘For 1→I To N-1←┘Z[I]-OList Y[I]÷M→X←┘If I=1:Then U+X→Y:Else Y+X→Y:IfEnd←┘Norm 1:"POINT n=":I◢Fix 3:"X(m)= ":ReP(Y)◢"Y(m)= ":ImP(Y)◢Nent←┘Y-V→Q←┘"CHECK X (m)= ":ReP(Q)◢"CHECK Y (m)= ":ImP(Q)◢Goto E←┘Lb1 1:"NO DIRECT TRA VE"◢"ANGLE NUM=":N-1◢"SIDE NUM=":N◢"UNKNOWN P NUM=":N-1◢"XA(m)= "?A:"YA(m)= "?B←┘"XB(m)= "?C:"YB(m)= "?D←┘A+Bi→U:C+Di→V←┘0→H:U+List Y[1]<H→Z[1]←┘For 1→I To N-1←┘H+List X[1]→H←┘If H>180:Then H-180→H:Else H+180→L:IfEnd←┘以下未完程序由读者完成。
卡西欧5800正反算程序

1.主程序(1-ZB ZFS)Deg:Fix 6Lbl 9:”I”:”2.YOU JIN”:”MI MA =”?C: Goto 1↙”Lbl 4:"3.ZH =>BG":”1.ZH =>XY”2.XY =>ZH ":”3.ZH =>BG 4.TF =>JS ”:"N="?N↙If N =3;Then Prog “BG JS 20M”: IfEnd↙If N =4: Then Prog “4-TFJS”; IfEnd↙If N ≥5: Then Cls:Stop; IfEnd↙Lbl 9:”ZH=”?S:Prog “1.1-ZFS”:If N=1:Then Goto3:IfEnd↙If N=2:Then Goto2:IfEnd↙Lbl3:”Z=”?Z:”J=”?J:Abs(S-O)→W:Prog”1.2-ZFS”:X+Zcos(F +J)→X:Y+Zsin(F+J) →Y↙If Z=0(带下划线的0为数字0):Then “X=”:X◢"Y=":Y◢F-90→F:“F WJ=”:F▼DMS◢(5800里面的度分秒的)Prog “123”:“BG =>Z”:D◢Goto4: IfEnd↙If Z=1: Then”(Y)X=”: X◢“(Y)Y=”:Y◢F-90→F:“F WJ=”:F▼DMS◢(5800里面的度分秒的)Prog “123”:“BG =>Z”:D◢Goto4: IfEnd↙If Z=-1: Then”(Z)X=”: X◢“(Z)Y=”:Y◢F-90→F:“F WJ=”:F▼DMS◢(5800里面的度分秒的)Prog “123”:“BG =>Z”:D◢Goto4: IfEnd↙If Z>1: Then”(Y)X=”: X◢“(Y)Y=”:Y◢F-90→F:“F WJ=”:F▼DMS◢(5800里面的度分秒的)Prog “123”:“BG =>Z”:D◢Goto4: IfEnd↙If Z<1: Then”(Z)X=”: X◢“(Z)Y=”:Y◢F-90→F:“F WJ=”:F▼DMS◢(5800里面的度分秒的)Prog “123”:“BG =>Z”:D◢Goto4: IfEnd↙Lbl 2:“(Q)X =”?X:“(Q)Y=” ?Y:X →I:Y →J: Prog"1.3-ZFS":O+W→S:“(SQ)ZH=”:S◢“(SQ)Z=”:Z◢Goto 4↙Lbl 1:If C=1989:Then Goto 4:0→C:Else Stop:IfEnd↙(密码符号段把原来的密码调到后面去了 )2. 正算子程序(1.2-ZFS )0.1739274226→A:0.3260725774→B:0.0694318442→K:0.3300094782→L:1-L→F:1-K→M:U+W(Acos(G+QEKW(C+KWD))+Bcos( G+QELW(C+LWD))+Bcos(G+QEFW(C+FWD))+Acos(G+QEMW(C+MWD))→X:V +W(Asin(G+QEKW(C+KWD))+Bsin(G+QELW(C+LWD))+Bsin(G+QEFW(C+FWD))+Asin(G+QEMW(C+MWD)) →Y:G+QEW(C+WD)+90→F3. 反算子程序(1.3-ZFS)G-90→T:Abs((Y-V)cos(T)-(X-U)sin(T)) →W:0→Z:Lbl 0:Prog "1.2-ZFS":T+QEW(C+WD)→L:(J-Y)cos(L)-(I-X)sin(L)→Z:If Abs(Z)< -6:Then Goto1: Else W+Z→W:Goto 0↙Lb1 1:0→Z:Prog"1.2-ZFS":(J-Y)÷sin (F)→Z↙4. 数据库子程序(1.1-ZFS)If S<***:Then Cls:Stop:IfEnd(全线路的起点里程桩号如:If S<1497534.054:Then Cls:Stop:IfEnd小于1497534.054的全部失败)If S〉*****:Then Cls:Stop:IfEnd↙(同上)If S≦***(线元终点里程):Then***→U(线元起点X):***→V(线元起点Y): ***→O(线元起点里程):***→G(线元起点方位角): ***→H(线元起点至终点长度):***→P(线元起点曲率半径,在这里声明下,如果是直线段的话输1.×10+45就是输1. +45):***→R(线元终点曲率半径同上): 0或1、-1→Q:Goto 1 :IfEnd ↙If S≦……………………………………………:Goto 1 :IfEnd ↙………………[注意:输入方法:ZH-HY(ZH点注意P输入1.×10+45就是输1.+45,HY R按照曲线要素半径),HY-YH(P和R都按照曲线要素输入半径),YH-HZ(YH P按照曲线要素半径,R输1.×10+45),HZ-ZH(P和R 都输1.×10+45) Q为转角值看曲线上是左转角-1还是右转角1HZ-ZH Q为0]最后结尾记得一定要输入Lbl 1:1÷P→C:(P-R)÷(2HPR)→D:180÷π→E:Return↙5.BG JS 20M (子程序)Deg; Fix3↙Lbl1:”ZH=”?:Prog“BG SJK”:”Z=”?Z↙If Z=0:Then A→D:”(0)BG =>Z”:D◢Goto1: IfEnd↙If Z=1:Then A→D:”(Y)BG =>Z”:D◢Goto1: IfEnd↙If Z=-1:Then A→D:”(Z)BG =>Z”:D◢Goto1: IfEnd↙If Z>1:Then A+(Z-1)(C/100)→D:”(Y)BG =>Z”:D◢Goto1: IfEnd↙If Z<-1:Then A+(-Z-1)(-B/100)→D:”(Z)BG =>Z”:D◢Goto1: IfEnd↙6.BG SJK(标高数据库)If S =K: Then H→A:i(Z)→B: i(Y)→C: IfEnd↙注:K 为桩号里程,H为中桩高程,i(Z)为左横坡,i(Y)为右横坡。
卡西欧5800基本测量程序(完整版)

卡西欧5800基本测量程序(完整版)卡西欧5800 程序(完整版)说明:本程序适用于公路、桥梁、隧道测量。
本程序简单、方便、快捷、拓展功能宽,使用时只需按曲线要素表输入一次就可以计算整条线路(包括高程、超高段横坡),能正、反算,在已知坐标下可以反算出该点桩号及相对宽度,拓展功能有,放边、仰坡、隧道断面测量、开挖轮廓线等。
主程序:MAIN"ZH(θ) F(1)"?M↓ (0为正算、1为反算)If M=θ:Then "ZHUANG HAO"?A:"KUAN DU"?W:Else"X="?H:"Y="?W:"Z="?Q:IfEnd↓(第一个交点参数)(交点桩号)…→P:(切线长度)…→T:(曲线总长)…→S:(圆半径)…→R=:(缓和曲线长)…→L:(第一方位角)…→U:(第二方位角)…→V:(交点X坐标)…→N:(交点Y坐标)…→E:(第一直线长、无为0)…→D:(第一坡度)…→Z〔8〕:(第二坡度)…→ Z〔9〕: (缓和曲线超高段长度)…→Z〔10〕:(曲线偏向,右偏为+1,左偏为-1)…→K ↓If M=θ:Then If A<P-T:Then goto 1 :IfEnd:IfEnd↓Prog"ZFXZ"↓If K=θ:Then goto 2 :IfEnd↓………… (中间交点参数)Prog"ZFXZ"↓If K=θ:Then goto 2 :IfEnd↓………… (最后一个交点参数)If M=θ:Then If A>P-T+S+D:Then Goto 1 :IfEnd:IfEnd↓Prog"ZFXZ"↓If K=θ:Then goto 2 :IfEnd↓Lb1 1:"NO TASK"↓Lb1 2:If M=1:Then If A=1:Then "ZHUANG HAO":Z◢"SJ KUAN DU":B◢IfEnd:IfEnd↓"-------END-------"KUAN DU (拓展功能程序,用于反算)1→M:Prog"MAIN"↓Z→A:W→E:θ→W↓Prog"GAO CHENG"↓E→W↓Q-F→P↓If P≤……(从小至大):Then ……→D:Goto 1:IfEnd↓……(同上)Lb1 1↓"……":D◢(同上) ◢"----------END---------"YUANK(B÷(2R))→F↓2R Sin(K F r)→C ↓J+F r→J ↓Prog"XZBH"HHQXB-B^5÷(9θ(RL)2)→C ↓KB2÷(6RL)→F ↓J+ F r→J↓Prog"XZBH"PYJSIf O=θ:Then"YUAN":J+F r→J:IfEnd↓If O=1:Then"HHQX":J+2F r→J:IfEnd↓If O=2:Then"LINE":J+18θ→J:IfEnd↓W→C↓If A>P-T+S-L:Then J-9θ→J:Else J+9θ→J:IfEnd↓Prog"XZBH"↓"X=":X◢"Y=":Y◢QXCS(有改)Prog"QDZB"↓If A≤P-T+L:Then A-P+T→B:U→J:1→O: Prog"HHQX": Goto 1 :IfEnd↓If A≤P-T+S-L:Then A-P+T-L→B:θ→0:L-L^3÷(90R2)→C:KL÷(6R)→F:U+F r→J: Prog"XZBH":U+3F r→J: Prog"YUAN": Goto1:IfEnd↓If A≤P-T+S:Then P-T+S-A→B:1→O:-K→K:V+180→J: Prog"HHQX": Goto 1 :IfEnd↓If A≤P-T+S+D:Then 2→O:A-P+T-S→C: Prog"XZBH":IfEnd↓Lb1 1:↓Prog"PYJS"↓Prog"GA0 CHENG"QDZBN→X:E→Y:T→C↓If A>P-T+S-L:Then V→J: Else U+18θ→J:IfEnd↓Prog"XZBH"↓X→Z〔5〕:Y→Z〔6〕JDTZIf Z〔1〕< θ:Then Z〔1〕+ 36θ→Z[1]:IfEnd↓If Z〔1〕≥ 36θ:Then Z〔1〕- 36θ→Z[1]:IfEnd↓If Z〔2〕< θ:Then Z〔2〕+ 36θ→Z[2]:IfEnd↓If Z〔2〕≥ 36θ:Then Z〔2〕- 36θ→Z[2]:IfEnd↓FWJθ→I:θ→J↓Pol(H-G,W-Z) ↓J<θ⇒J+36θ→J↓J→FDOTLINEPol(H-X,W-Y):I→N↓Pol(G-H,Z-W):I→E ↓Pol(X-G,Y-Z):I→D↓(N+E+D)÷2→I↓√(I(I-N)(I-E)(I-D))→I ↓2I÷D→I ↓ZSPDIf A≤P-T+S+D:Then Prog"QXCS":θ→K:IfEnd ↓FSPDIf K=-1:Then If Z〔1〕< Z〔2〕:Then If F≤Z〔1〕:Then Goto 1 :IfEnd:If F≥Z〔2〕:Then Goto 1 :IfEnd:Else If F≤Z〔1〕:Then F≥Z〔2〕:Then Goto 1 :IfEnd:IfEnd:IfEnd:IfEnd↓If K=1:Then If Z〔1〕> Z〔2〕:Then If F≥Z〔1〕:Then Goto 1 :IfEnd :If F≤Z〔2〕:Then Goto 1 :IfEnd:Else If F≥Z〔1〕:Then If F≤Z[2]:Then Goto 1 :IfEnd:IfEnd:IfEnd:IfEnd↓θ→A: Goto 2↓Lb1 1↓If O=θ:Then Prog"FSYUAN":IfEnd↓If O=1:Then Prog"FSHHQX":IfEnd↓1→A↓Lb1 2FSTJU-90K→Z[1]↓V-90K→Z[2]↓Prog"JDTZ"↓P-T→A↓-1→O↓Prog"JDZB"↓Prog"FSPD"↓If A=θ:Then Goto 1 :IfEnd↓(有改)Z[1]→Z[1]: Z[1]+K(L÷(2R))r→Z[2]:1→O↓Prog"JDTZ"↓Prog"JDZB"↓Prog"FSPD"↓If A=1:Then θ→K: Goto 2 :IfEnd↓Z[5]→X:Z[6]→Y:(KL)÷(6R)→F:L-L^3÷(90R2)→C:U+F r→J↓Prog"XZBH"↓U+3F r+90K→J:R→C↓Prog"XZBH"↓X→G:Y→Z↓Prog"FWJ"↓Z[2]→Z[1]:Z[1]+K((S-2L)÷R)r→Z[2]:θ→0↓Prog"JDTZ"↓Prog"FSPD"↓If A=1:Then θ→K:Goto 2:IfEnd↓-K→K:V+9θK→Z[1]:Z[1]+K(L÷(2R))r→Z[2]:1→O↓Prog"JDTZ"↓P-T+S→A↓Prog"JDZB"↓Prog"FSPD"↓If A=1:Then θ→K:Goto 2:IfEnd↓Lb1 1↓If D>θ:Then P-T+S→A:Prog"FSLINE":If A=1:Then θ→K:IfEnd:IfEnd↓Lb1 2FSYUAN"YUAN"↓36θ+K(F-Z[1])→F ↓F≥36θ⇒F-36θ→F⊿↓P-T+L+πRF÷18θ→Z:If K=1:Then R-I→B: Else I-R→B:IfEnd↓FSHHQX"HHQX"↓Z[5]→X:Z[6]→Y ↓Z[1]+18θ→J:R→C↓Prog"XZBH"↓X→G:Y→Z↓Z[5]→X:Z[6]→Y ↓Prog"DOTLINE"↓If I<1:Then θ→B:Goto 3: Else I→B: Prog"FSHHQX1":I→Z[7]:B+I÷10→B: Prog"FSHHQX1":If I>Z[7] :Then Goto 1: Else:Goto 2:IfEnd:IfEnd↓Lb1 1↓B-I÷2→B: Prog"FSHHQX1"↓If I<1:Then -I→I:Goto 3: Else Goto 1:IfEnd↓Lb1 2↓B+I÷2→B: Prog"FSHHQX1"↓If I<1:Then Goto 3: Else Goto 2:IfEnd↓(有改)Lb1 3↓If A>P-T+L:Then P-T+S-B-I→Z: Else P-T+B+I→Z:IfEnd↓If K=1:Then If A<P-T+S-L:Then D-E→B: Else E-D→B:IfEnd:IfEnd ↓If K=-1:Then If A<P-T+S-L:Then E-D→B: Else D-E→B:IfEnd:IfEndFSHHQX1Z[5]→X:Z[6]→Y:Z[1]+9θK→J↓Prog"HHQX"↓X→Z[3]:Y→Z[4]↓R→C:J+2F r+9θK→J↓Prog"XZBH"↓X→G:Y→Z↓Z[3]→X:Z[4]→Y ↓Prog"DOTLINE"Prog"QDZB"↓Z[5]→Z[3]:Z[6]→Z[4] ↓If O=-1:Then P-T+S→A: Prog"QDZB":Z[3]→Z[5]:Z[4]→Z[6]: Else Z[1]+9θK+K(L÷(6R))r→J:L-L^3÷(9θR2)→C: Prog"XZBH":IfEnd ↓(Z[6]-Y+Xtan(Z[2])-Z[5]tan(Z[1]))÷(tan(Z[2])-tan(Z[1]))→G ↓tanZ[2](G-X)+Y→Z↓Prog"FWJ"ZFXZIf M=θ:Then Prog"ZSPD": Else Prog"FSTJ":IfEndFSLINEProg"QDZB"↓X→G:Y→Z:J→N↓Prog"FWJ"↓N→J:F-J→F↓Icos(F)→G↓If 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 θ→A:IfEndX+Ccos(J)→X↓Y+Csin(J)→YHENG POIf A≤P-T+L-Z[10] :Then Z[8]→V:Goto 1:IfEnd↓If A≤P-T+L:Then (Z[9]-Z[8])÷Z[10]→E:Z[8]+(A-P+T-L+Z[10])E→V: Goto 1:IfEnd↓If A≤P-T+S-L:Then Z[9]→V:Goto 1:IfEnd↓If A≤P-T+S-L+Z[10]:Then (Z[8]-Z[9])÷Z[10]→E:Z[9]+(A-P+T-S+L)E→V: Goto 1:IfEnd↓Z[8]→V ↓Lb1 1GAO CHENG……(交点桩号)→O:……(交点高程)→D:……(小桩号坡度)→N:……(切线长度)→G:……(圆曲线半径)→R ↓If A≤O-G:Then θ→K: Goto 1:IfEnd↓If A≤O+G:Then 1→K: Goto 1:IfEnd↓(K=0为直线、K=1为凸圆、K=-1为凹圆)……(同上)Lb1 1:Prog"HENG PO"↓K(A-O+G)2÷(2R)→P ↓D+N(A-O)-P+WV→F↓"DM":F◢FWJJS (测回法测坐标)A"XA": B"YA":C"XB": D"YB": K"CHANG DU": G"JIAO DU"↓I=0:J=0:Pol(C-A,D-B):J<0⇒J=J+360⊿↓E=J+G↓J"FWJ"◢X"X"=A+KcosE◢Y"Y"=B+KsinE◢"-------END-------"说明:"JIAO DU"顺时钟为正、逆时针为负,"XA"、"YA"为测站点坐标、"XB"、"YB"为后视点坐标,"X"、"Y"为前视即待测点坐标,"CHANG DU"为测站点到待测点距离。
卡西欧5800测量计算方法(正反算)

5800全线路坐标正反算主程序ZBJSLbl 6:"1.SZ→XY":"2.XY→SZ":?S:?N:Prog“SUB0”1÷P→C:(P-R)÷(2HPR) →D:180÷π→E:N=1 =>Goto 1: Goto 2Lbl 1:?Z: Abs(S-O)→W: Prog"SUB1":"XS=":X◢"YS=":Y◢Goto 6Lbl 2?X:?Y:X→I:Y→J:Prog"SUB2":O+W→S:Cls:"S=":S◢"Z=":Z◢Goto 6正算子程序SUB10.1739274226→A:0.3260725774→B:0.0694318442→K:0.3300094782→L:1-L→F:1-K→M:U+W(Acos(G+QEKW(C+KWD))+Bcos(G+QELW(C+LWD))+Bcos(G+QEFW(C+FWD))+Acos(G+QEMW(C+MWD)))→X:V+W(Asin(G+QEKW(C+KWD))+Bsin(G+QELW(C+LWD))+Bsin(G+QEFW(C+F WD))+Asin(G+QEMW(C+MWD))) →Y:G+QEW(C+WD)+90→F:X+Zcos(F)→X:Y+Zsin(F)→Y反算子程序SUB2G-90→T(Y-V)cosT-(X-U)sin(T) →WAbs(W)→W:0→ZLbl6:Prog "SUB1"T+QEW(C+WD) →L:(J-Y)cos(L)-(I-X)sin(L)→ZIF Abs(Z)<0.001:Then0→Z:Prog "SUB1":(J-Y)÷sin(F)→Z:Else W+Z→W:Goto6:IfEnd数据库子程序SUB0Goto 1(线元可输入多条,分离式可在前多加一位,匝道一样。
卡西欧FX5800P编程计算器应用及程序

程序示例
U“Z=0 Y≠0”=0
K0+=0 H0=3014.6 ≥=1/74.09 D=2.9 E=2.46 R=1.671
【1】 直线段
实测坐标(m)
圆拱段超欠(m) 直墙超欠(m) 底板超欠(m) 至拱肩高差(m)
111.139 93.763 64.030 94.543 116.748
18°52ˊ49.81" 91°24ˊ13.56" 88°26ˊ53.49" 49°40ˊ03.20" 60°41ˊ09.73"
移 动 值(m)
DV=、0.254 D∧=、0.700 DV=、0.049 DV=、0.140 DV=、0.168
据目录(个数)是利用“ ”,按 FUNCTION->7->2->1->EXE 就可以看到个数了。
在程序中调用统计储存器中的数据时,是利用 List 调用的。具体格式如下: List X[A]+Y[A]i->C
式中 A 是点号,C 是任意储存单元。具体示例详见“程序部分”->“极程序放样” (2)、利用统计计算(SD/REG)
2、以 形式计算。以坐标换算为例:
坐标重合点 A 旧坐标 98042.831->SHIFT->RCL->A 11430.122->SHIFT->RCL->B A+Bi->E 新坐标值均为零,就不必另行输值,新旧坐标方位角差值 69°56"23"->W。 要求计算施工坐标 X=27,Y=29.1 的 B 点的测量坐标。 计算赋值:27->U,29.1->V。U+Vi->F
<=、0.663 =>、0.023 <=、0.218 <=、0.561 =>、0.298
FX5800计算器公路测量常用程序2.1版及详细说明
FX5800计算器公路测量常用程序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]: "KM"?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:Abs(D) →R: "LR"?R: "Z0"?Z: D→Z[6]:R→Z[7]:Z→Z[8]:LbIJ:0→Y: "L0:SZ+,DZ-"?Y:Y=-1=>Goto 0:Y=-2=>Goto I:Prog"ZP":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]: "KM"?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 Goto 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隧道超欠挖程序,带有垂直方向,水平方向,圆心方向超欠计算1-CQW4→DimZLb1 1Z[4] →S:“K(L)=”? S:Z[1] →A:“X=”? A:A→Z[1]:Z[2] →B :“Y=”?B:B→Z[2]:Lb1 2:Cls“1→RD,2→,CD,3→ZD,4→YD”? ZZ=1=> Prog “SJ—PMRD”:Z=2=> Prog “SJ—PMCD”:Z=3=> Prog “SJ—PMZD”:Z=4=> Prog “SJ—PMYD”Prog "SUB2-FS"If Abs(N)>0.001:Then N+S→S:Goto2:IfEndN+S→S : S→Z[4]:“K=":Locate4,4, S :“P=":Locate4,4, W:S→ K: Z→Z[3]Z[3]=1=> Prog “SJ—GCRD”:Z[3]=2=> Prog “SJ—GCCD”:Z[3]=3=> Prog “SJ—GCZD”:Z[3]=4=> Prog “SJ—GCYD”:H→A: “H(CG) =”? A: H- A →H:“H=”:Locate4,4, H◢Cls“1→KW,2→CZ,3→EC”? ZZ=1=> Prog “SJ-CQW-KW”Z=2=> Prog “SJ-CQW-CZ”Z=3=> Prog “SJ-CQW-EC”Prog "1-CQW"Return(超欠挖-输入实测点X=、输入实测点Y=、显示实测点里程K=、显示实测点偏距P=、输入层高H(CG)=、显示实测点的设计高程H=、输入实测高程H(SC)=、显示超欠挖值及第几圆心上CQ→Y?=)SUB1-ZS(正算子程序)-1÷P→ C:(P-R)÷(2HPR) → D:180÷π→ E:0.1739274226→ A:0.3260725774→ B:0.0694318442→ K:0.3300094782→ L:1-L→ F:1-K→M:Abs(S-O) →WU+W(Acos(G+QEKW(C+KWD))+Bcos(G+QELW(C+LWD))+Bcos(G+QEMW(C+MW D))+Acos(G+QEFW(C+F WD)))→ XV+W(Asin(G+QEKW(C+KWD))+Bsin(G+QELW(C+LWD))+Bsin(G+QEMW(C+MW D))+Asin(G+QEFW(C+F WD)))→ YG+QEW(C+WD)→ FReturnSUB2-FS(反算子程序)-Prog "SUB1-ZS"Pol((Z[1]-X),(Z[2]-Y))I cos(J-F) →NI sin (I-F) →WReturnSUB3-GC(高程子程序)C-D→QAbs (RQ÷2)→TR(Abs (Q)÷Q)→R:If S≤B-T:Then 0→K:Else If S≥B+T:Then 0→K:D→C:Else S-B+T→K:IfEnd:IfEndA-(B-S)C-K2÷(2R)→HReturnSJ--PMRD(子程序名-平面线形数据库)SJ--PMCDSJ--PMZDSJ--PMYD(JD1前直线段要素输入)If S ≥0(线元起点里程):Then 24163.6449→U(线元起点X坐标):21069.7772→V (线元起点Y坐标):0→O(线元起点里程):2°00′58.5″→G(线元起点方位角):70.2756 →H(线元长度):10^(45)→P(线元起点曲率半径):10^(45)→R(线元终点曲率半径):0 →Q(线元左右偏标志:左-1右1直0):IfEnd(JD1第一缓和曲线要素输入)If S ≥70.2756(线元起点里程):Then 24233.8770→U(线元起点X坐标):21072.2497→V(线元起点Y坐标):70.2756→O(线元起点里程):2°00′58.5″→G (线元起点方位角):60 →H(线元长度):10^(45)→P(线元起点曲率半径):500→R (线元终点曲率半径):-1→Q(线元左右偏标志:左-1右1直0):IfEnd(JD1圆曲线要素输入)If S ≥130.2756(线元起点里程):Then 24293.8605→U(线元起点X坐标):21073.1610→V(线元起点Y坐标):130.2756→O(线元起点里程):358°34′42.6″→G (线元起点方位角):41.525 →H(线元长度):500→P(线元起点曲率半径):500→R (线元终点曲率半径):-1 →Q(线元左右偏标志:左-1右1直0):IfEnd(JD1第二缓和曲线要素输入)If S ≥171.8005 (线元起点里程):Then 24335.2821→U(线元起点X坐标):21070.4093→V(线元起点Y坐标):171.8005→O(线元起点里程):353°49′12.4″→G (线元起点方位角):60 →H(线元长度):500→P(线元起点曲率半径):10^(45)→R (线元终点曲率半径):-1 →Q(线元左右偏标志:左-1右1直0):IfEnd(两交点夹直线要素)If S ≥231.8005 (线元起点里程):Then 24394.6180→U(线元起点X坐标):21061.5714→V(线元起点Y坐标):231.8005→O(线元起点里程):350°22′56.5″→G (线元起点方位角):334.132 →H(线元长度):500→P(线元起点曲率半径):10^(45)→R(线元终点曲率半径):0 →Q(线元左右偏标志:左-1右1直0):IfEnd(JD2第一缓和曲线要素输入)If S ≥565.9321 (线元起点里程):Then 24724.0533→U(线元起点X坐标):21005.7473→V(线元起点Y坐标):565.9321→O(线元起点里程):350°22′56.5″→G(线元起点方位角):45→H(线元长度):10^(45)→P(线元起点曲率半径):1000→R (线元终点曲率半径):1 →Q(线元左右偏标志:左-1右1直0):IfEnd(JD2圆曲线要素输入)If S ≥610.9321 (线元起点里程):Then 24768.4749→U(线元起点X坐标):20998.5621→V(线元起点Y坐标):610.9321→O(线元起点里程):351°40′17.5″→G (线元起点方位角):61.505 →H(线元长度):1000→P(线元起点曲率半径):1000→R (线元终点曲率半径):1 →Q(线元左右偏标志:左-1右1直0):IfEnd(JD2第二缓和曲线要素输入)If S ≥672.4372 (线元起点里程):Then 24829.5668→U(线元起点X坐标):20991.5298→V(线元起点Y坐标):672.4372→O(线元起点里程):355°11′43.8″→G (线元起点方位角):45 →H(线元长度):1000→P(线元起点曲率半径):10^(45)→R (线元终点曲率半径):1 →Q(线元左右偏标志:左-1右1直0):IfEnd(两交点夹直线要素输入)If S ≥717.4372 (线元起点里程):Then 24874.4592→U(线元起点X坐标):20988.4338→V(线元起点Y坐标):717.4372→O(线元起点里程):356°29′04.8″→G (线元起点方位角):62.767 →H(线元长度):10^(45)→P(线元起点曲率半径):10^(45)→R(线元终点曲率半径):0 →Q(线元左右偏标志:左-1右1直0):IfEnd(JD3第一缓和曲线要素输入)If S ≥780.2044 (线元起点里程):Then 24937.1083→U(线元起点X坐标):20984.5852→V(线元起点Y坐标):780.2044→O(线元起点里程):356°29′04.8″→G (线元起点方位角):60 →H(线元长度):10^(45)→P(线元起点曲率半径):200→R (线元终点曲率半径):1 →Q(线元左右偏标志:左-1右1直0):IfEnd(JD3圆曲线要素输入)If S ≥840.2044 (线元起点里程):Then 24997.0444→U(线元起点X坐标):20983.9041→V(线元起点Y坐标):840.2044→O(线元起点里程):5°04′44.5″→G (线元起点方位角):258.124→H(线元长度):200→P(线元起点曲率半径):200→R (线元终点曲率半径):1 →Q(线元左右偏标志:左-1右1直0):IfEnd(JD3第二缓和曲线要素输入)If S ≥1098.3286(线元起点里程):Then 25175.6814→U(线元起点X坐标):21145.0467→V(线元起点Y坐标):1098.3286→O(线元起点里程):79°01′34.2″→G (线元起点方位角):60 →H(线元长度):200→P(线元起点曲率半径):10^(45)→R (线元终点曲率半径):1 →Q(线元左右偏标志:左-1右1直0):IfEnd(JD3后直线要素输入)If S ≥1158.3286(线元起点里程):Then 25181.1594→U(线元起点X坐标):21204.7358→V(线元起点Y坐标):1158.3286→O(线元起点里程):87°37′13.9″→G (线元起点方位角):0 →H(线元长度):10^(45)→P(线元起点曲率半径):10^(45)→R (线元终点曲率半径):0 →Q(线元左右偏标志:左-1右1直0):IfEnd(注:有多个平面线形,依照上面的依次变更, 每多一个,就增加一个。
CASIO5800坐标正反算计算程序
CASIO 9860/5800 坐标正反算计算程序1. 坐标正算主程序(命名为ZBZS)第1 行:Lbl 0: ” K= K: ” BIAN=” Z: ” a =” B第2 行:Prog “ A”第3 行:” X仝:N+Zcos(F+B)丄第4 行:” 丫仝:E+Zsin(F+B)丄第5行:” F=” :F丄第6 行:Goto 0K――计算点的里程BIAN --- 计算点到中桩的距离(左负右正)a ---- 取前右夹角为正2. 坐标反算桩号和偏距主程序(命名为ZBFS)第1 行:” X1=” C: ” 丫1=” D: ” K1=” K第2 行:Lbl 0:Prog“A”第3 行:Pol(C-N,D-E)第4 行:List Ans[1]T I第5 行:List Ans[2]T J第6 行:Icos(F-J) T S:K+S T K第7 行:Abs(S)>=>Goto 0第8行:” K仁”:K丄第9 行:” BIAN=” :lsin(J-F)Z JX1——取样点的X坐标Y1——取样点的Y坐标K1――输入时为计算起始点(在线路内即可),输出时为反算点的桩号Z――偏距(左负右正)3. 计算坐标子程序(命名为XYF)为了简洁,本程序由数据库直接调用,上述中的正反算主程序不直接调用此程序第1 行:K-A T S:(Q-P)- L T I第2N+/ (cos(F+X(2P+XI) X 90-n ),0,S) T N行:第3E+/ (sin(F+X(2P+XI) X 90-n ),0,S) T E行:第4F+S(2P+SI) X 90-nT F行:4. 数据库(命名为A)第1 行:K< =>Stop第2 行A: T N: T E:92 ° 26' 40 F:0 f P:1/240 f Q: f L:KC A+L =>GoTo 1 (第一缓和曲线,圆半径为240)第3 T A: T N:T E: 100 °50'"T F: 1/240 T P:1/240 T Q:T L: K C A+L =>Goto 1 (第圆曲线,半径为240)第4 T A: T N:T E: 118 °15'"T F: 1/240 T P: 0 T Q:f L: K C A+L =>Goto 1 (第二缓和曲线,圆半径为240)第5 T A: T N:T E:124 °50'"T F:0 T P:-1/180 T Q:T L:K C A+L=>Goto 1:Stop (第一缓和曲线,圆半径为180)第6 行:Lbl 1:Prog “ XYF”A――曲线段起点的里程N 曲线段起点的x坐标E 曲线段起点的y坐标F ---- 曲线段起点的坐标方位角P――曲线段起点的曲率(左负右正)Q曲线段终点的曲率(左负右正)L――曲线段长度(尽量使用长度,为计算断链方便)说明:(1 )在9860中,程序中所有公式和部分函数结果均存储在List Ans列表数组中,要想多次调用最好随公式取出结果,并赋给变量。
卡西欧5800计算器程序坐标正反算(含高程)
卡西欧5800计算器程序坐标正反算(含高程)功能:坐标正反算(含高程),把要素内置化(无需改程序文件,即可更换路线,同时存两条线要素)另含两个边仰(一个横向坡,一个纵向坡)坡放样模块.帮助文件未完成程序浏览:FileName:RESET 初始化程序Norm 1:50→C:12345→J"RESET PW"I:I=J=>500→DimZ 为数据库增加额外变量500个,在SET、SETPFDYS程序根据实际再增减变量50→Z[C+22]"PASSWORDS"I:I→Z[C+39] 重设要素保护密码Cls:StopFileName:DATLOCK 要素保护密码确定认程序Cls:Norm 1:50→C"PASSWORDS"I:Cls:I≠Z[C+39]=>StopFileName:SHELL(外壳程序)50→C ;在扩充变量预留前50个给别的程序用。
如不够就适量加大。
RESET,SHELL,SET,SETPFDYS,这几个程序中C值必需一致Z[C+35]→I:"STATION-N"I:I→Z[C+35] 设置测站N坐标Z[C+36]→I:"STATION-E"I:I→Z[C+36] 设置测站E坐标Z[C+44]→I:"STATION-Z"I:I→Z[C+44] 设置测站Z坐标Z[C+45]→I:"STATION-HI"I:I→Z[C+45] 设置仪高Z[C+41]→I:"GC-DH"I:I→Z[C+41] 放样点高差常数Norm 1Z[C+23]→N 当前分段要素N坐标Z[C+24]→E 当前分段要素E坐标Z[C+25]→M 当前分段要素起点桩号Z[C+26]→H 当前分段要素起点方位角(正北)单位:弧度Z[C+27]→A 当前分段要素起点曲率有左偏负右偏正(注意不半径)Z[C+28]→R 当前分段要素终点曲率有左偏负右偏正(注意不半径)Z[C+29]→L 当前分段要素长度Z[C+3]→WZ[C+32]→I:"DAT1 2 3"I:I→Z[C+32] 平曲线要素数库类型选择1为内置式,2文件式,3实时输入(查看当前要素值)0→IZ[C+4]→I:"1 2 3"I:I→Z[C+4] 选择本程序模式默认为坐标正算,1坐标反算,2横向边仰坡放样,3,纵向边仰坡放样(隧道进出口用到) Lbi 1Z[C+4]→II=1=>Prog"TURNZH"I=2=>Prog"HXBYP"I=3=>Prog"ZXBYP"Lbi ADeg:Norm 1:ClsZ[C+1]→G:"ZH"G:G→Z[C+1] ;G桩求桩号Z[C+2]→B:"JL"B:B→Z[C+2] ;B横向距离,左正右负Lbi BProg "ZBJS" ;坐标正算Prog "GCJS" ;高程计算Fix 3:Cls ;设置三位小数"ZH=":Locate 4,1,G ;第一行显示桩号"X=":Locate 3,2,X ;第二行显示X(N)坐标"Y=":Locate 3,3,Y ;第三行显示Y(E)坐标Prog "GCJS" ;高程计算"Z":Locate 2,4,Z+Z[C+41] ;第四行显示Z坐标Locate 10,4,Z[C+2] ;第四行显示横向距离Do:I+1→I:I=1000=>Goto 1:LpWhile Not(Getkey=57 Or Getkey=27) ;锁定键盘,并在几十秒后自动返回Getkey=57=> Goto 1Z+Z[C+41]+Z[C+49]-Z[C+44]-Z[C+45]→Z[C+48]Pol(Z[C+35]-X,Z[C+36]-Y)Cls:"DL":Locate 3,1,I:Locate 12,1,Z[C+45]"DH":Locate 3,2,Z[C+48]:Locate 12,2,Z[C+49]"FWJ"J<0=J+360→J:J◤DMS◢J→Z[C+46]I→Z[C+47]Goto 1FileName:ZBJS 坐标计算程序Prog"READDAT"RadG-M→QIF AR=0 :Then If A=R :Then 1→J:Else 3→J :IfEnd:Else If A=R :Then 2→J:Else 3→J:IfEnd:IfEndIf J=1 :Then H→F:N+QCos(H)→X:E+QSin(H)→Y:IfEnd 直线段直接计算If J=2 :Then H+QR→F:Rec(Abs(2Sin(Abs)÷R),H+QR÷2):N+I→X:E+J→Y:IfEnd 圆弧段直接计算If J=3 :Then Goto 5 :IfEndX+BCos(F+W)→XY+BSin(F+W)→YDeg:ReturnLbi 5 用五点通用坐标计算计算缓和段(R-A)÷L→KKQ2→J→P:H+IP+JP2→U→P:H+IP+JP2→V→P :H+IP+JP2→D→P:H+IP+JP2→F→P:H+IP+JP2→T→I→J→ON+Q(ICos(U)+JCos(V)+OCos(D)+JCos(F)+ICos(T))→XE+Q(ISin(U)+JSin(V)+OSin(D)+JSin(F)+ISi n(T))→YH+AQ+KQ2→FX+BCos(F+W)→XY+BSin(F+W)→YDeg:ReturnFileName:TURNZH(坐标反算)Norm 1Z[C+37]→I:"DQD-N"I:I→Z[C+37] 输入待求点N坐标I=-1=>Prog"INFWJDLDH"Z[C+38]→I:"DQD-E"I:I→Z[C+38] 输入待求点E坐标0→B:M+L÷2→G:Prog"ZBJS"Lbi S:RadZ[C+37]-X→I:Z[C+38]-Y→JIf I=0 And J=0 :Then Goto A:IfEndPol(I,J)Lbi A:Rec(I,J-F):J→Z[C+2]G+I→G:IF Abs(I)> :Then Prog"ZBJS":Goto S↙G→Z[C+1]FileName:INFWJDLDH 实测坐标(用方位角,距离,高差)输入程序Deg:Norm 1:ClsZ[C+46]→J:"DQD-FWJ"J:J→Z[C+46]Z[C+47]→I:"DQD-DL"I:I→Z[C+47]Z[C+48]→K:"DQD-DZ"K:K→Z[C+48]Z[C+49]→P:"RHT"P:P→Z[C+49]Rec(I,J)Z[C+35]+I→Z[C+37]Z[C+36]+J→Z[C+38]Z[C+44]+Z[C+45]+K-P→Z[C+43]FileName:HXBYP 横向边仰坡放样程序Cls:Norm 1Z[C+40]→I:"QPD-DL"I:I→Z[C+40] 输入起坡点与中桩距离常数Z[C+41]→I:"QPD-DZ"I:I→Z[C+41] 输入起坡点与中桩高差常数Z[C+42]→I:"i"I:I→Z[C+42] 输入边仰坡坡度,左仰坡(路堑)为正,右仰坡(路堑)为负,左边坡为负,右边坡为正Cls:Z[C+43]→I:"DQD-Z"I:I→Z[C+43] 输入实测高程Prog"TURNZH"Prog "GCJS"(Z[C+43]-Z-Z[C+41])Z[C+42]+Z[C+40]→BFix 3:B-Z[C+2]◢显示与上一次测点的偏差B→Z[C+2]FileName:ZXBYP 纵向仰坡放样程序(隧道进口使用)Cls:Norm 1:Z[C+33]→I:"QPD-ZH"I:I→Z[C+33] 输入起坡点桩号Z[C+34]→I:"QPD-Z"I:I→Z[C+34] 输入起坡点高程Z[C+42]→I:"i"I:I→Z[C+42] 仰坡时(隧道进出口仰坡),进口为正,出口为负)Cls:Z[C+43]→I:"DQD-Z"I:I→Z[C+43] 输入实测高程Prog"TURNZH"Z[C+42](Z[C+43]-Z[C+34])+Z[C+33]→GFix 3:G-Z[C+1]◢显示与上一次测点的偏差G→Z[C+1]FileName:SET 设置程序Lbi SNorm 150→C50→Z[C+22]0→KZ[C+5]→I:"1 Or 2"I:I→Z[C+5] ;选择1线或者2线180Z[C+3]÷π→J:"XZJJ"J:Jπ÷180→Z[C+3] ;斜桩夹角If I=1:Then Z[C+8]→Z[C+6]:Z[C+9]→Z[C+7]Z[C+12]→Z[C+16]:Z[C+13]→Z[C+17]:Z[C+18]→Z[C+20]Else Z[C+10]→Z[C+6]:Z[C+11]→Z[C+7]Z[C+14]→Z[C+16]:Z[C+15]→Z[C+17]::Z[C+19]→Z[C+20]Z[C+7]+3→Z[C+31]0→I:"1PQX,2SQX,3YSDS"I ;1输入平曲线要素,2输入竖曲线要素,3输入1、2线夹平竖曲线交点(变坡点)数量以让程序规划内存建立要素数据为,其它值退出本程序I=1 => Goto 1:I=2 => Goto 2:I=3 => Goto 3I≠0=>Prog"DATLOCK"Prog"SETPFDYS"StopLbi 1 ;平曲线要素输入部分Z[C+6]→D-1→Z[D+3]For 1→J T o Z[C+16]Cls:"PQX":Locate 9,1,JZ[D+1]→I:"N"I:I→Z[D+1] ;请输入N坐标Z[D+2]→I:"E"I:I→Z[D+2] ;请输入E坐标Z[D+3]→I:"R"I:I→Z[D+3] ;请输入半径RZ[D+4]→I:"LS1"I:I→Z[D+4] ;请输入缓和曲线1长度Z[D+5]→I:"LS2"I:I→Z[D+5] ;请输入缓和曲线2长度Next1→Z[D-2]Goto SLbi 2 ;竖曲线要素输入部分Z[C+7]→D-1→Z[D+3]For 1→J T o Z[C+17]Cls:"SQX":Locate 9,1,JZ[D+1]→I:"BPDZH"I:I→Z[C+1] ;请输入变坡点桩号Z[D+2]→I:"BPDGC"I:I→Z[C+2] ;请输入变坡点高程Z[D+3]→I:"R"I:I→Z[C+3] ;请输入半径RD+3→DNext1→Z[D]Goto SLbi 3 ;要素点数输入部分Z[C+12]→I:"1PQXDS"I:I→Z[C+12] ;输入1线平曲线点数,最小值为3Z[C+13]→I:"1SQXDS"I:I→Z[C+13] ;输入1线竖曲线点数,最小值为3Z[C+18]→I:"1JDZH"I:I→Z[C+18] ;输入1线平曲线第一个交点的交点桩号Z[C+14]→I:"2PQXDS"I:I→Z[C+14] ;输入2线平曲线点数,最小值为3Z[C+15]→I:"2SQXDS"I:I→Z[C+15] ;输入2线竖曲线点数,最小值为3Z[C+19]→I:"2JDZH"I:I→Z[C+19] ;输入2线平曲线第一个交点的交点桩号C+Z[C+22]→Z[C+8] 1线路平曲线要素指针偏移基数Z[C+8]+5Z[C+12]→Z[C+9] 1线路竖曲线要素指针偏移基数Z[C+9]+3Z[C+13]→Z[C+10] 2线路平曲线要素指针偏移基数Z[C+10]+5Z[C+14]→Z[C+11] 2线路竖曲线要素指针偏移基数Z[C+11]+3Z[C+15]→Z[C+21] 要素数据库结束指针Z[C+21]+1→Z[C+30]Z[C+21]→DimZ 增加额外变量-1→KGoto SFileName:SETPFDYS 交点要素=>分段要素Norm 150→CRadZ[C+6]+5→DZ[C+21]+1→FF+6→DimZ-1→Z[F] ; 设置分段要素开始标志Z[C+20]→V ; 从数据库读入当前线第一个平曲线交点桩号0→GPol(Z[D+1]-Z[D-4],Z[D+2]-Z[D-3]) ;计算第一条直线的距离I,计算方位角JJ→HZ[D-4]→Z[F+1] 直线段Z[D-3]→Z[F+2]V-I→Z[F+3]For 1→G T o Z[C+16]-2Pol(Z[D+1]-Z[D-4],Z[D+2]-Z[D-3]) ;计算第本交点与下一交点的距离I,计算方位角JI→W:J→HPol(Z[D+6]-Z[D+1],Z[D+7]-Z[D+2])J-H→K ;计算转角K,负值是左转角,正值是右转角IF Abs(K)>π:Then If K>0:Then K-2π→K:Else K+2π→K:IfEnd:IfEndZ[D+3]→R ;从数据库读入半径RZ[D+4]→L ;从数据库读入缓和曲线1长度Z[D+5]→M ;从数据库读入缓和曲线2长度L÷2÷R→B ;计算缓和曲线1的B0角M÷2÷R→O ;计算缓和曲线2的B0角(Abs(K)-B-O)R→P ;计算圆曲线长度L2÷24÷R-L^(4) ÷2384÷R^(3) →Q ;内移值计算方法2L÷2-L^(3) ÷240÷R2→S ;切线增长值计算方法2M2÷24÷R-M^(4) ÷2384÷R^(3) →J ;内移值计算方法2M÷2-M^(3) ÷240÷R2→I ;切线增长值计算方法2Abs(π÷2- Abs(K)) →ARtan(Abs(K÷2))+S+J÷Cos(A)-QTan(A)→T ;计算切线1Rtan(Abs(K÷2))+I+Q÷Cos(A)-JTan(A)→U ;计算切线2H<0=>H+2π→HK<0 =>-1→AH→Z[F+4]0→Z[F+5]0→Z[F+6]F+6→FF+6→DimZRec(T,H) 缓和段1 Z[D+1]-I→NZ[D+2]-J→EN→Z[F+1]E→Z[F+2]V-T→Z[F+3]L=0=>Goto AH→Z[F+4]0→Z[F+5]A÷R→Z[F+6]F+6→DimZLbi A 圆弧段0→I:0→JL=0=>Goto BPol(L-L^(3)÷40÷R2,L2÷6÷R-L^(4)÷336÷R^(4)) Lbi B Rec(I,H+AJ)N+I→NE+J→EN→Z[F+1]E→Z[F+2]V-T+L→Z[F+3]H+AB→Z[F+4]A÷R→Z[F+5]A÷R→Z[F+6]F+6→FF+6→DimZM=0=>Goto C 缓和段2 Rec(2RSin÷R),H+AB+AP÷R÷2) N+I→NE+J→EN→Z[F+1]E→Z[F+2]V-T+L+P→Z[F+3]H+AB+AP÷R→Z[F+4]A÷R→Z[F+5]0→Z[F+6]Lbi CF+6→FF+6→DimZRec(U,H+K)Z[D+1]+J→Z[F+1]Z[D+2]+I→Z[F+2]V-T+L+P+M→Z[F+3]V-T+L+P+M-U+I→VD+5→DNextH+K→Z[F+4]0→Z[F+5]0→Z[F+6]F+9→DimZ1→Z[F+7]V→Z[F+9] 要素终点桩号DegFileName:READDATZ[C+32]→II=3=>Prog"READDAT3"If GM+L :Then ;验证要素是否可用,否则重设要素I=1=>Prog"READDAT1"I=2=>Prog"READDAT2"Prog"REALDAT3"IfEndFileName:READDAT1 平曲线分段要素读取程序1Z[C+30]→F0→JLbi 1 搜索要素If G<z[f+3]:then< p="">-1=Z[F]=>Goto E:F-6→F:-1→J:Goto 1Else 1=Z[F+1]=>Goto E:-1=J=>Goto 2:1→J:F+6→F:Goto 1 IfEndLbi 2F→Z[C+30]Z[F+1]→Z[C+23] 当前分段要素N坐标Z[F+2]→Z[C+24] 当前分段要素E坐标Z[F+3]→Z[C+25] 当前分段要素起点桩号Z[F+4]→[C+26] 当前分段要素起点方位角(正北)Z[F+5]→Z[C+27] 当前分段要素起点曲率有左偏负右偏正(注意不半径)Z[F+6]→Z[C+28] 当前分段要素终点曲率有左偏负右偏正(注意不半径)</z[f+3]:then<>。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
正算主程序 (ZS) :
Lb1 0 : FIX 4 : ? S : ?Z : Prog “ PM-SJ ” : Abs(S-O) → W : Prog
"SUB1" : "XS= " : X ◢ "YS= " : Y ◢ F-90 → F ( 需要时可以让他显示,
不要时不必输入 ) : Pro g“SQX-SJ”: Prog “ SQX ” : “ H= ” : H ◢-
Goto 0
反算主程序 (FS)
Lb1 0 : FIX4: ? S : ? X :? Y : Prog “PM-SJ” : X→ I : Y→ J :
Prog "SUB2" : "S= " : O+W→S ◢ "Z= " : Z ◢
Prog “SQX-SJ” : Prog “ SQX ” : “ H= ” : H ◢ Goto 0
隧道 3 心圆放样主程序( SD-3XY )
Lb1 0 : Prog “ FS ” : 1.5 → A : 1.65 → B : 0.89→ G : 2.27 →
C : 3.3 → D : 2.41 → E : 0.51 → J : “H1” : F : ifF≤ H+ A :
then E-AbsZ → W : IfEn d : ifF > H+A And F ≤ H+A+ B : then√
( D²- ( F-H-A ) ² ) -G-AbsZ → W : IfEn d : ifF > H+A+
B : then√ ( C²- ( F-H-A-J ) ² ) -AbsZ → W : IfEn d :
“W=” : W◢ (水平方向的超欠挖:正为欠 , 负为超) Goto0
正算子程序 (SUB1)
1÷P → C : (P-R)÷(2HPR) → D : 180÷π → E : 0.1739274226 → A :
0.3260725774 → B : 0.0694318442 → K : 0.3300094782 → L : 1-L → F :
1-K → M :
U+W(Acos(G+QEKW(C+KWD))+Bcos(G+QELW(C+LWD))+Bcos(G+QEFW(C+FWD))+Acos(
G+QEMW(C+MWD))) → X :
V+W(Asin(G+QEKW(C+KWD))+Bsin(G+QELW(C+LWD))+Bsin(G+QEFW(C+FWD))+Asin(
G+QEMW(C+MWD))) → Y : G+QEW(C+WD)+90 → F : X+ZcosF → X : Y+ZsinF
→ Y 反算子程序 (SUB2)
G-90 → T : Abs((Y-V)cosT-(X-U)sin ( T ) ) → W : 0 → Z : Lbl 0 :
Prog "SUB1" : T+QEW(C+WD) → L : (J-Y)cosL-(I-X)sinL → Z : ifAbsZ<1E-
6 : thenGoto1 : ElssW+Z → W : Goto 0 : IfEnd
Lbl 1 : 0 → Z : Prog "SUB1" : (J-Y)÷sinF → Z 子程序(平面线形数
据库) PM-SJ
ifS ≥ 500 (线元起点里程) AndS < 769.256 (线元止点里程):
Then19942.837 → U (线元起点 X 坐标) : 28343.561 → V (线元起点 Y 坐
标) : 500 → O (线元起点里程) : 125 ° 16 ° 31 ° → G (线元起
点方位角) : 269.265 → H (线元长度) : 10^ ( 45 ) → P (线元起
点曲率半径): 10^ ( 45 ) → R (线元终点曲率半径): 0 → Q (线元
左右偏标志:左负右正): IfEnd
ifS ≥ 769.256 (线元起点里程) AndS < 806.748 (线元止点里程):
Then19787.34 → U (线元起点 X 坐标) : 28563.378 → V (线元起点 Y 坐
标) : 769.256 → O (线元起点里程) : 125 ° 16 ° 31 ° → G (线
元起点方位角) : 37.492 → H (线元长度) : 10^ ( 45 ) → P (线元
起点曲率半径): 221.75 → R (线元终点曲率半径): -1 → Q (线元左右
偏标志:左负右正): IfEnd
ifS ≥ 806.748 (线元起点里程) AndS < 919.527 (线元止点里程):
Then19766.566 → U (线元起点 X 坐标) : 28594.574 → V (线元起点 Y 坐
标) : 806.748 → O (线元起点里程) : 120 ° 25 ° 54.07 ° → G (线
元起点方位角) : 112.779 → H (线元长度) : 221.75 → P (线元起点
曲率半径): 221.75 → R (线元终点曲率半径): -1 → Q (线元左右偏标
志:左负右正): IfEnd
ifS ≥ 919.527 (线元起点里程) AndS < 999.812 (线元止点里程):
Then19736.072 → U (线元起点 X 坐标) : 28701.893 → V (线元起点 Y 坐
标) : 919.527 → O (线元起点里程) : 91 ° 17 ° 30.63 ° → G (线
元起点方位角) : 80.285 → H (线元长度) : 221.75 → P (线元起点曲
率半径): 9579.228 → R (线元终点曲率半径): -1 → Q (线元左右偏标
志:左负右正): IfEnd
ifS ≥ 999.812 (线元起点里程): Then19744.038 → U (线元起点 X 坐标) :
28781.659 → V (线元起点 Y 坐标) : 999.812 → O (线元起点里程) :
80 ° 40 ° 50 ° → G (线元起点方位角) : 100 → H (线元长度) : 10^
( 45 ) → P (线元起点曲率半径): 10^ ( 45 ) → R (线元终点曲率
半径): 0 → Q (线元左右偏标志:左负右正): IfEnd
子程序(竖曲线数据库) SQX-SJ
ifS ≤ 999.812 (竖曲线终点里程): then0.0357 (前坡度:上坡正下坡负)
→ E : 0.0227 (后坡度: 上坡正下坡负 ) → F : 600 → R (竖曲线半
径): 780 → G (变坡点里程): 110 → C (变坡点高程): IfEnd
子程序(竖曲线计算公式) SQX
E-F → J : ifJ > 0 : then-R → R : ElssR→ R : Abs ( R*J÷2 ) →
T : IfEnd
ifS ≤ G- T : thenG-S → L : C-LE → H : IfEnd
ifS > G- T And S ≤G : thenG-S → L :( S+T-G ) ²÷2÷R →N :
C-LE+N → H : IfEnd
ifS > G And S ≤ G+ T : then S-G → L :( G +T- S ) ²÷2÷R →N :
C+LF+N → H : IfEnd
ifS > G+ T : thenS-G → L : C+LF → H : IfEnd
使用说明
(1) 以道路中线的前进方向(即里程增大的方向)区分左右;当线元往左偏时,
Q=-1 ;当线元往右偏时, Q=1 ;当线元为直线时, Q=0 。
(2) 当所求点位于中线时, Z=0 ;当位于中线左铡时, Z 取负值;当位于中线
中线右侧时, Z 取正值。
(3) 当线元为直线时,其起点、止点的曲率半径为无穷大,以 10 的 45 次代替。
(4) 当线元为圆曲线时,无论其起点、止点与什么线元相接,其曲率半径均等于
圆弧的半径。
(5) 当线元为完整缓和曲线时,起点与直线相接时,曲率半径为无穷大,以 10 的
45 次代替;与圆曲线相接时,曲率半径等于圆曲线的半径。止点与直线相接时,
曲率半径为无穷大,以 10 的 45 次代替;与圆曲线相接时,曲率半径等于圆曲
线的半径。
(6) 当线元为非完整缓和曲线时,起点与直线相接时,曲率半径等于设计规定的
值;与圆曲线相接时,曲率半径等于圆曲线的半径。止点与直线相接时,曲率半
径等于设计规定的值;与圆曲线相接时,曲率半径等于圆曲线的半径。