坐标正反算程序(交点法5800)

合集下载

卡西欧5800程序坐标正反算[1]

卡西欧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 、全路段中边桩高程(带超高)有电子版的范例,初学者包教会,使用简单,快捷 . 让你短时间成为一个熟练的测量者。

5800坐标计算程序交点法

5800坐标计算程序交点法

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

CASIO5800坐标正反算计算程序

CASIO5800坐标正反算计算程序

CASIO5800坐标正反算计算程序CASIO 9860/5800坐标正反算计算程序1. 坐标正算主程序(命名为ZBZS)第1行:Lbl 0:”K=”?K:”BIAN=”? Z:”α=”?B第2行:Prog “A”第3行:”X=”:N+Zcos(F+B)◢第4行:”Y=”:E+Zsin(F+B)◢第5行:”F=”:F◢第6行:Goto 0K——计算点的里程BIAN——计算点到中桩的距离(左负右正)α——取前右夹角为正2. 坐标反算桩号和偏距主程序(命名为ZBFS)第1行:”X1=”? C:”Y1=”?D: ”K1=”?K第2行:Lbl 0:Prog “A”第3行:Pol(C-N,D-E)第4行:List Ans[1]→I第5行:List Ans[2]→J第6行:Icos(F-J)→S:K+S→K第7行:Abs(S)>0.0001=>Goto 0第8行:”K1=”:K◢第9行:”BIAN=”:Isin(J-F)→Z◢X1——取样点的X坐标Y1——取样点的Y坐标K1——输入时为计算起始点(在线路内即可),输出时为反算点的桩号Z——偏距(左负右正)3. 计算坐标子程序(命名为XYF)为了简洁,本程序由数据库直接调用,上述中的正反算主程序不直接调用此程序第1行:K-A→S:(Q-P)÷L→I第2行:N+∫(cos(F+X(2P+XI)×90÷π),0,S)→N第3行:E+∫(sin(F+X(2P+XI)×90÷π),0,S)→E第4行:F+S(2P+SI)×90÷π→F4. 数据库(命名为A)第1行:K≤175.191=>Stop第2行:175.191→A:428513.730→N:557954.037→E:92°26′40″→F:0→P:1/ 240→Q:70.417→L:K≤A+L =>GoTo 1(第一缓和曲线,圆半径为240)第3行:245.607→A: 428507.298→N:558024.092→E: 100°50′59.4″→F: 1/240→P:1/240→Q:72.915→L: K≤A+L =>Goto 1(第圆曲线,半径为240)第4行:318.522→A: 428482.988→N:558092.538→E: 118°15′25.2″→F: 1/240→P: 0→Q: 55.104→L: K≤A+L =>Goto 1(第二缓和曲线,圆半径为240)第5行:373.627→A:428453.283→N:558138.912→E:124°50′4.5″→F:0→P:-1/180→Q:67.222→L:K≤A+L=>Goto 1:Stop(第一缓和曲线,圆半径为180)第6行:Lbl 1:Prog “XYF”A——曲线段起点的里程N——曲线段起点的x坐标E——曲线段起点的y坐标F——曲线段起点的坐标方位角P——曲线段起点的曲率(左负右正)Q——曲线段终点的曲率(左负右正)L——曲线段长度(尽量使用长度,为计算断链方便)说明:(1)在9860中,程序中所有公式和部分函数结果均存储在ListAns列表数组中,要想多次调用最好随公式取出结果,并赋给变量。

5800交点法正反算程序

5800交点法正反算程序

