[整理]fx-5800P坐标高程计算程序交点法.
- 格式:doc
- 大小:81.50 KB
- 文档页数:8
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。
公路路线座标正反算及高程计算程序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次代替。
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.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多边形面积计算程序说明:适用于地形测量计算特征点多边形面积。
道路中边桩坐标放样正反算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)上架设全站仪,计算各中桩的极坐标放样数据。
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时。
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”。
我自用的5800交点法全线坐标计算程序,适用于主线(等长完整缓和曲线)全线任意中边桩坐标计算。
特点是输入参数少,方便,一般设计图纸上都有。
一、主程序 ZB1、Lbl 02、”ZHANGHAO”?Z3、Prog ”SJ”(交点参数子程序)4、”BZ”?M5、I-D→Q: J-F→P6、tan-1(P÷Q)→A7、If Q<0:Then A+180→A:IfEnd8、If A<0:Then A+360→A:IfEnd9、H-I→Q:V-J→P10、tan-1(P÷Q)→B11、If Q<0:Then B+180→B:IfEnd12、If B<0:Then B+360→B:IfEnd13、A-B+180→E:1→U14、If E>360:Then E-360→E:IfEnd15、If E<0:Then 360+E→E:IfEnd16、If E<180:Then 180-E→○:IfEnd17、If E>180:Then E-180→○:-1→U:IfEnd18、L÷2-L3÷240÷R2→Q19、L2÷24÷R-L3÷2688÷R3→P20、(R+P)tan(○÷2)+Q→T21、R○∏÷180+L→G22、C-T→N23、Z-N→S24、If S>G:Then Z-N-G+T→S:I+ScosB→X: J+SsinB→Y: B→W:Else If S>G-L:Then G-S→S: S-S5÷40÷R2÷L2→E: S3÷6÷R÷L→K: I+TcosB+Ecos(B+1 80)+UKcos(90+B)→X: J+TsinB+Esin(180+B)+UKsin(90+B)→Y: B-180U S2÷2÷R÷L÷∏→W: Else If S>L:Then Rsin(180(2S-L)÷2÷R÷∏)+Q →E: R(1-cos(180(2S-L)÷2÷R÷∏))+P→K:I-TcosA+EcosA-UKsinA→X: J-TsinA+EsinA+UKcosA→Y: A+180U(S-L)÷R÷∏+180UL÷2÷∏÷R→W: Els e If S>0:Then S-S5÷40÷R2÷L2→E:S3÷6÷R÷L→K:I-TcosA+EcosA-UKsinA →X: J-TsinA+EsinA+UKcosA→Y:A+180US2÷2÷R÷L÷∏→W: Else If S<0:T hen I-(T-S)cosA→X: J-(T-S)sinA→Y: A→W: IfEnd: IfEnd: IfEnd: If End: IfEnd29、X+Mcos(90+W)→X:Y+Msin(90+W)→Y”X”:X◢”Y”:Y◢30、Goto 0二、数据库子程序:SJIf Z<本曲线HZ(或YZ)桩号:Then 本曲线前一交点X坐标→D:本曲线前一交点Y坐标→F:本曲线交点X坐标→I: 本曲线交点Y坐标→J:本曲线后一交点X 坐标→H:本曲线后一交点Y坐标→V:本曲线交点桩号→C:本曲线曲线半径→R:本曲线缓和曲线长度→L:Else If Z<二曲线HZ(或YZ)桩号:Then二曲线前一交点X坐标→D:二曲线前一交点Y坐标→F:二曲线交点X坐标→I:二曲线交点Y 坐标→J:二曲线后一交点X坐标→H:二曲线后一交点Y坐标→V:二曲线交点桩号→C:R=二曲线曲线半径:二曲线缓和曲线长度→L:Else If ………… IfEnd:说明:变量输入:Z=计算点桩号:M=计算桩号边桩距离(左负右正)。
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计算器路线坐标计算程序(单个交点)主程序名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”,输入曲线参数,计算曲线要素。
[正确] CASIO fx-5800P综合曲线坐标计算程序说明:该程序适用于计算器CASIO fx-5800P,可计算线路中心的缓和曲线、圆曲线、直线段,中、边桩坐标及切线方位角。
主程序:QXZB?LL=0=> Goto0L=1=> Goto1L=-1=> Goto2Lbl 0:?ZIf Z≤缓直:Then 转角→A:半径→R:缓和曲线长度→C:交点里程桩号→D:交点X 坐标→N:交点Y 坐标→E:方位角→F:Prog"ZHQX":Goto0:IfEnd输入下一段交点,与上一致(主线要素)Lbl 1:?ZIf Z≤缓直:Then 转角→A:半径→R:缓和曲线长度→C:交点里程桩号→D:交点X 坐标→N:交点Y 坐标→E:方位角→F:Prog"ZHQX":Goto1:IfEnd输入下一段交点,与上一致(分离式右线要素)Lbl 2:?ZIf Z≤缓直:Then 转角→A:半径→R:缓和曲线长度→C:交点里程桩号→D:交点X 坐标→N:交点Y 坐标→E:方位角→F:Prog"ZHQX":Goto2:IfEnd输入下一段交点,与上一致(分离式左线要素)程序名:ZHQX10→DimZ↙C∧2÷24÷R-C∧(4)÷2688÷R∧(3)→P↙C÷2-C∧(3)÷240÷R∧2→Q↙90×C÷兀÷R→B↙(R+P)tan(Abs(A)÷2)+Q→T(R+P)÷cos(A÷2)-R→W(Abs(A)-2×B)兀R÷180+2×C→LD-T→GG+C→Z[1]G+L÷2→IG+L-C→Z[2]G+L→Z[3]?J↙If A<0:Then -1→S:Else 1→S:IfEnd↙(……本行中0为数字)F+A÷2+90×S→U↙W+R→V↙N+V×cos(U)→B↙E+V×sin(U)→O↙(……本行中O 为字母)Lbl 1↙If Z≤G:Then T+G-Z→L↙F+180→V↙"FWJ= ":F→U◢Goto 2↙IfEnd↙If Z≤Z[1]:Then Z-G→L↙L-L∧(5)÷(90×R∧2×C∧2)→V↙30×L∧2×S÷(兀RC)→L↙F+180→P↙F+L→Q↙"FWJ= ":F+3×L→U◢Goto 4↙IfEnd↙If Z≤Z[2]:Then F+A÷2+90×S+180+180(Z-I)×S÷R÷兀→L↙"FWJ= ":L+90×S→U◢Goto 5↙IfEnd↙If Z≤Z[3]:Then Z[3]-Z→L↙L-L∧(5)÷(90×R∧2×C∧2)→V↙30×S×L∧2÷(兀RC)→L↙F+A→P↙F+A+180-L→Q↙"FWJ= ":F-3×L+A→U◢Goto 4↙IfEnd↙If Z> Z[3]:Then Z- Z[3]+T→L↙F+A→U↙U→V↙Goto 2↙Lbl 2↙"X= ":N+L×cos(V)→X◢"Y= ":E+L×sin(V)→Y◢Goto 6↙IfEnd↙Lbl 4↙"X= ":N+T×cos(P)+V×cos(Q)→X◢"Y= ":E+T×sin(P)+V×sin(Q)→Y◢Goto 6↙Lbl 5↙"X= ":B+R×cos(L)→X◢"Y= ":O+R×sin(L)→Y◢(……本行中O为字母)Goto 6↙Lbl 6↙J=1=> Prog"BZ"↙(……“=>”输入步:Function→下翻↓→下翻↓→3:=>)程序名:BZ"BZK"?H:"L,R"?K: "FWJ"?M"XZ=":X+HK cos(U+M)→P◢"YZ=":Y+HK sin(U+M)→Q◢注:1、◢为输出指令。
FX5800计算器交点法正反算程序输入图纸中的整个标段交点要素,输入桩号及距中桩距离正算本标段任意点坐标,及极坐标放样的方位角及距离;由输入大概桩号及实测坐标,反算准确桩号及距中桩距离。
(绿色为程序名,蓝色为输入计算器里的内容)1、主程序程序名:1XY-KMLbI 0:7→DimZ:Norm 2:1→A:"A:X,Y=1,KM,D=2"?A:A=1=>Goto 1:A=2=>Goto 2:LbI 1:Z[4]→K:Z[5]→L:“X Z”?K:”YZ”?L:K→Z[4]:L→Z[5]:LbI A:Prog"QX":90→B:"PJ"?B:B→Z[1]:LbI B:"KM"?Z:Z= -1=>Goto 0:Z=-2=>Goto A: Prog"X1":?D: Prog "Z":I+D×COS(Z[2]+Z[1]→X: J+D×Sin(Z[2]+Z[1]→Y: Fix 3:"X=":Locate 6,4,X:"Y=":Locate 6,4,Y:Prog"JS":Goto B:LbI 2:Prog"QX":"KM"?Z:LbI C: Prog"X1": "XO"?X: X=-1=>Goto 0:X=-2=>Goto 2: "Y0"?Y:Prog "ZX": Fix 3:"KM=":Locate 6,4,Z:"D=":Locate 6,4,D:Goto C2. 交点法正算子程序(Z)程序名:ZH2÷R÷24-H∧(4)÷2688÷R∧(3)→A:H÷2-H∧(3)÷240÷R2→B:((H2-N2)÷24÷R÷Sin(Abs(P))-((H∧(4)-N∧(4))÷2688÷R∧(3))÷Sin(Abs(P→E:(R+A)tan(Abs(P)÷2)+B-E→T:P÷Abs(P →W:0→M:H→C:(R+N2÷R÷24-N∧(4)÷2688÷R∧(3))tan(Abs (P)÷2)+N÷2-N∧(3)÷240÷R2+E→Z[6]: O-T+ΠR×Abs(P)÷180+H÷2-N÷2→Z[7]: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≤Z[7]: Then 180(Z-O+ T-0.5H)÷R÷π→S : A+R(1-Cos(S))→B:H÷2-H∧(3) ÷240÷R2+Rsin(S)→A:R→M:G+WS→Z[2]: A-T→A:G→E :Goto 2: IfE nd:If Z≤Z[7]+N:Then Z[7]+N-Z→S:Z[6]→T :N→H:Prog “HX”: G+P→E:E-WK→Z[2]:T-A→A:C→H:Goto 2:IfEnd:Z-Z[7]-N+Z[6]→S:G+P→Z[2]: LbI 1:U+Scos(Z[2])→I:V+Ssi n(Z[2]→J: Return:LbI 2:U+Acos(E)-WBsin(E→I:V+ASin(E)+ WBcos(E→J3. 交点法缓和段子程序(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→M4. 交点法反算子程序(ZX)程序名:ZX0→D:Do:Z+D→Z:Prog“Z”:Pol(X-I,Y-J+.000000001: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)>0.001:Z+D→Z:S→D5.线路选择子程序(线路选择输0时。
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。