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

合集下载

5800曲线道路全线坐标正反算(已验证)

5800曲线道路全线坐标正反算(已验证)

CASIO fx-5800P线元法坐标正反算程序V2.0说明:本程序适用于卡西欧计算器 CASIO fx-5800P,可对全线贯通坐标正反算、竖曲线高程计算。

该程序可计算任意线型,包含(直线、圆曲线、缓和曲线、卵形曲线)等,还可以能通过坐标反推该点里程和距中线距离,适用测量员专用。

主程序名:ABCYT第1步Deg:Fix 3:10→DimZ第2步Lbl 3:"1.DK=>XY":"2.XY=>DK":"Q"?W:"K0+"?S:Prog"ABCYTSJ":If P=0:Then 10^(45)→P:IfEnd:If R=0:Then 10^(45)→R:IfEnd第3步1÷P→C:(P-R)÷(2HPR)→D:180÷π→E:If W=1:Then Goto 1:Else Goto2:IfEnd第4步Lbl 1:"E"?Z90=N:Abs(S-O)→W:Prog "ABCYTZ"第5步Cls:"F=":Locate 3,1,F°:"X=":Locate 3,2,X:"Y=":Locate 3,3,Y◢第6步Prog"ABCYTSQX":Cls:"H=":Locate 3,1,H◢第7步1→W:90→N:Goto 3第8步Lbl 2:?X:?Y:X→I:Y→J:Prog"ABCYTF":O+W→S第9步Cls:"K=":Locate 3,1,S:"E=":Locate 3,2,Z◢第10步2→W:Goto 3正算子程序名:ABCYTZ第1步0.1739274226→A:0.3260725774→B:0.0694318442→K:0.3300094782→L第2步1-L→F:1-K→M第3步U+W×(A×cos(G+Q×E×K×W×(C+K×W×D))+B×cos(G+Q×E×L×W×(C+L×W×D))+B×cos(G+Q×E×F×W×(C+F×W×D))+A×cos(G+Q×E×M×W×(C+M×W×D)))→X第4步V+W×(A×sin(G+Q×E×K×W×(C+K×W×D))+B×sin(G+Q×E×L×W×(C+L×W×D))+B×sin(G+Q×E×F×W×(C+F×W×D))+A×sin(G+Q×E×M×W×(C+M×W×D)))→Y第5步G+Q×E×W×(C+W×D)→F:F+ N→Z[1]第6步X+Z×cos(Z[1])→X:Y+Z×sin(Z[1])→Y反算子程序名:ABCYTF第1步Lbl 2:(S-O)→W:0→Z:Prog "ABCYTZ":F-90→Z[9]:(J-Y)×cos(Z[9])-(I-X)×sin(Z[9])→Z[10]第2步If Abs(Z[10])>0.001:Then S+Z[10]→S:Goto 2:Else Goto 1:IfEnd第3步Lbl 1:(Y-J)÷sin(Z[9])→Z数据库名:ABCYTSJ第1步Goto1第2步Lbl 1:If S<7586.707 Or S>13346.96:Then Cls:Locate 2,2,"PQX":Locate 4,3,"CHAOXIAN":Locate 10,4,"→Stop"◢第3步Stop:IfEnd第4步Lbl 1:IF S<7946.707:Then 98°56′56″→G:7586.707→o:3378605.445→U:453648.704→V:0→P:4500→R:360→H:1→Q:Return:IfEnd第5步Lbl 1:IF S<11766.03:Then 101°14′26″→G:7946.707→o:3378544.714→U:454003.518→V:4500→P:4500→R:3819.323→H:1→Q:Return:IfEnd第6步Lbl 1:IF S<12126.03:Then 149°52′11″→G:11766.03→o:3376389.890→U:457018.324→V:4500→P:0→R:360→H:1→Q:Return:IfEnd第7步Lbl 1:IF S<13346.96:Then 152°09′41.68″→G:12126.03→o:3376073.846→U:457190.654→V:0→P:0→R:1220.93→H:0→Q:Return:IfEnd第n步……………………………………………………数据输入说明:第1步Goto1第2步Lbl 1:If S<本条线路起点里程S>本条线路止点里程Cls:Locate 2,2,"PQX":Locate 4,3,"CHAOXIAN":Locate 10,4,"→Stop"◢第3步Stop:IfEnd第4步Lbl 1:If S<本线元止点里程:Then线元起点切线方位角→G:线元起点桩号→O:线元起点坐标X→U:线元起点坐标Y→V:线元起点半径(直线为0、曲线为半径)→P:线元止点半径(直线为0、曲线为半径)→R:线元长度→H:线元转向(左转为-1、右转为1、直线为0)→Q:Return:IfEnd第n步Lbl 1:每增加一行则为增加一个线元要素。

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列表数组中,要想多次调用最好随公式取出结果,并赋给变量。

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

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

Casio5800交点法与线元法(积木法)匝道坐标正反算放样程序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)))→X ↙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◢IfEnd↙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公路坐标正反算程序(线元法数据输入)

坐标正反算程序程序变量说明: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各指令工作原理,以便更好掌握编程。

非常好的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公路坐标正反算程序

卡西欧5800公路坐标正反算程序卡西欧5800公路坐标正反算程序是一种用于测量和计算公路坐标的工具。

它基于卡西欧5800全站仪的技术和功能,能够准确地测量和计算公路的坐标信息。

下面我将详细介绍卡西欧5800公路坐标正反算程序的工作原理和使用方法。

一、工作原理:卡西欧5800全站仪是一种高精度的测量仪器,它能够通过测量角度和距离来确定地点的坐标。

在公路测量中,我们通常会在公路上设置一系列的控制点,然后使用全站仪测量这些控制点的坐标。