If N=1: T hen Goto 5: Else prog
“ Z:SXH”
Goto 6: If end ↙
LbI5: “ X” ?M: “ YP”rog?Z “ FSXH” : Goto 7: If en↙d选择反算后输入测点的 X,Y 假设里 程与正算输入一起,无需另输入 LbI6 : “ W” ?W求边桩输入边距 左=”◢:X显示所求 X 值 Y+WSin(P+90) → Y: “ Y=”◢ :Y显示所求 Y 值 P<0 => P+360 → P: “ FW=◢” :P显示所求点切线方位角 Goto 4 LbI7: “ KCD=” :◢K 显示反算出的里程 “ W=” :W◢ 显示反算出的边距 Goto 4↙
子程序 “C” X+Z[1]*cos( O) →X↙ Y+Z[1]*sin( O) →Y↙ Return↙
圆曲线要素计算子程序 “D” L*180 ÷ ( ∏ R) →↙N 2R*sin(N ÷ 2) → Z[1↙] P+(Abs(S) ÷ S)(N ÷ 2O)↙→ P+Abs(S) ÷ S→↙P Return↙。。。。。
反算循环子程序 “FSXH” LbI 0: prog “ ZSX↙H” PoL((M-X),(Z-Y)) ↙ I*cos(J- P) →N↙ I*sin(J- P) →W↙ If N<0.00 1: Then N+K → K:Return: Else K+N → K:Goto 0: If e↙nd Return↙
主程序 “ZS FS”
20→ Dim Z
“ 1→ NEW,2→ OLD”? Z ↙
IF Z=1:Then Goto 1: Else Goto 2 if end ↙ 选择输入 选一手动输入曲线要数 选二提取数 据库

5800公路坐标正反算程序(线元法数据输入)

5800公路坐标正反算程序(线元法数据输入)

坐标正反算程序程序变量说明:D:选线。

E、F:置仪点坐X、Y。

K:待算点桩号。

B:待算点距离。

Q:待算点与线路交角(以顺时针方向)。

L:线元起点至待算点长度。

O:待算点方位角。

S:线元长度。

U:线元起点半径。

V:线元终点半径。

程序运行内容说明:开机运行程序后,1、进入主程序,选择正算或反算,1为正算,2为反算。

2、选择线路,1为第线。

2为第线。

3为第线等等。

3、如果上一次计算过的话提示是不更新数线路参数,十秒钟不操作更新,按EXE不更新。

如果上一次不是计算现在要计算的线路的话直接更新数据库(数据库更新会倒计时提示)。

3、正算。

提示入入置仪点坐标。

提示输入待算点桩号。

提示输入离中桩距离。

提示输入与线路方向夹角。

结果:坐标X、Y。

距置仪点距离和方位角。

再次提示输入待算点桩号。

反算。

提示输入实测点坐标X、Y。

结果:待算点桩号程距中桩距离。

再次提示输入实测点坐标X、Y。

程序特点:1、输入参数少,只要输入线路起点的桩号、半径、方位角、XY坐标以及各线元的桩号和半径(左+右-直线×1045)即可。

2、调用变量少,本程还有A、G、H、M、N、P、R、W字母变量未使用,可以用于其它程序而不会和本程序产生冲突。

3、数据库独立,更换工程时数据更换方便。

4、界面友好,尽量做到人人都容易上手,操作一学就会。

5、程序尽量运用5800计算器各种指令,使程序速度提高。

并能够起到帮助大家学习5800各指令工作原理,以便更好掌握编程。

Casio5800交点法与线元法(积木法)匝道坐标正反算放样程序

Casio5800交点法与线元法(积木法)匝道坐标正反算放样程序

Casio5800交点法与线元法(积木法)匝道坐标正反算放样程序(XUFENG 2011.2.14)本人一直以来想找一个交点法与线元法相结合的坐标正反算程序,在网上找了很久很久,没能找到一个较为满意的,有幸在测量空间看到大歪哥的《Casio5800交点法程序》与《线元法(积木法)匝道坐标正反算放样程序》,根据歪哥意见“需要的自行修改结合XY框架自己修改为数据库反算程序等”,本人不才,采用最笨的办法将两个程序综合了一下,使之能既能进行交点法正反算,又能进行线元法正反算。

