[整理]fx-5800P坐标高程计算程序交点法.
5800坐标计算程序交点法

CASIO FX—5800P交点法计算中边桩坐标1、主程序Lbl0 :90→C: "ZH”? Q:Prog“JDSJ”:“JL”? W:“J IAJIAO”? K:Goto1Lbl1: R= 0 => Goto3: Abs(B)πR÷180-(L+M)÷2→G:M→S: 1→Z Lbl2:S^2÷24÷R-S^(4)÷2688÷R^(3)→P:S÷2-S^(3)÷240÷R^2→O:IfZ=1:Then L→S:P→U:O→V:(R+U-(R+P)cos(Abs(B)))÷sin(Abs( B))+O→T:(R+P-(R+U)cos(Abs(B)))÷sin(Abs(B))+V→S:F-T→D:Q≤D=>Goto3If Q ≤ D+L: Then Q - D →J : L →U: Goto 4: IfEndIf Q ≤ D+L+G: Then Q-D-L→J: Goto 5: IfEndIf Q ≤ D+M+L+G: Then Q - D- L- M- G →J: M →U: Goto 4: IfEnd Q > D+M+L+G => Goto0Lbl3: N+(Q - F)cos(A) →X: E+(Q - F)sin(A) →Y:A+C→S: Goto9:Lbl4:J-J^(5)÷40÷(RU)^2+J^(9)÷3456÷(RU) ^(4)→H:J^(3)÷6÷(RU) -J^(7)÷336÷(RU) ^(3)+J^(11)÷42240÷(RU)^(5) →I: J = Q-D => Goto 6Goto7:Lbl5: 90(2Q - 2D- L)÷π÷R →U: Rsin(U)+o→H: R( 1 - cos(U)) + P →ILbl6: If B< 0: Then - I→I: IfEndN -Tcos(A)+Hcos(A) - Isin(A) →X: E-Tsin(A) + Hsin(A) +Icos(A) →Y:Goto8Lbl 7: If B> 0: Then –I →I: IfEndN+Scos(A+B)+Hcos(A+B)-Isin(A+B)→X:E+Ssin(A+B)+Hsin(A+B)+Icos(A+B) →YLbl 8:R →U: If B< 0: Then –R →U: IfEndIf J=Q-D: Then C+A+90J^2÷π÷U÷L→S: Goto9:IfEndIf J= Q-D -L- M- G: Then C+A+B - 90J^2÷π÷U÷M →S: Goto9: IfEndIfQ≤D+ L+ G: ThenQ-D-L →J : C+A+90L÷π÷U+180J÷π÷U→S: Goto9: IfEndLbl 9: X+Wcos(S-90+K) →X: Y+Wsin(S-90+K) →Y:“X=”: X◢“Y=”: Y◢“U=”:(S-90+K) ◢Goto02、子程序0.1739274226 →A:0.3260725774 →B:0.3300094782→L:0.0694318442 →K:1-L →F:1-K →M:1÷P→C:(P-R) ÷(2HPR) →D:180÷π→E:G+QEKW(C+KWD) →Z [1]: G+QELW(C+LWD) →Z [2] : G+QEFW(C+FWD) →Z [3] : G+QEMW(C+MWD) →Z [4]:A cos(Z [1]) →X:X+B cos(Z[2]) →X:X+B cos(Z [3]) →X: X+A cos(Z [4])→X:U+WX→X:A sin(Z [1]) →Y:Y+B sin(Z [2]) →Y:Y+B sin(Z [3]) →Y:Y+Asin(Z [4]) →Y:V+WY→Y:G+QEW(C+WD)+90→F:“F=”:F-90+J◢X+Z cos(F-90+J) →X:Y+Z sin (F-90+J) →Y3、曲线要素If Q≤桩号:Then 交点桩号→F:交点X坐标→N:交点Y坐标→E:起点方位角→A:夹角→B:第一缓和曲线长度→L:第二缓和曲线长度→M:GotoA:If End………………Lbl A:Return程序中各变量含义:JD ── 交点桩号 FJDX ── 交点X坐标NJDY ── 交点Y坐标 EFWJ ── 起始方位角 APJ ──偏角(左-- 右+) BR ── 圆曲线半径 RLS1 ── 第一缓和曲线长 LLS2 ── 第二缓和曲线长 M。
5800P公路路线坐标正反算及高程计算程序