通过这些测量数据,我们可以计算出公路上其他点的坐标。

卡西欧5800公路坐标正反算程序基于这些测量数据,通过一系列的计算和算法,能够准确地计算出公路上其他点的坐标。

具体的计算方法包括正算和反算。

正算是指已知控制点的坐标,通过测量数据和算法计算出其他点的坐标。

反算是指已知某个点的坐标,通过测量数据和算法计算出该点在公路上的位置。

二、使用方法:1. 设置控制点:首先,在公路上选择一些具有代表性的控制点,并使用全站仪进行测量。

在测量过程中,需要确保全站仪的水平和垂直仪器准确,以获得准确的测量数据。

2. 导入测量数据:将测量数据导入卡西欧5800公路坐标正反算程序。

该程序通常会提供一个界面,用于导入和管理测量数据。

3. 正算:如果需要计算公路上其他点的坐标,可以选择正算功能。

在正算功能中,需要输入已知控制点的坐标和测量数据。

程序将根据这些数据进行计算,并给出其他点的坐标。

4. 反算:如果需要计算某个点在公路上的位置,可以选择反算功能。

在反算功能中,需要输入已知点的坐标和测量数据。

程序将根据这些数据进行计算,并给出该点在公路上的位置。

5. 结果输出:计算完成后,卡西欧5800公路坐标正反算程序将给出计算结果。

结果通常以表格或图形的形式呈现,以便用户查看和使用。

三、注意事项:1. 测量准确性:为了获得准确的测量结果,使用卡西欧5800全站仪时需要注意测量准确性。

在测量过程中,需要保持仪器的稳定和准确,并避免测量误差。

5800公路全线坐标正反算程序

5800公路全线坐标正反算程序

FX-5800公路全线坐标正反算程序1. 主程序(ZBJS)Lbl 4:"1.SZ => XY":"2.XY => SZ":?N:?S:Prog“SUB0”↙1÷P→C:(P-R)÷(2HPR) →D:180÷π→E:N=1 => Goto1:Goto2↙Lbl 1:? Z:Abs(S-O) →W:Prog "SUB1":F-90→F:Cls↙"XS=":Locate 4,1,X:"YS=":Locate 4,2,Y:“FS=”:F▲DMS◢Goto 4↙Lbl 2:?X:?Y:X→I:Y→J:Prog“SUB2”:O+W→S:Cls ↙“S=”:Locate 4,1,S:“Z=”:Locate 4,2,Z◢Goto 42. 正算子程序(SUB1)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+L WD))+Bcos(G+ QEFW(C+FWD))+Acos(G+QEMW(C+MWD))) →X:V+W(Asin(G+QEKW(C+KWD))+Bsin(G+QELW(C+LWD))+Bsin(G+ QEFW(C+FWD))+Asin(G+QEMW(C+MWD))) →Y:G+QEW(C+WD)+90→F:X+Zcos(F)→X:Y+Zsin(F)→Y 2. 反算子程序(SUB2)G-90→T:Abs((Y-V)cos(T)-(X-U)sin(T) ) →W:0→Z:Lbl 0:Prog "SUB1":T+QEW(C+WD) →L:(J-Y)cos(L)-(I-X)sin(L)→Z:If Abs(Z)<1*10-6:Then Goto 1:Else W+Z→W:Goto0:IfEnd ↙Lbl 1:0→Z:Prog“SUB1”:(J-Y) ÷sin(F) →ZSUB0 数据库子程序Goto1↙同时保存多个曲线时的指针Lbl 1:IF S<***(线元终点里程):Then***→G(线元起点方位角):***→O(线元起点里程):***→U(线元起点X):***→V(线元起点Y):***→P(线元起点曲率半径):***→R(线元终点曲率半径):***→H(线元起点至终点长度):0或1、-1→Q(线元转角,左转为负,右转为正,直线为0):Return:IfEnd↙IF S<***(线元终点里程):Then***→G(线元起点方位角):***→O(线元起点里程):***→U(线元起点X):***→V(线元起点Y):***→P(线元起点曲率半径):***→R(线元终点曲率半径):***→H(线元起点至终点长度):0或1、-1→Q(线元转角,左转为负,右转为正,直线为0):Return:IfEnd↙……………..坐标正算说明:1:运行主程序ZBJS,选择1.SZ=>XY(正算坐标)2.XY=>反算坐标。

5800程序(线元法全线坐标正方算)

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计算器全线坐标计算放样正反算程序

