1-JIN YU(主程序)
Lbl 4: “1→ZS,2→FS,3→CQW”?N(选择计算模式,1为正算,2为反算,3为超欠挖) N=1=>Goto 1:N=2=>Goto 2:N=3=>Goto 3
Lbl 1: “K=”? S:“P=”? Z:Prog “SUB4SJ-PM”: Abs(S-O) → W:Prog “SUB1-ZS”: “X=”:Locate4,4,X: “Y=”:Locate4,4,Y:F-90→F:S→ K:Prog“SJ-GC”:“H=”:Locate4,4,H:“W=”: Locate4,4,F°◢ Goto 4
(正算-输入待求点里程K=、输入待求点偏距P=、显示待求点里程X=、显示待求点里程Y=、显示待求点里程设计高程H=)
Lbl 2:“X=”? X:“Y=”? Y:Prog“SUB4SJ-PM”: X→ I: Y→ J:Prog \"SUB2-FS\":O+W→S: “K=\":Locate4,4, S :“P=\":Locate4,4, Z:S→ K:Prog“SJ-GC” :“H=”:Locate4,4, H:F-90→F: “W=”: Locate4,4,F°◢ Goto 4
(反算-输入实测点X=、 输入实测点Y=、显示实测点里程K=、显示实测点偏距P=、显示实测点的设计高程H=)
Lbl 3: “X=”?X:“Y=”?Y:Prog“SUB4SJ-PM”: X→ I: Y→ J:Prog \"SUB2-FS\":O+W→S: “K=\":Locate4,4, S :“P=\":Locate4,4, Z:S→ K:Prog“SJ-GC” :“H=”:Locate4,4, H◢
Prog“SJ-CQW” ◢ Goto4
(超欠挖-输入实测点X=、 输入实测点Y=、显示实测点里程K=、显示实测点偏距P=、显示实测点的设计高程H=、输入实测高程H1=、显示超欠挖值及第几圆心上CQ→Y?=)
SUB4(子程序名-平面线形数据库)
If S ≥59227.681(线元起点里程):Then 2599818.013→U(线元起点X坐标):496887.918→V(线元起点Y坐标):59227.681→O(线元起点里程):208028’39”→G(线元起点方位角):100 →H(线元长度):1×1045→P(线元起点曲率半径):1×1045→R(线元终点曲率半径):0 →Q(线元左右偏标志:左-1右1直0):IfEnd
If S ≥59327.681(线元起点里程):Then 2599730.112→U(线元起点X坐标):496840.237→V(线元起点Y坐标):59327.681→O(线元起点里程):208028’39”→G(线元起点方位角):
90 →H(线元长度):1×1045→P(线元起点曲率半径):750→R(线元终点曲率半径):-1 →Q(线元左右偏标志:左-1右1直0):IfEnd
(注:有多个平面线形,依照上面的依次变更, 每多一个,就增加一个。每次只需要修改以上的数据或增加一个判断。)
GC(子程序名-竖曲线数据库)
If S<变坡终点里程And S≥变坡起点里程:Then大里程坡度→A:小里程坡度→B:变坡点里程→O:变坡点高度→G:半径→R:Prog“SUB3-GC”:IfEnd
(注:1.有多个竖曲线,依照上面的依次变更,每多一个,就增加一个。每次只需要修改以上的数据或增加一个判断。2.如整条线只有一个纵坡比喻为2﹪,那么程序应为If S<终点里程And S≥起点里程:Then 0.02→A:0.02→B:起点里程→O:起点高程→G:1×1045→R:Prog“SUB3-GC”:IfEnd)
SD-CQW (子程序名-隧道数据库)
“H1=”?F
If F-H>5.845:Then √((Abs (Z))2+(F-H-0.45)2 )-7.45→W: “CQ→Y1=”:W: IfEnd:(显示超欠和第1圆心)
If F-H≤5.845 And F-H>-1.169: Then √((Abs (Z)-1)2+( Abs (F-H-1.5)) 2)-6→W : “CQ→Y2=”:W:IfEnd: (显示超欠和第2圆心)
If F-H≤-1.169: Then √((Abs (Z)) 2+(H-F+14.05) 2)-16.5→W: “CQ→Y3=”:W: IfEnd: (显示超欠和第3圆心)
(注:隧道断面有多个圆心,依照上面的依次变更, 每多一个,就增加一个。每次只需要修改以上的数据或增加一个判断。)详细数据见下图:
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:
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+Zcos(F)→ X: Y+Zsin(F)→ Y
SUB2-FS(反算子程序)
G-90→T: Abs((Y-V)cos(T)-(X-U)sin(T)) → W: 0→ Z:Lbl 0:Prog \"SUB1-ZS\": T+QEW(C+WD) →L: (J-Y)cos(L)-(I-X)sin(L) → Z:If Abs(Z)<1E-6(注:此处1E-6可输入0.000001):then Goto1:Else W+Z → W:Goto 0:IfEnd
Lbl 1: 0→ Z:Prog \"SUB1-ZS\": (J-Y)÷sin(F)→ Z
SUB3-GC(高程子程序)
O-S→L:A-B→W:Abs(R*W÷2) →T:O-T→M:O+T→P
If S≤M:ThenG-L*B→H:Goto5:Else If S≤O:Then Goto3:Else If S≤P:Then Goto4:IfEnd: IfEnd: IfEnd Lbi3
If W>O:Then G+(M-S)2÷2÷R-L*B→H:Goto5: Else If W<O: Then G-(M-S)2÷2÷R-L*B→H:Goto5: IfEnd: IfEnd Lbi4
If W>O:Then G+( S-P)2÷2÷R-L*A→H:Goto5: Else If W<O: Then G-( S-P)2÷2÷R-L*A→H:Goto5: IfEnd: IfEnd Lbi5 H→H: Return
说明:(正算1秒,反算和超欠挖5秒完成)
所有程序名。不同线路,只需改动SJ-PM,SJ-GC,SJ-CQW三个子程序里的内容,其它不变。
1为正算,2为反算,3为超欠挖.
K= 正算时,输入所求点里程。 反算时得出里程结果 X=,Y= 正算时得出结果。 反算时输入实测坐标 P= 正算时输入偏距。 反算时得出偏距 H= 正算时得出高程。 反算时得出高程 H1= 超欠挖时输入实测高程 CQ→Y?= 得出超欠挖值及第几圆心上
casio fx-5800P坐标正反算
Lbl 3:\"1→ZS,2→FS\"?N N=1=>Goto 1:N=2=>Goto 2
Lbl 1:\"X1=\"?M:\"Y1=\"?F:\"S= \"?L: \"W+V=\"?A:Rec(L,A):M+I→C:F+J→D Cls
\"X2=\":Locate 4,1,C:\"Y2=\":Locate 4,2,D◢ Goto 3
Lbl 2: \"X1=\"?G:\"Y1=\"?H:\"X=2\"?N:\"Y2=\"?E Pol(N-G,E-H)
If J<0:Then J+360→Y:Else J→Y:IfEnd Cls
\" S =\":Locate 4,1,I:\" W =\":Y◆DMS◢ Goto 3
说明:(1为正算,2为反算, X1,Y1为测站坐标、X2,Y2正算时为所求点前视坐标、反算时为后视坐标、S为水平距离、W,V为方位角和水平角)
因篇幅问题不能全部显示,请点此查看更多更全内容