在此特别感谢大歪哥!将程序发上来,愿与大家一同交流学习欢迎大家吐口水,只要能进步就行!程序由一个主程序ZBZFS和8个子程序(JS、XY-A、XY-B、JDYS、1、2、3、4)构成,运行时只需运行主程序即可!本程序适用于单交点对称型、不对称型、无缓和曲线单圆曲线型一个交点范围内(含交点前后有直线段时)的曲线要素核对和坐标正反算,手工输入要素,对设计图纸的“直线、曲线转角表”中交点数据进行复核验证,并能对单一线元进行坐标正反算。

1主程序名:ZBZFS(功能:进入计算主程序)65→Dimz↙Deg:Fix 3↙"1.JD ZFS 2. ZHADAO ZFS"? I: I→Z[61]: "1.ZHONG SHU JS 2. JS"? I↙If I=1: Then Goto1: Else Goto2:IfEnd↙LbI 1 :If Z[61]=1: Then Prog"JDYS":Else Cls:"K0"?A:"KN"?L :"X0"?U :"Y0"?V :"F0"?W :"R0"?P :"RN"?Q:"ZX:-1,+1,0"?G:IfEnd↙LbI 2 :Prog"JS"2子程序名:JS(功能:选择正算或反算模式)Cls:"XC"?H:"YC"?Z↙Cls:"1.ZS 2.FS"? I: I=2=>Goto 3↙LbI 1 : Cls: If Z[61]=1: Then"JD ZS KX+XXX"?K :Prog"4": Else "ZHADAO ZS KX+XXX"?K :IfEnd↙LbI 2: Cls:90→B: Cls:"RJ Or 0 To K"?B:B=0 =>Goto 1:"Z"?T↙Prog "XY-A"↙X+Tcos(M+B)→X↙Y+Tsin(M+B)→Y↙360Frac((M+360)÷360→M↙Pol(X-H,Y-Z : 360Frac((J+360)÷360→J↙2→O: Prog "XY-B":Goto 2↙LbI 3 : Cls: If Z[61]=1: Then"JD FS KN+"?K:"X"?C:"Y"?D:Prog"4":Else Cls: "ZHADAO FS":"X"?C:"Y"?D:IfEnd↙LbI 4 :Prog "XY-A"↙(D-Y)sin(M)+(C-X)cos(M)→H↙If Abs(H)>X10-3 :Then K+H→K:Goto 4:IfEnd↙(D-Y)÷cos(M)→T↙3→O: Prog "XY-B":Goto 3↙3子程序名: XY-A(功能:坐标计算程序)5→N: G(Q-1-P-1)÷Abs(L-A)→F: Abs(K-A)÷N→R: 90R÷π→S:W+(FNR+2GP-1)NS→M:1→E↙U+R÷6×(Cos (W)+Cos (M) +4∑(Cos (W+((E+0.5)FR+2GP-1)×(E+0.5)S),E,0,(N-1))+2∑(Cos (W+((EFR+2GP-1)ES,E,1,(N-1)))V+R÷6×(sin (W)+sin (M) +4∑(sin (W+((E+0.5)FR+2GP-1)×(E+0.5)S),E,0,(N-1))+2∑(sin (W+((EFR+2GP-1)ES,E,1,(N-1)))→Y↙4子程序名: XY-B(功能:显示正算或反算结果)If O=2:Then↙Cls :"K×××=":"Z=":"X=":"Y=": Locate 6,1, K : Locate 4, 2, T : Locate 4,3, X : Locate 4,4, Y◢If T=0 :Then Cls :"QF(Z)=": Locate 8,1, M:M▼DMS◢I fEnd↙Cls :"K×××=":"S=": Locate 6,1, K : Locate 4, 2, I :"F=":J:J▼DMS◢IfEnd↙If O=3:Then "X=":"Y=":"K×××=":"Z=": Locate 4,1,C: Locate 4, 2, D : Locate 6,3,K :Locate 4,4,T◢IfEnd:Cls↙5子程序名:4(功能:将交点参数转为线元计算参数)LbI 1: IF Z[48]<0 :Then -1→Z[62] : Else:1→Z[62]:IfEndLbI 2: If K≥Z[57]:Then Z[57]→A:Z[1]→L:Z[23]→U:Z[24]→V : Z[31]→W : 10^45→P:10^45→Q : 0→G:IfEnd↙LbI 3:If K≥Z[1]:Then Z[1]→A : Z[2]→L : Z[19]→U : Z[20]→V:Z[29]→W : 10^45→P:Z[46]→Q : Z[62]→G: IfEnd↙LbI 4:If K≥Z[2]:Then Z[2]→A: Z[4]→L:Z[25]→U : Z[26]→V:Z[32]→W : Z[46]→P: Z[46]→Q : Z[62]→G: IfEnd↙LbI 5:f K≥Z[4]:Then Z[4]→A : Z[5]→L : Z[27]→U:Z[28]→V : Z[33]→W : Z[46]→P: 10^45→Q : Z[62]→G: IfEnd↙LbI 6:If K≥Z[5]:Then Z[5]→A : Z[5]+1000→L:Z[21]→U : Z[22]→V : Z[30]→W:10^45→P :10^45→Q : 0→G : IfEnd↙6子程序名:JDYS(功能:输入交点要素、显示交点要素及主点Cls : "BP"?H:H→Z[57]:"K(JD)"?K:K→Z[41] :"X (JD)"?X :X→Z[42]:"Y(JD)"?Y:Y →Z[43]:"LS1"?B:B→Z[44] :"LS2"?C:C →Z[45]: ?R:R →Z[46]:"(ZH)FWJ°"?M:M→Z[47] : "α(Z-,Y+)°"?O:O→Z[48] : Z[47]+Z[48]→Z[49]: Prog "1":Prog "2"↙Cls :"T1=":"T2=":"L=":"LY=": Locate 4,1, Z[50] : Locate 4,2, Z[51]: Locate 4,3, Z[52] : Locate 4,4, Z[53]◢Cls :"E=": Locate 7,1, Z[54]Cls :"K(QD)=": "X=": "Y=": "FWJ="Locate 7,1,Z[57] :Locate 7,2, Z[23] :Locate 7,3, Z[24] :Locate 7,4, Z[31] ◢Cls :"K(ZH)=": "X=": "Y=": "FWJ=":Locate 7,1,Z[1] : Locate 7,2, Z[19] :Locate 7,3, Z[20] :Locate 7,4, Z[29]◢Cls : "K(HY)=": "X=": "Y=": "FWJ=": Locate 7,1,Z[2] : Locate 7,2, Z[25] :Locate 7,3, Z[26] :Locate 7,4, Z[32]◢Cls :"K(QZ)=": Locate 7,1,Z[3]◢Cls :"K(YH)=": "X=": "Y=": "FWJ=": Locate 7,1,Z[4] : Locate 7,2, Z[27] :Locate 7,3, Z[28] :Locate 7,4, Z[33]◢Cls :"K(HZ)=": "X=": "Y=": "FWJ=": Locate 7,1,Z[5] : Locate 7,2, Z[21] :Locate 7,3, Z[22] :Locate 7,4, Z[30]◢7子程序名: 1(功能:计算交点要素)If Z[48]<0 :Then -1→Z[55] : Else 1→Z[55] : IfEnd : Z[55]* Z[48]→Z[56] ↙Z[44] 2 ÷24÷Z[46]- Z[44]^(4)÷2688÷Z[46] ^(3) →Z[6] ↙Z[45] 2 ÷24÷Z[46]- Z[45]^(4)÷2688÷Z[46] ^(3) →Z[7] ↙Z[44]÷2-Z[44]^(3)÷240÷Z[46]2 →Z[8] ↙Z[45]÷2-Z[45]^(3)÷240÷Z[46]2 →Z[9] ↙Z[8]+(( Z[46]+Z[7]-( Z[46]+Z[6])cos(Z[56]))÷sin(Z[56]))→Z[50]↙Z[9]+(( Z[46]+Z[6]-( Z[46]+Z[7])cos(Z[56]))÷sin(Z[56]))→Z[51]↙Z[46]* Z[56]π÷180+( Z[44]+ Z[45]) ÷2→Z[52]↙Z[46]* Z[56]π÷180-( Z[44]+ Z[45]) ÷2→Z[53]↙(Z[46]+(Z[6]+Z[7])÷2)÷cos(Z[56]÷2)- Z[46]→Z[54]↙Z[41]-Z[50]→Z[1] ↙↙Z[1]+Z[44]→Z[2] ↙↙Z[2]+Z[53]÷2→Z[3]↙Z[1]+Z[52]-Z[45]→Z[4]↙Z[4]+Z[45]→Z[5]↙8子程序名: 2(功能:计算主点坐标及切线方位角)Z[42]-Z[50]cos(Z[47])→Z[19]: (直缓坐标)Z[43]-Z[50]sin(Z[47])→Z[20]↙Z[47]→Z : 360Frac((Z+360)÷360→Z[29] (方位角)Z[42]+Z[51]cos(Z[49])→Z[21]: (缓直坐标)Z[43]+Z[51]sin(Z[49])→Z[22]↙Z[49]→Z: 360Frac((Z+360)÷360→Z[30] (方位角)Z[1]-Z[57]→L↙(H→Z[57]为前直线起点桩号)Z[42]-( Z[50]+L)cos(Z[47])→Z[23]↙ (前直线起点坐标)Z[43]-( Z[50]+L)sin(Z[47])→Z[24]↙Z[47]→Z : 360Frac((Z+360)÷360→Z[31]↙(方位角)Z[44]→Z[12]:Z[44]→Z[13]:Prog"3"↙Z[4]-Z[1]→L:90(2L-Z[44])÷Z[46]÷π→Z[11]↙Z[46]sin(Z[11])+Z[8]→Z[14]:Z[46](1-cos(Z[11]))+Z[6]→Z[15]↙Z[19]+Z[14]cos(Z[47])-Z[55]Z[15]sin(Z[47])]→Z[27]↙(圆缓点坐标)Z[20]+Z[14]sin(Z[47])+Z[55]Z[15]cos(Z[47])]→Z[28]↙Z[47]+Z[55]Z[11]→Z: 360Frac((Z+360)÷360→Z[33]↙(方位角)Z[2]-Z[1]→L:90(2L-Z[44])÷Z[46]÷π→Z[58]↙Z[46]sin(Z[58])+Z[8]→Z[14]:Z[46](1-cos(Z[58]))+Z[6]→Z[15]↙Z[19]+Z[14]cos(Z[47])-Z[55]Z[15]sin(Z[47])]→Z[25]↙(缓圆点坐标)Z[20]+Z[14]sin(Z[47])+Z[55]Z[15]cos(Z[47])]→Z[26]↙Z[47]+Z[55]Z[58]→Z: 360Frac((Z+360)÷360→Z[32]↙(方位角)9子程序名: 3(主点坐标计算辅助程序)If Z[12]=0 :Then 0→Z[14]: 0→Z[15]:Else↙Z[12]- Z[12]^(5)÷40÷(Z[46]*Z[13])2+ Z[12]^(9)÷3456÷(Z[46]*Z[13])^(4) →Z[14]↙Z[12]^(3)÷6÷(Z[46]*Z[13])-Z[12]^(7)÷336÷(Z[46]*Z[13])^(3)+ Z[12]^(11) ÷42240÷(Z[46]*Z[13])^(5)→Z[15] ↙IfEnd↙程序说明:1、进入程序:1.JD ZFS 2. ZHADAO ZFS? 选1为交点法正反算(以后操作均为交点法计算),选2为线元法正反算(以后操作均为线元法计算)2、ZHONG SHU JS 2. JS?选1重输参数,选2直接进入交点法或线元法正反算(参数为已输过的参数)3、参数输入:一、交点法已知数据输入:BP?上一交点ZH桩号K(JD)?交点桩号X(JD)?交点X坐标Y(JD)?交点Y坐标LS1 ?第一缓和曲线长度LS2 ?第二缓和曲线长度R ? 圆曲线半径(ZH)FWJ°?交点前(即前交点至本交点也即ZH点)的正切线方位角α(Z-,Y+)?本交点处线路转角(左转为负,右转为正,度分秒输入)交点法计算要素显示:T1=第一切线长T2=第二切线长L=曲线总长LY=圆曲线长E=曲线外距K(ZH)=直缓点桩号K(HY)=缓圆点桩号K(QZ)=曲中点桩号K(YH)=圆缓点桩号K(HZ)=缓直点桩号二、线元法已知数据输入:K0? KN? R0? RN?F0?X0? Y0?ZX? 分别为线元起点桩号、终点桩号、起点半径、终点半径、起点切线方位角、起点X坐标、起点Y 坐标、线元转向。

非常好的5800坐标正反算程序

非常好的5800坐标正反算程序

5800坐标正反算程序“1.If SZThen XY”:“2. If XYThen SZ”:“N=”?→N:起点X→U:起点Y →V:起点里程→O:起点方位角→G:曲线长度→H:起点曲率半径→P:终点曲率半径→R:(左偏-1;直线0;右偏1)→Q:1÷P→C:(P-R)÷(2HPR)→D:180÷π→E:If 1→N:Then Goto 1:Else Goto 2:IfEnd←Lbl 1:“S=”?→S:“Z=”?→Z:Abs(S-O)→W:Prog “SUB1”:X→X▲Y→Y▲Lbl 2:“X=”?→X:“Y=”?→Y:X→I:Y→J:Prog “SUB2”:O+W→S▲Z→Z▲Goto 2正算子程序SUB10.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))+A cos(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→Y←反算子程序SUB2G-90→T:Abs((Y-V)cosT-(X-U)sinT)→W:0→Z:Lbl 0:Prog “SUB1”:T+QEW(C+WD) →L:(J-Y)cosL-(I-X)sinL→Z:If AbsZ<0.000001:Then Goto1:Else W+Z→W:Goto0:IfEnd←Lbl 1:0→Z:Prog“SUB1”:(J-Y)÷sinF→Z5800坐标反算程序Lbl 0:“X=”?→X:“Y=”?→Y:焦点X→N:焦点Y→E:转向角→A:半径→R:缓和曲线长→C:切线长→T:直缓点里程→G:缓直点里程→M:方位角→F:If G<M:Then 1→P:F→U:Else -1→P:F+A→U:IfEnd←If A>0:Then 1→Z:Else -1→Z:IfEnd←Pol(X-N,Y-E) ←G+PT+Rec(I,J-U)→S:J→D←If G>M:Then Goto3:IfEnd←If S≤G :Then S→K▲ZD→Q▲Goto 0←Else Goto4:IfEnd←Lbl 3←If S≥G:Then S→K▲ZD→Q▲Goto 0←Lbl 4←C2÷24÷R-C4÷2688÷R3→W:C÷2-C3÷240÷R2→V:90C÷R÷π→B:←Pol(P(S-G) -V,ZD-R-W) ←If J≥B-90:Then Goto 5:IfEnd←P(S-G)+P(S-G)5÷40÷R2÷C2→Z←Z3÷(6RC) →H←If A>0:Then D-H→W:Else -D-H→ W:IfEnd←If RC≤2WC:Then RC÷W→Z:Else(RC-√(R2C2-2RCWZ)) ÷W→Z:IfEnd←G+PZ→K▲K-PZ5÷(40R2C2) →V:Z3÷(6RC) →H←If A<0:Then -1→Z:Else 1→Z:IfEnd←√((S-V)2+(ZD-H)2) →W←If ZD≥H:Then W→Q▲Else -W→Q▲IfEnd←Goto 0←Lbl 5←(90+J)π÷180-C÷2R→J←If RJ≥P(M-G) -2C:Then Goto 6:IfEnd←G+P(C+JR) →K▲R-I→Q▲Goto 0←Lbl 6←Pol(P(S-G) -T,ZD) ←M-P(T-Rec(I,J-AbsA)) →O←If G>M:Then Goto 7:IfEnd←If O>M:Then O→K▲J→O▲Goto 0←Else Goto 8:IfEnd←Lbl 7←If O≤M:Then O→K▲J→Q▲IfEnd←Goto 0←Lbl 8←P(M-O)+P(M-O)5÷(40R2C2) →Z←Z3÷(6RC)) →H←J-H→W←If RC≤2WZ:Then RC÷W→Z:Else(RC-√(R2C2-2RCWZ)) ÷W→Z:IfEnd ←M-PZ→K▲K+PZ5÷(40R2C2) →V:Z3÷(6RC) →H:√((O-V)2+(J-H)2)→W←If J≥H:Then W→Q▲Else -W→QIfEnd←Goto 0←。

5800交点正反算坐标(可计算不对称缓和曲线)

5800交点正反算坐标(可计算不对称缓和曲线)

1、主程序程序名:1XY-KMLbI 0:5→DimZ:Norm 2:1→A:"A:X,Y=1,KM,D=2"?A:A=1=>Goto 1:A=2=>Goto 2:LbI 1:Prog "DX":LbI A:Prog"QX":90→B:"PJ"?B:B→Z [1]:LbI B:1→F:"KM"?Z:Z= -1=>Goto 0:Z=-2=>Goto A:Z=-3=>Goto X :Prog"KM":?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:LbI A:Prog"QX":90→Z[1]:LbI C:2→F:"KM"?Z:Z = -1=>Goto 0:Z=-2=>Goto A:Z=-3=>Goto X :Prog"KM"“X0”? X:”Y0”?Y:?D:Prog "ZX": Fix 3:"KM=":Locate 6, 4,Z:"D=":Locate 6,4,D:Goto C:LbI X:Mat F◢Goto 02. 交点法正算子程序(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÷Ab s(P) →W:0→M:H→C:If Z≤O-T:Then Z-O→S:G→Z[2]:Goto 2: IfEnd:If Z≤O-T+H:Then Z-O+T→S:Prog “HX”:G+WK→Z[2]:Goto 4:IfEnd:If Z≤O-T+ΠR×Abs(P)÷180+H÷2-N÷2: 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]:Goto 4: IfEnd:O-T+ΠR×Abs(P)÷180+H÷2+N÷2-Z→S:(R+N2÷R÷24-N∧(4)÷2688÷R∧(3))tan(Abs(P) ÷2)+N÷2-N∧(3) ÷240÷R2+E→T :N→H:Prog “HX”:G+P→S:S-WK→Z[2]:U+(T-A)Cos(S)-WBSi n(S)→I:V+(T-A)Sin(S)+WBcos(S)→J:Goto 3:LbI 4:U+(A-T)cos(G)-WBsin(G)→I:V+(A-T)Sin(G)+WBcos(G) →J: Goto 3:LbI 2:U+Scos(Z[2])→I:V+Ssin(Z[2]) →J: LbI 3:C→H3. 交点法缓和段转化子程序(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)程序名:ZXZ:0→D:LbI 0:Prog “Z”:Pol(X-I,Y-J):J-Z[2] →J:Isin(J) →S:Icos(J) →I:If Abs(I)<0.1:Then Z+I→Z:S→D:Goto 2:Else Goto 1: LbI 1:If M=0:Then Z+I→Z:Goto 0:Eles Pol(M-WS,I):(JMΠ)/180→I:Z+I→Z:Goto 0:IfEndLbI 25.线路选择子程序(线路选择输0时。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档