公路路线座标正反算及高程计算程序Fx-5800计算机程序1.FYJS 主程序Fix 3: “1.SZ=>NE:2.NE=>SZ:3.S=>H”:?Q:Q=1 => Goto1:Q=2 => Goto2: Q=3 => Goto3←┘Lbl 1: "K"?S: "-B,0,+B"?Z: “PJ”?M:Prog“5.DAT-SJK”:Prog“2.SUB1”: N+Zcos (F+M) →N:E+Zsin(F+M) →E←┘Prog“4.FY”:Goto 1←┘Lbl 2: “X”?B: “Y”?C:"K"?S: Pro g“3.SUB2”: “K=”:S◢“-B,0,+B=”:Z◢Goto 2←┘Lbl 3: "K"?S :Prog“5.1GCJSCX”: Goto 3"K"?S: 所计算点桩号"-B,0,+B"?Z: 计算点左右边距左- 右+ 中0“PJ”?M 所计算点斜距的右夹角“X”?B: 反算实测X坐标“Y”?C:反算实测Y坐标"K"?S: 反算点附近大概桩号2.SUB1 正算子程序0.5(1÷R-1÷P)÷L→D:S-O(字母 )→X←┘U+∫(cos(A+(X÷P+DX^(2))×180÷π,0,X)→N←┘V+∫(sin(A+(X÷P+DX^(2))×180÷π,0,X)→E←┘A+(X÷P+DX^(2))×180÷π→F←┘3.SUB2 反算子程序Lbl 1:0→Z:1→Q:Prog“5.DAT-SJK”: Prog“2.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: 0→Z:Prog“2.SUB1”:(C-E) ÷sin(F+90) →Z4.FY 放样子程序"HS:X"?N:"HS:Y"?E :"CE:X"?G:"CE:Y"?H:Pol(N-G,E-H): J<0=>J+360→J: " FWJ=": J►DMS◢"JL=": I◢"HS:X"?N: 后视点(计算点)X坐标"HS:Y"?E : 后视点(计算点)Y坐标"CE:X"?G: 测站点X坐标"CE:Y"?H: 测站点Y坐标5.1高程计算子程序(5.1GCJSCX)Prog“ 6.SQX-DAT”:Z[6] Abs(Z[2]- Z[1]) ÷2→Z[3]:if Z[2]- Z[1]>θ :Then 1→Z[4]:Else -1→Z[4]:ifendif S<K:Then - Z[1]→T:Else Z[2]→T:ifendAbs (K-S)→Z[5]if Z[5]- Z[3]>θ:Then Z[7]+T Z[5]→Z[8]:“HS=”:Z[8]◢Else Z[7]+T Z[5]+ Z[4] (Z[3]- Z[5])2÷2÷Z[6]→Z[8]: “HS=”:Z[8]◢ifend5.DAT-SJK 数据库子程序Goto1←┘同时保存多个曲线时的指针Lbl 1←┘IF S<476533.296(线元终点里程):Then31°24'29.07″→A(线元起点方位角):476088→O(线元起点里程):4689534.997→U(线元起点X):479874.003→V(线元起点Y):1045→P(线元起点曲率半径):1045→R(线元终点曲率半径):445.296→L(线元起点至终点长度): R eturn:IfEnd←┘IF S<476803.296:Then31°45'48.37″→A:476533.296→O:4689913.601→U:480108.413→V:1045→P:12000→R: 270→L: Return:IfEnd←┘IF S<477106.771:Then32°24'28.85→A:476803.296→O:4690142.627→U:480251.404→V:12000→P:12000→R: 303.475→L: Return:IfEnd←┘IF S<477376.771:Then33°51'25.2″→A:477106.771→O:4690396.754→U:480417.272→V:12000→P:1045→R: 270→L: Return:IfEnd←┘IF S<488923.776:Then34°30'05.68→A:477376.771→O:4690619.834→U:480569.372→V:1045→P:1045→R: 11547.005→L: Return:IfEnd←┘IF S<489353.776:Then34°30'05.68″→A:488923.776→O:4700135.844→U:487109.930→V:1045→P:-10000→R:430→L: Return:IfEnd←┘IF S<490817.499:Then33°16'10.99″→A:489353.776→O:4700491.941→U:487350.944→V:-1000 0→P:-10000→R: 1463.723→L: Return:IfEnd←┘IF S<491247.499:Then24°52'59.52″→A:490817.499→O:4701770.051→U:488061.643→V:-1000 0→P:-1045→R: 430→L: Return:IfEnd←┘IF S<509336.037:Then23°39'04.83″→A:491247.499→O:4702162.678→U:488236.961→V:-1045→P:-1045→R: 18088.538→L: Return:IfEnd←┘程序名:(6.SQX-DAT)(高程竖曲线要素子程序)if S<332.599:Then 0.02793→Z[1]:-0.03309→Z[2]:1800→Z[6]:235→K:32.7→Z[7]: goto 1:ifendif S <734.085:Then -0.03309→Z[1]:-0.00485→Z[2]:6000→Z[6]:460→K:25.254→Z[7]: goto 1:ifend-- Lbl 1Z[1]—前坡: Z[2]—后坡: Z[6]—竖曲线半径 K—变坡点桩号: Z[7]—变坡点设计高三、使用说明1、规定(1) 以道路中线的前进方向(即里程增大的方向)区分左右;当曲线半径在左时,P、R取负值,当曲线半径在右时,P、R取正值,当曲线半径为无穷大(即直线)时,P、R以10的45次代替。
CASIO 5800综合曲线坐标计算程序(使用中)

C A SI O f x-5800P综合曲线坐标计算程序说明:该程序适用于计算器C ASI O f x-5800P,可计算线路中心的缓和曲线、圆曲线、直线段,中、边桩坐标及切线方位角。
1、α? 输入转角:左转为负,右转为正2、R?输入圆曲线半径3、LS? 输入缓和曲线长度4、J D(DK)?输入交点里程桩号5、X(JD)?输入本交点X 坐标6、Y(JD)?输入本交点Y 坐标7、F W J?输入待求点切线方位角9、J? 输入0 程序计算中桩,输入 1 程序计算边桩10、JSDK? 输入里程桩号主程序名:ZHQ X1. Deg:Fix 4↙2. Lb1 A↙3. "α"?A:?R:"LS"?C:"JD(DK)"?D:"X(JD)"?N:"Y(JD)"?E:"FWJ"?F↙4. Lb1 B↙5. ?J ↙6. C∧2÷24÷R-C∧(4)÷2688÷R∧(3)→P↙7. C÷2-C∧(3)÷240÷R∧2→Q↙8. 90×C÷兀÷R→B↙9. "T=":(R+P)tan(Abs(A)÷2)+Q→T◢10. "E=":(R+P)÷c o s(A÷2)-R→W◢11. "L=":(Abs(A)-2×B)兀R÷180+2×C→L◢12. "ZH=":D-T→G◢13. "HY=":G+C→H◢14. "QZ=":G+L÷2→I◢15. "YH=":G+L-C→K◢16. "HZ=":G+L→M◢17. If A<0:Th en-1→S:E l se1→S:If End↙(本行中0 为数字)18. F+A÷2+90×S→U↙19. W+R→V↙20. N+V×cos(U)→B↙21. E+V×sin(U)→O↙(本行中O 为字母)22. Lbl 1 ↙23. "JS DK"?Z↙24. If Z≤G:Th en T+G-Z→L ↙25. F+180→V ↙26. "FW J=":F→U◢27. Goto 2 ↙28. IfEnd ↙29. If Z≤H:Th en Z-G→L ↙30. L-L∧(5)÷(90×R∧2×C∧2)→V↙31. 30×L∧2×S÷(兀RC)→L ↙32. F+180→P ↙33. F+L→Q↙34. "FW J=":F+3×L→U◢35. Goto 4 ↙36. IfEnd ↙37. If Z≤K:Th en F+A÷2+90×S+180+180(Z-I)×S÷R÷兀→L↙38. "FW J=":L+90×S→U:If U≥360:The n U-360→U◢39. Else U→U◢40. IfEnd:G o to5:If End↙41. If Z≤M:Th en M-Z→L↙42. L-L∧(5)÷(90×R∧2×C∧2)→V↙43. 30×S×L∧2÷(兀RC)→L ↙44. F+A→P ↙45. F+A+180-L→Q↙46. "FW J=":F-3×L+A→U:If U≥360:Th en U-360→U◢47. Else U→U◢48. IfEnd:G o to4:If End↙49. If Z>M:Then Z-M+T→L↙50. F+A→U ↙51. U→V ↙52.G o to2 ↙53. Lbl 2 ↙54. "X=":N+L×cos(V)→X◢55. "Y=":E+L×sin(V)→Y◢56. G o to6 ↙57. If End↙58. Lbl 3 ↙59. ?W60. "XL=":X+W×cos(U-90)→P◢61. "YL=":Y+W×sin(U-90)→Q◢62. "XR=":X+W×cos(U+90)→P◢63. "XL=":Y+W×sin(U+90)→Q◢64. G o to1 ↙65. Lbl 4 ↙66. "X=":N+T×cos(P)+V×cos(Q)→X◢67. "Y=":E+T×sin(P)+V×cos(Q)→Y◢68. G o to6 ↙69.Lbl 5 ↙70. "X=":B+R×cos(L)→X◢71. "Y=":O+R×sin(L)→Y◢(本行中O 为字母)72. G o to6 ↙73. Lbl 6 ↙74. J=1 G o to3 ↙75. G o to1 ↙。
《2013卡西欧CASIO fx-5800P坐标计算程序》班刚立:整理

算程序》班刚立:整理2013.03.16《2013卡西欧CASIO fx-5800P坐标计算程序》班刚立:整理2013.03.16《2013卡西欧CASIO fx-5800P坐标计算程序》班刚立:整理2013.03.16算程序》班刚立:整理2013.03.16简介:卡西欧CASIO fx-5800P编程计算器,语言简单易懂,使用范围广泛,是工程测量技术人员的一项重要指标。
适用:卡西欧CASIO fx-5800P计算器使用。
《2013卡西欧CASIO fx-5800P坐标计算程序》班刚立:整理2013.03.16算程序》班刚立:整理2013.03.16NO.1:CASIO fx-5800P CYT 综合曲线坐标正反算程序V3.0说明:本程序适用于计算器 CASIO fx-5800P,可计算:第一夹直线段、第一缓和曲线段、圆曲线段、第二缓和曲线段、第二夹直线段的线路中、边桩坐标及切线方位角和坐标正反算、竖曲线高程。
下载:点击下载NO.2:CASIO fx-5800P ZXZFS 直线正反算坐标计算程序说明:该程序适用于计算器 CASIO fx-5800P,针对直线正反算设计,正算可算直线中边桩坐标及其斜交、反算可推算直线距线路中心的里程偏距。
下载:点击下载NO.3:CASIO fx-5800P QXZF隧道超欠挖坐标计算程序Beta1.21说明:适用于铁路隧道三圆心,超欠挖检测和轮廓线放样。
下载:点击下载NO.4:CASIO fx-5800P线元法坐标计算程序说明:该程序适用于CASIO fx5800P计算器,坐标正算、反算一体程序,适用性广(包括:复曲线、S型曲线、匝道)等。
下载:点击下载NO.5:CASIO fx-5800P FWJ方位角和距离计算程序说明:本程序可计算两坐标点之间距离和方位角。
下载:点击下载NO.6:CASIO fx-5800P多边形面积计算程序说明:适用于地形测量计算特征点多边形面积。
好用的交点法fx-5800计算

道路中边桩坐标放样正反算CASIO fx-5800一、前言本程序是《CASIO fx-5800P计算与道路坐标放样计算》中道路坐标放样计算程序的升级改进版本。
原道路坐标放样计算程序只基于道路的单个基本型曲线,有效计算范围仅包括平曲线部分和前后的两条直线段,使用时需要输入平曲线设计参数,无坐标反算桩号功能。
改进后的程序名称为:道路中边桩坐标放样正反算程序(全线贯通),增加了可实现全线贯通的数据库功能和坐标反算桩号功能,主要是:1.使用道路平面数据库子程序,可将一段或若干段道路的交点法格式平面参数(可容易从直线、曲线及转角表中获得)以数据库子程序形式输入计算器,程序在计算时省却了输入原始数据的麻烦;2.坐标正算方面,输入桩号即可进行道路的中、边桩坐标计算,若输入了测站坐标,还可同时计算全站仪极坐标放样数据(拨角和平距);3.坐标反算方面,输入平面坐标,即可计算对应的桩号和距中距离(含左右信息);4.对于存在断链的道路,可分段分别编写数据库子程序,然后在主程序中添加一个路段选择的功能即可实现(可参照立交匝道程序中匝道的选择)。
程序的特点:1.可进行中桩坐标的正、反算,程序代码简洁,便于阅读和改写;2.主程序通过调用数据库子程序,省却了使用时输入平面参数的繁琐;3.使用数据库子程序,换项目只需改写数据库子程序,程序通用性强。
二、道路示例项目基本资料基本资料同《CASIO fx-5800P计算与道路坐标放样计算》第6章HY高速公路第2合同段(合同段起止桩号:K4+800~K9+600)。
这里摘取直线、曲线及转角表资料如下(若图片不清晰,请参见参见教材P161附录1):..三、程序代码......注:路线数据库子程序ROAD-DATA1是根据计算示例项目的直曲表编写,大家使用时应按各自项目的直曲表改写或新建。
..四、程序变量清单..五、计算流程示例1.中桩坐标计算示例计算任务:计算HY高速公路K6+100~K6+700段的中桩坐标及切线方位角(桩距20m),并在导线点(2807118.026,474113.687)上架设全站仪,计算各中桩的极坐标放样数据。
5800P计算器程序

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)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≠-13.主程序:任意点高程计算及横坡程序名:3GCProg"QX":0→B: "H-B"?B: B→Z[9]: Do: "KM"?Z:Z=-1=>Stop:Z=-2=>Break:?D:Prog"H":Fix 3: "H=":Lcoate 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=":Lcoate 6,4,P:"RGD=":Locate 6,4,L:LpWhile Z≠-15、主程序:路基开挖边线及填方坡脚线放样程序程序名:4BPProg "DX":Prog"QX":0.5→B: "TH-GD"?B: B→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→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:IfEnd:LbI 0: Fix 2: P→D :Abs(D)-S→T: "LX=":Locate 6,4,T:Prog"ZD":"TW=":Lcoate 6,4,G◢LpWhile Z≠-16、主程序:定值放样路基桩计算填挖值程序名:6FMProg "DX":Prog"QX": Do:"KM"?Z:Z=-1=>Stop:Z=-2=>Break: 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[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”: 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”: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: 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→D: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)÷154828800÷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:90S2÷Π÷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:ILbI 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=”: Locate 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时。
5800——PQX程序

道路平曲线中、边桩坐标及两侧直线中、边桩坐标计算程序(CASIOfx-5800p)
程序名:PQX
"ZH(JD)="?J:"X(JD)="?O:"Y(JD)="?K:"R"?R:"T"?T:"A"?A:"B"?B:"L"?L:"L(ZH-HZ)="?D
A+B+180-P*H^2*90/π/R/L+90→I:A+B+180-P*H^2*90/π/R/L-90→S
Goto 7
LbI 5
Cos(A+180)*(J-Q)+O→U:Sin (A+180)*(J-Q)+K→G
A+270→I:A+90→S
Goto 7
LbI 6
Cos(A+B)*(Q-F+T)+O→U:Sin (A+B)*(Q-F+T)+K→G
A+P*90/π/R*(2H+L)-90→I:A+P*90/π/R*(2H+L)+90→S
Goto 7
LbI 4
F-Q→H:H-H^5/40/R^2/L^2→Z:30*H^2/π/R/L→W
Cos(A+B)*T+O+Z/CosW*Cos(A+B+180-P*W)→U
Sin(A+B)*T+K+Z/CosW*Sin(A+B+180-P*W)→G
X(JD)——交点坐标XB——路线转角,左为“-”,右为“+”
fx-5800p全线坐标放样(交点法)正反算程序

fx-5800p全线坐标放样(交点法)正反算程序fx-5800p全线坐标放样(交点法)正反算程序【QXFYZFS】(主程序名)20→Dim?〝1.ZS.2.FS〞?J:J≠1?Goto2:90→H:〝X(CZ)〞?U:〝Y(CZ)〞?V?Lbi1:〝Kp=〞?P:〝Z-Y+〞?D:Prog〝SUJUKU〞:M+O→N:Prog〝SUBA〞:Prog〝SUBB〞:F-Dcos(Z-H)→F:G-Dsin(Z-H)→G:〝X=〞〝Y=〞〝〞Z?DMS◢U=0?Goto1:Pol(F-U,G-V):J<0?360+J→J:〝DH〞〝〞J?DMS◢Goto1?Lbi2:〝GAILUE(Kp=)〞?P:〝X=〞?U:〝Y=〞?V?Lbi3:Prog〝SUJUKU〞:M+O→N:Prog〝SUBA〞:Prog〝SUBB〞:Z-90→A:(V-G)cos(A)-(U-F)sin(A)→H:IfAbs(H)>0.0001:ThenH+P→P:Goto3:IfEnd:(G-V)÷sin(A)→D〝=〞〝〞Goto2?使⽤说明:20→Dim:扩展额外变量寄存器〝1.ZS.2.FS〞:选择正反算(正算=1反算≠1)90→H:边桩与线路正交〝X(CZ)〞〝Y(CZ)〞:输⼊测站点X、Y坐标值〝Kp=〞、〝Z-Y+〞:输⼊所求点桩号和距中(左-右+中0)〝GAILUE(Kp=)〞:反算时,输⼊所求点概略桩号〝X=〞〝Y=〞:反算时,输⼊所求点X、Y坐标值〝X=〞〝Y=〞〝〞:显⽰所求点X、Y值及所求点切线⽅位⾓。
〝DH〞〝〞:显⽰所求点放样距离及放样⽅位⾓(放样)。
10.〝〞〝〞:反算时,显⽰所求点桩号及距中(左-右+中0)。
〝U=0?Goto1〞〝〞〝〞【SUBA】⼦程序AIfO<0:Then-1→W:Else1→W:IfEnd:WO→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:ARπ÷180+(B+C)÷2→L:L-B-C→Q:(R+(Z[6]+Z[7])÷2)cos(A÷2)-R→E:K-S→Z[1]:Z[1]+B→Z[2]:Z[1]+L-C→Z[4]:Z[4]+C→Z[5]【SUBB】⼦程序BX–Scos(M→F:Y-sin(M→G:P>Z[1]?Goto1:X→F:Y→G:P-K→Z[16]:0→Z[17]:M→A:M→Z:Goto5?Lbl1:P>Z[2]?Goto2:P-Z[1]→L:L→Z[14]:B→Z[15]:Prog〝SUBC〞:WZ[17]→Z[17]:M→A:M+90WL(BRπ→Z:Goto5:Lbl2:P>Z[4]?Goto3:P-Z[1]→L:90(2L-B)÷R÷π→A:Rsin(A)+Z[8]→Z[16]:W(R(1-cos(A))+Z[6]→Z[17]:M+WA→Z:M→A:Goto5:Lbl3:P>Z[5]?Goto4:Z[5]-P→L:L→Z[14]:C→Z[15]:Prog〝SUBC〞:X+Tcos(N→F:Y+Tsin(N→G:-Z[16]→Z[16]:WZ[17]→Z[17]:N→A:N-90WL2÷(CRπ→Z:Goto5:Lbl4:X→F:Y→G:P-Z[5]+T→Z[16]:0→Z[17]:N→A:N→Z:Goto5:Lbl5:F+Z[16]cos(A)-Z[17]sin(A→F:G+Z[16]sin(A)+Z[17]cos(A→G:Z<0?360+Z→Z【SUBC】⼦程序CIfZ[14]=0:Then0→Z[16]:0→Z[17]:ElseZ[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 【】IfP<1000:Then522.056→K:5683.105→X:1447.559→Y:183°17°55.68°→M:-19°37°25.5°→O:2500→R:0→B:0→C:Return:IfEnd?IfP<2000:Then1182.2→K:5317.799→X:868.262→Y:337°0°1.8°→M:10^(-50)→O:1→R:0→B:0→C:Return:IfEnd?IfP<3000:Then……0→B:0→C:Return:IfEnd?1182.2→K”。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
CASIO fx-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”:IfEndDoK+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)→XL3÷(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:IfEnd Prog “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:IfEnd Prog “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]:ReturnIfEnd:IfEnd:IfEnd:IfEnd…………………………………Lbl 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:IfEnd…………………………………Lbl 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]:Return Else 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]:ReturnIfEnd: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。