5800计算器全线坐标计算放样程序(修改第三版)
卡西欧5800程序坐标正反算[1]
卡西欧5800程序坐标正反算修改 ZX-WN (其他的程序不用改,所有程序输完后退出进行扩展变量:5→Dimz 按EXE出现Done就OK了)WN(子程序不运行)" ZS=1,FS=2 "?N: 1÷P →C:(P-R)÷(2HPR)→D:180÷π→E: If N=1: Then Goto 1: Else Goto 2: IfEnd← ┚LbI 1:1 →I:0 →Z : Abs(K- O) →W: Prog " ZS "← ┚F-90→F← ┚" JJ " ?K: " PJ " ?L: " ZX= ":X+Lcos(F+K) →Z[3] ◢" ZY= ": Y+Lsin(F+K) →Z[4] ◢" QXFWJ= ":F DMS ◢Abs(Z) →Z:Goto 8← ┚LbI 2: " X " ?I: " Y " ?J: Prog " FS " : " FSZH= " : O+W→K ◢" FSJL= ":Z ◢Lbl 8正算子程序( ZS )(不运行)1÷P→C:(P-R)÷(2HPR) →D: 180÷π→E← ┚0.1739274226→A :0.3260725774→B :0.0694318442→K :0.3300094782→L : 1-L→F : 1-K→M : U+W ( Acos ( G+QEKW ( C+KWD ))+Bcos ( G+QELW ( C+LWD )) +Bcos ( G+QEFW ( C+FWD )) +Acos ( G+QEMW ( C+MWD )))→X : V+W ( Asin ( G+QEKW ( C+KWD )) +Bsin ( G+QELW ( C+LWD )) +Bsin ( G+QEFW ( C+FWD )) +Asin ( G+QEMW ( C+MWD )))→Y : G+QEW ( C+WD )+90→F :X+ZcosF→X :Y+ZsinF→Y3 反算子程序( FS )(不运行)G-90→T : Abs (( Y-V )) cos ( T ) - ( X-U ) sin ( T )→W :0→Z← ┚Lbl 0← ┚prog " ZS ": T+QEW ( C+WD )→L :( J-Y ) cosL- ( I-X )sinL→Z :If Abs(Z) < 0.001: Then Goto1 :Else W+Z→W :IfEnd :Goto 0← ┚ Lbl 1 :0→Z : Prog " ZS ":( J-Y )÷sinF→ZZX-WN主程序(运行主程序是一个数据库),该程序适用于匝道,对全段完整非对称曲线计算太过麻烦)" CZX " ?S( 仪站 X 坐标 ): " CZY " ?W (仪站 Y 坐标)LbI 0: " K "?K: If K≤126.9 (第 1 条单一曲线的终点下面同上) : Then Goto A :Else If K≤176.9 And K >126.9: Then Goto B:Else If K≤259.562 And K >176.9: Then Goto C:Else If K≤309.562 And K > 259.562: Then Goto D :IfEnd:IfEnd:IfEnd:IfEnd← ┚LbI A:92094.336 (起点 X 坐标)→U:8287.962 (起点 Y 坐标)→V:0 起点桩号→O:145°11 ' 54 "(方位角)→G:126.9 (曲线长度)→H:10^(45) (起点半径)→P:10^(45) (止点半径)→R:+1 (路线左右偏,左负右正,直线输 0 )→Q:Prog " WN " :Goto WLbI B:91990.134→U:8360.388→V:126.9→O:145°11 ' 54 "→G:50→H:10^(45) →P:150 →R:+1→Q:Prog " WN " :Goto WLbI C:91947.609→U:8386.570→V:176.9→O:154°44 ' 51 "→G:82.662→H:150 →P:150 →R:+1→Q:Prog " WN " :Goto WLbI D:91867.101→U:8399.992→V:259.562→O:186°19 ' 19 "→G:50→H:150 →P: 10^(45) →R:+1→Q:Prog " WN " :Goto WLbI W: " PJ1 "?T← ┚ (该项是只左右边桩再左右偏距,输 0 为不再左右偏,可以直接出方位角、距离,适用于桥梁桥台、盖梁、涵洞八字墙等放样,以路线前进方向,前 - ,后 + )If T=0 :Then Z[3]→Z: Z[4]→M: Goto P: Else Goto V: IfEnd← ┚LbI V: " JJ1 "? O← ┚ (左右边桩再偏夹角,用180° 减去路线夹角)" X1= " : Z[3]+Tcos ( F+N+ O )→U ◢" Y1= " :Z[4]+Tsin ( F+N+ O )→V ◢U→Z: V→M: GotoP← ┚LbI P:Pol(Z-S,M-W): If J≤0 :Then J+360°→J: IfEnd← ┚" JL= ":I ◢ (仪站至测点的距离)" FWJ= ":J DMS ◢ (仪站至测点的方位角)Goto01.规定以道路中线前进方向(即里程增大的方向)区分左右;当线元往左偏时Q=-1 ;当元线往右偏时, Q=1 :当元线为直线时,Q=0 °2.当所求点位于中线时, Z=0 ;当位于中线左侧时, Z 取负值:当位于中线右侧时, Z 取正值°当线元为直线时,其起点、止点的曲率半径为无穷大,以 10 的 45 次方代替°3.当线元为圆曲线时,无论其起点、止点与什么线元相接,其曲率半径均等于圆弧的半径°4.当线元为完整的缓和曲线时,起点与直线相接时,曲率半径为无穷大,以 10 的 45 次方代替°与圆曲线相接时,曲率半径等于圆曲线的半径,止点跟直线相接时,曲率半径为无穷大,以 10 的 45 次方代替;与圆曲线相接时,曲率半径等于圆曲线的半径°5.当线元为非完整缓和曲线时,起点与直线相接时,曲率半径等于设计规定的值;与圆曲线衔接时,曲率半径等于圆曲线的半径°止点与直线相接时,曲率半径等于设计规定的值;与圆曲线衔接时,曲率半径等于圆曲线的半径°二、输入与显示说明1. 输入部分:2. . 输入3. ZS=1 , FS=2 ,选择计算方式,输入 1 正算;输入 2 反算4. 数据库的输入5. U ?线元起点的 X 坐标6. V ?线元起点的 Y 坐标7. O ?线元起点的里程8. G ?线元的起点切点方位角9. H ?线元的长度10. P ?线元起点的曲率的半径11. R ?线元止点的曲率的半径 .12. ZY ?线元左右偏标志(左偏 Q=-1 ,右偏 Q=1 ,直线段 Q=0 )13. 计算时:14. K ?正算时所求的里程15. JJ ?夹角,(正交90 °,斜交直接输角度)16. PJ ?偏距(左负右正)17. . 结果18. ZX= 正算时,计算得出的测点的 X 坐标19. ZY= 正算时,计算得出的测点的 Y 坐标20. QXFWJ= 正算时,测点对应中线点的切线方位角21. PJ1? :左右桩号再偏距离,不需要时输 022. JJ1? : 左右边桩再偏角度23. JL= 仪站与测点的距离24. FWJ= 仪站与测点的方位角25. 反算时输入:26. X ?反算时所求点的 X 坐标27. Y ?反算时所求点的 Y 坐标28. 结果29. FSZH= 反算时,计算得出的所求点的里程30. FSJL= 反算时,计算得出的所求点的边距(负为左偏,正为右偏)出售 5800 计算器带主线正反算(正交 / 斜交),匝道全段正反算,全段高程(超高、加宽)中边桩出售 5800 计算器带程序1 、全路段主线坐标正反算(正交 / 斜交)2 、匝道全段坐标正反算(正交 / 斜交 )3 、全路段中边桩高程(带超高)有电子版的范例,初学者包教会,使用简单,快捷 . 让你短时间成为一个熟练的测量者。
卡西欧fx-5800P计算器参考线程序(第三版)
卡西欧fx-5800P计算器参考线程序傻瓜教程文/白云面,按2:RUN//运行,选择相应程序名即可。
)命名一个叫CKX的名字,然后按EXE键,选1:COMP。
如下图:然后输入以下代码:Lb1 0:C1s:“K”?K:“A”?A:“B”?B:“C”?C:“D”? D(回车)Po1(C-A,D-B)⊿IfJ≥0:ThenJ→T:E1seJ+360→T:IfEnd(回车)Lb1 1:Fix4:“X”?X(回车)X=0⇒Goto0:“Y”?Y:Po1(X-A,Y-B)→S:IfJ≥0:ThenJ→Q:E1seJ+360→Q:IfEnd:“L=”:K+cos(Q-T)×S⊿“O=”:sin(Q-T)×S⊿Goto1(回车)解释: K为起点桩号(A,B)(C,D)分别为直线L上的两个点,(X,Y)为P点坐再如,要输入Lb1。
先按FUNCTION键(函数),再按3:PROG键。
在弹出来的菜单中选择7:Lb1。
估计最易输错的,莫过于倒数第四排的“⇒”,这里重点介绍一下:按FUNCTION键(函数),再按3:PROG键。
按上下键,翻页至第3页,选3: ⇒。
在了点里程,可以输入0。
2第二步输入点A的X坐标,此时的X坐标用,用字母A代替,即A→X1计算机会默认给用户显示一个,如果按回车EXE,就代表使用默认值。
)这里要特别注意,当弹出默认值时,没有任何提示(或者,机算机是这样提示的:如上图左上角所示的“K?”。
它代表计算机问用户:K是不是等于0?若不是,请输入新值吧!)让用户输入数值。
这时候不用管,直接输入数值即可。
输入数值的具体操作,请按上图红色字体提示操作。
同理,第二步输入B→Y的坐标(同样会默认显示一个),回车1的坐标,回车第三步输入C→X2的坐标,回车第四步输入D→Y2如下图所示:显示AB两个点之间的距离r,AB直线的方位角θ。
【注意这个θ,一定要让它显示为角度,不能是弧度!否则在对中杆立在直线的第三、四象限(假设以A点为坐标原点)就会出现问题!】第五步输入全站仪现场测的点P的X坐标,回车。
5800计算器全线坐标计算放样正反算程序
5800计算器全线坐标计算放样正反算程序此处无法提供完整的程序,但是可以提供一些关于全线坐标计算放样正反算的基本知识。
全线坐标计算放样是指将一条曲线按照一定比例进行分割,然后计算每个分段的坐标值,最终得到完整曲线上每个点的坐标。
这个过程可以分为正算和反算两部分。
正算是根据曲线的起点、终点以及每个分段的长度,通过数学公式计算出每个分段末点的坐标,最终得到完整曲线上每个点的坐标。
反算则是根据给定的曲线上某个点的坐标,以及曲线起点到该点的距离,计算出该点在曲线上的位置。
在实际工作中,使用计算器进行全线坐标计算放样非常常见。
通常使用的计算器有5800和2000等型号,这些计算器都有相应的程序可以使用。
以下是大致的步骤:
正算步骤:
1. 选择“坐标计算放样”功能;
2. 输入曲线的起点坐标和终点坐标;
3. 输入曲线分段长度以及分段数量;
4. 计算每个分段的末点坐标;
5. 输出所有点的坐标。
反算步骤:
1. 选择“坐标计算放样”功能;
2. 输入曲线的起点坐标和终点坐标;
3. 输入参考点的坐标;
4. 输入参考点到曲线起点的距离;
5. 计算参考点在曲线上的位置;
6. 输出参考点在曲线上的坐标。
全线坐标计算放样是一项非常重要的工程测量工作,也是计算器的常见应用之一。
需要结合具体需求和计算器机型进行操作。
卡西欧计算器5800测量放样程序
卡西欧5800程序(修改于湘桂)R(主程序,通过里程求中桩、边桩坐标,在输入测站坐标后并求极坐标放样要素)1→M :“NEWZ CIRCLE”?M : If M=-1: Then “JD”?U :“1-TR-1-TL” ? N : “AT ” ? O : “JX” ? S : “JY ” ? P : “L0 ” ? H : “R” ? R : “ZJ” ? A : IfEnd↙“OPP NAME ”?W : If W=-1 : Then “OPPX”?B : “OPPY”?C : Else Prog“CONTREL”:IfEnd↙Lbl 0: “C”?K : If Int(K÷1000)>0 : Then Int(K÷1000)→V :Else “V”?V :K+1000V→K:IfEnd↙If M=1:Then Prog“CIRCLE” IfEnd↙H÷2-H^(3)÷(240R2)+(R+H2÷(24R))tan(A÷2)→T:πR(A-180H÷π÷R)÷180+2H→L↙U-T→G:K→Q↙If Q≤G+L÷2:Then Q-G→Q: Else G+L-Q→Q: IfEnd↙If Q<0:Then Prog “L”:Goto1: IfEnd↙If Q≤H:Then Q-Q^(5)÷(40R2H2)→X:Q^(3)÷(6RH)-Q^(7)÷(336R^(3)H^(3)) →Y:90Q2÷(πRH) →F: Else 180(Q-H÷2)÷(πR) →F:Rsin(F)+H÷2-H^(3)÷(240R2) →X:R(1-Cos(F))+H2÷(24R) →Y: IfEnd↙Pol(T-X,Y) ↙If K≤G+L÷2:Then O-180-NJ→E:NF+O→F: “F=”:F▲DMS◢ ElseNA+NJ+ O→E: O+NA-NF→F: “F=”:F▲DMS◢IfEnd↙“X=”:S+Icos(E)→X◢“Y=”:P+Isin(E)→Y◢If F<0:Then 360+F→F: IfEnd↙If F≥360:Then F-360→F: IfEnd↙Lbl1: “÷1”?Z: If Z=1:Then Prog “I”: IfEnd↙If Z=2:Then Prog “LD”: IfEnd↙If Z=-1:Then Prog “Q”: “X=”:X◢“Y=”: Y◢IfEnd↙Prog “P”↙Goto 0↙P(子程序,受主程序R调用,求极坐标放样要素:方位角及平距)Pol(X-B,Y-C): “D=”:I◢If J<0:Then 360+J→J: Else 0+J→J: IfEnd↙“AQ=”:J▲DMS◢L(子程序,受主程序R调用,求直线上点位坐标及切线方位角)T-Q→Q:If K<G:Then O+180→E: O→F: “X=”:S+Qcos(E)→X◢“Y=”:P+Qsin(E) →Y◢ Else O+NA→F: “X=” S+Qcos(F) →X◢“Y=”:P+Qsin(F) →Y◢IfEnd↙I(子程序,受主程序R调用,求边桩坐标)“RA”?E:“D”?D:E+F→E: If E≥360:Then E-360→E: IfEnd↙X+Dcos(E)→X: Y+Dsin(E)→Y: “X=”: X◢“Y=”: Y◢E→F↙Q(子程序,受主程序R调用,求副线边桩坐标)“1A”?E:“1D”?D:E+F→E↙X+Dcos(E)→X: Y+Dsin(E)→Y:E→F↙“2R”?E: “2D”?D: E+F→E↙X+Dcos(E)→X: Y+Dsin(E)→Y↙E→F↙LD(子程序,受主程序R调用,通过坐标反求里程和偏距)40→DimZ↙O→Z[1]:U→Z[2]:S→Z[3]: P→Z[4] ↙H÷2-H^(3)÷(240R2)→M: H2÷(24R)-H^(4)÷(2688R^(3))→V:90H2÷(πR)→D:(R+V)Tan(A÷2)+M→T: πRA÷180+H→K:O+NA→J:Prog“JD”:J→Z[21]:U-T+K→Z[22]: S-Tcos(O)→Z[5]:P-Tsin(O)→Z[6]:Z[5]+Mcos(O)+(R+V)cos(O+90N)→Z[7]:Z[6]+Msin(O)+ (R+V)sin(O+90N)→Z[8] ↙H-H^(5)÷(40R2H2)→Z:H^(3)÷(6RH)-H^(7)÷(336R^(3)H^(3))→C: Pol(C,Z):90-J→J:Prog“JD”: O+JN→J:Prog“JD”↙Z[5]+Icos(J)→Z[9]:Z[6]+Isin(J)→Z[10]:S+Tcos(Z[21])→Z[11]: P+Tsin(Z[21])→Z[12] ↙Pol(Z[10]-Z[8],Z[9]-Z[7]):90-J→J:Prog“JD”:J→Z[13] ↙J+(A-2D)N→J: Prog“JD”: J→Z[14] ↙“CEDIAN”◢Lbl 0: ↙“B”?B:If B=0:Then Prog “R”: IfEnd↙“XN=”?X: “YN=”?Y:Pol(Y-Z[8],X-Z[7]) ↙90-J→J: Prog“JD”:J→W:J-Z[13]→J↙Prog“JD”:J→Z[15] ↙W-Z[14]→J↙Prog“JD”:J→Z[16] ↙If N=1:Then Goto 1: IfEnd↙If N=-1:Then Goto 2: IfEnd↙Lbl 1: ↙If Z[15]>180:Then Goto 3: IfEnd↙If Z[16]≤180:Then Goto 5:Else Goto 4 : IfEnd↙Lbl 2: ↙If Z[15]<180:Then Goto 3: IfEnd↙If Z[16] >180:Then Goto 5:Else Goto 4 : IfEnd↙Lbl 3: ↙“H1”◢Pol(Y-Z[6],X-Z[5]):90-J→J: Prog“JD”↙J-Z[1]+90→J: Prog“JD”↙Isin(J)→G↙If G>0:Then 0→L:Goto 6: IfEnd↙If G≤0:Then “DK=”:Z[2]-T+G→Z[19]◢If N=1:Then “LD=”:-NIcos(J)→Z[20]◢Else “LD=”:NIcos(J) →Z[20]◢IfEnd↙“SD=1,LD≠1”?D:If D=1:Then Prog “SDCQJC”: IfEnd↙Goto 0↙Lbl 4: ↙“Y”◢If N=-1:Then 360-Z[15]→Z[15]: IfEnd: “DK=”:Z[2]-T+H+πR(Z[15])÷180→Z[19]◢If N=1:Then “LD=”:-(I-R)→Z[20]◢Else “LD=” :I-R→Z[20]◢IfEnd↙“SD=1,LD≠1”?D:If D=1:Then Prog “SDCQJC”: IfEnd↙Goto 0↙Lbl 5: ↙“H2”◢Pol(Y-Z[12],X-Z[11]):90-J→J: Prog“JD”:J→W:Z[21]-90→J: Prog“JD”:W-J→J: Prog“JD”:Isin(J)→G:If G<0:Then 0→L: -G→G↙Goto 7: IfEnd↙If G≥0:Then “DK=”:Z[22]+G→Z[19]◢IfEnd: If N=1:Then “LD=”:-NIcos(J)→Z[20]◢Else “LD=”:NIcos(J)→Z[20]◢IfEnd↙“SD=1,LD≠1”?D:If D=1:Then Prog “SDCQJC”: IfEnd↙Goto 0↙Lbl 6: ↙L+G→L:L-L^(5)÷(40R2H2)→Z:L^(3)÷(6RH)-L^(7)÷(336R^(3)H^(3)) →C:Pol(C,Z):90-J→J: Prog“JD”:J→W:Z[1]+WN→J: Prog“JD”:Z[5]+Icos(J)→Z[17]: Z[6]+Isin(J) →Z[18] ↙J+2WN→J: Prog“JD”:J-90→J: Prog“JD”:J→W↙Pol(Y-Z[18],X-Z[17]):90-J→J: Prog“JD”↙J-W→J: Prog“JD”:Isin(J)→G:If Abs(G)>0.001:Then Goto 6: IfEnd↙“DK=”:Z[2]-T+L+G→Z[19]◢If N=1:Then “LD=”:-Ncos(J) →Z[20]◢Else“LD=”:NIcos(J) →Z[20]◢IfEnd↙“SD=1,LD≠1”?D:If D=1:Then Prog “SDCQJC”: IfEnd↙Goto 0↙Lbl 7: ↙L+G→L:L-L^(5)÷(40R2H2)→Z:L^(3)÷(6RH)-L^(7)÷(336R^(3)H^(3)) →C:Pol(C,Z):90-J→J: Prog“JD”:J→W:Z[21]-180-WN→J: Prog“JD”↙Z[11]+Icos(J)→Z[17]:Z[12]+Isin(J)→Z[18]:J-2WN→J: Prog“JD”↙J-90→J: Prog“JD”:J→W↙Pol(Y-Z[18],X-Z[17]):90-J→J: Prog“JD”↙J-W→J:Prog “JD”↙Isin(J)→G: If Abs(G)>0.001:Then Goto 7:IfEnd↙“DK=”:Z[22]-L-G→Z[19]◢If N=1:Then “LD=”:NIcos(J)→Z[20]◢Else“LD=”:-NIcos(J) →Z[20]◢IfEnd↙“SD=1,LD≠1”?D:If D=1:Then Prog “SDCQJC”: IfEnd↙Goto 0↙JD(子程序,受LD程序调用,计算角度归化值)If J<0:Then J+360→J: IfEnd↙If J≥360:Then J-360→J: IfEnd↙CIRCLE(子程序,线路平面曲线要素,受主程序R调用)If K≤缓直点里程:Then 交点里程→U:交点X坐标→S:交点Y坐标→P:转角值→A:-1(曲线段左偏)或1(曲线段右偏)→N:圆曲线半径→R:缓和曲线长→H:直线段起始方位角→O:Goto 1: IfEnd↙If K≤……(同上输完全部曲线要素为止)Lbl 1↙CONTREL(控制点坐标数据库子程序,受主程序R和ZBFS调用)If W=控制点点号:Then 控制点X坐标→B:控制点Y坐标→C: IfEnd↙If W=……(同上输完全部控制点数据为止)ZBFS(主程序,求两已知点方位角及平距,或已知两点求后方交会点坐标)Lbl 0:1→W: “NEW OPP”?W:If W=1:Then “OPPX”?X: “OPPY”?Y:Else Prog “CONTREL”:B→X:C→Y: IfEnd↙Lbl 1:-1→W: “NEW CPP”?W: If W=-1:Then “CPPX”?S: “CPPY”?T: Else Prog “CONTREL”:B→S:C→T: IfEnd↙Pol(S-X,T-Y): “D=”:I◢If J<0:Then J+360→J: Else 0+J→J: IfEnd↙“AQ=”:J▲DMS◢Lbl 2:0→W: “ZBFS=0,SQS≠0”?W:If W=0:Then Goto 1: Else Prog “SQS”: IfEnd↙Goto 0↙SQS(子程序,受主程序ZBFS调用,通过角度边长求交会点坐标值)Lbl 0: “S1=”?A: “J1=?M: “J2=”?N: “S2=?D:N-M→Q: If Q <0:Then Q+360→Q: IfEnd↙If Q<45°0′0″:Then “ERROR PLEASE REPEAT”◢Goto 0: IfEnd↙√(A2+D2-2ADos(Q))→E: “S3=”:E◢If Abs(A-D)≥60:Then “ERROR PLEASE REPEAT”◢Goto 0: IfEnd↙If Abs(I-E)<0.01:Then cos-1((A2+E2-D2)÷(2AE))→R: cos-1((D2+E2-A2) ÷(2DE))→G: Else “ERROR PLEASE REPEAT”◢Goto 0: IfEnd↙If J<0:Then J+360→J:IfEnd↙(X+Acos(J+R)+S+Dcos(J+180-G))÷2→F: “X=”:F◢(Y+Asin(J+R)+T+Dsin(J+180-G))÷2→P: “Y=”:P◢SQX(主程序,竖曲线求线路各里程点中桩设计高程)1→S:“NEWZ SQXK”?S: If S=-1:Then ?U:?R:?T:?N:?I:?F: “HB”?B: IfEnd↙Lbl 0: “C”?K : If Int(K÷1000)>0 : Then Int(K÷1000)→V :Else “V”?V :K+1000V→K:IfEnd↙If S≠-1:Then Prog “SQXK”: IfEnd↙U-T→G:K→Q: If Q≤G:Then Q-U→Q: Else Q-G→W: IfEnd↙If Q≤G:Then “H=”:B+QN÷1000→H◢Goto 1↙Else If Q≤U+T:Then “H=”:B+(Q-U)N÷1000+FW2÷(2R)→H◢Goto 1↙Else If Q≥U+T:Then “H=”:B+(Q-U)I÷1000→H◢Goto 1:IfEnd↙Lbl 1: “P”?P: “O=”:H-P→O◢Goto 0↙SQXK(子程序,受主程序SQX调用,竖曲线要素)If K≤竖曲线圆直点里程:Then 变坡点里程→U:变坡点设计高程→B:竖曲线圆曲线半径→R:竖曲线切线长→T:竖曲线直线段坡度常数(上、下坡有正负之分)→N:变坡点常数(凸为-1,凹为1)→F: Goto 0: IfEnd↙If K≤……(同上输完全部竖曲线要素为止)Lbl 0↙SDCQJC(子程序,受LD程序调用,采集隧道支护位置坐标高程数据一次性计算出该支护位置的超欠挖量)40→DimZ↙Lbl 0:Z[19]→Z[23]:Prog “SQXZ”↙Z[24]-Z[27]→Z[30]: Z[23]→Z[31] ↙If Z[31]≤Z[30]:Then Z[31]-Z[24]→Z[31]:Else Z[31]-Z[30] →Z[32]: IfEnd↙If Z[31]≤Z[30]:Then Z[25]+(Z[31])×(Z[28])÷1000→Z[33]: Goto 1↙Else If Z[31]≤Z[24]+Z[27]:Then Z[25]+(Z[31]-Z[24])×(Z[28])÷1000+(Z[29])×(Z[32])2÷(2×Z[26])→Z[33]: Goto 1↙Else If Z[31]≥Z[24]+Z[27]:Then Z[25]+(Z[31]-Z[24])×I÷1000→Z[33]: Goto 1: IfEnd↙Lbl 1: “H0=”:Z[33]+内轨面至圆心高差常数→Z[33]◢“HN”?K: “Δh=”:K-Z[33]→Z[34]◢If Z[20]≥隧道中心线与设计中心线的偏移量ω:Then Z[20]-ω→Z[35]:Else ω- Z[20]→Z[35] : IfEnd↙“RN=”:√((Z[34])2+(Z[35])2)→Z[36]◢“R0”?Z: “RCQ=”: Z[36]-Z→Z[37]◢SQXZ(子程序,受主程序SDCQJC调用,竖曲线要素)40→DimZ↙If Z[23]≤竖曲线圆直点里程:Then 变坡点里程→Z[24]:变坡点设计高程→Z[25]:竖曲线圆曲线半径→Z[26]:竖曲线切线长→Z[27]:竖曲线直线段坡度常数(上、下坡有正负之分)→Z[28]:变坡点常数(凸为-1,凹为1)→Z[29]:IfEnd↙If Z[23]≤……(同上输完全部竖曲线要素为止)Lbl 0↙。
卡西欧计算器5800测量放样程序
卡西欧5800程序(修改于湘桂)R(主程序,通过里程求中桩、边桩坐标,在输入测站坐标后并求极坐标放样要素)1→M :“NEWZ CIRCLE”?M : If M=-1: Then “JD”?U :“1-TR-1-TL” ? N : “AT ” ? O : “JX” ? S : “JY ” ? P : “L0 ” ? H : “R” ? R : “ZJ” ? A : IfEnd↙“OPP NAME ”?W : If W=-1 : Then “OPPX”?B : “OPPY”?C : Else Prog“CONTREL”:IfEnd↙Lbl 0: “C”?K : If Int(K÷1000)>0 : Then Int(K÷1000)→V :Else “V”?V :K+1000V→K:IfEnd↙If M=1:Then Prog“CIRCLE” IfEnd↙H÷2-H^(3)÷(240R2)+(R+H2÷(24R))tan(A÷2)→T:πR(A-180H÷π÷R)÷180+2H→L↙U-T→G:K→Q↙If Q≤G+L÷2:Then Q-G→Q: Else G+L-Q→Q: IfEnd↙If Q<0:Then Prog “L”:Goto1: IfEnd↙If Q≤H:Then Q-Q^(5)÷(40R2H2)→X:Q^(3)÷(6RH)-Q^(7)÷(336R^(3)H^(3)) →Y:90Q2÷(πRH) →F: Else 180(Q-H÷2)÷(πR) →F:Rsin(F)+H÷2-H^(3)÷(240R2) →X:R(1-Cos(F))+H2÷(24R) →Y: IfEnd↙Pol(T-X,Y) ↙If K≤G+L÷2:Then O-180-NJ→E:NF+O→F: “F=”:F▲DMS◢ ElseNA+NJ+ O→E: O+NA-NF→F: “F=”:F▲DMS◢IfEnd↙“X=”:S+Icos(E)→X◢“Y=”:P+Isin(E)→Y◢If F<0:Then 360+F→F: IfEnd↙If F≥360:Then F-360→F: IfEnd↙Lbl1: “÷1”?Z: If Z=1:Then Prog “I”: IfEnd↙If Z=2:Then Prog “LD”: IfEnd↙If Z=-1:Then Prog “Q”: “X=”:X◢“Y=”: Y◢IfEnd↙Prog “P”↙Goto 0↙P(子程序,受主程序R调用,求极坐标放样要素:方位角及平距)Pol(X-B,Y-C): “D=”:I◢If J<0:Then 360+J→J: Else 0+J→J: IfEnd↙“AQ=”:J▲DMS◢L(子程序,受主程序R调用,求直线上点位坐标及切线方位角)T-Q→Q:If K<G:Then O+180→E: O→F: “X=”:S+Qcos(E)→X◢“Y=”:P+Qsin(E) →Y◢ Else O+NA→F: “X=” S+Qcos(F) →X◢“Y=”:P+Qsin(F) →Y◢IfEnd↙I(子程序,受主程序R调用,求边桩坐标)“RA”?E:“D”?D:E+F→E: If E≥360:Then E-360→E: IfEnd↙X+Dcos(E)→X: Y+Dsin(E)→Y: “X=”: X◢“Y=”: Y◢E→F↙Q(子程序,受主程序R调用,求副线边桩坐标)“1A”?E:“1D”?D:E+F→E↙X+Dcos(E)→X: Y+Dsin(E)→Y:E→F↙“2R”?E: “2D”?D: E+F→E↙X+Dcos(E)→X: Y+Dsin(E)→Y↙E→F↙LD(子程序,受主程序R调用,通过坐标反求里程和偏距)40→DimZ↙O→Z[1]:U→Z[2]:S→Z[3]: P→Z[4] ↙H÷2-H^(3)÷(240R2)→M: H2÷(24R)-H^(4)÷(2688R^(3))→V:90H2÷(πR)→D:(R+V)Tan(A÷2)+M→T: πRA÷180+H→K:O+NA→J:Prog“JD”:J→Z[21]:U-T+K→Z[22]: S-Tcos(O)→Z[5]:P-Tsin(O)→Z[6]:Z[5]+Mcos(O)+(R+V)cos(O+90N)→Z[7]:Z[6]+Msin(O)+ (R+V)sin(O+90N)→Z[8] ↙H-H^(5)÷(40R2H2)→Z:H^(3)÷(6RH)-H^(7)÷(336R^(3)H^(3))→C: Pol(C,Z):90-J→J:Prog“JD”: O+JN→J:Prog“JD”↙Z[5]+Icos(J)→Z[9]:Z[6]+Isin(J)→Z[10]:S+Tcos(Z[21])→Z[11]: P+Tsin(Z[21])→Z[12] ↙Pol(Z[10]-Z[8],Z[9]-Z[7]):90-J→J:Prog“JD”:J→Z[13] ↙J+(A-2D)N→J: Prog“JD”: J→Z[14] ↙“CEDIAN”◢Lbl 0: ↙“B”?B:If B=0:Then Prog “R”: IfEnd↙“XN=”?X: “YN=”?Y:Pol(Y-Z[8],X-Z[7]) ↙90-J→J: Prog“JD”:J→W:J-Z[13]→J↙Prog“JD”:J→Z[15] ↙W-Z[14]→J↙Prog“JD”:J→Z[16] ↙If N=1:Then Goto 1: IfEnd↙If N=-1:Then Goto 2: IfEnd↙Lbl 1: ↙If Z[15]>180:Then Goto 3: IfEnd↙If Z[16]≤180:Then Goto 5:Else Goto 4 : IfEnd↙Lbl 2: ↙If Z[15]<180:Then Goto 3: IfEnd↙If Z[16] >180:Then Goto 5:Else Goto 4 : IfEnd↙Lbl 3: ↙“H1”◢Pol(Y-Z[6],X-Z[5]):90-J→J: Prog“JD”↙J-Z[1]+90→J: Prog“JD”↙Isin(J)→G↙If G>0:Then 0→L:Goto 6: IfEnd↙If G≤0:Then “DK=”:Z[2]-T+G→Z[19]◢If N=1:Then “LD=”:-NIcos(J)→Z[20]◢Else “LD=”:NIcos(J) →Z[20]◢IfEnd↙“SD=1,LD≠1”?D:If D=1:Then Prog “SDCQJC”: IfEnd↙Goto 0↙Lbl 4: ↙“Y”◢If N=-1:Then 360-Z[15]→Z[15]: IfEnd: “DK=”:Z[2]-T+H+πR(Z[15])÷180→Z[19]◢If N=1:Then “LD=”:-(I-R)→Z[20]◢Else “LD=” :I-R→Z[20]◢IfEnd↙“SD=1,LD≠1”?D:If D=1:Then Prog “SDCQJC”: IfEnd↙Goto 0↙Lbl 5: ↙“H2”◢Pol(Y-Z[12],X-Z[11]):90-J→J: Prog“JD”:J→W:Z[21]-90→J: Prog“JD”:W-J→J: Prog“JD”:Isin(J)→G:If G<0:Then 0→L: -G→G↙Goto 7: IfEnd↙If G≥0:Then “DK=”:Z[22]+G→Z[19]◢IfEnd: If N=1:Then “LD=”:-NIcos(J)→Z[20]◢Else “LD=”:NIcos(J)→Z[20]◢IfEnd↙“SD=1,LD≠1”?D:If D=1:Then Prog “SDCQJC”: IfEnd↙Goto 0↙Lbl 6: ↙L+G→L:L-L^(5)÷(40R2H2)→Z:L^(3)÷(6RH)-L^(7)÷(336R^(3)H^(3)) →C:Pol(C,Z):90-J→J: Prog“JD”:J→W:Z[1]+WN→J: Prog“JD”:Z[5]+Icos(J)→Z[17]: Z[6]+Isin(J) →Z[18] ↙J+2WN→J: Prog“JD”:J-90→J: Prog“JD”:J→W↙Pol(Y-Z[18],X-Z[17]):90-J→J: Prog“JD”↙J-W→J: Prog“JD”:Isin(J)→G:If Abs(G)>0.001:Then Goto 6: IfEnd↙“DK=”:Z[2]-T+L+G→Z[19]◢If N=1:Then “LD=”:-Ncos(J) →Z[20]◢Else“LD=”:NIcos(J) →Z[20]◢IfEnd↙“SD=1,LD≠1”?D:If D=1:Then Prog “SDCQJC”: IfEnd↙Goto 0↙Lbl 7: ↙L+G→L:L-L^(5)÷(40R2H2)→Z:L^(3)÷(6RH)-L^(7)÷(336R^(3)H^(3)) →C:Pol(C,Z):90-J→J: Prog“JD”:J→W:Z[21]-180-WN→J: Prog“JD”↙Z[11]+Icos(J)→Z[17]:Z[12]+Isin(J)→Z[18]:J-2WN→J: Prog“JD”↙J-90→J: Prog“JD”:J→W↙Pol(Y-Z[18],X-Z[17]):90-J→J: Prog“JD”↙J-W→J:Prog “JD”↙Isin(J)→G: If Abs(G)>0.001:Then Goto 7:IfEnd↙“DK=”:Z[22]-L-G→Z[19]◢If N=1:Then “LD=”:NIcos(J)→Z[20]◢Else“LD=”:-NIcos(J) →Z[20]◢IfEnd↙“SD=1,LD≠1”?D:If D=1:Then Prog “SDCQJC”: IfEnd↙Goto 0↙JD(子程序,受LD程序调用,计算角度归化值)If J<0:Then J+360→J: IfEnd↙If J≥360:Then J-360→J: IfEnd↙CIRCLE(子程序,线路平面曲线要素,受主程序R调用)If K≤缓直点里程:Then 交点里程→U:交点X坐标→S:交点Y坐标→P:转角值→A:-1(曲线段左偏)或1(曲线段右偏)→N:圆曲线半径→R:缓和曲线长→H:直线段起始方位角→O:Goto 1: IfEnd↙If K≤……(同上输完全部曲线要素为止)Lbl 1↙CONTREL(控制点坐标数据库子程序,受主程序R和ZBFS调用)If W=控制点点号:Then 控制点X坐标→B:控制点Y坐标→C: IfEnd ↙If W=……(同上输完全部控制点数据为止)ZBFS(主程序,求两已知点方位角及平距,或已知两点求后方交会点坐标)Lbl 0:1→W: “NEW OPP”?W:If W=1:Then “OPPX”?X: “OPPY”?Y:Else Prog “CONTREL”:B→X:C→Y: IfEnd↙Lbl 1:-1→W: “NEW CPP”?W: If W=-1:Then “CPPX”?S: “CPPY”?T: Else Prog “CONTREL”:B→S:C→T: IfEnd↙Pol(S-X,T-Y): “D=”:I◢If J<0:Then J+360→J: Else 0+J→J: IfEnd↙“AQ=”:J▲DMS◢Lbl 2:0→W: “ZBFS=0,SQS≠0”?W:If W=0:Then Goto 1: ElseProg “SQS”: IfEnd↙Goto 0↙SQS(子程序,受主程序ZBFS调用,通过角度边长求交会点坐标值)Lbl 0: “S1=”?A: “J1=?M: “J2=”?N: “S2=?D:N-M→Q: If Q <0:Then Q+360→Q: IfEnd↙If Q<45°0′0″:Then “ERROR PLEASE REPEAT”◢Goto 0: IfEnd↙√(A2+D2-2ADos(Q))→E: “S3=”:E◢If Abs(A-D)≥60:Then “ERROR PLEASE REPEAT”◢Goto 0: IfEnd↙If Abs(I-E)<0.01:Then cos-1((A2+E2-D2)÷(2AE))→R: cos-1((D2+E2-A2) ÷(2DE))→G: Else “ERROR PLEASE REPEAT”◢Goto 0: IfEnd↙If J<0:Then J+360→J:IfEnd↙(X+Acos(J+R)+S+Dcos(J+180-G))÷2→F: “X=”:F◢(Y+Asin(J+R)+T+Dsin(J+180-G))÷2→P: “Y=”:P◢SQX(主程序,竖曲线求线路各里程点中桩设计高程)1→S:“NEWZ SQXK”?S: If S=-1:Then ?U:?R:?T:?N:?I:?F: “HB”?B: IfEnd↙Lbl 0: “C”?K : If Int(K÷1000)>0 : Then Int(K÷1000)→V :Else “V”?V :K+1000V→K:IfEnd↙If S≠-1:Then Prog “SQXK”: IfEnd↙U-T→G:K→Q: If Q≤G:Then Q-U→Q: Else Q-G→W: IfEnd↙If Q≤G:Then “H=”:B+QN÷1000→H◢Goto 1↙Else If Q≤U+T:Then “H=”:B+(Q-U)N÷1000+FW2÷(2R)→H◢Goto 1↙Else If Q≥U+T:Then “H=”:B+(Q-U)I÷1000→H◢Goto 1:IfEnd↙Lbl 1: “P”?P: “O=”:H-P→O◢Goto 0↙SQXK(子程序,受主程序SQX调用,竖曲线要素)If K≤竖曲线圆直点里程:Then 变坡点里程→U:变坡点设计高程→B:竖曲线圆曲线半径→R:竖曲线切线长→T:竖曲线直线段坡度常数(上、下坡有正负之分)→N:变坡点常数(凸为-1,凹为1)→F: Goto 0: IfEnd↙If K≤……(同上输完全部竖曲线要素为止)Lbl 0↙SDCQJC(子程序,受LD程序调用,采集隧道支护位置坐标高程数据一次性计算出该支护位置的超欠挖量)40→DimZ↙Lbl 0:Z[19]→Z[23]:Prog “SQXZ”↙Z[24]-Z[27]→Z[30]: Z[23]→Z[31] ↙If Z[31]≤Z[30]:Then Z[31]-Z[24]→Z[31]:Else Z[31]-Z[30] →Z[32]: IfEnd↙If Z[31]≤Z[30]:Then Z[25]+(Z[31])×(Z[28])÷1000→Z[33]: Goto 1↙Else If Z[31]≤Z[24]+Z[27]:Then Z[25]+(Z[31]-Z[24])×(Z[28])÷1000+(Z[29])×(Z[32])2÷(2×Z[26])→Z[33]: Goto 1↙Else If Z[31]≥Z[24]+Z[27]:Then Z[25]+(Z[31]-Z[24])×I÷1000→Z[33]: Goto 1: IfEnd↙Lbl 1: “H0=”:Z[33]+内轨面至圆心高差常数→Z[33]◢“HN”?K: “Δh=”:K-Z[33]→Z[34]◢If Z[20]≥隧道中心线与设计中心线的偏移量ω:Then Z[20]-ω→Z[35]:Else ω- Z[20]→Z[35] : IfEnd↙“RN=”:√((Z[34])2+(Z[35])2)→Z[36]◢“R0”?Z: “RCQ=”: Z[36]-Z→Z[37]◢SQXZ(子程序,受主程序SDCQJC调用,竖曲线要素)40→DimZ↙If Z[23]≤竖曲线圆直点里程:Then 变坡点里程→Z[24]:变坡点设计高程→Z[25]:竖曲线圆曲线半径→Z[26]:竖曲线切线长→Z[27]:竖曲线直线段坡度常数(上、下坡有正负之分)→Z[28]:变坡点常数(凸为-1,凹为1)→Z[29]:IfEnd↙文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持. If Z[23]≤……(同上输完全部竖曲线要素为止)Lbl 0↙。
5800程序(线元法全线坐标正方算)
5800程序(线元法全线坐标正方算)本程序比较复杂.测量原理不是很明白的朋友慎用请大家经常关注程序B-H的更新2009,5,10日修改见超高子程序B-H黄色部分,另超高数据库增加在超高缓和段输入超高为公路外侧超高说明2009,5,8日正反算选择程序:ZS-FS 更改小错,详见紫色修改内容2009,4,30日更改如下:把原来的4个子程序分解成5个子程序,解决了一个大的竖曲线不能包含几个超高变化段,另外程序内也有两处改变请看红色区域.本程序经过综合考虑5800的设计缺陷,计算速度较慢故只使用高斯四节点法为计算内核.支持多条线路正反算,中桩,边桩高程计算,超高计算,超高缓和计算,加宽计算,加宽缓和计算,边坡开口线计算,挡土墙坡脚线计算,考虑了中间绿化带的影响,适用与国家高速公路至乡村四级公路计算和放样,路基路面工程可以直接得出中边桩的设计三维坐标,去掉加宽和超高影响的计算困难,边坡和坡脚线计算可直接在边坡上提取坐标带入程序,经过所有设计因素的综合,得出更改边距并显示修改偏差后的坐标.反算速度明显提高,只需要3秒.程序无错,可放心输入,另本程序可以增加隧道超欠挖计算子程序,非常方便,因为每个隧道的断面数据不一样,所以在此没有明确写出,有需要的可以联系我.本人QQ76805071,只为交友.计算器主程序:ZHU-CHENG-XULbi0:“1,ZS=FS,2ZS,3FS,4XY=>SG,5。
”?U:U=1=>Prog”ZS-FS”:进入公路三维程序U=2=>Porg”ZS”:进入坐标正算程序U=3=>Porg”FS”:进入坐标反算程序U=4=>Porg”XY =>SG”:进入大地坐标转施工坐标程序…………Goto0:说明:计算器总的主程序,进入选择各种分支计算程序。
1为公路三维计算,2为普通正算,3为普通反算,4为大地坐标转施工坐标。
选择错误重新选择。
此程序可以不用输入,只为给大家一个思路,可以把计算器所有程序集中到一个主程序内管理.公路三维部分正反算选择程序:ZS-FSDeg: //设置角度模式20→DimZ: //扩展变量“1LZ=>XY,2XY=>LZ,3BIANPO-FY”?U://正反算选择,正算选1,反算选2,坡口坡脚选3If U=1: ThenProg”ZS-XH”:IfEnd://进入正算循环主程序IfU=2:Then Prog”FS-XH”:IfEnd: //进入反算循环主程序IfU=3:ThenProg”BP-FY”:IfEnd://进入边坡开挖主程序正算循环主体程序ZS-XH“1PT-2SJ”?W://普通计算和设计边距计算选择“XL-XZ“?U://选择线路1~NIf W=1: Then //运行普通计算模式边踞自由输入Lbi0:”L=”?L:”Z=”?Z: //输入桩号和边距Porg”ZS-XH-1“:Goto0:IfEnd: //运行正算循环子程序If W=2:Then //运行设计计算模式边距按设计输入Lbi1:”L=”? L: //输入桩号Porg”0。
卡西欧5800计算器程序坐标正反算(含高程)
卡西欧5800计算器程序坐标正反算(含高程)功能:坐标正反算(含高程),把要素内置化(无需改程序文件,即可更换路线,同时存两条线要素)另含两个边仰(一个横向坡,一个纵向坡)坡放样模块.帮助文件未完成程序浏览:FileName:RESET 初始化程序Norm 1:50→C:12345→J"RESET PW"I:I=J=>500→DimZ 为数据库增加额外变量500个,在SET、SETPFDYS程序根据实际再增减变量50→Z[C+22]"PASSWORDS"I:I→Z[C+39] 重设要素保护密码Cls:StopFileName:DATLOCK 要素保护密码确定认程序Cls:Norm 1:50→C"PASSWORDS"I:Cls:I≠Z[C+39]=>StopFileName:SHELL(外壳程序)50→C ;在扩充变量预留前50个给别的程序用。
如不够就适量加大。
RESET,SHELL,SET,SETPFDYS,这几个程序中C值必需一致Z[C+35]→I:"STATION-N"I:I→Z[C+35] 设置测站N坐标Z[C+36]→I:"STATION-E"I:I→Z[C+36] 设置测站E坐标Z[C+44]→I:"STATION-Z"I:I→Z[C+44] 设置测站Z坐标Z[C+45]→I:"STATION-HI"I:I→Z[C+45] 设置仪高Z[C+41]→I:"GC-DH"I:I→Z[C+41] 放样点高差常数Norm 1Z[C+23]→N 当前分段要素N坐标Z[C+24]→E 当前分段要素E坐标Z[C+25]→M 当前分段要素起点桩号Z[C+26]→H 当前分段要素起点方位角(正北)单位:弧度Z[C+27]→A 当前分段要素起点曲率有左偏负右偏正(注意不半径)Z[C+28]→R 当前分段要素终点曲率有左偏负右偏正(注意不半径)Z[C+29]→L 当前分段要素长度Z[C+3]→WZ[C+32]→I:"DAT1 2 3"I:I→Z[C+32] 平曲线要素数库类型选择1为内置式,2文件式,3实时输入(查看当前要素值)0→IZ[C+4]→I:"1 2 3"I:I→Z[C+4] 选择本程序模式默认为坐标正算,1坐标反算,2横向边仰坡放样,3,纵向边仰坡放样(隧道进出口用到) Lbi 1Z[C+4]→II=1=>Prog"TURNZH"I=2=>Prog"HXBYP"I=3=>Prog"ZXBYP"Lbi ADeg:Norm 1:ClsZ[C+1]→G:"ZH"G:G→Z[C+1] ;G桩求桩号Z[C+2]→B:"JL"B:B→Z[C+2] ;B横向距离,左正右负Lbi BProg "ZBJS" ;坐标正算Prog "GCJS" ;高程计算Fix 3:Cls ;设置三位小数"ZH=":Locate 4,1,G ;第一行显示桩号"X=":Locate 3,2,X ;第二行显示X(N)坐标"Y=":Locate 3,3,Y ;第三行显示Y(E)坐标Prog "GCJS" ;高程计算"Z":Locate 2,4,Z+Z[C+41] ;第四行显示Z坐标Locate 10,4,Z[C+2] ;第四行显示横向距离Do:I+1→I:I=1000=>Goto 1:LpWhile Not(Getkey=57 Or Getkey=27) ;锁定键盘,并在几十秒后自动返回Getkey=57=> Goto 1Z+Z[C+41]+Z[C+49]-Z[C+44]-Z[C+45]→Z[C+48]Pol(Z[C+35]-X,Z[C+36]-Y)Cls:"DL":Locate 3,1,I:Locate 12,1,Z[C+45]"DH":Locate 3,2,Z[C+48]:Locate 12,2,Z[C+49]"FWJ"J<0=J+360→J:J◤DMS◢J→Z[C+46]I→Z[C+47]Goto 1FileName:ZBJS 坐标计算程序Prog"READDAT"RadG-M→QIF AR=0 :Then If A=R :Then 1→J:Else 3→J :IfEnd:Else If A=R :Then 2→J:Else 3→J:IfEnd:IfEndIf J=1 :Then H→F:N+QCos(H)→X:E+QSin(H)→Y:IfEnd 直线段直接计算If J=2 :Then H+QR→F:Rec(Abs(2Sin(Abs)÷R),H+QR÷2):N+I→X:E+J→Y:IfEnd 圆弧段直接计算If J=3 :Then Goto 5 :IfEndX+BCos(F+W)→XY+BSin(F+W)→YDeg:ReturnLbi 5 用五点通用坐标计算计算缓和段(R-A)÷L→KKQ2→J→P:H+IP+JP2→U→P:H+IP+JP2→V→P :H+IP+JP2→D→P:H+IP+JP2→F→P:H+IP+JP2→T→I→J→ON+Q(ICos(U)+JCos(V)+OCos(D)+JCos(F)+ICos(T))→XE+Q(ISin(U)+JSin(V)+OSin(D)+JSin(F)+ISi n(T))→YH+AQ+KQ2→FX+BCos(F+W)→XY+BSin(F+W)→YDeg:ReturnFileName:TURNZH(坐标反算)Norm 1Z[C+37]→I:"DQD-N"I:I→Z[C+37] 输入待求点N坐标I=-1=>Prog"INFWJDLDH"Z[C+38]→I:"DQD-E"I:I→Z[C+38] 输入待求点E坐标0→B:M+L÷2→G:Prog"ZBJS"Lbi S:RadZ[C+37]-X→I:Z[C+38]-Y→JIf I=0 And J=0 :Then Goto A:IfEndPol(I,J)Lbi A:Rec(I,J-F):J→Z[C+2]G+I→G:IF Abs(I)> :Then Prog"ZBJS":Goto S↙G→Z[C+1]FileName:INFWJDLDH 实测坐标(用方位角,距离,高差)输入程序Deg:Norm 1:ClsZ[C+46]→J:"DQD-FWJ"J:J→Z[C+46]Z[C+47]→I:"DQD-DL"I:I→Z[C+47]Z[C+48]→K:"DQD-DZ"K:K→Z[C+48]Z[C+49]→P:"RHT"P:P→Z[C+49]Rec(I,J)Z[C+35]+I→Z[C+37]Z[C+36]+J→Z[C+38]Z[C+44]+Z[C+45]+K-P→Z[C+43]FileName:HXBYP 横向边仰坡放样程序Cls:Norm 1Z[C+40]→I:"QPD-DL"I:I→Z[C+40] 输入起坡点与中桩距离常数Z[C+41]→I:"QPD-DZ"I:I→Z[C+41] 输入起坡点与中桩高差常数Z[C+42]→I:"i"I:I→Z[C+42] 输入边仰坡坡度,左仰坡(路堑)为正,右仰坡(路堑)为负,左边坡为负,右边坡为正Cls:Z[C+43]→I:"DQD-Z"I:I→Z[C+43] 输入实测高程Prog"TURNZH"Prog "GCJS"(Z[C+43]-Z-Z[C+41])Z[C+42]+Z[C+40]→BFix 3:B-Z[C+2]◢显示与上一次测点的偏差B→Z[C+2]FileName:ZXBYP 纵向仰坡放样程序(隧道进口使用)Cls:Norm 1:Z[C+33]→I:"QPD-ZH"I:I→Z[C+33] 输入起坡点桩号Z[C+34]→I:"QPD-Z"I:I→Z[C+34] 输入起坡点高程Z[C+42]→I:"i"I:I→Z[C+42] 仰坡时(隧道进出口仰坡),进口为正,出口为负)Cls:Z[C+43]→I:"DQD-Z"I:I→Z[C+43] 输入实测高程Prog"TURNZH"Z[C+42](Z[C+43]-Z[C+34])+Z[C+33]→GFix 3:G-Z[C+1]◢显示与上一次测点的偏差G→Z[C+1]FileName:SET 设置程序Lbi SNorm 150→C50→Z[C+22]0→KZ[C+5]→I:"1 Or 2"I:I→Z[C+5] ;选择1线或者2线180Z[C+3]÷π→J:"XZJJ"J:Jπ÷180→Z[C+3] ;斜桩夹角If I=1:Then Z[C+8]→Z[C+6]:Z[C+9]→Z[C+7]Z[C+12]→Z[C+16]:Z[C+13]→Z[C+17]:Z[C+18]→Z[C+20]Else Z[C+10]→Z[C+6]:Z[C+11]→Z[C+7]Z[C+14]→Z[C+16]:Z[C+15]→Z[C+17]::Z[C+19]→Z[C+20]Z[C+7]+3→Z[C+31]0→I:"1PQX,2SQX,3YSDS"I ;1输入平曲线要素,2输入竖曲线要素,3输入1、2线夹平竖曲线交点(变坡点)数量以让程序规划内存建立要素数据为,其它值退出本程序I=1 => Goto 1:I=2 => Goto 2:I=3 => Goto 3I≠0=>Prog"DATLOCK"Prog"SETPFDYS"StopLbi 1 ;平曲线要素输入部分Z[C+6]→D-1→Z[D+3]For 1→J T o Z[C+16]Cls:"PQX":Locate 9,1,JZ[D+1]→I:"N"I:I→Z[D+1] ;请输入N坐标Z[D+2]→I:"E"I:I→Z[D+2] ;请输入E坐标Z[D+3]→I:"R"I:I→Z[D+3] ;请输入半径RZ[D+4]→I:"LS1"I:I→Z[D+4] ;请输入缓和曲线1长度Z[D+5]→I:"LS2"I:I→Z[D+5] ;请输入缓和曲线2长度Next1→Z[D-2]Goto SLbi 2 ;竖曲线要素输入部分Z[C+7]→D-1→Z[D+3]For 1→J T o Z[C+17]Cls:"SQX":Locate 9,1,JZ[D+1]→I:"BPDZH"I:I→Z[C+1] ;请输入变坡点桩号Z[D+2]→I:"BPDGC"I:I→Z[C+2] ;请输入变坡点高程Z[D+3]→I:"R"I:I→Z[C+3] ;请输入半径RD+3→DNext1→Z[D]Goto SLbi 3 ;要素点数输入部分Z[C+12]→I:"1PQXDS"I:I→Z[C+12] ;输入1线平曲线点数,最小值为3Z[C+13]→I:"1SQXDS"I:I→Z[C+13] ;输入1线竖曲线点数,最小值为3Z[C+18]→I:"1JDZH"I:I→Z[C+18] ;输入1线平曲线第一个交点的交点桩号Z[C+14]→I:"2PQXDS"I:I→Z[C+14] ;输入2线平曲线点数,最小值为3Z[C+15]→I:"2SQXDS"I:I→Z[C+15] ;输入2线竖曲线点数,最小值为3Z[C+19]→I:"2JDZH"I:I→Z[C+19] ;输入2线平曲线第一个交点的交点桩号C+Z[C+22]→Z[C+8] 1线路平曲线要素指针偏移基数Z[C+8]+5Z[C+12]→Z[C+9] 1线路竖曲线要素指针偏移基数Z[C+9]+3Z[C+13]→Z[C+10] 2线路平曲线要素指针偏移基数Z[C+10]+5Z[C+14]→Z[C+11] 2线路竖曲线要素指针偏移基数Z[C+11]+3Z[C+15]→Z[C+21] 要素数据库结束指针Z[C+21]+1→Z[C+30]Z[C+21]→DimZ 增加额外变量-1→KGoto SFileName:SETPFDYS 交点要素=>分段要素Norm 150→CRadZ[C+6]+5→DZ[C+21]+1→FF+6→DimZ-1→Z[F] ; 设置分段要素开始标志Z[C+20]→V ; 从数据库读入当前线第一个平曲线交点桩号0→GPol(Z[D+1]-Z[D-4],Z[D+2]-Z[D-3]) ;计算第一条直线的距离I,计算方位角JJ→HZ[D-4]→Z[F+1] 直线段Z[D-3]→Z[F+2]V-I→Z[F+3]For 1→G T o Z[C+16]-2Pol(Z[D+1]-Z[D-4],Z[D+2]-Z[D-3]) ;计算第本交点与下一交点的距离I,计算方位角JI→W:J→HPol(Z[D+6]-Z[D+1],Z[D+7]-Z[D+2])J-H→K ;计算转角K,负值是左转角,正值是右转角IF Abs(K)>π:Then If K>0:Then K-2π→K:Else K+2π→K:IfEnd:IfEndZ[D+3]→R ;从数据库读入半径RZ[D+4]→L ;从数据库读入缓和曲线1长度Z[D+5]→M ;从数据库读入缓和曲线2长度L÷2÷R→B ;计算缓和曲线1的B0角M÷2÷R→O ;计算缓和曲线2的B0角(Abs(K)-B-O)R→P ;计算圆曲线长度L2÷24÷R-L^(4) ÷2384÷R^(3) →Q ;内移值计算方法2L÷2-L^(3) ÷240÷R2→S ;切线增长值计算方法2M2÷24÷R-M^(4) ÷2384÷R^(3) →J ;内移值计算方法2M÷2-M^(3) ÷240÷R2→I ;切线增长值计算方法2Abs(π÷2- Abs(K)) →ARtan(Abs(K÷2))+S+J÷Cos(A)-QTan(A)→T ;计算切线1Rtan(Abs(K÷2))+I+Q÷Cos(A)-JTan(A)→U ;计算切线2H<0=>H+2π→HK<0 =>-1→AH→Z[F+4]0→Z[F+5]0→Z[F+6]F+6→FF+6→DimZRec(T,H) 缓和段1 Z[D+1]-I→NZ[D+2]-J→EN→Z[F+1]E→Z[F+2]V-T→Z[F+3]L=0=>Goto AH→Z[F+4]0→Z[F+5]A÷R→Z[F+6]F+6→DimZLbi A 圆弧段0→I:0→JL=0=>Goto BPol(L-L^(3)÷40÷R2,L2÷6÷R-L^(4)÷336÷R^(4)) Lbi B Rec(I,H+AJ)N+I→NE+J→EN→Z[F+1]E→Z[F+2]V-T+L→Z[F+3]H+AB→Z[F+4]A÷R→Z[F+5]A÷R→Z[F+6]F+6→FF+6→DimZM=0=>Goto C 缓和段2 Rec(2RSin÷R),H+AB+AP÷R÷2) N+I→NE+J→EN→Z[F+1]E→Z[F+2]V-T+L+P→Z[F+3]H+AB+AP÷R→Z[F+4]A÷R→Z[F+5]0→Z[F+6]Lbi CF+6→FF+6→DimZRec(U,H+K)Z[D+1]+J→Z[F+1]Z[D+2]+I→Z[F+2]V-T+L+P+M→Z[F+3]V-T+L+P+M-U+I→VD+5→DNextH+K→Z[F+4]0→Z[F+5]0→Z[F+6]F+9→DimZ1→Z[F+7]V→Z[F+9] 要素终点桩号DegFileName:READDATZ[C+32]→II=3=>Prog"READDAT3"If GM+L :Then ;验证要素是否可用,否则重设要素I=1=>Prog"READDAT1"I=2=>Prog"READDAT2"Prog"REALDAT3"IfEndFileName:READDAT1 平曲线分段要素读取程序1Z[C+30]→F0→JLbi 1 搜索要素If G<z[f+3]:then< p="">-1=Z[F]=>Goto E:F-6→F:-1→J:Goto 1Else 1=Z[F+1]=>Goto E:-1=J=>Goto 2:1→J:F+6→F:Goto 1 IfEndLbi 2F→Z[C+30]Z[F+1]→Z[C+23] 当前分段要素N坐标Z[F+2]→Z[C+24] 当前分段要素E坐标Z[F+3]→Z[C+25] 当前分段要素起点桩号Z[F+4]→[C+26] 当前分段要素起点方位角(正北)Z[F+5]→Z[C+27] 当前分段要素起点曲率有左偏负右偏正(注意不半径)Z[F+6]→Z[C+28] 当前分段要素终点曲率有左偏负右偏正(注意不半径)</z[f+3]:then<>。
非常实用的5800放线程序
卡西欧fx-5800p计算道路中、边线坐标放样程序(此程序计算速度快,可以查找桩号和偏中距离)(单园曲线超过半圈后有误差,半径5000米时,在半圈处的计算误差单方向8cm)SUB-10.1739274226→A:0.3260725774→B:0.0694318442→K:0.3300094782→L:U+W(Acos(G+180QKW(1÷P+KWD)÷π)+Bcos (G+180QLW(1÷P+LWD)÷π)+Bcos (G+180QW(1-L)(1÷P+WD(1-L))÷π)+Acos (G+180QW(1-K)(1÷P+WD(1-K))÷π))→X:V+W(ASIN(G+180QKW(1÷P+KWD)÷π)+Bsin(G+180QLW(1÷P+LWD)÷π)+Bsin (G+180QW(1-L)(1÷P+WD(1-L))÷π)+Asin (G+180QW(1-K)(1÷P+WD(1-K))÷π))→Y:G+180QW(1÷P+WD)÷π→FS—O(放线主程序)Deg:Fix3LbI7:“XC=”?C:“YC=”?E“H=”?TLbI1:“XL=1,2”?NIF N=0:T hen“X0=”?U:“Y0=”?V:“F0=”?G: “R1=” ?P: “R2=” ?R: “DK1=” ?О: “DK2=” ?H:“L(-1),R(+1),Z(0)” ?Q:Prog“SJ”: GOTO2:IfendLbI 0: “ZHUANG HAO=” ?S: IF T≠0:T hen Z=0:Goto 8:Ifend {Z} :Z”KUAN DU”LbI8IF N=0:T hen GOTO2:IfendIF N=1:T hen Prog“1”:GOTO2:IfendIF N=2:T hen Prog“2”:GOTO2:IfendIF N=3:T hen Prog“3”:GOTO2:Ifend ……………………………………………GOTO1LbI2: IF S<О-0.001: T hen GOTO1: IfendIF S>H+0.001:T hen GOTO1: Ifend(P-R)÷(2PR(H-О)) →D: Abs(S-О) → W:Prog“SUB-1”IF Z=1000: T hen GOTO 5: IfendIF Z≠0: T hen GOTO 3: IfendIF T≠0:T hen GOTO 9 △“ZX=”:X →X▲“ZY=” Y→Y▲IF F<0: T hen F+360 →F: Ifend“QX-FWJ=”:F→F▲LbI4: 0→I: 0→J:PoI(X-C,Y-E+0.00001)IF J<0: T hen J+360→J: Ifend“FWJ=”:J→J▲“HD=”:I→I▲GOTO 0IF T=0: T hen Goto 0: IfendLb1 9: Prog“BG”: ”SXG=” ?E”H△”:G-T+E→J▲Goto 0Lb13: “PJ=”? M: F+M→F: “BX=”: X+ZCosF→X▲“BY=”:Y+ZSinF →Y▲Goto4Lb1 5:Deg0→J: 0→I:PoI(X-C,Y-E+0.00001):IF J<0: T hen J=J+360: IfendIF Abs(Icos(J-F))<0.010: T hen Goto6: IfendS-Icos(J-F) →S:Goto8Lb16: 0→Z:”JISUANZH=” :S→S▲IF J-F=0 or J-F=180: T hen”ZX--PT”:I→I▲Goto7: IfendIF J-F>0 and J-F<180 or J-F<-180: T hen”L=m” :I→I▲Goto7: Else ”R=m” :I→I▲Goto7: Ifend竖曲线计算子程序 BGV=4:Y=Z[1]Lb1 0IF S<Z[1]:T hen Goto2:IfendIF V>4:ThenA=(Z[V-2]-Z[V-5])/(Z[V-3]-Z[V-6]): B=(Z[V+1]-Z[V-2])/(Z[V]-Z[V-3]):L=ABS(Z[V-1]*tan((tan-1 B- tan-1 A)/2))Y=Z[V-3]+L: IfendA=(Z[V+1]-Z[V-2])/(Z[V]-Z[V-3]): B=(Z[V+4]-Z[V+1])/(Z[V+3]-Z[V]):L=ABS(Z[V+2]* tan ((tan -1 B-tan -1 A)/2))X=Z[V]-L:U=z[v]+LIF A-B>0:T hen Q=-1:IfendIF A-B<0:T hen Q=1:IfendW=(S- X)/ Z[V+2]*180/piIF S≥Y and S≤X:T hen ZG=Z[V-2]+A(S-Z[V-3]): Goto 1:IfendIF S≥X and S≤U:T hen ZG= Z[V+1]-L*A +2* Z[V+2]*SIN(W/2)*SIN(SIN-1 A+Q*W/2): Goto 1:IfendIF S<Y:T hen V=V-3:Goto 0: IfendIF S>U and Z[V]≠Z[V-3]:T hen V=V+3:Goto 0: IfendIF S<Z[1]:T hen ZG=0: IfendLbI 2:”MEI YOU SHU JU” ? GLb1 1(标高数据输入程序)SJ1→I:LbI 0:”BIAN PO DIAN=”I▲”ZHUANG HAO=” ? E:Z[3I-2]=E:”BIAO GAO=” ? E:Z[3I-1]=E:”BAN JING=”? E:Z[3I]=E:IF I<3:T hen I+1→I:Goto 0:Ifend说明: I为变坡点号,本程序为3个(最少3个),如果增加变坡点,相应增加I<后的数字,并增加“s-o”程序的Defm后的数字为(I+1)*31 (1为线路名称,预装要素子程序)(线路名称预装要素子程序) 1o=线元起点里程:H=线元终点里程: U=线元起点X坐标:V=线元起点y坐标:G=线元起点方位角:P=线元起点半径(直缓点、缓直点半径为1045):R=线元终点半径(直缓点、缓直点半径为1045): Q=(左转为-1,右转为+1,直线为0)IF S≤o and S≥H T hen GOTO 3:Ifendo=线元起点里程:H=线元终点里程: U=线元起点X坐标:V=线元起点y坐标:G=线元起点方位角:P=线元起点半径(直缓点、缓直点半径为1045):R=线元终点半径(直缓点、缓直点半径为1045): Q=(左转为-1,右转为+1,直线为0)IF S≤o and S≥H T hen GOTO 3:Ifend 。
CASIO 5800道路坐标计算器程序
CASIO 5800计算器程序一、程序功能:本程序由一个主程序(AK)及两个子程序:坐标正算程序(SUB1)、坐标反算程序(SUB2)平曲线数据库(PQX)构成,可以根据曲线段的组成部分:直线、圆曲线、缓和曲线(完整或非完整型)的线元要素(起点坐标、止点坐标、起点切线方位角、线元长度、起点曲率半径、止点曲率半径、里程、边距或坐标),对该曲线段范围内任意里程中边桩坐标进行正反算。
二、源程序:1、主程序(AK)A排在前面,方便运行程序,不用往下翻页了。
Deg:“0→ZX,1→A,2→B”?Z :“1→JDF,2→XYF”?E:“X(CZ)”?A:“Y”?B 说明:设置角度模式,选择线路0为主线,1为A匝道。
可以自己再增加。
选择计算方法,交点法还是线元法计算坐标,1为交点法,2为线元法。
输入测站坐标,如不需要计算极坐标,即放样的时候需要输入坐标到仪器里面去,则X(CZ)输0,Y不用管可以为任何值,建议把测站坐标输进去,省了放一个点输一次坐标数据到仪器里面去。
只有一条线路可以不需要黄色部分。
“1.Ki→XY,2.XY→Ki”?N:Lbl 0:“Ki”?K:Prog“PQX”IfE=1:Then Prog“JD”:IfEndN=1=>Goto 1:N=2=>Goto 2Lbl 1?LK-O→W:Prog“SUB1”说明:1为正算,即知道桩号和偏距(注意只能计算边桩,不能计算斜交的点,构造物可以通过后面的ZHIXIAN程序计算),2为反算,即知道坐标,求桩号和偏距。
Ki为桩号,正算直接输,反算需要输入附近桩号,第一次计算最好输好桩号之后,把反算出来的桩号再输进去,重新反算下,如果和第一次反算的桩号一样,那就说明反算的桩号正确。
调用平曲线数据库,输入偏距L(偏距左输负数,右输正数),如果选择的是交点法计算,那需要输入是数据库是交点数据,调用正算子程序SUB1。
If A≠0:Then Pol(X-A,Y-B):“JULI=”:I◢J<0=>J+360→J:“FWJ=”:J ▶DMS◢Else “Xi=”:X◢“Yi=”:Y◢“FWJ=”:F ▶DMS◢If End :Goto0说明:正算,如果前面X(CZ)输0,则直接显示X、Y坐标和方位角,否则显示仪器到放样点的距离和方位角。
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”。
Fx-5800计算器程序(含定向及放样方位角、距离计算)
Fx-5800计算器程序一、道路放样(含定向及放样方位角、距离计算)1、主程序:1JDZB(利用第一交点坐标,第二交点坐标,第三交点坐标及里程,偏角,半径,缓和曲线长度计算)20→DimZ“JD1X=”:?X:X→Z[1]:“JD1Y=”:?Y:Y→Z[2]: 输入JD1坐标“JD2X=”:?X:X→U:“JD2Y=”:?Y:Y→V: 输入JD2坐标“JD3X=”:?X:X→Z[3]:“JD3Y=”:?Y:Y→Z[4]: 输入JD3坐标I=PoI(U-Z[1],V-Z[2]):If J<0:Then J+360→J:EIse J→J:IfEnd:J→F:"F12=":F►DMS▲显示起始边方位角I=PoI(Z[3]-U,Z[4]-V):If J<0:Then J+360→J:EIse J→J:IfEnd:J→Z[5]:"F23=":Z[5]►DMS▲显示结束边方位角F-Z[5]→A:If A<-180:Then A+360→A:EIse A→A:If End:"A=":A►DMS▲显示偏角Prog“2FJDA”2、次主程序:2FJDA(利用起始方位角,交点坐标及里程,偏角,半径,缓和曲线长度计算)"HX="?X:"HY="?Y: 输入定向(后视点)坐标"ZX="?H:"ZY="?K: 输入测站点坐标Prog“J”显示定向(后视点)距离和方位角“A=”?A:输入偏角(左“-”右“+”),当利用1JDZB程序时,不用再次输入“R=”?R:输入平曲线半径“LS=”?L:输入缓和曲线长度“JDL=”?N:输入平曲线交点里程“JDX=”?U:输入交点X坐标,当利用1JDZB程序时,不用再次输入“JDY=”?V:输入交点Y坐标,当利用1JDZB程序时,不用再次输入“F=”?F:输入起边方位角,当利用1JDZB程序时,不用再次输入180/R/π→Z:ZL/2→B: “B=”:B►DMS▲缓和曲线角“P=”:L^(2)/(24R)-L^(4)/(2688R^(3))→P▲内移距“Q=”:L/2-L^(3)/(240R^(2))+L^(5)/(34560R^(4))→Q▲切线增长“T=”:(R+P)tan(Abs(A/2))+Q→T▲显示平曲线切线长度“E=”:(R+P)/Cos(Abs(A/2))-R→E▲显示平曲线外距值“L=”:(Abs(A)-2B)/Z+2L→o▲显示平曲线曲线长度“D=”:2T-o→D▲显示球曲差30→DimZ“ZH=”:N-T→Z[1]▲显示直缓点里程“HY=”:Z[1]+L→Z[2]▲显示缓圆点里程“QZ=”:Z[1]+o/2→Z[3]▲显示曲中点里程“YH=”:Z[1]+o-L→Z[4]▲显示圆缓点里程“HZ=”:Z[1]+o→Z[5]▲显示缓直点里程“ZHX=”:U+Tcos(F+180)→Z[7]▲显示直缓点X坐标“ZHY=”:V+Tsin(F+180)→Z[8]▲显示直缓点Y坐标“HZX=”:U+Tcos(F+A)→Z[15]▲显示缓直点X坐标“HZY=”:V+Tsin(F+A)→Z[16]▲显示缓直点Y坐标0→C:0→W:L-L^(3)/(90R^(2))→C:ZL/6→W:If A<0:Then -W→W: EIse W→W: If End:“HYX=”:Z[7]+Ccos(F+W)→Z[9]▲显示缓圆点X坐标“HYY=”:Z[8]+Csin(F+W)→Z[10]▲显示缓圆点Y坐标“YHX=”:Z[15]+Ccos(F+A+180-W)→Z[13]▲显示圆缓点X坐标“YHY=”:Z[16]+Csin(F+A+180-W)→Z[14]▲显示圆缓点Y坐标If A<0:Then -B→B:EIse B→B:If End:0→S:0→C:0→W:o/2-L→S:SZ/2→W:2Rsin(W)→C:If A<0:Then -W→W: EIse W→W:If End:“QZX=”:Z[9]+Ccos(F+B+W)→Z[11]▲显示曲中点X坐标“QZY=”:Z[10]+Csin(F+B+W)→Z[12]▲显示曲中点Y坐标LbI8:“LP=”?→M:Prog“3ZBJS”:Goto8 输入放样点P里程3、子程序:3ZBJS20→DimZ0→S:0→W:0→D:0→G:If M≤Z[1]:Then F+180→W:F+90→G:N-M→S:U→P:V→Q:Goto5: Else If M≤Z[2]:Then M-Z[1]→S:Z[7]→P:Z[8]→Q:Goto1:Else If M<Z[4]:Then M-Z[2]→S:Z[9]→P:Z[10]→Q:Goto2:Else If M<Z[5]:Then Z[5]-M→S:Z[15]→P:Z[16]→Q:Goto1: Else F+A→W:W+90→G:T+M-Z[5]→S:U→P:V→Q:Goto5:If End:LbI 1:ZS^(2)/(6L)→W:3W→G:S-S^(5)/(90R^(2)L^(2))→S:If A<0:Then -W→W:-G→G:EIse W→W:G→G:If End:If M<Z[2]:Then F+W→W:F+G+90→G:EIse F+A+180-W→W:F+A+180-G-90→G:If End:Goto5:LbI 2:SZ/2→W:2W→G:2Rsin(W)→S:If A<0:Then -W→W:-G→G:EIse W→W:G→G:If End:F+B+W→W:F+B+G+90→G:Goto5:LbI 5:“X=”:P+Scos(W)→Z[13]▲“Y=”:Q+Ssin(W)→Z[14]▲Z[13]→X:Z[14]→Y:Prog“J”:显示放样点(前视点)距离和方位角Goto6:LbI 6:“BZ=”?D: 输入偏距(左“-”右“+”)“X=”:Z[13]+Dcos(G)→Z[17]▲“Y=”:Z[14]+Dsin(G)→Z[18]▲Z[17]→X:Z[18]→Y:Prog“J”显示放样点(前视点)距离和方位角4、子程序:JI=PoI(X-H,Y-K):If J<0:Then J+360→J:EIse J→J:IfEnd:"S=":I▲"F=":J►DMS▲。
FX5800计算器公路全线坐标正、反算计算程序
5800计算器公路全线坐标正、反算计算程序FX5800全线贯通万能正、反算程序(一体化、超好用、短小、易懂)FX5800计算器的积分程序(正反算、全线贯通、新线路)终极版ZHUCHENGXU主程序"1.ZS,2.FS" ?→Q←┘输入1正算,输入2反算“NEW=0,OLD≠0”?Z←┘IfZ=0:Then“X0=”?A:“Y0=”?B:“C0=”?C:“1/R0=”?D:“1/RI=”?E:“SP=”?F:“EP=”?G:Ifend:Q=2=>Goto 2←┘Lbl1 :“KM=,<0 Stop”?H:H<0=>Stop:“PJ=”?O:“PY=”?L←┘LblZ:Z=1=> Prog“01”:Z=2=> Prog“02”←┘选择数据库文件,可增加H- F→X:0.5(E-D)÷(G-F)→N←┘C+(XD+NX2)*180÷π→P:P<0=>P+360→P:P>360=>P-360→P←┘-A+∫(cos(C+(XD+NX2)*180÷π),0,X)+Lcos(P+O)→U←┘B+∫(sin(C+(XD+NX2)*180÷π),0,X)+Lsin(P+O)→V←┘Q=2=>Goto4:Cls:Fix 3←┘"Xn=":Locate4,1,U:"Yn=": Locate5,2,V:“FWJ=”:PDMS◢Norm 2:Cls:Goto1←┘Lbl2:“XD=,<0,STOP”?R:R<0=>Stop:“YD=”?S←┘“KMDG=”?H :90→O:0→L:GotoZ←┘(H线路范围内的任意桩号)Lbl4:Pol(R-U,S-V):J<0 => J+360→J←┘Whileabs(Icos(J-P))≤0.001:P-J>180=> J+360→J: P-J<-180=> P+360→P:If P-J>0:then -I→L:else I→L :Ifend:Goto3: Whileend:H+Icos(J-P)→H:GotoZ←┘Lbl3:Cls:Fix 3←┘“KM=”: Locate4,1,H:“PY=”: Locate4,2,L◢Norm 2:Cls:Goto2←┘01(数据库子程序)If H<=第一曲线终点桩号:then第一曲线起点X→A:第一曲线起点Y→B:第一曲线起点方位角→C:起点曲率→D:终点曲率→E:起点桩号→F:终点桩号→G:return:ifend ……………程序说明:1、该程序可以计算任意线形(直线、圆曲线、缓和曲线、不完整曲线)任意桩号的坐标(正算,输入1),也可根据坐标计算该点到线路的距离及垂足桩号(反算,输入2);2、(NEW=0,OLD≠0)?如果要计算的点为数据库线路中的点,则输入数据库编号(以整数1、2、3…代替输入);如果在数据库中没有要计算线路的数据,则输入曲线要素X0:曲线起点X坐标;Y0:曲线起点Y坐标;C0:曲线起点方位角;R0-1、 RI-1:曲线起点、终点曲率,直线为0,曲线左偏输入负值,右偏输入正值;SP、 EP:曲线起点桩号,终点桩号;KM:待求点桩号;PJ:正斜交的设定;PY:偏中距离,线路上的点输入0,右偏输入+值,左偏输入-值;3、正算显示坐标及切线方位角;反算输入线路的任意桩号(此桩号越接近真实值计算速度越快)、待求点坐标,显示待求点桩号及偏中距离;4、正算子程序为积分公式编写而成;反算子程序为角度趋近的方法编写,计算速度有点慢。
5800计算器全线坐标计算放样程序(修改第三版)
5800计算器全线坐标计算放样程序(修改第三版)5800计算器全线坐标计算放样程序(修改第三版)5800计算器全线坐标计算放样程序(修改版)“XLZBJSCX” ◢LB1 0 ↙CLS : FIX 4 : 30→DIM Z ↙“XHS="?G(后视点X):"YHS="?L(后视点Y):"XZJ="?M(置镜点X):"YZJ="?N(置镜点Y)0l(G-M,L-N):"DH=":I(后视距)◢J<0=>J+360→J:"FH=":J→DMS◢(后视方位角)LB1 1 ↙“K=”?K ◢(计算里程)IF K<本段曲线终点里程AND K≥上段曲线终点里程:THEN 本段终点里程→Z[1] : 上段曲线终点里程→Z[2] :1→0 (注:左偏曲线输入-1→0,右偏曲线输入1→0): 偏角→A:半径→R : 第一缓和曲线→Z[6] : 第二缓和曲线→Z[7] : 交点X→B :交点Y→C : 小里程向交点方位角→E : 交点向大里程方位角→F: G0T0 2 : IFEND↙…………(曲线段分段输入)补充直线段输入如下IF K<本段直线终点里程AND K≥本段直线起点里程:THEN 1→0:本段直线终点里程→Z[2]:终点X→Z[16]:终点Y→Z[11]:方位角→E:G0T0 4:IFENDLB1 2 ↙(曲线要素计算)Z[6]/2- Z[6]^3/(240*R^2)+ Z[6]^5/(34560*R^4) →Z[8] ↙(M1)Z[7]/2- Z[6]^3/(240*R^2)+ Z[7]^5/(34560*R^4) →Z[9] ↙(M2)Z[6]^2/(24*R)- Z[6]^4/(2688*R^3) →Z[10] ↙(P1)Z[7]^2/(24*R)- Z[7]^4/(2688*R^3) →Z[11] ↙(P2)π*A*R/180+0.5*( Z[3]+ Z[2])→W ↙(曲线总长)90* Z[6]/(R*π) →Z[14] ↙(第一缓和曲线总偏角)90* Z[7]/(R*π) →Z[15] ↙(第二缓和曲线总偏角,可以省略)Z[8]+(R+Z[10])TAN(A/2)-(Z[11]-Z[11] )/SIN A→Z[11]↙(切线T1) Z[9]+(R+Z[12])TAN(A/2)+(Z[10]-Z[12] )/SIN A→Z[12]↙(切线T2) B+ Z[12]*C0S (E+180)→ Z[13] ↙(ZH点X)C+ Z[12]*SIN(E+180)→ Z[15] ↙(ZH点Y)Z[1]-S→Z[3] ↙ (ZH点里程)Z[3]+ Z[6]→Z[4] ↙(HY点里程)Z[1]- Z[7]→Z[5] ↙(YH点里程)G0T0 3 ↙LB1 3 ↙(判断里程点与曲线关系)IF K≤Z[3]AND K> Z[2] : THEN G0T0 4 : IFEND ↙IF K≤Z[4]AND K> Z[3] : THEN G0T0 5 : IFEND ↙IF K≤Z[5]AND K> Z[4] : THEN G0T0 6 : IFEND ↙IF K≤Z[1]AND K> Z[5] : THEN G0T0 7 : IFEND ↙LB1 4 ↙(里程小于直缓点直线独立坐标)K- Z[3] →X : 0→Y : E→T : PR0G“TYZBCX” :G0T0 1 ↙LB1 5 ↙(第一缓和曲线独立坐标)K- Z[3] →H ↙H-H^5/(40*R^2* Z[6]^2)+H^9/(3456*R^4* Z[6]^4) →X ↙H^3/(6*R* Z[6])-H^7/(3362*R^3* Z[6]^3) →Y ↙90*H^2/( R*π* Z[6]) →T ↙IF 0>0 :THEN T +E→T : ELSE E-T →T : T<0=>360+T→T : I FEND ↙PR0G“TYZBCX” :G0T0 1 ↙LB1 6 ↙(圆曲线独立坐标)K- Z[4] →H ↙H*180/( R*π)+ Z[14]→T ↙R*SIN T+ Z[8]→X ↙R*(1-C0S T)+ Z[13]→Y ↙IF 0>0 :THEN T +E→T : ELSE E-T →T : T<0=>360+T→T : IFEND ↙PR0G“TYZBCX” :G0T0 1 ↙LB1 7 ↙(第二缓和曲线独立坐标)Z[1] -K →H ↙H-H^5/(40*R^2* Z[7]^2)+H^8/(3456*R^4* Z[4]^4) →U↙H^3/(6*R* Z[7])-H^7/(336*R^3* Z[7]^3) →V ↙90*H^2/( R*π* Z[7]) →T ↙Z[13]C0S A+ Z[12]-U*C0S A-V*SIN A→X ↙Z[13]*SIN A-U*SIN A+V*C0S A→Y ↙IF 0>0 :THEN F-T→T : T<0=>360+T→T : ELSE F+T →T : IFEND ↙PR0G“TYZBCX” :G0T0 1 ↙子程序:“TYZBCX” ↙(统一坐标计算)IF 0<0 : THEN -Y→Y : IFEND ↙“QXJ=” :T◢(计算里程点切线方位角,可以不显示)Z[16]+X*C0S E-Y*SIN E→Z[15] ↙Z[17]+X*SIN E+Y*C0S E→Z[12] ↙“XI=” : Z[13] ◢(中线X)“YI=” : Z[19] ◢(中线Y)P0l(Z[18]-M,Z[13]-N):"DI=":I(中桩放样距)◢J<0=>J+360→J:"FI=":J→DMS◢(中桩放样方位角)“PJ=”?P◢(输入边桩与线路夹角,左-右+)“PD=”?D◢(输入边桩距)Z[12]+D*C0S(T+P) →Z[20] ↙Z[13]+D*SIN(T+P) →Z[21] ↙“XP=”: Z[20] ◢(边桩X)“YP=”: Z[21] ◢(边桩Y)P0l(Z[20]-M,Z[21]-N):"DP=":I◢(边桩放样距)J<0=>J+360→J:"FP=":J→DMS◢(边桩放样方位角)一、程序功能主要功能:采用交点法方式计算多条线路坐标正反算,可算任意复杂线型及立交匝道,包括C型,S型、卵型、回头曲线等;极坐标放样,全线路基边坡开挖口及坡脚放样计算、路基任意点设计高程、横坡、设计半幅宽度.隧道欠超挖放样计算。
卡西欧CASIO fx-5800 道路坐标放样程序
卡西欧CASIO fx-5800 道路坐标放样程序源程序包括:一个主程序和两个子程序主程序:PRO-ROAD行号程序说明1 Deg:Fix3:26→DimZ2 “X(JD1)”?X:“Y(JD1)”?Y:“X(JD0)”?M:“Y(JD0)”?N3 Prog”SUB-QXYS1”4 Pol(X-M,Y-N):J→Z[20]:J+O→Z[19]5 X-Scos(Z[20]) →Z[21]:Y-Ssin(Z[20]) →Z[22]6 X+Tcos(Z[19]) →Z[23]:Y+Tsin(Z[19]) →Z[24]7 “X0”?U:”Y0”?V8 Lbl 09 “KP”?P:IFP>Z[1]:Then Goto 1 :IfEnd10 Z[1]-P→L11 “XP=“:X-(S+L)cos(Z[20]) →F12 “YP=“:Y-(S+L)sin(Z[20]) →G13 Z[20] →Z :Goto 514 Lbl 115 If P>Z[2] :Then Goto 2 :IfEnd16 P-Z[1] →L :L→Z[14]:B→Z[15]:Prog”SUB-HXY”17 “XP=“:Z[21]+Z[16]cos(Z[20]-WZ[17]sin(Z[20]) →F18 “YP=“:Z[22]+Z[16]cos(Z[20]-WZ[17]sin(Z[20]) →G19 Z[20]+90WLL÷(BRπ) →Z20 Goto 521 Lbl 222 If P>Z[4] :Then Goto 3 :IfEnd23 P-Z[1] →L :90(2L-B)÷R÷π→Z[13]24 Rsin(Z[13])+Z[8] →Z[16]:R(1-cos(Z[13]))+Z[6] →Z[17]25 “XP=“:Z[21]+Z[16]cos(Z[20])-WZ[17]sin(Z[20]) →F26 “YP=“:Z[22]+Z[16]sin(Z[20])-WZ[17]cos(Z[20]) →G27 Z[20]+WZ[13] →Z28 Goto 529 Lbl 330 If P>Z[5]:Then Goto 4:IfEnd31 Z[5]-P→L:L→Z[14]:C→Z[15]:Prog”SUB-HXY”32 “XP=“:Z[23]-Z[16]cos(Z[19])-WZ[17]sin(Z[19]) →F33 “YP=“:Z[24]-Z[16]sin(Z[19])+WZ[17]cos(Z[19]) →G34 Z[19]-90WLL÷(CRπ) →Z35 Goto 536 Lbl 437 P-Z[5] →L38 “XP=“:X+(T+L)cos(Z[19]) →F39 “YP=“:Y+(T+L)sin(Z[19]) →G子程序1:SUBQXYS1子程序2:SUB-HXY40 Z[19] →Z41 Lbl 542 If Z<0 :Then Z+360→Z:IfEnd43 “BP=“:Z DMS44 If U=0:Then Goto 7:Else Pol(F-U,G-V):IfEnd45 Lbl 646 If J<0:Then J+360→J:IfEnd47 “A1=“:J DMS48 “D1=“:I49 Lbl 750 “D ANGLE”?H:IfH=0:Then Goto 0 :IfEnd :?D51 “XB=“:F+Dcos(Z+H) →Z[11]52 “YB=“:G+Dsin(Z+H) →Z[12]53 If U=0:Then Goto 7:Else Pol(Z[11]-U,Z[12]-V):IfEnd54 Goto 6行号程序说明1 “ANGLE”?O:?R:”LS1”?B:”LS2”?C:”K(JD1)”?K2 If O<0:Then -1→W:Else 1→W:IfEnd:WO→A3 B2÷24÷R-B^(4)÷2688÷R^(3)+B^(6)÷506880÷R^(5) →Z[6]4 C2÷24÷R-C^(4)÷2688÷R^(3)+B^(6)÷506880÷R^(5) →Z[7]5 B÷2-B^(3)÷240÷R2+B^(5)÷34560÷R^(4) →Z[8]6 C÷2-C^(3)÷240÷R2+C^(5)÷34560÷R^(4) →Z[9]7 “T1=“:Z[8]+(R+Z[7]-(R+Z[6])cos(A))÷sin(A) →S8 “T2=“:Z[9]+(R+Z[6]-(R+Z[7])cos(A))÷sin(A) →T9 “L=“:RAπ÷180+(B+C)÷2→L10 “LY=“:L-B-C→Q11 “E=“:(R+(Z[6]+Z[7])÷2)÷cos(A÷2)-R→E12 “K(ZH)=“:K-S→Z[1]13 “K(HY)=“:Z[1]+B→Z[2]14 “K(QZ)=“:Z[1]+L÷2+(B-C)÷4→Z[3]15 “K(YH)=“:Z[1]+L-C→Z[4]16 “K(HZ)=“:Z[4]+C→Z[5]行号程序说明1 If Z[14]=0:Then 0→Z[16]:0→Z[17]:Else2 Z[14]-Z[14]^(5)÷40÷(RZ[15])2+Z[14]^(9)÷3456÷(RZ[15])^(4) →Z[16]3 Z[14]^(3)÷6÷(RZ[15])-Z[14]^(7)÷336÷(RZ[15])^(3)+Z[14]^(11) ÷42240÷(RZ[15])^(5) →Z[17]4 IfEnd。
(整理)5800计算器全线坐标计算放样程序.
任意桩号坐标及高程一、程序功能本程序由一个主程序(ZHUCHENXU)和几个子程序——正算子程序(SUB1)、反算子程序(SUB2)、数据库(SUB3)、曲线要数(SUB4,4-1)、边坡放样程序(BIANPO),可以根据直线、圆曲线、缓和曲线(完整或非完整型)的线元要素(起点坐标、起点里程、起点切线方位角、线元长度、起点曲率半径、止点曲率半径)及里程边距或坐标及中桩高程,对该曲线段范围内任意里程中边桩坐标进行正反算。
二、源程序增加变量18→DimZ1.主程序(ZHUCHENXU)"1.SZ → XY,2.XY → SZ,3.SDYX,4. BIANPO "?N:Lbl 1:”ZHUANGHAO=”?S: Prog "SUB3":N≥2=>Goto 2: Abs(S -O)→W:”BIANZHU=”?→Z:Prog "SUB1":Prog"SUB4":“H=”H◢"XS=”:X→X◢"YS=”:Y→Y◢"FS=”:(F-90) →F:F►DMS◢ Goto1 Lbl 2:”CX=”?X: X→I:”CY=”?Y: Y→J:”DMG=”?→Z[7]:P rog "SUB2": "S=":(O+W) →S◢"Z="Z→Z◢ Z→Z[17] :If N=3:Th en Prog”SDYX”: IfEnd :If N=4:Then Prog”BIANPO”:IfEnd:G oto 22.SUB1(正算子程序名)0.1739274226→A:0.3260725774→B 0.0694318442→K:0.330009482→L 1-L→F:1-K→MG+QEKW(C+KWD)→Z[1]G+QELW(C+LWD)→Z[2]G+QEFW(C+FWD)→Z[3]G+QEMW(C+MW D)→Z[4]A×cos(Z[1])→X(剩號可省略) X+Bcos(Z[2])→XX+Bcos(Z[3])→XX+Acos(Z[4])→XU+WX→XAsin(Z[1])→YY+Bsin(Z[2])→YY+Bsin(Z[3])→YY+Asin(Z[4])→YV+WY→YG+QEW(C+WD)+90→FX+Zcos(F)→XY+Zsin(F)→Y3.SUB2(反算子程序名)G-90→T(Y-V)cos(T)-(X-U)sin(T)→WAbs(W)→W:0→ZLbI 4:Prog"SUB1"T+QEW(C+WD)→L(J-Y)cos(L)-(I-X)sin(L)→ZIf Abs(Z)<1E-6:Then 0→Z :Prog"SUB1"(J-Y)÷sin(F)→ZElse W+Z→W:Goto 4:IfEnd注:1E-6即是10的負6次方,亦即是等於0.000001輸入時按SHIFT---log---(-)---64. 数据库(SUB3)If S<226100:Then Cls:Stop: IfEndIf S<226255.833:Then 226100→O:99037.9736→U: 4282.3590→V:201.3266304→G:1045→P:1045→R:253.543→H:0→Q: Goto 1:IfEndIf S>And S<…………If S>236005.651:Then Cls:Stop: IfEndLbl 1: 1÷P→C:(P-R)÷(2HPR) →D:180÷π→E:5、曲线主程序: 1-E.BG(SUB4)Fix 3:Prog”Z.EBG”:R Abs(D-C)/2→T:if D-C>θ :Then 1→W:Else -1→W:ifendif S<A:Then -C→I:Else D→I:ifendAbs (A-S)→Lif L-T>θ:Then Z+IL→H:Else Z+IL+W(T-L)2/2/R→H:"HS=":H◢曲线数据库: Z.EBG(SUB4-1)if S<332.599:Then 0.02793→C:-0.03309→D:1800→R:235→A:32. 7→Z: goto 1:ifendif S>322.599 And K<734.085:Then -0.03309→C:-0.00485→D:60 00→R:460→A:25.254→Z: goto 1:ifend----Lbl 1C—前坡:D—后坡:R—呵呵,都知道是什么!A—变坡点:Z—变坡点设计高O—从设计高程点处垂直向下的距离:N—距设计高程处的平距(若你的设计高程线是路中线的话,请把0.75改为0):J—所求桩号处的横坡.6. 边坡放样程序(BIANPO) (SUB6)“QPDJL=”? → Z[3]: “QPDGD=” : Prog “(SUB4)”:H→ Z[4]◢“PG=” ?→ Z[5]:PTK→Z[6]:“P1=” ? → Z[8]:“P2=”? → Z[9]:“P3=” ? → Z[10] (没有的话就删): Z[7]-Z[4] → Z[11]:If Z[11]〈0 Then AbsZ[11] →Z[11]: “T=”:Z[1 1] ◢Else“W=”:Z[11] ◢IfEnZ[11]÷Z[5] →Z[12]:If Z[12]〈1 Then Z[8]×Z[11] →Z[13]:Else Z[8]×Z[5]+Z[9]×Z[5]×(Z[12]-1)→Z[13]:IfEnd: AbsZ [17]-(Z[13]+Z[6] ×Int (Z[12])+Z[3])→Z[14]:“BP+C-J=”: Z[14] ◢说明:Z[3]= QPDJL ………………起坡点离中桩距离Z[4]=“QPDGD” ……………起坡点设计标高Z[5]=“PG” ………………坡高Z[6]=“PTK” ……………… 平台宽度Z[7]=“DMG” ………………实测地面高度Z[8]=“P1” ………………一级边坡坡度Z[9]=“P2” ………………二级边坡坡度Z[10]=“P3” ……………… 三级边坡坡度(没有的话就删)Z[14]=“BP+C-J=” ………………边坡超欠挖宽度(+表超,-表欠)三、使用说明1、规定(1) 以道路中线的前进方向(即里程增大的方向)区分左右;当线元往左偏时, Q=-1;当线元往右偏时,Q=1;当线元为直线时,Q=0。
5800计算器程序3
FX5800计算器公路测量常用程序集2.3 版一、程序功能主要功能:采用交点法方式计算多条线路坐标正反算,可算任意复杂线型及立交匝道,包括C型,S型、卵型、回头曲线等;极坐标放样,全线路基边坡开挖口及坡脚放样计算、路基任意点设计高程、横坡、设计半幅宽度.隧道欠超挖放样计算。
新版本优化:1、优化程序语句、2、取消原线元法计算,化线元法为交点法。
3、高程计算修改,4、附计算坐标及高程参数设计要素输入实例二、源程序(绿色为程序名;蓝色为输入计算器内容)红色为网友调试后修改笔误。
0.总主程序(1、坐标计算放样程序2、坐标反算程序;3、高程计算查阅程序;4、路基半幅标准宽度查阅程序;5、路基边坡及开挖口放样程序;6、路基标准距离放样;7、桥梁锥坡计算放样程序;8、极坐标计算程序;9、隧道超欠挖计算程序)运行后按1~9数子约半秒,则选择1至9的程序,返回时,在桩号输入-1,返回选择计算类型。
输入-2,返回选择线路。
程序名:0(数子0)ClrMat:ClrVar:12→DimZ:Norm 2:Do:"(XY=1,ZD=2 ,GC=3,GD=4,BP=5,FM=6,ZP=7,JS=8,SD=9)===>QING AN 1-9":Getkey→Z[3]:While Z[3]=35:Prog"1XY”:WhileEnd:While Z[3]=36:Prog"2ZD":WhileEnd: While Z[3]=37:Prog"3GC":WhileEnd: While Z[3]=21:Prog"4GD":WhileEnd: While Z[3]=22:Prog"5BP":WhileEnd: While Z[3]=23:Prog"6FM":WhileEnd: While Z[3]=31:Prog"7ZP":WhileEnd: While Z[3]=32:Prog"8JS":WhileEnd: While Z[3]=33:Prog"9SD":WhileEnd:LpWhile Z[3]≠25:”XIE XIE SHI YONG”: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=": Locate 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=": Locate 6,4,P:" RGD=":Locate 6,4,L:LpWhile Z≠-15、主程序:路基开挖边线及填方坡脚线放样程序程序名:5BPProg "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=": Locate 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:LbI1:√((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→Z:Prog”A”:Pol(X-I,Y-J+×10-9:J-Z[2]→J:Isin(J→S:Icos(J→D:If M≠0:Th en 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:LbI 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时。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
5800计算器全线坐标计算放样程序(修改第三版)5800计算器全线坐标计算放样程序(修改版)“XLZBJSCX” ◢LB1 0 ↙CLS : FIX 4 : 30→DIM Z ↙“XHS="?G(后视点X):"YHS="?L(后视点Y):"XZJ="?M(置镜点X):"YZJ="?N(置镜点Y)ol(G-M,L-N):"DH=":I(后视距)◢J<0=>J+360→J:"FH=":J→DMS◢(后视方位角)LB1 1 ↙“K=”?K ◢(计算里程)IF K<本段曲线终点里程 AND K≥上段曲线终点里程:THEN 本段终点里程→Z[1] : 上段曲线终点里程→Z[2] :1→O (注:左偏曲线输入-1→O,右偏曲线输入1→O): 偏角→A:半径→R : 第一缓和曲线→Z[6] : 第二缓和曲线→Z[7] : 交点X→B :交点Y→C : 小里程向交点方位角→E : 交点向大里程方位角→F : GOTO 2 : IFEND↙…………(曲线段分段输入)补充直线段输入如下IF K<本段直线终点里程 AND K≥本段直线起点里程:THEN 1→O:本段直线终点里程→Z[3]:终点X→Z[16]:终点Y→Z[17]:方位角→E:GOTO 4:IFENDLB1 2 ↙(曲线要素计算)Z[6]/2- Z[6]^3/(240*R^2)+ Z[6]^5/(34560*R^4) →Z[8] ↙(M1)Z[7]/2- Z[7]^3/(240*R^2)+ Z[7]^5/(34560*R^4) →Z[9] ↙(M2)Z[6]^2/(24*R)- Z[6]^4/(2688*R^3) →Z[10] ↙(P1)Z[7]^2/(24*R)- Z[7]^4/(2688*R^3) →Z[11] ↙(P2)π*A*R/180+0.5*( Z[6]+ Z[7])→S ↙(曲线总长)90* Z[6]/(R*π) →Z[14] ↙(第一缓和曲线总偏角)90* Z[7]/(R*π) →Z[15] ↙(第二缓和曲线总偏角,可以省略)Z[8]+(R+Z[10])TAN(A/2)-(Z[10]-Z[11] )/SIN A→Z[12]↙ (切线T1)Z[9]+(R+Z[11])TAN(A/2)+(Z[10]-Z[11] )/SIN A→Z[13]↙ (切线T2)B+ Z[12]*COS (E+180)→ Z[16] ↙(ZH点X)C+ Z[12]*SIN(E+180)→ Z[17] ↙(ZH点Y)Z[1]-S→Z[3] ↙ (ZH点里程)Z[3]+ Z[6]→Z[4] ↙ (HY点里程)Z[1]- Z[7]→Z[5] ↙ (YH点里程)G OTO 3 ↙LB1 3 ↙(判断里程点与曲线关系)IF K≤Z[3] AND K> Z[2] : THEN GOTO 4 : IFEND ↙IF K≤Z[4] AND K> Z[3] : THEN GOTO 5 : IFEND ↙IF K≤Z[5] AND K> Z[4] : THEN GOTO 6 : IFEND ↙IF K≤Z[1] AND K> Z[5] : THEN GOTO 7 : IFEND ↙LB1 4 ↙(里程小于直缓点直线独立坐标)K- Z[3] →X : 0→Y : E→T : PROG“TYZBCX” :GOTO 1 ↙LB1 5 ↙(第一缓和曲线独立坐标)K- Z[3] →H ↙H-H^5/(40*R^2* Z[6]^2)+H^9/(3456*R^4* Z[6]^4) →X ↙H^3/(6*R* Z[6])-H^7/(336*R^3* Z[6]^3) →Y ↙90*H^2/( R*π* Z[6]) →T ↙IF O>0 :THEN T +E→T : ELSE E-T →T : T<0=>360+T→T : IFEND ↙ PROG“TYZBCX” :GOTO 1 ↙LB1 6 ↙(圆曲线独立坐标)K- Z[4] →H ↙H*180/( R*π)+ Z[14]→T ↙R*SIN T+ Z[8]→X ↙R*(1-COS T)+ Z[10]→Y ↙IF O>0 :THEN T +E→T : ELSE E-T →T : T<0=>360+T→T : IFEND ↙ PROG“TYZBCX” :GOTO 1 ↙LB1 7 ↙(第二缓和曲线独立坐标)Z[1] -K →H ↙H-H^5/(40*R^2* Z[7]^2)+H^9/(3456*R^4* Z[7]^4) →U↙H^3/(6*R* Z[7])-H^7/(336*R^3* Z[7]^3) →V ↙90*H^2/( R*π* Z[7]) →T ↙Z[13]COS A+ Z[12]-U*COS A-V*SIN A→X ↙Z[13]*SIN A-U*SIN A+V*COS A→Y ↙IF O>0 :THEN F-T→T : T<0=>360+T→T : ELSE F+T →T : IFEND ↙ PROG“TYZBCX” :GOTO 1 ↙子程序:“TYZBCX” ↙(统一坐标计算)IF O<0 : THEN -Y→Y : IFEND ↙“QXJ=” :T◢(计算里程点切线方位角,可以不显示)Z[16]+X*COS E-Y*SIN E→Z[18] ↙Z[17]+X*SIN E+Y*COS E→Z[19] ↙“XI=” : Z[18] ◢(中线X)“YI=” : Z[19] ◢(中线Y)Pol(Z[18]-M,Z[19]-N):"DI=":I(中桩放样距)◢J<0=>J+360→J:"FI=":J→DMS◢(中桩放样方位角)“PJ=”?P◢ (输入边桩与线路夹角,左-右+)“PD=”?D◢(输入边桩距)Z[18]+D*COS(T+P) →Z[20] ↙Z[19]+D*SIN(T+P) →Z[21] ↙“XP=”: Z[20] ◢(边桩X)“YP=”: Z[21] ◢(边桩Y)Pol(Z[20]-M,Z[21]-N):"DP=":I◢(边桩放样距)J<0=>J+360→J:"FP=":J→DMS◢(边桩放样方位角)一、程序功能主要功能:采用交点法方式计算多条线路坐标正反算,可算任意复杂线型及立交匝道,包括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":LpW hile 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=":Lcoate6,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": LpWhileY≠-18、主程序:由坐标计算方位角及距离程序名:8JSProg "DX":Do:?X: X=-1=>Stop:X=-2=>Break:?Y:Prog”JS”: LpWhile X≠-1 9、主程序:隧道超欠挖放样计算程序名: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:I f M<E:ThenR-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:Goto0: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:Goto2: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)÷96 76800÷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:ThenG+I(Z-C→H:Goto 0:IfEnd:If Z<C+T:ThenG-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:ThenJ+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时。