CASIO fx5800p全线高程计算程序
卡西欧5800p道路纵断面高程计算
卡西欧5800P计算器道路纵断面高程计算通用程序广西水利电力职业技术学院11级工程测量班 曾礼明1.“ZP:1 OR SQX:2”:?→A2. If A=1:then Goto1:IfEnd3. If A=2:then Goto2:IfEnd4. LbI 1:“BPZ=”?B:”BPG=”?C:”PL=”?D:LbI 3:”K=”?K5. C+(K-B)*D→H:”H=”:H⊿Goto36. LbI 2:”BPZ=”?B:”T=”?T : “BPG=”?C : “PL1=”?E : “PL2=” ?F : “R=” ?R :LbI 4 : “K=” ?K7. B-T→J8. B+T→L9. If K≥J And K<B:Then C+(B-K)*-E→M:IfEnd10. If K≥J And K<B:Then(K-J) ²/(2*R)→N IfEnd11. If K>B And K≤L:Then C+(K-B)*F→O:IfEnd12. If K>B And K≤L:Then (L-K) ²/(2*R) →P :IfEnd13. If E-F>0:Then M-N →H: ”H=”:H⊿IfEnd14. If E-F<0:Then O+P →H: ”H=”:H⊿IfEnd :Goto 4程序结束程序说明:变量含义变量含义B 变坡点桩号K 所求桩号C 变坡点高程H 所求桩号的设计地面高程D 纵坡坡率J 竖曲线起点桩T 竖曲线切线长L 竖曲线终点桩E 竖曲线坡率1 N、P 竖曲线纵距F 竖曲线坡率2 M、O 竖曲线处纵坡高程R 竖曲线半径使用说明:直坡段与竖曲线段要分开计算1.提示“ZP:1 OR SQX:2”,ZP表示纵坡、SQX表示竖曲线,根据需要输入对应的1或者2。
2.对于纵坡,提示BPZ表示纵坡变坡点即纵坡起点桩号,BPG 表示纵坡变坡点即纵坡起点桩号的设计高程,PL表示该段纵坡坡率,K表示所要求的桩号。
fx5800P程序(曲线任意里程中边距坐标正反算及高程)
fx5800P程序(曲线任意里程中边距坐标正反算及高程)TYQXJS(主程序)LbI 6:"1.SZ→XY"↙"2.XY→SZ"?S:?N:Prog"SUB0"↙1÷P→C:(P-R)÷(2HPR)→D:180÷π→E:N=1=>Goto1:Goto2↙LbI 1:?Z:Abs(S-O)→W↙<LbI1:?K:K-2.35→Z:Abs(S-O)→W↙> Prog"SUB1"↙(红字换成后面的就是以中线)"XS=":X◢↙"YS=":Y◢↙"FS=":F-90▶DMS◢↙Goto 6↙LbI 2:?X:?Y↙X→I:Y→J↙Prog"SUB2":O+W→S:Cls↙"S=":S→S◢↙"Z=":Z◢↙<"Z=":Z-2.35◢↙>(上述中红色均可以换成<...>里的,计算出来的偏距为中线准)(顶点高程)→A:(上导高程)→B:(中导高程)→K::(下导高程)→T:(仰拱低高程)→L↙(本程序现为3台阶7部法施工设计的,如有不同情做适当修改;同时,上述各高程必须与下面计算的S相对应,就是必须是同一里程的数据)"AH=":A+(<标点里程﹥-S)×1.08%◢↙"BH=":B+(<标点里程﹥-S)×1.08%◢↙"CH=":K+(<标点里程﹥-S)×1.08%◢↙"DH=":T+(<标点里程﹥-S)×1.08%◢↙"EH=":L+(<标点里程﹥-S)×1.08%◢↙"Z=":Z◢↙Goto 6↙SUB1(子程序)0.1739274226→A:0.3260725774→B↙0.0694318442→K:0.330009482→L↙1-L→F:1-K→M↙G+QEKW(C+KWD)→Z[1]↙G+QELW(C+L WD)→Z[2]↙G+QEFW(C+FWD)→Z[3]↙G+QEMW(C+MWD)→Z[4]↙A×cos(Z[1]﹚→X↙X×Bcos(Z[2]﹚→X↙X×Bcos(Z[3]﹚→X↙X×Acos(Z[4]﹚→X↙U+WX→Y↙Asin(Z[1])→Y↙Y+Bsin(Z[2])→Y↙Y+Bsin(Z[3])→Y↙Y+Asin(Z[4])→Y↙V+WY→Y↙G+QEW(C+WD)+90→F↙X+Zcos(F)→X↙Y+Zsin(F)→Y↙SUB2(子程序)G-90→T↙(Y-V)cos(T)-(X-U)sin(T)→W↙Abs(W)→W:0→Z↙LbI 6:Prog"SUB1"↙T+QEW(C+WD)→L↙(J-Y)cos(L)-(I-X)sin(L)→Z↙If Abs(Z)﹤0.000001:Then 0→Z:Prog"SUB1"↙(J-Y)÷sin(F)→Z↙Else W+Z→W:Goto 0:IfEnd↙SUB 0LbI 1:If S<(元线终点里程):Then(元线起点里程)→O:(元线起点X 坐标)→U:(元线起点Y坐标)→V:(元线起点计算方位角)→G:(元线起点半径)→P:(元线终点半径)→R:(元线长度)→H:(元线偏向标志-为左+为右)→Q:Return:IfEnd↙.............................................(可无限重复,有多少段就可以输入多少段得要素)注意:显示S代表里程,Z代表偏距,N代表选择(1)正算或(2)反算,X.Y为坐标。
5800p高程程序
CASIO-5800P路面高程控制测量程序(一)“XXX”主程序(注:本程序用“_”代替空格,其余均无空格)Clr Mat:Fix 3:Clr stat:FreqOn0→M(数字零)Cls:“1ZX_2YX”?→ECls:?KE=1=>prog“ZX”E=2=>prog“YX”Mat C[1,1] →F:Mat C[1,2] →Z:Mat C[1,3] →X:Mat C[1,4] →Y:Mat C[1,5] →R:Mat C[1,6] →B:Mat C[1,7] →GX/100→X:Y/100→YRabs(Y-X)/2→TCls:“HS”?A: “BM(HS)”?C:Cls:“SXG=”:Locate5,1,A+C◢Lb1 A:Cls: “QS”?PCls:?KIf K<F or K>Z:Then Cls :Locate6,2, “K Out !”◢Stop :If EndIf Y>X:Then 1→W:Else -1→W:If EndIf K<B:Then -X→I:Else Y→I:If EndAbs(B-K) →LIf L>T:ThenG+IL→H:Cls:“H(ZZ)=”:Locate7,1,H◢Goto B:ElseG+IL+W(T—L) 2(平方)/2/R→H:Cls:“H(ZZ)=”Locate7,1,H◢Goto B:If EndLb1 B:“JGC(H)”?O“BJ”?N11→Dim Z“ZXHP__YXHP”? →JJ=1=>Prog“ZXHP”J=2=>Prog“YXHP”Mat D[1,1] →Z[2]:Mat D[1,2] →Z[3]:Mat D[1,3]→Z[4]:Mat D[1,4]→Z[5]:Mat D[1,5]→Z[6]:Mat D[1,6] →Z[7]:Z[4]+((Z[5]-Z[4])*(K-Z[3])):(Z[2]-Z[3]) →U:Z[6]+(Z[7]-Z[6])*(K-Z[3]))/(Z[2]-Z[3]) →SCls:If N≤0:Then H-0-U(N+1)/100→V:Else H-0+S(N+1)/100→V:If endCls :V-A-C+P→QCls:“HC=”: “HS=”:Loacte6,1,A+C-P:Locate6,2,V◢Cls:“H=”:Locate6,1,Q◢M+1→M:K→List→X[M]:V→List Y[M]:Q→List Freq[M]Goto A:If end(二)“ZX”(主线竖曲线)子程序If K<本线路起点桩号Or K>本线路终点桩号:Then Cls :Locate 6,2,“K_ ERR!”◢Stop :IfEndIf K≤下一曲线起点或本线路终点桩号:Then [[上一曲线终点或本线路起点桩号,下一曲线起点或本线路终点桩号,前纵坡(只输入%前的数字且上坡为正,下坡为负需输入负号),后纵坡(同上),本曲线半径,本曲线交点桩号,本曲线标高]]→Mat C:Goto 1 :IfEnd ……………………………………………同理循环输入………………………………………LbI 1(三)“ZXHP”(主线横坡)子程序If K<本线路起点桩号Or K>本线路终点桩号:Then Cls :Locate 6,2,“K_ ERR!”◢Stop :IfEndIf K≤下一横坡起变点或本线路终点桩号:Then [[下一横坡起变点或本线路终点桩号,上一横坡起变点或本线路起点桩号,左幅起点横坡(只需输入横坡%前数字且低于中线为负),左幅终点横坡,右幅起点横坡,右幅终点横坡]] →Mat D:Goto 1 :IfEnd ……………………………………………同理循环输入………………………………………LbI 1(四)“YX”(右线竖曲线)子程序If K<本线路起点桩号Or K>本线路终点桩号:Then Cls :Locate 6,2,“K_ ERR!”◢Stop :IfEndIf K≤下一曲线起点或本线路终点桩号:Then [[上一曲线终点或本线路起点桩号,下一曲线起点或本线路终点桩号,前纵坡(只输入%前的数字且上坡为正,下坡为负需输入负号),后纵坡(同上),本曲线半径,本曲线交点桩号,本曲线标高]]→Mat C:Goto 1 :IfEnd ……………………………………………同理循环输入………………………………………LbI 1(五)“YXHP”(右线横坡)子程序If K<本线路起点桩号Or K>本线路终点桩号:Then Cls :Locate 6,2,“K_ ERR!”◢Stop :IfEndIf K≤下一横坡起变点或本线路终点桩号:Then [[下一横坡起变点或本线路终点桩号,上一横坡起变点或本线路起点桩号,0(此为数字零,一般左线为主线),0,右幅起点横坡,右幅终点横坡]] →Mat D:Goto 1 :IfEnd……………………………………………同理循环输入………………………………………LbI 1。
5800全线高程计算程序
CASIO fx5800p全线高程计算程序GAOCHEN 主程序Lbl 1“KM=,<0,Stop”:?K:K<0=>Stop:“PY=”?L:Prog”GK”C-D→E:Abs(RE/2)→T:R(Abs(E)/E)→RIf K≤B-T:Then 0→H:Else:If K≥B+TThen 0→H:D→C:Else K-B+T→H:Ifend:IfendA-(B-K)C-H2/(2R)→G:Cls“KM=”:Locate 4,1,K:Locate 10,1,“PY=”:Locate 13,1,L:Fix 3“H=”:Locate 4,2,GProg “PODU”:(E-B)/(D-A)(K-A)+B→I:(F-C)/(D-A)(K-A)+C→J “HL=”:G+IL→X:Locate 4,3,X:Locate 11,3,“I=”:Locate 13,3,I*100 “HR=”:G+JL→Y:Locate 4,4,Y:Locate 11,4,“I=”:Locate 13,4,J*100◢显示中边桩高程Cls:Norm 2:“BM+HS≤0,Goto 1”?Z:Z≤0=> Goto 1:Cls (输入视线高)“KM=”:Locate 4,1,K:Locate 10,1,“PY=”:Locate 13,1,L:Fix 3 “QSM=”: Locate 6,2,Z-G (显示中桩读数)“QSL=”: Locate 6,3,Z-X (显示左桩读数)“QSR=”: Locate 6,4,Z-Y◢(显示右桩读数)Norm 2:Cls:Goto1(后面可加已知视线高计算读数部分,不想计算读数则视线高输入0或负数如不想显示麻烦,可将Locate语句去掉)以下两个子程序不需运行,只是两个独立的数据库赋值程序,字母重复不影响计算结果GK 数据库子程序If K≤第二曲线起点桩号:Then 第一曲线交点高程→A:第一曲线交点桩号→B:第一曲线前坡→C:第一曲线后坡→D:第一曲线半径→R(凸正凹负):Return:Ifend…………….(有几个变坡点编几个If语句)If K≤76004:Then 622.890→A:75400→B:-0.005→C:-0.026→D:20000→R:Ret urn:IfendIf K≤77150:Then 602.350→A:76190→B:-0.026→C:0.005→D:12000→R:Retu rn:IfendIf K≤78420:Then 608.300→A:77380→B:0.005→C:--0.018→D:20000→R:Ret urn:IfendIf K≤79310:Then 585.260→A:78660→B:-0.018→C:-0.024→D:80000→R:Ret urn:IfendIf K≤80518.50:Then 564.380→A:79530→B:-0.024→C:-0.016→D:55000→R:R eturn:IfendIf K≤82230:Then 545.340→A:80720→B:-0.016→C:0.015→D:13000→R:Ret urn:IfendPODU 计算坡度子程序If K≤第一变(非变)坡段终点:Then 第一曲线起点桩号→A:第一曲线起点左坡→B:第一曲线起点右坡→C:第一曲终点桩号→D:第一曲终点左坡→E:第一曲终点右坡→F:Return:Ifend………………(每一个超高变化线元一个If语句)If K≤75884.442:Then 75000→A:-0.02→B:-0.02→C:75984.442→D:-0.02→E:-0.02→F:Return:Ifend(直线段)If K≤75984.442:Then 75884.442→A:-0.02→B:-0.02→C:75984.442→D:-0.03→E:0.03→F:Return:Ifend(JD66)If K≤76452.111:Then 75984.442→A:-0.03→B:0.03→C:76452.111→D:-0.03→E:0.03→F:Return:Ifend(JD66)If K≤76552.111:Then 76452.111→A:-0.03→B:0.03→C:76552.111→D:-0.02:-0.02→F:Return:Ifend(JD66)If K≤78271.813:Then 76552.111→A:-0.02→B:-0.02→C:78271.813→D:-0.02→E:-0.02→F:Return:Ifend(直线段)If K≤78371.813:Then 78271.813→A:-0.02→B:-0.02→C:78371.813→D:-0.03→E:0.03→F:Return:Ifend(JD67)If K≤78870.831:Then 78371.813→A:-0.03→B:0.03→C:78870.831→D:-0.03→E:0.03→F:Return:Ifend(JD67)If K≤78970.831:Then 78870.831→A:-0.03→B:0.03→C:78970.831→D:-0.02→E:-0.02→F:Return:Ifend(JD67)If K≤79284.976:Then 78970.831→A:-0.02→B:-0.02→C:79284.976→D:-0.02 3→E:-0.02→F:Return:Ifend(直线段)If K≤79404.976:Then 79284.976→A:-0.02→B:-0.02→C:79404.976→D:0.04→E:-0.04→F:Return:Ifend(JD68)If K≤79687.747:Then 79404.976→A:0.04→B:-0.04→C:79687.747→D:0.04→E:-0.04→F:Return:Ifend(JD68)If K≤79767.747:Then 79687.747→A:0.04→B:-0.04→C:79767.747→D:0→E:0→F:Return:Ifend(JD68)If K≤79847.747:Then 79767.747→A:0→B:0→C:79847.747→D:-0.04→E:0.04→F:Return:Ifend(JD69)If K≤80232.429:Then 79847.747→A:-0.04→B:0.04→C:80232.429→D:-0.04→E:0.04→F:Return:Ifend(JD69)If K≤80312.429:Then 80232.429→A:-0.04→B:0.04→C:80312.429→D:0→E:0→F:Return:Ifend(JD69)If K≤80392.429:Then 80312.429→A:0→B:0→C:80392.429→D:0.04→E:-0.04→F:Return:Ifend(JD70A)结果显示:高程显示KM=0000.000 PY=0.000H= 00.000HL=00.000 I=-1.5HR=00.000 I=-1.5读数显示KM=0000.000 PY=0.000 QSM= 00.000QSL= 00.000QSR= 00.000。
卡西欧Fx5800p道路三维坐标计算程序(线元法)
卡西欧5800p道路三维坐标计算程序(线元法)QXJS-000 主程序(文件名)Lbl 4:"1.SZ=>NE":"2.NE=>SZ":?Q:?S: Prog"QXJS-SUB0"↙Lblθ:Q=1 => Goto1:Q=2 => Goto2:↙θ为阿拉伯数字零Lbl 1:?Z:Prog"QXJS-SUB1":Cls:"N=":Locate5,1,N: (X坐标在第一行第五列显示)"E=":Locate4,2,E: (Y坐标在第二行第四列显示)"ZH=":Locate4,3,S:Locate9,3,"BJ=":Locate12,3,Z: (桩号在第三行第四列显示)F▶DMS◢(方位角在第四行显示)Prog"SQX-000": Goto4↙Lbl 2: "N=":?B: "E=":?C:B→N: C→E:Prog"QXJS-SUB2": "S=":S ◢"Z=":Z◢Goto4↙QXJS-SUB0 平面数据库子程序(文件名)Goto1↙Lbl 1 :IF S<***(线元终点里程):Then***→A(线元起点方位角):***→O (线元起点里程):***→U(线元起点X):***→V(线元起点Y):***→P(线元起点曲率半径):***→R(线元终点曲率半径): ***→L(线元起点至终点长度): Return:IfEnd↙ (一个完整的线元)。
IF S<***:Then***→A:***→O:***→U:***→V:***→P:***→R: ***→L: Return:IfEnd↙ (下一个完整的线元),……无限添加线元。
QXJS-SUB1 正算子程序(文件名)0.5(1÷R-1÷P)÷L→D:S-O→X↙U+∫( cos(A+(X÷P+DX2)×180÷π,θ,X)→N↙V+∫( sin(A+(X÷P+DX2)×180÷π,θ,X)→E↙A+(X÷P+DX2)×180÷π→F↙N+Zcos(F+90) →N:E+Zsin(F+90) →EQXJS-SUB2 反算子程序(文件名)Lbl1:θ→Z:1→Q:Prog"QXJS-SUB0": Prog"QXJS-SUB1"↙Pol(N-B+10^(-46), E-C+10^(-46)):Isin(F-90-J) →W:S+W→S↙Abs(W)>0.0001 => Goto1↙Lbl 2: θ→Z:Prog"QXJS-SUB1":(C-E) ÷sin(F+90) →Z使用使用说明:1、规定以道路中线的前进方向(即里程增大的方向)区分左右;当线路左转时,P、R取负值,当线路右转时,P、R取正值,当线路为直线时,P、R以10的45次方代替,即10^(45)。
CASIO5800P 程序
CASIO5800P1:程序名:QXJS CO“L=”?L:“LI CHENG=”?W↓提示输入里程桩号LbI A↓For 1→N To 20↓输入交点编号为1至20L=1=>Prog“1XY”←当输入L=1时,启用数据库“1XY”。
If W>Rep(Z)AndW<Imp(Z):Then Prog“MP”:Goto 0: IfEnd:Next↓“--LI CHENG---?”:Stop↓当输入里程Z大于或小于所启用的数据库的里程范围时停止计算LbI 0↓If K<0:Then Q→X:0→Q:0→J:S+C→I:AbS(K) →K:Goto 3 :IfEnd↓Goto 2↓LbI 1↓Q<0=>360+Q→Q↓“LI CHENG=”?W↓If W>Rep(Z) AndW<Imp(Z):Then Goto 2:EIse“>>>>”:Goto A :IfEnd↓LbI 2↓0→J↓μ0+Abs(W-Abs(K))→I↓W:K<0=>-W↓If Ans<K:Then 0→U:-I:Goto 4:IfEnd↓I>S+C=>S+C→I↓LbI 3↓If I<S:Then I2r÷(2RS) →U:I-I∧(5) ÷(40R2S2)+i(I∧(3)÷(6RS)-I∧(7) ÷(336R∧(3)S∧(3)) :EIse (2I-S) r ÷(2R) →U:Z[2]+R(Sin(U)-icos(U)+i):IfEnd↓LbI 4↓J+Anscos(Q)+AnsiSin(Q) →J↓If I=S+C:Then Q+A→Q: -K-I-T→K:T→I:S→T:I→S:-R→R:Prog“MP”:Goto 3:IIfEnd↓If Q+A=0:Then X-A-180→Q:K+Rep(J)+Imp(J) ÷tan(A) →K:O+Imp(J)(cos(Q)+i sin(Q)) ÷sin(A)→O:Goto 2:IfEnd↓If I=S:Then Q-180→Q:O+J→O:Goto 2:IfEnd↓K <0=>U-180→U↓Q+U→U↓“BIAN JU=”?E↓Rep(O)+Rep(J)-Esin(U) →X:Imp(O)+Imp(J)+Ecos(U) →Y↓CIs:Fix3:Locate1,1, “X=”: Locate7,2,X: Locate 1,3, “Y=”: Locate 7,4,Y▲If E=x10-6:Then Prog “BYXY”:Goto1:IfEnd↓Goto 1↓Prog“ZBFS”:Goto1↓备注:程序中“↓”为回车键,“-”CASIO计算器的(-)键,“i”虚数i。
卡西欧5800p道路纵断面高程计算
卡西欧5800P计算器道路纵断面高程计算通用程序广西水利电力职业技术学院11级工程测量班 曾礼明1.“ZP:1 OR SQX:2”:?→A2. If A=1:then Goto1:IfEnd3. If A=2:then Goto2:IfEnd4. LbI 1:“BPZ=”?B:”BPG=”?C:”PL=”?D:LbI 3:”K=”?K5. C+(K-B)*D→H:”H=”:H⊿Goto36. LbI 2:”BPZ=”?B:”T=”?T : “BPG=”?C : “PL1=”?E : “PL2=” ?F : “R=” ?R :LbI 4 : “K=” ?K7. B-T→J8. B+T→L9. If K≥J And K<B:Then C+(B-K)*-E→M:IfEnd10. If K≥J And K<B:Then(K-J) ²/(2*R)→N IfEnd11. If K>B And K≤L:Then C+(K-B)*F→O:IfEnd12. If K>B And K≤L:Then (L-K) ²/(2*R) →P :IfEnd13. If E-F>0:Then M-N →H: ”H=”:H⊿IfEnd14. If E-F<0:Then O+P →H: ”H=”:H⊿IfEnd :Goto 4程序结束程序说明:变量含义变量含义B 变坡点桩号K 所求桩号C 变坡点高程H 所求桩号的设计地面高程D 纵坡坡率J 竖曲线起点桩T 竖曲线切线长L 竖曲线终点桩E 竖曲线坡率1 N、P 竖曲线纵距F 竖曲线坡率2 M、O 竖曲线处纵坡高程R 竖曲线半径使用说明:直坡段与竖曲线段要分开计算1.提示“ZP:1 OR SQX:2”,ZP表示纵坡、SQX表示竖曲线,根据需要输入对应的1或者2。
2.对于纵坡,提示BPZ表示纵坡变坡点即纵坡起点桩号,BPG 表示纵坡变坡点即纵坡起点桩号的设计高程,PL表示该段纵坡坡率,K表示所要求的桩号。
fx5800P测量公式及程序汇总
卡西欧5800P 测量程序汇总CASIO fx5800P公路施工放线测量公式及程序一、已知座标,求平距和方位角(座标反算):公式:D=√(Xp-Xo)2+(Yp-Yo)2 α=arctg(Yp-Yo)/(Xp-Xo) 程序:“A”?→A:“B”?→B:Lbl 0:“X”?→X:“Y”?→Y:(X-A)→M:(Y-B)→N:“D=”:√(M2+N2)⊿ tan-1(N/M) →C:If M<0:Then “Q=”:180+C →Q ⊿ Else If N>0: Then “Q=”:C→Q ⊿ Else “Q=”:360+C→Q ⊿ If End : If End : Goto 0 说明:(A,B)为测站点坐标,(X,Y)为所求点坐标。
输出:D为平距,Q为方位角。
二、已知直线的坐标方位角Q和直线起点坐标(Xo,Yo),求直线上任一点的中桩坐标(X, Y),左右边桩坐标(XL,YL)、(XR,YR):公式:X =Xo+LcosQ Y=Yo+LsinQ程序:“A”?→A:“B”?→B:“Q”?→Q:“Z”?→Z:Lbl 1: “P”?→P:“J”?→J:“M”?→M:Abs(M-Z)→W:“X=”:A+W*cos(Q)+P cos(Q+J)→X ⊿“Y=”:B+W*sin(Q)+P sin(Q+J) →Y ⊿Goto 1 说明:(C,D)为直线起点坐标,Q为直线方位角,Z为起点桩号,L为所求坐标点桩号。
“U”为左边距,“T”为右边距,“V”为偏角;U=0时不算边桩坐标。
输出:(X,Y)为中桩坐标,(XL,YL)为左边桩坐标,(XR,YR)为右边桩坐标。
三、已知圆曲线起点坐标(U,V),切线方位角Q,桩号Z和圆半径R,求圆曲线上桩号为 L的点中桩坐标(X,Y),左右边桩坐标(XL,YL)、(XR,YR):公式:ψ=90L/(лR) (偏角公式) C=2Rsin ψ (对应弧的弦长公式)弦的方位角:Q=Qo±ψ(曲线左转时为“-”)程序:“U”?→U:“V”?→V:“Q”?→Q:“R”?→R:“Z”?→Z:“W=-1,1”:?→W:“ZJ=”:?→Z[1]:“YJ=”:?→Z[2]:“PIAN JIAO”:?→T:Lbl 2: “M”?→M:180*(M-Z)/(2π*R)→J:R*2sin(J)→K:If W=-1:Then“X=”:U+K*cos (Q-J)→X⊿ “Y=”:V+K*sin(Q-J)→Y ⊿“Q=”:Q-180*(M-Z)/(πR)→O⊿ Else If W=1:Then“X=”:U+K*cos(Q+J)→X⊿“Y=”:V+K*sin(Q+J)→Y ⊿ “Q=”:Q+180*(M-Z)/(πR)→O⊿ IfEnd:IfEnd:T=0=>Goto 2:“XL=”:X+Z[1]*cos(O-T)→F⊿“YL=”:Y+Z[1]*sin(O-T)→P⊿“XR=”:X+Z[2]*cos(O+T)⊿“YR=”:Y+Z[2]*sin(O+T) ⊿ Goto 2 说明:W=-1时曲线左转, W=1时曲线右转。
卡西欧fx-5800p计算器 公路测量常用程序
FX-5800p计算器公路测量常用程序一、程序功能本程序由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◢Goto 02.主程序2:高程序横坡程序(设计任意点高程及横坡)程序名:2GCLbI 0:Norm 2“KM”?Z:?D:Prog”H”:Fix3:”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:GotoH: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 If G>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◢"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 3LbI 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+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[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)÷sin(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:Then Q+LI→H:Goto 0:Else IfZ<F:Then Q+LI→H:Goto 0:Else If Z≤E:Then Q+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:Else Abs(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:Then 25900→O:11587.421→U:1847.983→V:101。
CASIO-fx5800P连续计算高程放样程序
K85+470 67.81 1.16 -3.4 K86+000 49.79 -3.4 -0.37 K86+750 47.02 -0.37 0.3 K87+750 50.02 0.3 -0.3
2 2 2 2
0 0 3 3
竖曲线要素 ZH点桩号 YH点桩号 HZ点桩号 0 0 0 12000 K85+196.4 K85+743.6 0 0 0 8000 K85+878.8 K86+121.2 0 0 0 30000 K86+649.5 K86+850.5 K87+460.89 K88+209.41 K88+459.41 80000 K87+510 K87+990 K87+460.89 K88+209.41 K88+459.41
二、高程及放样程序
【起算数据】:变坡点桩号A、变坡点高程B、前 后纵坡C D、竖曲半径R、横坡度F、最大超高横坡度G、ZH点桩号、YH 点桩号、HZ点桩号、施工层厚度N、视线高W
(一)主程序:GCFY "SXG="?W:“N='常量输入(视线高程、施工层厚度) Lbl 1:"K0+0"?L:"B="?О:Prog"B"'变量输入及声明 Abs(RK)÷2→T'竖曲线切线长,如需显示则在后面加上◢ A-T→H '竖曲线起点 ZY 桩号,如需显示则在后面加上◢ A+T→X '竖曲线终点 YZ 桩号,如需显示则在后面加上◢ L-A→M '待求点至变坡点的距离 If L≤H:Then B+MC-N-W→P: Goto 0:IfEnd'前纵坡直线段中桩高程计算 2 If L≤A:Then B+MC+J(T-Abs(M)) ÷(2R)-N-W→P: Goto 0:IfEnd'前纵坡竖曲线中桩高程计算 2 If L≤X:Then B+MD+J(T-Abs(M)) ÷(2R)-N-W→P: Goto 0:IfEnd'后纵坡竖曲线中桩高程计算 If L>X:Then B+MD-N-W→P: Goto 0:IfEnd'后纵坡直线段中桩高程计算 Lbl 0: If E=0:Then Goto 2: IfEnd'直线部分中、边桩计算判断条件 If L≤E:Then Goto 2: IfEnd'直线部分中、边桩计算判断条件 If L>V:Then Goto 2: IfEnd'直线部分中、边桩计算判断条件 If L>E:Then Goto 3: IfEnd'前缓曲超高部分中、边桩计算判断条件 If L>U:Then Goto 4: IfEnd'后缓曲超高部分中、边桩计算判断条件 Lbl 2 '显示直线部分中、边桩高程计算结果 If O=0:Then“H=”:Abs(P)→Z◢ Else“HB=”:Abs(P-OF)→Y◢ 不需放样显示高程,否则显示放样水准尺计数 IfEnd:Goto 1 Lbl 3 (L-E) (F+G)÷(V-U)-F→S'前缓曲线超高横坡度计算 If S≤F:Then Goto 5:IfEnd '超高起点(终点)至零界面、零界面至全超高及全 If S≤G:Then Goto 6:If S>G:Then Goto 7:IfEnd:IfEnd
卡西欧5800P计算器程序介绍
卡西欧5800P计算器程序FS反算主程序Lbl 1:已知坐标和近似里程(桩号)Lbl 2:SJK1(数据库)Lbl 3、Lbl 4:求的里程和偏距XJK3Z:实测高程,设计半径等,求的超欠信息GCJS高程计算(张树彬)BGJSSUB1SUB2TYQXJSQXJS 曲线计算DB1 :线元要素输入子程序SUB1:计算SUB2:计算偏距子程序XJK3Z:横坡以及纵坡子程序ZZ:超欠子程序Tanhui 谭辉SUBQ2-81SUBQ2-82SUBQ2-83SUBQ2-84SUBQ2-85SUBQ2-86ZTCZ 隧道左线数据库(主程序)ZTCY 隧道右线数据库(主程序)ZGCJC(左洞高程计算)已知K:里程、A:偏距、Z:判定左右洞、H:高程XJK3Z:右洞纵坡数据库ZFDMYGCJC(右洞高程计算)已知K:里程、A:偏距、Z:判定左右洞、H:高程XJK3Y:右洞纵坡数据库ZFDM:XJK4Y:右洞横坡数据库SJK4Z:左洞横坡数据库YFS:右洞反算主程序SJK2STJS:XJK3Y:纵坡数据库If……:Then……IfEndIf……:Then……Else……IfEndIf……:Then If……Then……Else……IfEnd:Else……IfEnd(有几个If,就要有几个IfEnd。
)Cls:“K=”:Locate 3,1,K:“DP=”:Locate4,2,Z:“X=”:Locate3,3,X:“Y=”:Locate3,4,Y◢Cls:“SJGC=”:M◢。
卡西欧5800道路工程综合程序
卡西欧fx-5800P坐标正反算、高程及边坡放样程序《ZS》正算主程序Lb1 0:“K=”?S(所求里程):“PJ=”?Z(偏距,左偏负右偏正):Prog “PM-SJ”: Abs(S-O) → W:Prog "SUB1"↙Fix 3: "XS=":X◢(计算得X坐标)"YS=":Y◢(计算得Y坐标)Norm 2:"FW=":F-90→F:F►DMS◢(所求里程设计线处切线方位角)Prog“SQX-SJ”: Prog“SQX”: Fix 3: “H=”:H◢(设计线处该里程的设计高程)Norm 2:Goto 0《FS》反算主程序Lb1 0:“GK=”?S(所求点的估计里程,目的调取数据库):?X:?Y:Prog“PM-SJ”: X →I: Y→J:Prog "SUB2":Fix 3:"K=": O+W→S◢(所求点的里程)"PJ=": Z◢(所求点的偏距,左偏负右偏正)Prog“SQX-SJ”:Prog“SQX”:“H=”:H◢(反算求的里程设计线处设计高程)Norm 2↙Goto 0(此处的Goto 0做《LJWF-2JBP》路基挖方2级边坡放样的子程序时要去掉)《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+Zcos(F)→ X:Y+Zsin(F)→Y《SUB2》反算子程序G-90→T: Abs((Y-V)cos(T)-(X-U)sin(T)) → W: 0→ Z:Lbl 0:Prog "SUB1":T+QEW(C+WD) →L:(J-Y)cos(L)-(I-X)sin(L) → Z:If AbsZ<0.000001:then Goto1:Else W+Z→W:Goto 0:If End←┘Lbl 1:0→Z:Prog "SUB1":(J-Y)÷sin(F)→ Z《PM-SJ》子程序(平面线形数据库)If S≥34600(线元起点里程)And S<35613.616(线元止点里程):Then 2467949.131 →U(线元起点X坐标):536385.574 →V(线元起点Y坐标):34600 →O(线元起点里程):202°10°11.1°→G(线元起点切线方位角):1013.616 →H(线元长度):10^(45)→P (线元起点曲率半径):10^(45)→R(线元终点曲率半径):0 →Q(线元左右偏标志:左负右正,直线为0):If End ↙If S ≥35613.616And S<35723.616:Then 2467010.452→U:536003.084→V:35613.616→O:202°10°11.1°→G:110→H:10^(45)→P:2800→R:-1→Q:If End←┘If S≥35723.616And S<36520.648:Then 2466908.316→U:535962.244→V:35723.616→O:201°02°39.47°→G:797.032→H:2800→P:2800→R:-1→Q:If End←┘If S≥36520.648 And S<36630.648:Then 2466133.988 →U:535785.048→V:36520.648 →O:184°44°5.31°→G:110 →H:2800→P:10^(45)→R:-1 →Q:If End ↙If S ≥36630.648And S<36687.250:Then2466024.256→U:535777.405→V:36630.648→O:183°36°33.68°→G:56.602→H:10^(45)→P:10^(45)→R:0→Q:If End ←┘(可以一直往下加数据库)《SQX-SJ》子程序(竖曲线数据库)If S≤36687.250(竖曲线终点里程):Then +0.0053(前坡度:上坡正下坡负)→E:-0.004(后坡度:上坡正下坡负)→F:15000→R(竖曲线半径):35500→G(变坡点里程):98.920→C(变坡点高程):If End←┘(可以一直往下加数据库)《SQX》子程序(竖曲线计算公式)E-F→J:If J>0:Then-R→R:Else R→R:Abs(R×J÷2)→T:If End←┘If S≤G-T:Then G-S→L:C-LE→H:If End←┘If S>G-T And S≤G: Then G-S→L:(S+T-G)^2÷2÷R→N:C-LE+N → H:If End←┘If S>G And S≤G+T: Then S-G→L:(G +T- S)^2÷2÷R→N:C+LF+N → H:If End←┘If S>G+T :Then S-G→L: C+LF → H:If End←┘三、使用说明(1) 以道路中线的前进方向(即里程增大的方向)区分左右;当线元往左偏时,Q=-1;当线元往右偏时,Q=1;当线元为直线时,Q=0。
自用5800P全线任意里程中边桩正反算及高程计算带超欠挖
FX5800P全线任意里程中边桩坐标正反算(加了数据库)本程序非本人原创,结合上传者长处,进行改编,愿收获和大家共享,不足之处多多指教。
含竖曲线及隧道超欠挖,本程序由内蒙@文哥和师父阿玖哥共同改编完成主程序 ZBJSLbl 6:"1.SZ→ XY":"2.XY→ SZ":?S:?N:“DYPQXSJK=”?→A:A=1 =>Prog“ZP1”:A=2=>Prog“ZP2”: A=3=>Prog“YP1”: A=4=>Prog“YP2”1÷P→C:(P-R)÷(2HPR) →D:180÷π→E:N=1 =>Goto 1: Goto 2Lbl 1:?Z: ?T:Abs(S-O)→W: Prog"SUB1":"XS=":X◢"YS=":Y◢"FS=":F-90 ►DMS◢“XC” ?C:“YC” ? E:0→I:0→J:Pol(X-C,Y-E):“I=”:I◢If J∠0: Then “J=”: J+360►DMS◢IfEndIf J >0:Then “J=” :J►DMS◢IfEnd:“DYSQXSJK=”?→B:B=1=>Prog“ZG1”:B=2=>Prog“ZG1”: B=3=>Pro g“YG1”: B=3=>Prog“YG1”:Goto 6Lbl 2X:Y:X→I:Y→J:Prog"SUB2":O+W→S:Cls:"S=":S◢"Z=":Z◢“DYSQXSJK=”?→B:B=1=>Prog“ZG1”:B=2=>Prog“ZG1”: B=3=>Prog“YG1”: B=3=>Prog“YG1”:Goto 6如不想用偏角法放样可直接删除“XC” ?C:“YC” ? E:0→I:0→J:Pol(X-C,Y-E):“I=”:I◢直接里程推坐标。
fx-5800P坐标高程计算程序交点法17页
CASIOfx-5800P单交点通用型曲线坐标高程计算程序一、说明:本程序采用交点法计算道路基本型曲线坐标及高程,在建立好数据库后,能连续计算全线各桩号的中边桩坐标及高程。
本程序共包括一个主程序和九个子程序,其中有坐标计算、高程计算、坡口坡脚线放样,锥坡放样坐标计算等子程序。
二、内容:1.PM5-3 XYZJS(主程序)“SINGLE BASIC TYPE CURVE”◢“METHOD OF COORDINATE PM5-3”◢Deg:ClrStat:FreqOn:Fix 340→DimZ“INPUT(0) Or DATA(Else)”?N“FUNCTION”?PProg “SUB5-35”If Z[30]<0:Then -1→Z[20]:Else 1→Z[20]:IfEndAbs(Z[30])→DPol(Z[26]-Z[28],Z[27]-Z[29]):ClsIf J<0: Then J+360→Z[11]:Else J→Z[11]:IfEnd 计算ZH→JD 方位角Z[11]+Z[30]+180→Z[16] 计算HZ→JD方位角If Z[16]>360:Then Z[16]-360→Z[12]:Else Z[16]→Z[12]:IfEndIf Z[12]>180:Then Z[12]-180→Z[23]:Else Z[12]+180→Z[23]:IfEnd计算JD→HZ方位角S2÷(24R)-S4÷(2688R3)→Z[1] 计算第一缓和曲线内移值0.5S-S3÷(240R2)+S5÷(34560R4)→Z[2] 计算第一缓和曲线切线增长值T2÷(24R)-T4÷(2688R3)→Z[3] 计算第二缓和曲线内移值0.5T-T3÷(240R2)+T5÷(34560R4)→Z[4] 计算第二缓和曲线切线增长值(R+Z[3])÷sin(D)-(R+Z[1])÷tan(D)+Z[2]→Z[5] 计算第一切线长(R+Z[1])÷sin(D)-(R+Z[3])÷tan(D)+Z[4]→Z[6] 计算第二切线长90S÷(πR)→Z[7]:90T÷(πR)→Z[8] 计算第一、二缓和曲线偏角πR(D-Z[7]-Z[8])÷180→Z[9] 计算圆曲线长度S+T+Z[9]→Z[10] 计算曲线总长度Z[25]-Z[5]→List X[1] 计算直缓点桩号1→K:Prog “SUB5-37”List X[1]+S→List X[2]:List X[2]+Z[9]→List X[3] 计算缓圆点、圆缓点桩号Z[26]-Z[5]cos(Z[11])→List Y[1]:Z[27]-Z[5]sin(Z[11])→List Freq[1]If S≠0:Then“ZH PEG(m)=”:List X[1]◢显示直缓点桩号Else “ZY PEG(m)=”:List X[1]◢显示直圆点桩号IfEnd“X(m)=”:List Y[1]◢显示直缓(圆)点X坐标“Y(m)=”:List Freq[1]◢显示直缓(圆)点Y坐标“H(m)=”:Z[24]◢显示直缓(圆)点Z坐标“FWJ=”:Z[11] ►DMS◢显示直缓(圆)点切线方位角1→K:Z[11]→Z[13]:Prog “SUB5-34”调子程序计算直缓点边桩坐标2→K:If S≠0:Then Prog “SUB5-31”调子程序计算缓圆点中边桩坐标Else List Y[1]→List Y[K]:List Freq[1]→List Freq[K]Z[11]→Z[17]:IfEnd3→K: Prog “SUB5-32”调子程序计算圆缓点中边桩坐标List X[1]+Z[10]→List X[4] 计算缓直点桩号4→K:Prog “SUB5-37”If T≠0:Then Z[26]+Z[6]cos(Z[23])→List Y[4]Z[27]+Z[6]sin(Z[23])→List Freq[4] 计算缓直点中桩坐标“HZ PEG(m)=”:List X[4]◢显示缓直(圆)点桩号“X(m)=”:List Y[4]◢显示缓直(圆)点X坐标“Y(m)=”:List Freq[4]◢显示缓直(圆)点Y坐标“H(m)=”:Z[24]◢显示缓直(圆)点Z坐标“FWJ=”:Z[23] ►DMS◢显示缓直点切线方位角Z[23]→Z[13]:Prog “SUB5-34”调子程序计算缓直(圆)点边桩坐标Else List Y[3]→List Y[K]:List Freq[3]→List Freq[K]:IfEndIf R<30: Then 5→I: Else If R<60: Then 10→I: Else 20→I: IfEnd :IfEnd “INT DIST(m)=”?OIf O>0: Then O→I: IfEnd“ONLY CALC +PEG(1)”?→GIf G=1:Then Goto 1:IfEndK+1→K:Int(Z[31]÷I)I+I→List X[K]If List X[K]>List X[1]:Then Prog “SUB5-31”:Else Prog “SUB5-33”:IfEnd DoK+1→K:List X[K-1]+I→List X[K]If List X[K]≤ List X[1]:Then Prog “SUB5-33”Else If List X[K] ≤ List X[2]:Then Prog “SUB5-31”Else If List X[K] ≤ List X[3]:Then Prog “SUB5-32”Else If List X[K] ≤ List X[4]:Then Prog “SUB5-31”Else Prog “SUB5-33”IfEnd:IfEnd:IfEnd:IfEndLpWhile List X[K]+I<Z[32]Lbl 1Do“+PEG(m)=”?FIf F<Z[31]:Then Break:IfEndIf F>Z[32]:Then Break:IfEndK+1→K:F→List X[K]If List X[K]≤ List X[1]:Then Prog “SUB5-33”Else If List X[K] ≤ List X[2]:Then Prog “SUB5-31”Else If List X[K] ≤ List X[3]:Then Prog “SUB5-32”Else If List X[K] ≤ List X[4]:Then Prog “SUB5-31”Else Prog “SUB5-33”IfEnd:IfEnd:IfEnd:IfEndLpWhile F>0“PM5-3→END”2.SUB5-31(缓和段坐标计算子程序)If List X[K] ≤ List X[2]:Then S→H:List X[K]-List X[1]→LElse T→H:List X[4]-List X[K]→L:IfEndIf H≠0:Then L-L5÷(40R2H2)+L9÷(3456R4H4)-L13÷(599040R6H6)→X L3÷(6RH)-L7÷(336R3H3)+L11÷(42240R5H5)-L15÷(9676800R7H7)→Y √(X2+Y2)→Z[14]:tan-1(Y÷X)→Z[15]Else 0→Z[14]:0→Z[15]:IfEndIf List X[K]≤ List X[2]:Then Z[11]+Z[20]Z[15]→Z[16]List Y[1]+Z[14]cos(Z[16])→List Y[K]List Freq[1]+Z[14]sin(Z[16])→List Freq[K]If H≠0:Then Z[11]+90Z[20]L2÷(πRH)→Z[13]Else Z[11]→Z[13]:IfEndIf List X[K] =List X[2]:Then Z[13]→Z[17]:IfEndElse Z[12]-Z[20]Z[15]→Z[16]List Y[4]+Z[14]cos(Z[16])→List Y[K]List Freq[4]+Z[14]sin(Z[16])→List Freq[K]If H≠0:Then Z[12]-90Z[20]L2÷(πRH)→Z[13]:Else Z[12]→Z[13]:IfEndZ[13]+180→Z[13]:IfEndIf Z[13]<0:Then Z[13]+360→Z[13]:Else If Z[13]>360:Then Z[13]-360→Z[13]:IfEnd:IfEndProg “SUB5-37”If List X[K] =List X[2]:Then “HY PEG(m)=”Else If G=1:Then “+PEG(m)=”Else“INT PEG(m)=”:IfEnd:IfEndList X[K]◢显示桩号“X(m)=”:List Y[K]◢显示X坐标“Y(m)=”:List Freq[K]◢显示Y坐标“H(m)=”:Z[24]◢显示Z坐标“FWJ=”:Z[13] ►DMS◢显示切线方位角Prog “SUB5-34”:Return3.SUB5-32(圆曲线曲线段坐标计算子程序)List X[K]-List X[2]→L90L÷(πR)→Z[15]:2Rsin(Z[15])→Z[14]Z[17]+Z[20]Z[15]→Z[16]List Y[2]+Z[14]cos(Z[16])→List Y[K]List Freq[2]+Z[14]sin(Z[16])→List Freq[K]Z[17]+2Z[20]Z[15]→Z[13]If Z[13]<0:Then Z[13]+360→Z[13]:Else If Z[13]>360:Then Z[13]-360→Z[13]:IfEnd:IfEndProg “SUB5-37”If List X[K] =List X[3]:Then If T≠0:Then “YH PEG(m)=”Else “YZ PEG(m)=”:IfEndElse If G=1:Then “+PEG(m)=”Else“INT PEG(m)=”:IfEnd:IfEndList X[K]◢显示桩号“X(m)=”:List Y[K]◢显示X坐标“Y(m)=”:List Freq[K]◢显示Y坐标“H(m)=”:Z[24]◢显示Z坐标“FWJ=”:Z[13] ►DMS◢显示切线方位角Prog “SUB5-34”:Return4.SUB5-33(直线段坐标计算子程序)If List X[K]≤ List X[1]:Then List X[1]-List X[K]→LList Y[1]-Lcos(Z[11])→List Y[K]List Freq[1]-Lsin(Z[11])→List Freq[K]Z[11] →Z[13]Else List X[K]-List X[4]→LList Y[4]+Lcos(Z[23])→List Y[K]List Freq[4]+Lsin(Z[23])→List Freq[K]Z[23]→Z[13]:IfEndProg “SUB5-37”If G=1:Then“+PEG(m)=”Else“INT PEG(m)=”:IfEndList X[K]◢显示桩号“X(m)=”:List Y[K]◢显示X坐标“Y(m)=”:List Freq[K]◢显示Y坐标“H(m)=”:Z[24]◢显示Z坐标“FWJ=”:Z[13] ►DMS◢显示切线方位角Prog “SUB5-34”:Return5.SUB5-34(边桩坐标计算子程序)“WL(m),0 NO=”?MIf M<0:Then Prog “SUB5-39”Else If M>0:Then “ANGLE→L(Deg)=”?AZ[13]-A→Z[21]List Y[K]+Mcos(Z[21])→Z[18]List Freq[K]+Msin(Z[21])→Z[19]“XL(m)=”:Z[18]◢“YL(m)=”:Z[19]◢If P=1:Then Prog “SUB5-36”:IfEndElse NO:IfEnd:IfEnd“WR(m),0 NO=”?WIf W<0:Then Prog “SUB5-39”Else If W>0:Then “ANGLE→R(Deg)=”?AZ[13]+A→Z[22]List Y[K]+Wcos(Z[22])→Z[18]List Freq[K]+Wsin(Z[22])→Z[19]“XR(m)=”:Z[18]◢“YR(m)=”:Z[19]◢If P=1:Then Prog “SUB5-36”:IfEndElse NO:IfEnd:IfEndReturn6.SUB5-35(平曲线要素数据库子程序,可扩充为多条线路)If N=2:Then Goto 1:IfEndIf N=0:Then Goto 2:IfEnd“+PEG(m)=”?→FIf F≤47129.607:Then 第一交点桩号→Z[25]:交点X坐标→Z[26]:交点Y坐标→Z[27]:前交点X坐标→Z[28]:前交点Y坐标→Z[29]:转角(左负右正)→Z[30]:第一缓和曲线长度→S:圆曲线半径→R:第二缓和曲线长度→T:本平曲线起点桩号→Z[31]:本平曲线终点桩号→Z[32]:ReturnElse If F≤48000:Then 第二交点桩号→Z[25]:交点X坐标→Z[26]:交点Y坐标→Z[27]:前交点X坐标→Z[28]:前交点Y坐标→Z[29]:转角(左负右正)→Z[30]:第一缓和曲线长度→S:圆曲线半径→R:第二缓和曲线长度→T:本平曲线起点桩号→Z[31]:本平曲线终点桩号→Z[32]:ReturnElse If F≤49009.82:Then 第三交点桩号→Z[25]:交点X坐标→Z[26]:交点Y坐标→Z[27]:前交点X坐标→Z[28]:前交点Y坐标→Z[29]:转角(左负右正)→Z[30]:第一缓和曲线长度→S:圆曲线半径→R:第二缓和曲线长度→T:本平曲线起点桩号→Z[31]:本平曲线终点桩号→Z[32]:ReturnElse If F≤50200:Then 第四交点桩号→Z[25]:交点X坐标→Z[26]:交点Y坐标→Z[27]:前交点X坐标→Z[28]:前交点Y坐标→Z[29]:转角(左负右正)→Z[30]:第一缓和曲线长度→S:圆曲线半径→R:第二缓和曲线长度→T:本平曲线起点桩号→Z[31]:本平曲线终点桩号→Z[32]:Return IfEnd:IfEnd:IfEnd:IfEndLbl 1:If F≤47129.607:Then 第一交点桩号→Z[25]:交点X坐标→Z[26]:交点Y坐标→Z[27]:前交点X坐标→Z[28]:前交点Y坐标→Z[29]:转角(左负右正)→Z[30]:第一缓和曲线长度→S:圆曲线半径→R:第二缓和曲线长度→T:本平曲线起点桩号→Z[31]:本平曲线终点桩号→Z[32]:ReturnElse If F≤48000:Then 第二交点桩号→Z[25]:交点X坐标→Z[26]:交点Y坐标→Z[27]:前交点X坐标→Z[28]:前交点Y坐标→Z[29]:转角(左负右正)→Z[30]:第一缓和曲线长度→S:圆曲线半径→R:第二缓和曲线长度→T:本平曲线起点桩号→Z[31]:本平曲线终点桩号→Z[32]:Return:Else If F≤49009.82:Then 第三交点桩号→Z[25]:交点X坐标→Z[26]:交点Y坐标→Z[27]:前交点X坐标→Z[28]:前交点Y坐标→Z[29]:转角(左负右正)→Z[30]:第一缓和曲线长度→S:圆曲线半径→R:第二缓和曲线长度→T:本平曲线起点桩号→Z[31]:本平曲线终点桩号→Z[32]:ReturnElse If F≤50200:Then 第四交点桩号→Z[25]:交点X坐标→Z[26]:交点Y坐标→Z[27]:前交点X坐标→Z[28]:前交点Y坐标→Z[29]:转角(左负右正)→Z[30]:第一缓和曲线长度→S:圆曲线半径→R:第二缓和曲线长度→T:本平曲线起点桩号→Z[31]:本平曲线终点桩号→Z[32]:ReturnIfEnd:IfEnd:IfEnd:IfEndLbl 2“JD PEG(m)=”?→Z[25]“JD X(m)=”?→Z[26]“JD Y(m)=”?→Z[27]“ZD X(m)=”?→Z[28]“ZD Y(m)=”?→Z[29]“TURNING ANGLE,-L +R(Deg)=”?→Z[30]“Lh1(m)=”?S“R(m)=”?R“Lh2(m)=”?T“START PEG(m)=”?→Z[31] 本平曲线起点桩号“END PEG(m)=”?→Z[32] 本平曲线终点桩号Return7.SUB5-36(锥坡放样坐标计算子程序)“ZHUIPO FANGYANG”◢“LONG R(m)=”?U 锥坡椭圆的长轴半径U“FW→LONG(Deg)=”?C 锥坡长轴的方位角C“SHORT R(m)=”?V 锥坡椭圆的短轴半径V“LONG→SHORT ANGLE(Deg)=”?Z 锥坡长半轴与短半轴的夹角If Z≥0:Then 1→D:Else -1→D:IfEnd 短半轴在长半轴右侧夹角为正,反之则为负U-V→L 计算锥坡椭圆长短轴的半径差Lbl 1“ADD ANGLE(Deg)=”?J 取锥坡椭圆的等分角度If J>Abs(Z):Then Return:IfEndC+DJ→HZ[18]+Vcos(H)→X:Z[19]+Vsin(H)→YIf J≤90:Then J→H:C→Q:Else 180-J→H:C+180→Q:IfEndLcos(K)→EX+Ecos(Q)→X 计算锥坡椭圆等分角度所对应的椭圆弧点X坐标Y+Esin(Q)→Y 计算锥坡椭圆等分角度所对应的椭圆弧点Y坐标“X(m)=”:X◢显示X坐标“Y(m)=”:Y◢显示Y坐标Goto 18.高程计算子程序(SUB5-37)Prog “SUB5-38”0.5Z[35]Abs(0.01(Z[37]-Z[36]))→Z[38]If Z[37]>Z[36]:Then 1→D:Else -1→D:IfEndIf List X[K]<Z[33]:Then -0.01Z[36]→H:Else 0.01Z[37]→H:IfEndAbs(Z[33]-List X[K])→LIf L>Z[38]:Then Z[34]+HL→Z[24]:Else Z[34]+HL+D(Z[38]-L)2÷(2Z[35])→Z[24]:IfEndReturn9.高程数据库子程序:SUB5-38(两条线路,可扩充为多条线路)If N=0:Then Goto 1:Else If N=2:Then Goto 2:IfEnd:IfEndIf List X[K]≤46500:Then 46150→Z[33]:361.26→Z[34]:40000→Z[35]:-0.3→Z[36]:-1.2→Z[37]:ReturnElse If List X[K]≤47200:Then 46800→Z[33]:353.46→Z[34]:20000→Z[35]:-1.2→Z[36]:1→Z[37]:ReturnElse If List X[K]≤48400:Then 47500→Z[33]:360.46→Z[34]:20000→Z[35]:1→Z[36]:-1.6→Z[37]:ReturnElse If List X[K]≤49600:Then 48700→Z[33]:341.26→Z[34]:10000→Z[35]:-1.6→Z[36]:2.45→Z[37]:ReturnElse 49800→Z[33]:368.21→Z[34]:150000→Z[35]:2.45→Z[36]:2.7→Z[37]:Return IfEnd:IfEnd:IfEnd:IfEndLbl 1:“C PEG(m)=”?→Z[33]“C H(m)=”?→Z[34]“R(m)=”?→Z[35]“I1=”?→Z[36]“I2=”?→Z[37]ReturnLbl 249840→Z[33]:369.19→Z[34]:100000→Z[35]:2.45→Z[36]:2.8→Z[37]:Return10.SUB5-39(坡口坡脚线坐标计算子程序)“TIANWA LINE”◢“L(1) Or R(Else)=”?C 选择中线左右,1为左,其它为右“DIST→ZX(m)=”?U 起坡点与中桩距离常数“H→ZX(m)=”?V 起坡点与中桩高差常数“T(1) Or W(Else)=”?Z 填方边坡为1,其它为挖方边坡“i=”?E 填方或挖方边坡坡度Lbl 1“FY DIST(m)=”?Q 实际计算距离If C=1:Then List Y[K]+Qcos(Z[13]-90)→Z[18]List Freq[K]+Qsin(Z[13]-90)→Z[19]Else List Y[K]+Qcos(Z[13]+90)→Z[18]List Freq[K]+Qsin(Z[13]+90)→Z[19]:IfEnd“X(m)=”:Z[18]◢“Y(m)=”:Z[19]◢Q-U→L: LE→BIf Z=1:Then Z[24]-V-B→Z[39]:Else Z[24]+V+B→Z[39]:IfEnd“JS H(m)=”:Z[39]◢计算出应有高程“SC H(m)=”?→Z[40] 输入实测高程Z[40]-Z[39]→H“GC(m)=”:H◢显示实测高程与计算高程的差异If Abs(H)<0.05:Then “FANGYANG OK!”◢Return:Else Goto 1:IfEnd希望以上资料对你有所帮助,附励志名言3条:1、宁可辛苦一阵子,不要苦一辈子。
CASIO fx-5800P计算器路线坐标高程计算程序
CASIO fx—5800P计算器路线坐标计算程序(单个交点)主程序名CALXY (计算中桩、边桩坐标)Lbl 1:“ZZ”? →Z[27] :“D(-+m)”? →D:If D≠0 :Then “∠(DMS)”? →V:Ifend』If Z[27]≤Z[17]:Then Z[18]+ (Z[27] —Z[17]) Cos( F)+D Cos( F+V):“X=”:Ans▲Z[19]+ (Z[27] —Z[17]) Sin( F )+D Sin( F+V):“Y=”:Ans▲:Ifend』If Z[27]>Z[17] And Z[27]≤Z[20]:Then Z[27] —Z[17] →L:Prog “HHXY”:Z[18] +I Cos( F+ JH)+D Cos( F+WH+V):“X=”:Ans▲:Z[19] +I Sin(F+ JH)+D Sin( F+WH+V):“Y=”:Ans▲:Ifend』If Z[27]>Z[20] And Z[27]≤Z[24] —Z[6]:Then Z[27] —Z[20] →L:Prog “YUXY”:Z[21] +I Cos( Z[23]+ JH)+D Cos( Z[23]+WH+V):“X=”:Ans▲:Z[22] +I Sin(Z[23]+ JH)+D Sin( Z[23]+WH+V):“Y=”:Ans▲:Ifend』If Z[27]>Z[24] —Z[6] And Z[27]≤Z[24]:Then Z[24] —Z[27] →L:Prog “HHXY”:Z[25] +I Cos( C—JH)—D Cos( C—WH+V):“X=”:Ans▲:Z[26] +I Sin(C—JH)—D Sin( C—WH+V):“Y=”:Ans▲:Ifend』If Z[27] >Z[24]:Then Z[25] —(Z[27] —Z[24]) Cos( C )—D Cos( C+V):“X=”:Ans▲Z[26] —(Z[27] —Z[24]) Sin( C —D Sin( C+V):“Y=”:Ans▲:Ifend』Goto 1子程序名JD (输入曲线参数,计算曲线要素)30→Dim Z:Fix 5:“JD”? →Z[1] :“XJD”? →Z[2] :“YJD”? →Z[3]:“F0(DMS)”? →F:“A(-+ DMS)”?→Z[4]:“R”? →R:“LH1”? →Z[5]:“LH2”? →Z[6]:√ ̄(Z[4]2)→A:Int(Z[4] ÷A)→H』Z[5] →S:Prog “PQ”:Q →Z[7]:P→Z[8]:B →Z[9]:R →S:Prog “PQ”:Q →Z[10]:P→Z[11] :B →Z[12] 』(R+ Z[8])Tan(A÷2)+ Z[7] —(Z[8] —Z[11]) ÷Sin(A)→Z[13] :“T1=”:Ans ▲(R+ Z[11])Tan(A÷2)+ Z[10] —(Z[8] —Z[11])÷Sin(A)→Z[14] :“T2=”:Ans▲』√ ̄((Z[13] —Z[7])2+( R+ Z[8])2) —R →Z[15]:“E=”:Ans▲R( A —Z[9] —Z[12] )÷57.2958+ Z[5] + Z[6] →Z[16]:“L=”:Ans▲』Z[1] —Z[13]→Z[17]:Z[2] —Z[13]Cos( F) →Z[18]:Z[3] —Z[13] Sin( F) →Z[19]:If Z[5]>0 :then Z[17] +Z[5]→Z[20]:Z[5] →L:Prog “HHXY”:Z[18] +I Cos( (F+ JH))→Z[21]:Z[19] +I Sin( (F+ JH))→Z[22]:(F+ WH)→Z[23] :Else Z[17]→Z[20]:Z[18]→Z[21]:Z[19]→Z[22]:F→Z[23]:Ifend』Z[17] + Z[16]→Z[24]:Z[2] +Z[14] Cos( (F+ Z[4]))→Z[25]:Z[3] +Z[14] Sin( (F+ Z[4]))→Z[26]:F+ Z[4] —180→C』Prog “CALXY”』子程序名PQS÷2—S3÷(240 R2)→Q:S2÷(24 R)—S4÷(2384 R3)→P:28.6479S ÷R→B』子程序名HHXYL—L5÷(40S2 R2)+L9÷(3456 R4S4) →X:L3÷(6S R)—L7÷(336S3 R3)+L11÷(42240 R5S5)→Y:28.6479L2÷(S R) →W:Pol(X,Y)』子程序名YUXY57.2958L÷R →W:RSin(W)→X:R(1—Cos(W))→Y:Pol(X,Y)』CASIO fx—5800P计算器路线坐标计算程序(单个交点)使用说明首先运行子程序“JD”,输入曲线参数,计算曲线要素。
卡西欧5800现场高程计算程序
卡西欧5800现场高程计算程序卡西欧5800P高程高差现场计算小程序程序功能目的:输入水准仪现场前视读数及设计快速计算出该点的实测高程及与设计值的高差!程序名: 0-GCGC-JSLbI A:Cls:“HS=”?C“BM H(M)=”?G:C+G→SLbI B:Cls: “QS=”?D:If D≥0 :Then Goto D:Else Goto C:IfEndLbI C: M→G:Abs(D)→C: Goto ALbI D:S-D→M: Cls: “HS=”:“SXG=”: “QS =”:“H=”:Locate 6,1,C: Locate 6,2,S: Locate 6,3,D: Locate 6,4,M◢Cls: “1 =>JiSuan,2=> QXGT”?U: U=1=> Goto E: U=2=> Goto FLbI E CLS:“H(SJ)=”?J:“QS=”: “H=”: “H(SJ)=”: “h=” Locate 6,1,D: Locate 6,2,M:Locate 6,3,J: Locate 6,4,J-M-0◢(0可根据实际情况输入,如:垫层厚度为20cm,要求计算路基标高,则输入0. 2)Goto BLbI F CLS:Prog “0-QXGT-GC”: H→J: “H=”: “h=”: “h(Z)=”: “h(Y)=” Locate 6,1,M: Locate 6,2,J-M-0:Locate 6,3,V-M-0: Locate 6,4,W-M-0◢(0可根据实际情况输入,如:垫层厚度为20cm,要求计算路基标高,则输入0. 2)Goto B符号说明:HS? 输入水准点上之后视读数BM H(M)?输入水准点之基准点高程SXG= 显示视线高程QS?输入该点的前视读数(注:当有转点时则转点的前视读数输入后显示HC为转点的高程,紧接着当再次提示QS?时将转点所测的后视读数以负值输入一次,再EXE,再输入后视读数,即可显示转点后的视线高程,即可进行转点后的正常计算!)~ 1 / 2 ~QS=显示所输入的该点的前视读数HC=显示计算所得的该点的实测高程H(SJ) 为输入该点的设计高程“h=”为中心线设计高程与实际高程差值(-值则表示该点应该降低,正值表示该点需加高)“h(Z)=”为道路左侧设计高程与实际高程差值“h(Y)=”为道路右侧设计高程与实际高程差值1 =>JiSuan,2=>QXGT 输入1为手动计算,输入2为提取全线贯通高程计算。
MXK(CASIO5800P) 五种竖曲线高程计算
竖曲线高程计算1. fx5800p全线高程计算SQXGCJSDeg:Fix 3Lbl 1:?K:“BJ”?B:“JGC”?GPorg “SQXSJK”If K≤A:Then C+(D-K)×E-G→H:Goto 2:Else K≤D =>“H”C+(K-A)÷2÷R+(D-K)×E-G→H:Goto 2:If K≤I:Then C-(I-K)2÷2÷R+(K-D)×F-G→H:Goto 2Lbl 2:B?“SJGC=”:H◢Goto 1“BZGC=”:H-B×横破比◢ReturnSQXSJKLbl 0If K≤曲线终点:Then曲线起点→A:交点高程→C:交点桩号→D:前坡比→E:后坡比→F:曲线终点→I:半径→R(EF下坡正上坡负)K=桩号,BJ=边距,JGC=结构层厚度2.公路路线高程通用程序(CASIO5800)公路路线高程通用程序(CASIO5800)作者:李艳阳Fx-5800路线高程程序GCQX-000 主程序Lbl 1: Prog“GCQX-SUB000” ↙If R>10^8: Then B+(S-A)(D-B) ÷(C-A)→H: Goto2: IfEnd↙Pol(D-B,C-A):J-Sin-1(I÷2÷R)→F:B+R Cos(F+90)→X:A+R Sin(F+90)→Y: Sin-1((S-Y) ÷R)→M:X+R Cos(M)→H: Goto2↙Lbl 2: “H=”:H: Goto1GCQX-000 数据库If S<***: Then ***→A(线元起点里程): ***→B(线元起点高程): ***→R(线元半径左-右+): ***→C(线元终点里程): ***→D(线元终点高程): Goto 0:IfEnd↙If S<***: Then ***→A: ***→B: ***→R: ***→C: ***→D: Goto 0:IfEnd↙………………………..Lbl 0↙3.CASIO4850)中边桩高程连续计算及放样**可计算两种形式的超高[SJG]————主程序Defm 6:Lbi 0:S“BM+HS”(视线高):E“LGP”(路拱坡度):V“JGC”(结构层厚度): {B}:B“K”(查询桩号):Prog“SQ”:T=RAbs(P-N) ÷2:X=1:N>P=>X=-1⊿←┘B<Y-T=>Z[1]=0:Z[2]=N: ≠>B<Y=>Z[1]=1:Z[2]=N: ≠>B<Y+T=>Z[1]=1:Z[2]=P: ≠>Z[1]=0:Z[2]=P⊿⊿⊿←┘{W}:W“ZBJ”(中桩到边桩的距离):Prog“YD”:Goto 0[YD]—————引导程序B≤不设超高的路段终点桩号=> Prog“G1”: ≠>B≤设置超高的路段终点桩号=> Prog“XZ”:……以此类推⊿(有几个≠>就有几个⊿)[SQ]—————竖曲线数据库B≤下一竖曲线起点桩号=>H(本曲线变坡点高程):Y(变坡点桩号):R(竖曲线半径):N(前纵坡坡度):P(后纵坡坡度):≠> B≤下一竖曲线起点桩号=>H(本曲线变坡点高程):Y(变坡点桩号):R(竖曲线半径):N(前纵坡坡度):P(后纵坡坡度):……⊿(有几个≠>就有几个⊿)[XZ]—————平曲线数据库B≤=>A(直缓点桩号):D(超高坡度):L(半幅路面宽):G(圆缓点桩号):O(缓直点桩号):Z(加宽值):F=±1(旋转方式:+1中轴旋转、-1边轴旋转):Z[5]= ±1(路线弯向:+1右转、-1左转): ≠> B≤=>A(直缓点桩号):D(超高坡度):L(半幅路面宽):G(圆缓点桩号):O(缓直点桩号):Z(加宽值):F=±1(旋转方式:+1中轴旋转、-1边轴旋转):Z[5]= ±1(路线弯向:+1右转、-1左转):……C=O-G: Goto 1⊿(有几个≠>就有几个⊿)←┘Lbi 1:F=1 => Prog“ZZXZ”: ≠>F=-1 => Prog“BZXZ” ⊿[ZZXZ]————中轴旋转横坡计算Lbi 0:M=Abs(B-A)Z÷C: Abs(B-A) >Abs(G-A) =>A=O: ≠>A=A⊿I=Abs(B-A)(E+D) ÷C-E:I≤E=>Goto 1: ≠>I≤D=>Goto 2: ≠>Goto 3⊿⊿⊿⊿Lbi 1:J=I:K=E: Prog“G2”: Goto 4←┘Lbi 2:J= AbsI:K= AbsI: Prog“G2”: Goto 4←┘Lbi 3:J=D:K=D: Prog“G2”: Goto 4←┘Lbi 4[BZXZ]———边轴旋转横坡计算Lbi 0:Q=2E÷(E+D)×C:M=Abs(B-A)Z÷C: Abs(B-A) >Abs(G-A) =>A=O: ≠>A=A⊿Abs(B-A) <Q=>Goto 1: ≠>Abs(B-A) <C=>Goto 2: ≠>Goto 3⊿⊿⊿⊿←┘Lbi 1: J=(Abs(B-A) ×2E÷Q-E:K=E: Prog“G2”: Goto 4←┘Lbi 2: J=(Abs(B-A)-Q)(D-E) ÷(C-Q)+E:J=AbsJ:K=AbsJ: Prog“G2”: Goto 4←┘Lbi 3: J=D:K=D: Prog“G2”: Goto 4←┘Lbi 4[G1]————不设超高的高程计算W=AbsW:Z[3]=H-V-Z[2](Y-B)+Z[1]X(T-Abs(Y-B))2÷(2R)-WE:Z[6]=S-Z[3]: “SJG=”:Pause 0: “SJQS=”:Z[6] ◢[G2]————设置超高的高程计算J=D=>M=Z: ≠>M=M⊿←┘Z[5]=1=> Goto 1: ≠>Z[5]=-1 => Goto 2⊿←┘Lbi 1:W<0=>Z[4]=J: ≠>W>0=>Z[4]=-K: Goto 3⊿⊿←┘Lbi 2: W<0=>Z[4]=-K: ≠>W>0=>Z[4]=J: Goto 3⊿⊿←┘Lbi 3:Z[3]=H-V-Z[2](Y-B)+Z[1]X(T-Abs(Y-B))2÷(2R)-WZ[4]:Z[6]=S-Z[3]: “SJG=”:Z[3]:pause0: “SJQS=”:Z[6] ◢说明:一、输入部分选择主程序。
fx5800p全线坐标正反算带高程计算程序线元法
曲线任意里程中边桩坐标正反算(CASIO fx-5800P计算器)程序一、程序功能及原理1.功能说明:本程序由一个主程序(TYQXJS)和五个子程——正算子程序(SUB-ZS)、反算子程序(SUB-FS)等构成,可以根据曲线段——直线、圆曲线、缓和曲线(完整或非完整型)的线元要素(起点坐标、起点里程、起点切线方位角、线元长度、起点曲率半径、止点曲率半径)及里程边距或坐标,对该曲线段范围内任意里程中边桩坐标进行正反算。
本修改版程序既可实现正算全线贯通,亦可实现反算全线贯通。
本程序在CASIO fx-5800P计算器运行。
2.计算原理:利用Gauss-Legendre 5点通用公式正算线路中边桩坐标、线外测点至曲线元起点和终点的垂距的符号是否相异(即Dca×Dcb<0=>该测点在其线元内)进行判断并利用该线元要素反算中桩里程、支距,最后计算出放样数据。
二、源程序1.主程序(TYQXJS)(A)Deg:fix 3119→DimZ“INPUT(0) Or DATA(Else)”?ILbl 0:“1.SZ=>XY,2.XY=>SZ,3.TF=>CK,4.SD=>FY,5.TW=>FY”?NIf N=1 Or N=5:Then Goto 1Else If N=2 Or N=3 Or N=4:Then Goto 2Else Goto 3IfEnd:IfEndLbl 1:“K(m)=”?SIf S<0:Then Goto 0:IfEnd“JL(m)=”?ZIf Z≠0:Then “ANGLE→R(Deg)=”?M:IfEndIf I=0:Then Prog “DAT1”:Else Prog “DAT2”:IfEndS-O→W:If W<0:Then Goto 0:Else If W>H:Then Goto 0:IfEnd:IfEndProg “SUB-ZS”:Prog “SUB-GC”If Z<0:Then“XL(m)=”:X◢“YL(m)=”:Y◢ If N=5:Then Prog “SUB-TW”:IfEndElse If Z>0:Then “XR(m)=”:X◢“YR(m)=”:Y◢If N=5:Then Prog “SUB-TW”:IfEndElse “X(m)=”:X◢“Y(m)=”:Y◢“Hs(m)=”:L◢“FWJ=”: F►DMS◢ IfEnd:IfEndLbl 2:“X(m)=”?X:If X<0:Then Goto 0:IfEnd“Y(m)=”?YIf N=3 Or N=4:Then “H(m)=”?→Z[2]:IfEndX→Z[4]:Y→Z[5]:90→MIf I=0:Then Prog “DAT1”G+QEH(C+HD)→F:1→J:U→Z[8J]:V→Z[8J+1]G-M→A:F-M→B:Prog “SUB-ZX1”:Goto BG+M→A:F+M→B:Prog “SUB-ZX1”:Goto B:IfEnd0→J:Lbl A: Isz JZ[8J+3]-M→A:Z[8(J+1)+3]-M→B:Prog “SUB-ZX1”If Z[6]Z[7]<0:Then J→J:Prog“DAT1” :Goto B:IfEndZ[8J+3]+M→A:Z[8(J+1)+3]+M→B:Prog “SUB-ZX1”If Z[6]Z[7]<0:Then J→J:Prog “DAT1” :Goto B:Else Goto A:IfEndLbl B:Prog“SUB-FS”O+W→S:Prog “SUB-GC”“K(m)=”:S◢“Hs(m)=”:L◢“JL(m)=”:Z◢If N=3:Then Prog “WIDE”:IfEndIf N=4:Then Prog “SDFY”:IfEndGoto 2Lbl 3:“TYQXJS→END”2. 正算子程序(SUB-ZS)(A3)0.1184634425→A: 0.2393143352→B:0.2844444444→Z[1]:0.0469100770→K:0.2307653449→L:0.5→Z[3]U+W(Acos(G+QEKW(C+KWD))+Bcos(G+QELW(C+LWD))+Z[1]cos(G+QEZ[3]W(C+Z[3]WD))+Bcos(G+QE(1-L)W(C+( 1-L)WD))+Acos(G+QE(1-K)W(C+(1-K)WD)))→XV+W(Asin(G+QEKW(C+KWD))+Bsin(G+QELW(C+LWD))+Z[1]sin(G+QEZ[3]W(C+Z[3]WD))+Bsin(G+QE(1-L)W(C+(1-L)WD))+Asin(G+QE(1-K)W(C+(1-K)WD)))→YG+QEW(C+WD)+M→FX+Zcos(F)→X:Y+Zsin(F)→YF-M→F:If F<0:Then F+360→F:IfEnd3. 反算子程序(SUB-FS)G-M→T:Abs((Y-V)cos(T)-(X-U)sin(T))→W:0→ZLbl C:Prog “SUB-ZS”T+QEW(C+WD)→L:(Z[5]-Y)cos(L)-(Z[4]-X)sin(L)→ZIf Abs(Z)<10-6:Then Goto D:Else W+Z→W:Goto C:IfEndLbl D:0→Z:Prog “SUB-ZS”:(Z[5]-Y)÷cos(F)→Z:Return4.高程计算子程序(SUB-GC)(A4)Prog “DAT3”0.5RAbs(0.01(E-D))→TIf E>D:Then 1→C:Else -1→C:IfEndIf S<A:Then -0.01D→W:Else 0.01E→W:IfEndAbs(A-S)→LIf L>T:Then B+WL→L:Else B+WL+C(T-L)2÷2÷R→L:IfEndReturn5. 垂距计算子程序(SUB-ZX1)(Z[5]-Z[8J+1])cos(A)-(Z[4]-Z[8J])sin(A)→Z[6](Z[5]-Z[8(J+1)+1])cos(B)-(Z[4]-Z[8(J+1)])sin(B)→Z[7]Return6.曲线元要素数据库:DAT1(两条线路,可扩充为多条线路)(A1)If I=0:Then Goto E: Else If I=2:Then Goto F:IfEnd:IfEndJ=1=>***→Z[8]:***→Z[9]:***→Z[10]:***→Z[11]:***→Z[12]:***→Z[13]:***→Z[14]:*** →Z[15]:IfEndJ=2=>***→Z[16]:***→Z[17]:***→Z[18]:***→Z[19]:***→Z[20]:***→Z[21]:***→Z[22]:***→Z[23]:IfEndJ=3=>***→Z[24]***→Z[25]:***→Z[26]:***→Z[27]:***→Z[28]:***→Z[29]:***→Z[30]:***→[31]:IfEnd………………………………………………..Goto HLbl F: J=1=>***→Z[8]:***→Z[9]:***→Z[10]:***→Z[11]:***→Z[12]:***→Z[13]:***→Z[14]:*** →Z[15]:IfEndJ=2=>***→Z[16]:***→Z[17]:***→Z[18]:***→Z[19]:***→Z[20]:***→Z[21]:***→Z[22]:***→Z[23]:IfEndJ=3=>***→Z[24]***→Z[25]:***→Z[26]:***→Z[27]:***→Z[28]:***→Z[29]:***→Z[30]:***→[31]:IfEnd(注:如有多个曲线元要素继续添加入数据库DAT1中)Goto GLbl E:“X0=”?U:“Y0=”?V:“S0=”?O:“F0=”?G:“LS=”?H:“R0=”?P:“RN=”?R:“Q=”?Q Lbl G:1÷P→C:(P-R)÷(2HPR)→D:180÷π→E:Return7.隧道放样子程序:SDFY5.5→A:8.5→B:L+1.5→CIf I=1:Then -1→K:Else 1→K:IfEnd 给左右隧道符号赋值1.25K→F:4.25K→L:7.25K→K 给各圆心距路线的偏距赋值Z[2]-C→D 计算测点至圆心的高差D,If D>A:Then Goto 1:Else If D<0:Then Goto 2:IfEnd:IfEndZ-L→E:Abs(E)→E:√(D2+E2)→W:W-A→T: 计算测点至圆心的平距E,实测半径W“R(m)=”:W◢“DR(m)=”:T◢If E≤A:Then D-√(A2-E2)→C:E-√(A2-D2)→L 计算测点水平偏移量L、垂直偏移量C“Dh(m)=”:C◢显示测点垂直偏移量C“DL(m)=”:L◢显示测点水平偏移量LElse E-√(A2-D2)→L“DL(m)=”:L◢IfEnd:ReturnLbl 1Z-L→E:Abs(E)→E:√(D2+E2)→W:W-A→T: 计算测点至圆心的平距E,实测半径W“R(m)=”:W◢“DR(m)=”:T◢If E≤A:Then D-√(A2-E2)→C“Dh(m)=”:C◢IfEnd:ReturnLbl 2:Abs(D)→D:Abs(Z)→Z:Abs(K)→K:Abs(F)→FIf Z>K:Then Z-F→E:Else Z+K→E:IfEnd√(D2+E2)→W:W-B→T“R(m)=”:W◢“Rc(m)=”:T◢If E≤B:Then D-√(B2-E2)→C:E-√(B2-D2)→L 计算测点水平偏移量L、垂直偏移量C “Dh(m)=”:C◢显示测点垂直偏移量C“DL(m)=”:L◢显示测点水平偏移量LElse E-√(B2-D2)→L“DL(m)=”:L◢显示测点水平偏移量LIfEnd:Return8.曲线元要素判断数据库:DAT2(两条线路,可扩充为多条线路)(A2)If I=2:Then Goto A:IfEndIf S<第一线元终点里程:Then 1→J:Prog “DAT1”:ReturnElse If S<第二线元终点里程:Then 2→J:Prog “DAT1”:ReturnElse If S<第三线元终点里程:Then 3→J:Prog “DAT1”:ReturnElse If S<第四线元终点里程:Then 4→J:Prog “DAT1”:ReturnIfEnd:IfEnd:IfEnd:IfEndIf S≥第四线元起点里程And S<第五线元终点里程:Then 5→J:Prog “DAT1”:Return .................................Else If S<第n线元里程:Then n→J:Prog “DAT1”:ReturnIfEnd:IfEnd:IfEnd:IfEndLbl AIf S<第一线元终点里程:Then 1→J:Prog “DAT1”:ReturnElse If S<第二线元终点里程:Then 2→J:Prog “DAT1”:ReturnElse If S<第三线元终点里程:Then 3→J:Prog “DAT1”:ReturnElse If S<第四线元终点里程:Then 4→J:Prog “DAT1”:ReturnIfEnd:IfEnd:IfEnd:IfEndIf S≥第四线元起点里程And S<第五线元终点里程:Then 5→J:Prog “DAT1”:Return Else If S<第n线元里程:Then n→J:Prog “DAT1”:ReturnIfEnd:IfEnd:IfEnd:IfEnd .................................9.高程数据库子程序:DAT3(两条线路,可扩充为多条线路)If I=0:Then Goto A:Else If I=2:Then Goto B:IfEnd:IfEndIf S≤46500:Then 46150→A:361.26→B:40000→R:-0.3→D:-1.2→E:ReturnElse If S≤47200:Then 46800→A:353.46→B:20000→R:-1.2→D:1→E:ReturnElse If S≤48400:Then 47500→A:360.46→B:20000→R:1→D:-1.6→E:ReturnElse If S≤49600:Then 48700→A:341.26→B:10000→R:-1.6→D:2.45→E:Return IfEnd:IfEnd:IfEnd:IfEndIf S>49600 And S≤50300:Then 49840→A:369.19→B:100000→R:2.45→D:2.8→E:Return Else If I=2:Then 49800→A:368.21→B:150000→R:2.45→D:2.7→E:ReturnIfEnd:IfEndLbl A:“C PEG(m)=”?→A“C H(m)=”?→B“R(m)=”?→R“I1=”?→D“I2=”?→EReturnLbl B49800→A:368.21→B:150000→K:2.45→D:2.7→E:Return10.填方路基宽度检查子程序(WIDE)“WIDTH CHECK”◢“H→MID(m)=”?→A 起坡点与中桩高差常数“DIST→MID(m)=”?→B 起坡点与中桩距离常数“i=”?→C 路基填筑坡度CAbs(Z[2]-L+A)→DAbs(Z)-B-D→E“DL(m)=”:E◢显示实有宽度与应有宽度之差值Return11.坡口坡脚线坐标计算子程序:SUB-TW“TIANWA LINE”◢“DIST→MID(m)=”?A 起坡点与中桩距离常数“H→MID(m)=”?B 起坡点与中桩高差常数“T(1) Or W(Else)=”?C 填方边坡为1,其它为挖方边坡“i=”?E 填方或挖方边坡坡度Abs(Z)-A→D: DE→KIf C=1:Then L-B-K→W:Else L+B+K→W:IfEnd“JS H(m)=”:W◢计算出应有高程“SC H(m)=”?→D 输入实测高程D-W→T“GC(m)=”:T◢显示实测高程与计算高程的差异Return三、使用说明1、规定(1) 以道路中线的前进方向(即里程增大的方向)区分左右;当线元往左偏时,Q=-1;当线元往右偏时,Q=1;当线元为直线时,Q=0。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
CASIO fx5800p全线高程计算程序
GAOCHEN 主程序
Lbl 1
“KM=,<0,Stop”:?K:K<0=>Stop:“PY=”?L:Prog”GK”
C-D→E:Abs(RE/2)→T:R(Abs(E)/E)→R
If K≤B-T:Then 0→H:Else:If K≥B+T
Then 0→H:D→C:Else K-B+T→H:Ifend:Ifend
A-(B-K)C-H2/(2R)→G:Cls
“KM=”:Locate 4,1,K:Locate 10,1,“PY=”:Locate 13,1,L:Fix 3
“H=”:Locate 4,2,G
Prog “PODU”:(E-B)/(D-A)(K-A)+B→I:(F-C)/(D-A)(K-A)+C→J
“HL=”:G+IL→X:Locate 4,3,X:Locate 11,3,“I=”:Locate 13,3,I*100 “HR=”:G+JL→Y:Locate 4,4,Y:Locate 11,4,“I=”:Locate 13,4,J*100◢Cls:Norm 2:“BM+HS≤0,Goto 1”?Z:Z≤0=> Goto 1:Cls (输入视线高) “KM=”:Locate 4,1,K:Locate 10,1,“PY=”:Locate 13,1,L:Fix 3 “QSM=”: Locate 6,2,Z-G (显示中桩读数)
“QSL=”: Locate 6,3,Z-X (显示左桩读数)
“QSR=”: Locate 6,4,Z-Y◢(显示右桩读数)
Norm 2:Cls:Goto1
(后面可加已知视线高计算读数部分,不想计算读数则视线高输入0或负数如不想显示麻烦,可将Locate语句去掉)
以下两个子程序不需运行,只是两个独立的数据库赋值程序,字母重复不影响计算结果
GK 数据库子程序
If K≤第二曲线起点桩号:Then 第一曲线交点高程→A:第一曲线交点桩号→B:第一曲线前坡→C:第一曲线后坡→D:第一曲线半径→R:Return:Ifend …………….(有几个变坡点编几个If语句)
PODU 计算坡度子程序
If K≤第一变(非变)坡段终点:Then 第一曲线起点桩号→A:第一曲线起点左坡→B:第一曲线起点右坡→C:第一曲终点桩号→D:第一曲终点左坡→E:第一曲终点右坡→F:Return:Ifend
………………(每一个超高变化线元一个If语句)
结果显示:
KM=0000.000 PY=0.000 H= 00.000
HL=00.000 I=-1.5 HR=00.000 I=-1.5 KM=0000.000 PY=0.000 QSM= 00.000
QSL= 00.000
QSR= 00.000。