5800计算器全线坐标计算放样正反算程序(定稿)彭赐明主程序坐标正反算程序名称:ZBZFSLB1 A↙Cls : Fix 4 : 30→Dim Z :"0=ZS,1=FS"?Z ↙If Z=0:Then Goto B:IfEnd↙(Z=0进入里程点坐标正算)If Z=1:Then Prog"FSLCBZ ": Goto A:IfEnd↙(Z=1进入反算里程边桩)Lb1 B ↙“K=”?K :(计算里程)Prog"SJK1 ":Prog”ZBFY” :Goto A↙子程序数据库 SJK1IF K<本段曲线终点里程 AND K≥上段曲线终点里程:THEN 本段终点里程→Z[1] : 上段曲线终点里程→Z[2] :1→O(注:左偏曲线输入-1→O,右偏曲线输入1→O): 半径→R : 曲线偏角→A:第一缓和曲线→Z[6] : 第二缓和曲线→Z[7] : 交点X→B :交点Y→C : 小里程向交点方位角→E : 交点向大里程方位角→F : Prog”XLZBJSCX”:Return: IFEND↙IF…………Prog”XLZBJSCX”:Return:IFEND(曲线段分段输入)↙补充直线段输入如下(单独直线段)IF K<本段直线终点里程AND K≥本段直线起点里程:THEN 本段直线终点里程→Z[3]:终点X→Z[16]:终点Y→Z[17]:方位角→E: Z[16]+ (K- Z[3])*COS E→Z[18]:Z[17]+ (K- Z[3])*SIN E→Z[19] : Return:IFEND子程序坐标正算,名称:XLZBJSCXLB1 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])→Z[25] ↙(曲线总长)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]- Z[25]→Z[3] ↙(ZH点里程)Z[3]+ Z[6]→Z[4] ↙(HY点里程)Z[1]- Z[7]→Z[5] ↙(YH点里程)GOTO 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] →Z[23] : 0→Z[24] : E→T : GOTO 8↙LB1 5 ↙(第一缓和曲线独立坐标)K- Z[3] →H ↙H-H^5/(40*R^2* Z[6]^2)+H^9/(3456*R^4* Z[6]^4) →Z[23] ↙H^3/(6*R* Z[6])-H^7/(336*R^3* Z[6]^3) →Z[24] ↙90*H^2/( R*π* Z[6]) →T ↙IF O>0 :THEN T +E→T : ELSE E-T →T : T<0=>360+T→T : IFEND ↙GOTO 8 ↙LB1 6 ↙(圆曲线独立坐标)K- Z[4] →H ↙H*180/( R*π)+ Z[14]→T ↙R*SIN T+ Z[8]→Z[23] ↙R*(1-COS T)+ Z[10]→Z[24] ↙IF O>0 :THEN T +E→T : ELSE E-T →T : T<0=>360+T→T : IFEND ↙GOTO 8 ↙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*S IN A→Z[23] ↙Z[13]*SIN A-U*SIN A+V*COS A→Z[24]↙IF O>0 :THEN F-T→T : T<0=>360+T→T : ELSE F+T →T : IFEND ↙GOTO 8 ↙LLb1 8IF O<0 : THEN - Z[24]→Z[24] : IFEND ↙Z[16]+Z[23]*COS E-Z[24]*SIN E→Z[18] ↙Z[17]+Z[23]*SIN E+Z[24]*COS E→Z[19] ↙ReTurn↙子程序反算里程边桩,名称:FSLCBZLb1 1↙"XK="?X:"YK="?Y↙(输入任意测点的XY坐标):“K=”?K (试算里程,任意输入标段内里程点即可,也可以输入大致的估算里程加快速度)↙Lb1 2↙Prog"SJK1 ":T-90 →W:W<0=>360+W→W:Abs((Y-Z[19])*Cos W-(X-Z[18])*Sin W)→S↙If S<0.0001:Then Goto 4:Else Goto 3:Ifend↙Lb1 3↙K+S→K: Prog"S JK1":T-90 →W:W<0=>360+W→W:Abs((Y-Z[19])*Cos W-(X-Z[18])*Sin W)→Q↙If Q<0.0001 :Then Q→S: Goto 4:Else IF Q<S: THEN K+Q→K: Goto 2 :Else IF Q>S :THEN K-Q→K:G oto 2:Ifend:Ifend:Ifend↙Lb1 4↙Pol (X-Z[18],Y-Z[19]:"DP(-Z+Y)=":I◢(偏距)(由于该程序不能准确判断边桩左右方向,暂作修改,取消左右边判定)"K=":K+S→K◢(里程)Return↙子程序坐标放样:ZBFYLB1 0 ↙“XHS="?G(后视点X):"YHS="?L(后视点Y):"XZJ="?M(置镜点X):"YZJ="?N(置镜点Y):Pol(G-M,L-N):"DH=":I(后视距)◢J<0=>J+360→J:"FH=":J→DMS◢(后视方位角) “QXJ=” :T◢(计算里程点切线方位角,可以不显示)“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*SI N(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◢(边桩放样方位角)Return↙。

卡西欧fx-5800P直线圆曲线坐标正反算程序

卡西欧fx-5800P直线圆曲线坐标正反算程序

[精] fx 5800 直线圆曲线坐标正反算程序(2010-07-01 21:50:11)标签:杂谈直线计算程序0→I:0→J:”X 0”?D:”Y0”?E:”X1”?B:”Y1”?C:Pol(B-D,C-E):J→A:If A<0: Then A+360→A:Else A→A:IfEnd:Lbl 0:?O:?S:If O≠0:Then Goto 1:IfEnd: D+Scos(A) →X:”X=”:X◢E+Ssin(A) →Y:”Y=”:Y◢Goto 0:Lbl 1:D+Scos(A)+Ocos(A+90) →X:”X=”:X◢E+Ssin(A)+Osin(A+90) →Y:”Y=”:Y◢Goto 0输入程序时注意区别字母O与数字0程序运行时符号说明X0? Y0?分别输入直线起点的XY坐标值X1? Y1?分别输入直线终点的XY坐标值O? 输入边桩与中桩的距离(左边桩为负值,右边桩为正值),如计算中桩坐标输入0S? 输入所求点到直线起点的距离圆曲线计算程序0→I:0→J: ”X0”?C:”Y0”?D:”X1”?E:”Y1”?F:?R:”L:-1 R:1”?N:”ZY”?W:Lbl 0:”LN”?T:T-W→O:Pol(E-C,F-D):I→S:J→A: If A<0:Then A+360→A:Else A→A:IfEnd: sin-1(S÷(2R)) →K:2∏RK÷180→L:180O÷(2∏R) →G:(2R)sin(G)→H:C+Hcos(A-KN+GN) →X:”X=”:X◢D+Hsin(A-KN+GN) →Y:”Y=”:Y◢R-0.5√(4R2-H2) →Q:”Q=”:Q◢“S=”?V:If V=0:Then Goto 0:IfEnd:”L:-90 R:90”?U:X+Vcos(A-KN+2GN+U) →X:”X=”:X◢Y+Vsin(A-KN+2GN+U) →Y:”Y=”:Y◢Goto 0输入程序时注意区别字母O与数字0程序运行时符号说明X0? Y0?分别输入直线起点的XY坐标值X1? Y1?分别输入直线终点的XY坐标值R? 输入圆曲线半径L:-1 R:1?圆曲线向左转弯时输入-1,向右转弯时输入1ZY? 输入起点桩号LN? 输入所求点桩号(按下exe键后显示中桩坐标)S? 输入所要求的边桩与中桩的距离L:-90 R:90要求左边边桩输入-90,右边边桩输入90(按下exe键后显示边桩坐标)。

5800 坐标正算程序、坐标反算程序

5800 坐标正算程序、坐标反算程序

CASIO FX-5800 P坐标正算反算
坐标正算
Lbl 0: “X0=”?S:“Y0=”?K
“FWJ=”?F:“JL=”?D
“JSZB X=”:S+Dcos(F)→X◢
“JSZB Y=”:K+Dsin(F)→Y◢
Goto 0
坐标反算
Lbl 0:“X1=”?Z:“Y1=”?W
“X2=”?X:“Y2=”?Y
X-Z→A:Y-W→B
“JULI D”:√(A²+B²)→D◢“FWJ”:cos-1(A÷D) →J
IF B≥0:Then J→J:J►DMS◢
Else 360-J→J:J► DMS◢
IfEnd
Goto 0
坐标正算说明:
1.已知一个点的坐标X、Y,方位角和距离,计算未知点坐标
2.计算中桩是用靠近待求点的小里程的X、Y坐标,方位角,以及待求点到已知点的距离,
计算出待求点X、Y坐标
3.计算边桩坐标时,先求出待求点的坐标,然后输入待求点(要计算的里程)的X、Y坐
标,计算时距离输入永远为正值,左侧用计算里程方位角-90°,如果出现负值,则再加上360°(即方位角-90°+360°);右侧则直接用方位角+90°
坐标反算说明:
1.已知两个点的X、Y坐标,计算出两点间的距离和方位角
2.输入时先输入小里程的X、Y坐标再输入大里程方向的X、Y坐标,与先输入大里程后
输入小里程的坐标,计算结果为相反方向!。

5800程序(线元法程序)

5800程序(线元法程序)

卡西欧5800程序1 ZBZFS(坐标正反算)LbI 5 :“1.SZ =>NE”:“2.NE=>SZ”: ?Q : LbI 0 : Q =1 =>Goto 1 : Q =2 =>Goto2LbI 1 :“K”?K:“Z”:?Z:“J”?J: Prog “MN09-2”: Prog “QXJS-SUB1”: Prog “GK”: Prog “GCJS”:“N”:X◢“E”:Y◢“W”:F ▶DMS◢“KM”:K◢“H”:G◢Prog “PODU”:(E-B)÷100÷(D-A)(K-A)+B÷100→I:(F-C)÷100÷(D-A)(K-A)+C÷100→J“HL=”:G+I(Abs(Z)-1)◢“HR=”:G+J(Abs(Z)-1)◢Goto 5LbI 2 : “K”?K: Prog “MN09-2”:“N”?B:“E”:?C: B→N:C →E: Prog “QXJS-SUB2”: Prog “GK”: Prog “GCJS”: “K”:K ◢“Z”:Z◢“H”:G◢Goto 52MN09—2(平曲线要素)If K≤…………(HY点桩号) :then ……..(ZH点桩号)→O :1045→P :…………(圆曲线半径) →R :…………(前缓和曲线长度)→L :…………(ZH点X坐标) →U :……………(ZH点Y坐标)→V :…………. (前一交点方位角) →A :Return :IfEndIf K≤…………(YH点桩号) :then ……..(HY点桩号) →O :…………(圆曲线半径) → P :…………(圆曲线半径) →R :…………(平曲线总长度Ls1+Ls2)→L :…………(HY点X坐标) →U :……………(HY点Y坐标)→V :…………. (缓圆点的方位角) →A :Return :IfEnd (缓圆点的方位角=Ls÷2R×180º÷π±ZH点的方位角(左减右加))If K≤…………(HZ点桩号) :then ……..(YH点桩号)→O :…………(圆曲线半径) →P : 1045→R :…………(后缓和曲线长度)→L :…………(YH点X坐标) →U :……………(YH点Y坐标)→V :…………(圆缓点的方位角)→A :Return :IfEnd(圆缓点的方位角=L÷R×180º÷π±HY点的方位角(左减右加))If K≤…………(下一交点的ZH点桩号) :then ……..( HZ点桩号) →O :1045→P :1045→R :…………(两曲线间的直线长度)→L :…………(HZ点X坐标) →U :……………(HZ点Y坐标)→V :…………. (缓直点的方位角) →A :Return :IfEnd3. GK (竖曲线要素)If K≤…………(竖曲线终点桩号) :then ……..( 边坡点高程)→A :………( 边坡点桩号)→B :…………(前纵坡)→C :(后纵坡)→D :…………(竖曲线半径)→R : Return :IfEnd4. QXJS—SUB10.5×﹙1÷R-1÷P﹚÷L→D :K-O→X :U+√(Cos(A+﹙X÷P+DX²﹚×180÷π, O ,X) →NV+√(Sin(A+﹙X÷P+DX²﹚×180÷π, O ,X) →EA+(X÷P+DX²)×180÷π→EN+ZCos(F+J)→N :E+ZSin(F+J)→Y :Return5. QXJS—SUB2LbI 1 :0 →1:1→Q :Prog “QXJS-SUB1”Pol(N-B+10-46,,E-C+10-46):Z Sin(F-90+J﹚→W:K+W→K Abs﹙w﹚>0.0001=>Goto 1LbI 2 :0→Z: Prog “QXJS-SUB1”:(C-E)÷Sin(F+90) →Z Return5.GCJSC-D→E: Abs﹙RE÷2﹚→S:R﹙Abs﹙E)÷E) →RIf K≤B-S: then0→H:Else If K≥B+S: then 0→H:D→C: Else K -B+S→H: IfEnd : IfEndA-(B+K﹚C-H∧2÷2R →G : ClsReturn6.GAOCHENGLbI 1 :“K”?K: Prog “G K”: Prog “GCJS”: “Z”?Z: “JG”?N: “KM=”:Locate 4,1,K :Locate 10,1,“Z” Locate 13,1, Z:Fix 3“H=”:Locate 4,2,GProg “PODU”: (E-B﹚÷100÷﹙D-A﹚﹙K-A﹚+B÷100→I: ﹙F-C﹚÷100÷﹙D-A﹚﹙K-A﹚+C÷100→J“HL=”:G+I×﹙Z-1﹚→X: Locate 4,3,X: Locate 11,3,“I=”: Locate 13,4,I×100“HR=”: G+J×﹙Z-1﹚→Y: Locate 4,4,X: Locate 11,4,“I=”: Locate 13,4,J×100 ◢Cls : Norm 2 :“BM+SH”≤0,Goto 1”?Z:Z≤0=>,Goto 1 : Cls“KM=”:Locate 4,1,K :Locate 10,1,“PY=”Locate 13,1, L:Fix 3“QSM=”: Locate 6,2,Z-G“QSL=”: Locate 6,3,Z-X“QSR=”: Locate 6,4,Z-Y ◢Norm 2 :Cls : Goto 17 . BPFYProg “GCJS”: G+11.25×Z[2]÷100-0.75×0.04-Z[1] →D : If D<0 then﹙13+4+Abs﹙D﹚×1.5﹚-Abs﹙Z﹚→W: Else If D≥0: then ﹙13+0.5+ Abs﹙D﹚×1.5﹚-Abs﹙Z﹚→W : IfEnd : Return。

卡西欧5800公路坐标正反算程序

卡西欧5800公路坐标正反算程序

卡西欧5800公路坐标正反算程序卡西欧5800公路坐标正反算程序是一种用于测量和计算公路坐标的工具,可以帮助测量员准确地确定公路上的位置和坐标。

本文将详细介绍卡西欧5800公路坐标正反算程序的功能、使用方法以及相关注意事项。

一、功能介绍卡西欧5800公路坐标正反算程序具有以下主要功能:1. 坐标正算:根据已知的起点坐标、方位角和距离,计算出目标点的坐标。

2. 坐标反算:根据已知的起点坐标和目标点坐标,计算出方位角和距离。

3. 坐标转换:支持不同坐标系之间的转换,如高斯投影坐标系、经纬度坐标系等。

4. 坐标纠正:根据已知的控制点坐标和实测点坐标,进行坐标纠正和校正。

二、使用方法1. 坐标正算:步骤1:进入卡西欧5800公路坐标正反算程序。

步骤2:输入起点坐标(经度、纬度)、方位角和距离。

步骤3:点击计算按钮,程序将自动计算并显示目标点的坐标。

2. 坐标反算:步骤1:进入卡西欧5800公路坐标正反算程序。

步骤2:输入起点坐标(经度、纬度)和目标点坐标(经度、纬度)。

步骤3:点击计算按钮,程序将自动计算并显示方位角和距离。

3. 坐标转换:步骤1:进入卡西欧5800公路坐标正反算程序。

步骤2:选择需要转换的坐标系类型。

步骤3:输入待转换的坐标信息。

步骤4:点击转换按钮,程序将自动进行坐标转换并显示结果。

4. 坐标纠正:步骤1:进入卡西欧5800公路坐标正反算程序。

步骤2:输入已知的控制点坐标和实测点坐标。

步骤3:点击纠正按钮,程序将自动进行坐标纠正和校正,并显示结果。

三、注意事项1. 在使用卡西欧5800公路坐标正反算程序之前,确保已正确安装和配置软件,并且设备连接正常。

2. 在进行坐标计算和转换时,输入的坐标信息应准确无误,以确保计算结果的准确性。

3. 在进行坐标纠正时,应选择合适的控制点和实测点,并确保其坐标信息准确无误。

4. 在使用过程中,如遇到问题或需要进一步了解功能细节,可以参考使用手册或联系卡西欧客服进行咨询。

卡西欧5800公路坐标正反算程序

卡西欧5800公路坐标正反算程序

卡西欧5800公路坐标正反算程序(总19页)-CAL-FENGHAI.-(YICAI)-Company One1-CAL-本页仅作为文档封面,使用请直接删除目录一、坐标正算基本公式 (02)二、坐标反算原理 (04)三、高程数据库录入变换 (05)四、计算器程序 (07)01、ZBZS(坐标正算) (07)02、ZBFS(坐标反算) (08)03、GCJF(高程积分) (09)04、PJFY(坡脚放样) (10)05、JFCX(积分程序) (11)06、ZBFY(坐标放样) (11)07、DT(递推) (12)08、HP(横坡) (13)09、LK(路宽) (14)10、SJK1(平面数据库) (14)11、SJK2(纵面数据库) (14)12、SJK3(左路宽度数据库) (15)13、SJK4(右路宽度数据库) (15)14、SJK5(横坡数据库) (16)15、SJK6(下边坡数据库) (16)16、SJK7(左上边坡数据库) (17)17、SJK8(右上边坡数据库) (18)五、后记 (19)CASIO 5800计算器公路工程测量程序一、正算所涉及的计算公式 X R i d XαβBd Y d l d βI图表 1在图1中,A 点为回旋曲线起点,B 点为回旋曲线止点,I 点为所求坐标点。

设:A 点的X 坐标为X A ,Y 坐标为Y A ,A 点的切线方位角为α,A 点的曲率为ρA ,A 点的里程为L A ,B 点的曲率为ρB ,B 点的里程为L B ,I 点的曲率为ρI ,I 点的里程为L I 。

I 点的切线角为β。

由于回旋线上各点曲率半径R i 和该点至曲线起点的距离L 成反比。

故此任意点的曲率为;CL R i i ==1ρ (c 为常数) (1) 由式(1)可知,回旋曲线任意点的曲率按线性变化,由此回旋曲线上里程为L i 点的曲率为;AB A i A B A i L L L L --⨯-+=)(ρρρρ (2) 当曲线右偏时ρB 、ρA 取正值,反之取负值。

FX5800计算器公路全线坐标正、反算计算程序

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、正算子程序为积分公式编写而成;反算子程序为角度趋近的方法编写,计算速度有点慢。

fx-5800p全线坐标正反算带高程计算程序(线元法

fx-5800p全线坐标正反算带高程计算程序(线元法

曲线任意里程中边桩坐标正反算(CASIO fx-5800P计算器)程序一、程序功能及原理1.功能说明:本程序由一个主程序(TYQXJS)和五个子程——正算子程序(SUB-ZS)、反算子程序(SUB-FS)等构成,可以根据曲线段——直线、圆曲线、缓和曲线(完整或非完整型)的线元要素(起点坐标、起点里程、起点切线方位角、线元长度、起点曲率半径、止点曲率半径)及里程边距或坐标,对该曲线段范围内任意里程中边桩坐标进行正反算。

本修改版程序既可实现正算全线贯通,亦可实现反算全线贯通。

本程序在CASIO fx-5800P计算器运行。

2.计算原理:利用Gauss-Legendre 5点通用公式正算线路中边桩坐标、线外测点至曲线元起点和终点的垂距的符号是否相异(即Dca×Dcb<0=>该测点在其线元内)进行判断并利用该线元要素反算中桩里程、支距,最后计算出放样数据。

二、源程序1.主程序(TYQXJS)Deg:fix 3119→DimZ“INPUT(0) Or DATA(Else)”?ILbl 0:“1.SZ=>XY,2.XY=>SZ,3.TF=>CK,4.SD=>FY,5.TW=>FY”?NIf N=1 Or N=5:Then Goto 1Else If N=2 Or N=3 Or N=4:Then Goto 2Else Goto 3IfEnd:IfEndLbl 1:“K(m)=”?SIf S<0:Then Goto 0:IfEnd“JL(m)=”?ZIf Z≠0:Then “ANGLE→R(Deg)=”?M:IfEndIf I=0:Then Prog “DAT1”:Else Prog “DAT2”:IfEndS-O→W:If W<0:Then Goto 0:Else If W>H:Then Goto 0:IfEnd:IfEndProg “SUB-ZS”:Prog “SUB-GC”If Z<0:Then“XL(m)=”:X◢“YL(m)=”:Y◢If N=5:Then Prog “SUB-TW”:IfEndElse If Z>0:Then “XR(m)=”:X◢“YR(m)=”:Y◢If N=5:Then Prog “SUB-TW”:IfEndElse “X(m)=”:X◢“Y(m)=”:Y◢“Hs(m)=”:L◢“FWJ=”: F►DMS◢IfEnd:IfEndGoto 1Lbl 2:“X(m)=”?X:If X<0:Then Goto 0:IfEnd“Y(m)=”?YIf N=3 Or N=4:Then “H(m)=”?→Z[2]:IfEndX→Z[4]:Y→Z[5]:90→MIf I=0:Then Prog “DAT1”G+QEH(C+HD)→F:1→J:U→Z[8J]:V→Z[8J+1]G-M→A:F-M→B:Prog “SUB-ZX1”:Goto BG+M→A:F+M→B:Prog “SUB-ZX1”:Goto B:IfEnd0→J:Lbl A: Isz JZ[8J+3]-M→A:Z[8(J+1)+3]-M→B:Prog “SUB-ZX1”If Z[6]Z[7]<0:Then J→J:Prog“DAT1” :Goto B:IfEndZ[8J+3]+M→A:Z[8(J+1)+3]+M→B:Prog “SUB-ZX1”If Z[6]Z[7]<0:Then J→J:Prog “DAT1” :Goto B:Else Goto A:IfEndLbl B:Prog“SUB-FS”O+W→S:Prog “SUB-GC”“K(m)=”:S◢“Hs(m)=”:L◢“JL(m)=”:Z◢If N=3:Then Prog “WIDE”:IfEndIf N=4:Then Prog “SDFY”:IfEndGoto 2Lbl 3:“TYQXJS→END”2. 正算子程序(SUB-ZS)0.1184634425→A: 0.2393143352→B:0.2844444444→Z[1]:0.0469100770→K:0.2307653449→L:0.5→Z[3]U+W(Acos(G+QEKW(C+KWD))+Bcos(G+QELW(C+LWD))+Z[1]cos(G+QEZ[3]W(C+Z[3]WD))+Bcos(G+QE(1 -L)W(C+(1-L)WD))+Acos(G+QE(1-K)W(C+(1-K)WD)))→XV+W(Asin(G+QEKW(C+KWD))+Bsin(G+QELW(C+LWD))+Z[1]sin(G+QEZ[3]W(C+Z[3]WD))+Bsin(G+QE(1-L)W(C+(1-L)WD))+Asin(G+QE(1-K)W(C+(1-K)WD)))→YG+QEW(C+WD)+M→FX+Zcos(F)→X:Y+Zsin(F)→YF-M→F:If F<0:Then F+360→F:IfEndReturn3. 反算子程序(SUB-FS)G-M→T:Abs((Y-V)cos(T)-(X-U)sin(T))→W:0→ZLbl C:Prog “SUB-ZS”T+QEW(C+WD)→L:(Z[5]-Y)cos(L)-(Z[4]-X)sin(L)→ZIf Abs(Z)<10-6:Then Goto D:Else W+Z→W:Goto C:IfEndLbl D:0→Z:Prog “SUB-ZS”:(Z[5]-Y)÷cos(F)→Z:Return4.高程计算子程序(SUB-GC)Prog “DAT3”0.5RAbs(0.01(E-D))→TIf E>D:Then 1→C:Else -1→C:IfEndIf S<A:Then -0.01D→W:Else 0.01E→W:IfEndAbs(A-S)→LIf L>T:Then B+WL→L:Else B+WL+C(T-L)2÷2÷R→L:IfEndReturn5. 垂距计算子程序(SUB-ZX1)(Z[5]-Z[8J+1])cos(A)-(Z[4]-Z[8J])sin(A)→Z[6](Z[5]-Z[8(J+1)+1])cos(B)-(Z[4]-Z[8(J+1)])sin(B)→Z[7]Return6.曲线元要素数据库:DAT1(两条线路,可扩充为多条线路)If I=0:Then Goto E: Else If I=2:Then Goto F:IfEnd:IfEndJ=1=>***→Z[8]:***→Z[9]:***→Z[10]:***→Z[11]:***→Z[12]:***→Z[13]:***→Z[14]:*** →Z[15]:IfEndJ=2=>***→Z[16]:***→Z[17]:***→Z[18]:***→Z[19]:***→Z[20]:***→Z[21]:***→Z[22]:***→Z[23]:IfEndJ=3=>***→Z[24]***→Z[25]:***→Z[26]:***→Z[27]:***→Z[28]:***→Z[29]:***→Z[30]:***→[31]:IfEnd………………………………………………..Goto HLbl F: J=1=>***→Z[8]:***→Z[9]:***→Z[10]:***→Z[11]:***→Z[12]:***→Z[13]:***→Z[14]:*** →Z[15]:IfEndJ=2=>***→Z[16]:***→Z[17]:***→Z[18]:***→Z[19]:***→Z[20]:***→Z[21]:***→Z[22]:***→Z[23]:IfEndJ=3=>***→Z[24]***→Z[25]:***→Z[26]:***→Z[27]:***→Z[28]:***→Z[29]:***→Z[30]:***→[31]:IfEnd(注:如有多个曲线元要素继续添加入数据库DAT1中)Goto GLbl E:“X0=”?U:“Y0=”?V:“S0=”?O:“F0=”?G:“LS=”?H:“R0=”?P:“RN=”?R:“Q=”?Q Lbl G:1÷P→C:(P-R)÷(2HPR)→D:180÷π→E:Return7.隧道放样子程序:SDFY5.5→A:8.5→B:L+1.5→CIf I=1:Then -1→K:Else 1→K:IfEnd 给左右隧道符号赋值1.25K→F:4.25K→L:7.25K→K 给各圆心距路线的偏距赋值Z[2]-C→D 计算测点至圆心的高差D,If D>A:Then Goto 1:Else If D<0:Then Goto 2:IfEnd:IfEndZ-L→E:Abs(E)→E:√(D2+E2)→W:W-A→T: 计算测点至圆心的平距E,实测半径W“R(m)=”:W◢“DR(m)=”:T◢If E≤A:Then D-√(A2-E2)→C:E-√(A2-D2)→L 计算测点水平偏移量L、垂直偏移量C “Dh(m)=”:C◢显示测点垂直偏移量C“DL(m)=”:L◢显示测点水平偏移量LElse E-√(A2-D2)→L“DL(m)=”:L◢IfEnd:ReturnLbl 1Z-L→E:Abs(E)→E:√(D2+E2)→W:W-A→T: 计算测点至圆心的平距E,实测半径W“R(m)=”:W◢“DR(m)=”:T◢If E≤A:Then D-√(A2-E2)→C“Dh(m)=”:C◢IfEnd:ReturnLbl 2:Abs(D)→D:Abs(Z)→Z:Abs(K)→K:Abs(F)→FIf Z>K:Then Z-F→E:Else Z+K→E:IfEnd√(D2+E2)→W:W-B→T“R(m)=”:W◢“Rc(m)=”:T◢If E≤B:Then D-√(B2-E2)→C:E-√(B2-D2)→L 计算测点水平偏移量L、垂直偏移量C “Dh(m)=”:C◢显示测点垂直偏移量C“DL(m)=”:L◢显示测点水平偏移量LElse E-√(B2-D2)→L“DL(m)=”:L◢显示测点水平偏移量LIfEnd:Return8.曲线元要素判断数据库:DAT2(两条线路,可扩充为多条线路)If I=2:Then Goto A:IfEndIf S<第一线元终点里程:Then 1→J:Prog “DAT1”:ReturnElse If S<第二线元终点里程:Then 2→J:Prog “DAT1”:ReturnElse If S<第三线元终点里程:Then 3→J:Prog “DAT1”:ReturnElse If S<第四线元终点里程:Then 4→J:Prog “DAT1”:ReturnIfEnd:IfEnd:IfEnd:IfEndIf S≥第四线元起点里程And S<第五线元终点里程:Then 5→J:Prog “DAT1”:Return .................................Else If S<第n线元里程:Then n→J:Prog “DAT1”:ReturnIfEnd:IfEnd:IfEnd:IfEndLbl AIf S<第一线元终点里程:Then 1→J:Prog “DAT1”:ReturnElse If S<第二线元终点里程:Then 2→J:Prog “DAT1”:ReturnElse If S<第三线元终点里程:Then 3→J:Prog “DAT1”:ReturnElse If S<第四线元终点里程:Then 4→J:Prog “DAT1”:ReturnIfEnd:IfEnd:IfEnd:IfEndIf S≥第四线元起点里程And S<第五线元终点里程:Then 5→J:Prog “DAT1”:Return Else If S<第n线元里程:Then n→J:Prog “DAT1”:ReturnIfEnd:IfEnd:IfEnd:IfEnd .................................9.高程数据库子程序:DAT3(两条线路,可扩充为多条线路)If I=0:Then Goto A:Else If I=2:Then Goto B:IfEnd:IfEndIf S≤46500:Then 46150→A:361.26→B:40000→R:-0.3→D:-1.2→E:ReturnElse If S≤47200:Then 46800→A:353.46→B:20000→R:-1.2→D:1→E:ReturnElse If S≤48400:Then 47500→A:360.46→B:20000→R:1→D:-1.6→E:ReturnElse If S≤49600:Then 48700→A:341.26→B:10000→R:-1.6→D:2.45→E:Return IfEnd:IfEnd:IfEnd:IfEndIf S>49600 And S≤50300:Then 49840→A:369.19→B:100000→R:2.45→D:2.8→E:Return Else If I=2:Then49800→A:368.21→B:150000→R:2.45→D:2.7→E:ReturnIfEnd:IfEndLbl A:“C PEG(m)=”?→A“C H(m)=”?→B“R(m)=”?→R“I1=”?→D“I2=”?→EReturnLbl B49800→A:368.21→B:150000→K:2.45→D:2.7→E:Return10.填方路基宽度检查子程序(WIDE)“WIDTH CHECK”◢“H→MID(m)=”?→A 起坡点与中桩高差常数“DIST→MID(m)=”?→B 起坡点与中桩距离常数“i=”?→C 路基填筑坡度CAbs(Z[2]-L+A)→DAbs(Z)-B-D→E“DL(m)=”:E◢显示实有宽度与应有宽度之差值Return11.坡口坡脚线坐标计算子程序:SUB-TW“TIANWA LINE”◢“DIST→MID(m)=”?A 起坡点与中桩距离常数“H→MID(m)=”?B 起坡点与中桩高差常数“T(1) Or W(Else)=”?C 填方边坡为1,其它为挖方边坡“i=”?E 填方或挖方边坡坡度Abs(Z)-A→D: DE→KIf C=1:Then L-B-K→W:Else L+B+K→W:IfEnd“JS H(m)=”:W◢计算出应有高程“SC H(m)=”?→D 输入实测高程D-W→T“GC(m)=”:T◢显示实测高程与计算高程的差异Return三、使用说明1、规定(1) 以道路中线的前进方向(即里程增大的方向)区分左右;当线元往左偏时,Q=-1;当线元往右偏时,Q=1;当线元为直线时,Q=0。

5800坐标计算程序 线元法反算可以进行学习(xt )

5800坐标计算程序 线元法反算可以进行学习(xt )

“A-SJ”主程序(数据库计算版)LbI1: “KCD”?S输入求点里程?N 正反算选择1为正算,其他为反算N=1 =>Goto 2: Goto3LbI: Prog “A-SJK”prog “A-ZS”?Z 输入边距左-右+Prog “A-BZ”“X=”:X◢显示计算出的X“Y=”:Y◢显示计算出的Y“FW=”:F◢显示计算出的法线方位角Goto 1LbI 3: “X”?A输入要反算的X“Y”?T输入要反算的YLbI 4: Prog “A-SJK”prog “A-FS”If Abs(N)>0.001: Then N+S->S:Goto 4: If endN+S->S: “KCD=”:S◢显示反算出的里程“Z=”:W◢显示反算出的边距Goto 1A-ZS 正算子程序1÷P->C:(P-R)÷(2HPR)->D:180÷Ⅱ(派)->E: Abs(S-O)->W 0.1739274226->Z[1]0.3260725774->B0.0694318442->K0.3300094782->L1-L->F:1-K->MG+QEKW(C+KWD)->KG+QELW(C+LWD)->LG+QEFW(C+FWD)->FG+QEMW(C+MWD)->MU+W(Z[1]cos(K)+Bcos(L)+Bcos(F)+ Z[1]cos(M))->XV+W(Z[1]sin(K)+Bsin(L)+Bsin(F)+ Z[1]sin(M))->YG+QEW(C+WD)->FRenturnA-FS 反算子程序Prog “A-ZS”Pol((A-X),(T-Y))Icos(J-F)->NIsin(J-F)->WRenturnA-BZ 边桩计算X+Zcos(F+90)->XY+Zsin(F+90)->YRenturnA-SJK 数据库If S<线元终点里程AND S>起点里程:Then 起点方位角->G: 起点里程-> O: 起点X->U:起点Y->V: 起点半径->P:终点半径->R:线元长度->H:系数(-1,1)->Q:If end(有几条线形加几个IF语句)。

卡西欧5800计算器坐标正反算程序(带详细说明)

卡西欧5800计算器坐标正反算程序(带详细说明)

卡西欧5800程序完整版"ZS=1,FS=2"?N: 1÷P →C:(P-R)÷(2HPH)→D:180÷π→E: If N=1: Then Goto 1: Else Goto 2: IfE nd←┚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:E lse 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:Pr og "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:Pr og "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◢(仪站至测点的方位角)Goto0备注:1.规定以道路中线前进方向(即里程增大的方向)区分左右;当线元往左偏时Q=-1;当元线往右偏时,Q=1:当元线为直线时,Q=0。

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

坐标正反算程序
程序变量说明:
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各指令工作原理,以便更好掌握编程。

相关文档
最新文档