卡西欧5800坐标计算程序(通俗易懂版)
- 格式:doc
- 大小:30.00 KB
- 文档页数:4
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计算器中边桩坐标计算程序一.GSGL(主程序)1.“K0”? W:“X0”? U:“Y0”? V:“R”?R: “LH”?L:“A0”?A:“B”?B:“R=1,L=-1”?N:“S-BACK"?E:“T-BACK"?F:2.Lb1 0:3.“KI”? K: E-F S:4.(R+L2÷(24R)-L^(4)÷(2688R^(3)))×tan(B÷2)+L÷2-L^(3)÷(240R2)T:5.S-T H:K-W J:J<0 =〉Goto 0:6.If H>J: Then U+Jcos(A)X:V+Jsin(A)Y:7.“XI=”:X “YI=”:Y8.A G:Prog “SUB”: Goto 0: IfEnd:9.L=0 =〉Goto 1:10.K-H-W Z: Z-Z^(5)÷(90R2L2)C:11.30 Z2÷(πLR)D: Z>L =〉Goto 1:12.U+Hcos(A)+Ccos(A+ND)X:V+Hsin(A)+Csin(A+ND)Y:13.“XI=”:X“YI=”:Y14.A+180NZ2÷(2πLR)G:Prog “SUB”: Goto 0:15.Lb1 1:16.πRB÷180-L C: K-H-W-L M: 90M÷(πR)I: 2Rsin(I)O:17.L-L^(3)÷(90R2)P:30LN÷(πR)Q:A+3Q+NI D: M>C =〉Goto 2:18.U+Hcos(A)+Pcos(A+Q)+Ocos(D)X: V+Hsin(A)+Psin(A+Q)+Osin(D)Y:19.“XI=”:X “YI=”:Y20.A+N(180L÷2÷π÷R+180M÷(πR))G: Prog “SUB”: Goto 0:21.Lb1 2:22.L=0 =〉Goto 0:23.A+NB G:24.H-J+L+πRB÷180P:P<-.003 =〉Goto 0:25.P-P^(5)÷(90R2L2)C: 30P2÷(πRL)D:A+NB-180-ND Q:26.U+Scos(A)+Tcos(G)+Ccos(Q)X: V+Ssin(A)+Tsin(G)+Csin(Q)Y:27.“XI=”:X “YI=”:Y28.A+NB-180NP2÷(2πRL)G: Prog “SUB” :Goto 0:二.SUB(子程序)1.Lb1 0:2. 0I:0O:0M:3. “Y=1,N=0”? I:I≠1 =〉Goto 2:4. G+90C:G-90D:“R=1,L=-1”? O:“S-LONG”? M:5. If O=1:Then X+Mcos(C)P : Y+Msin(C)Q:6. “XR=”:P “YR=”:Q7. Else X+Mcos(D)P: Y+Msin(D)Q:8. “XL=”:P “YL=”:Q IfEnd:9. Goto 0:10. Lb1 2说明1)K0:起点的桩号2)X0:起点的X坐标3)Y0:起点的Y坐标4)KI:需计算的桩号5)R:圆曲线半径6)LH:缓和曲线段长度7)A0:起点方位角(角度)8)B:偏角(角度)9)R=1,L=-1:表示路线左右偏,右1,左-110)S-BACK:起点至交点长度11)T-BACK:一般取012)Y=1,N=0:是否计算边桩,是1,否013)R=1,L=-1:左右边桩,右1,左-114)S-LONG:表示中桩至边桩距离。
CASIO-5800测量程序CASIO-5800测量程序5800中边桩任意点坐标计算程序一、文件名:HZ ZH 输入文件名Deg:Fix 4 基本设置"FWJ∠α="?Q8起点切线方位角"ZX(m)="?O: "ZY(m)= "?P8 置镜点坐标"HX(m)= "?M: "HY(m)= "?N 8 后视点坐标Pol(A-O,B-P) 8If J<0:Then J+360"H:Else J"H:IfEnd8"QX(m)="?U: "QY(m)="?V: "QDK(m)="?G8 起算点坐标和里程Ldl 08"GDK(m)="?Z 8 观测点里程G-Z"C8"GX(m)=":U+cos(Q) ×C"Ay 置镜点至中桩X坐标"GY(m)=":V+sin(Q) ×C"By 置镜点至中桩Y坐标Pol(A-O,B-P) 8 置镜点到中桩方位角J-H"J8If J-H<O:Then J+360"J:Else J"J:IfEnd8"SPJ∠α=":J}DMSy显示顺拔夹角"I(m)=":Iy 置镜点至中桩距离Ldl 18"BJ(m)= "?S 8 边距If S=0:Then Goto 0:IfEnd8"JIA JIAO L(-),R(+)="?E8Q+E"W8"GX(m)=":A+cos(W) ×S"Xy 显示观测点X 坐标"GY(m)=":B+sin(W) ×S"Yy 显示观测点Y 坐标Pol(X-O,Y-P) 8If J<0:Then J+360"J:IfEnd8J-H"J8 置镜点到观测点方位角If J<0:Then J+360"J:Else J"J:IfEnd8"SPJ∠α=":J}DMSy显示顺拔夹角"I(m)=":Iy 显示置镜点到观测点距离Goto 1 回到前面重复下一观测点二、文件名:ZH HY 缓和曲线段内任意点坐标计算程序“Deg:Fix 4“FWJ∠a =”?Q“ZX(m)=”?O:”ZY(m)=”?P“HX(m)=”?M:”HY(m)=”?N Pol(M-O,N-P)If J<0:Then J+360→H:Else J→H:IfEnd “HWJ∠a =”:H?DMS◢“ZHUAN XIANG L(-1),R(1)=”?T“R(m)=”?R“LS(m)=”?D“KZH=”?G“ZH X(m)=”?U“ZH Y(m)=”?VLbI 0“QDK=”?ZAbs(Z-G)→CC-C^5/(40R^2D^2)+C^9/(3456 R^4D^4) →WC^3/(6RD)-C^7/(336R^3D^3)+C^11/(42240R^5D^5)→KQ+(C^2/(2RD)×(180/Π)) →FIf J<0:Then F+360→F:Else F→F:IfEnd “QFWJ ∠a =”:F?DMS◢“QS X(m)=”:U+W×Cos(Q)+K×Cos(Q+90) →A: A ◢“QS Y(m)=”:V+W×Sin(Q)+K×Sin(Q+90) →B: B ◢Pol(A-O,B-P)If J<0:Then J+360→J:Else J→J:IfEnd J-H→JIf J<0:Then J+360→J:Else J→J:IfEnd“SPJ∠a=”:J?DMS◢“I(m)=”:I◢LbI 1“BJ(m)=”?SIf S=0:Then Goto 0: IfEnd“JIA JIAO L(-),R(+) =”?E“BZ X=”:A+SCos(F+E) →X: X ◢“BZ Y=”:B+S Sin(F+E) →Y:Y ◢Pol(X-O,Y-P)If J<0:Then J+360→J:Else J→J:IfEnd J-H→JIf J<0:Then J+360→J:Else J→J:IfEnd “∠BIAN ZHUANG PJ=”:J?DMS◢“I(m)=”:I◢Goto 0三、文件名:HY YH 园和曲线段内任意点坐标计算程序“Deg:Fix 4“FWJ∠a=”?Q起算点方位角“ZX(m)=”?O:”ZY(m)=”?P置镜点坐标“HX(m)=”?M:”HY(m)=”?N后视点坐标Pol(M-O,N-P)If J<0:Then J+360→H:Else J→H:IfEnd “HFWJ ∠a=”:H?DMS◢后视方位角“ZHUAN XIANG L(-1),R(1)=”?T曲线转向左负右正“R(m)=”?R曲线半径“LS(m)=”?D缓和曲线长度“KZH(m)=”?G曲线起点ZH里程“XZH(m)=”?U曲线起点X“YZH(m)=”?V曲线起点YLbI 0“QDK(m)=”?Z观测点里程Abs(Z-G)→CR×Sin(180×(C- D)/(πR)+90D/(πR))+D/2-D^3/(240R ^2)→WR×(1-Cos(180(C-D))/(πR)+90D/(πR))+ D^2/(24R)- D^4/(2688R ^3)→KQ+(180(C-D)/(πR)+90D/(πR))→F If F<0:Then F+360→J:Else F→J:IfEnd “Q FWJ=”:F?DMS◢观测点切线方位角“QS X(m)=”:U+√(W²+K²)×Cos((Q)+tan?¹(K÷W)) →A: A ◢观测点X坐标“QS Y(m)=”:V+√(W²+K²)×Sin((Q)+tan?¹(K÷W)) →B: B ◢观测点Y坐标Pol(A-O,B-P)If J<0:Then J+360→J:Else J→J:IfEndJ-H→JIf J<0:Then J+360→J:Else J→J:IfEnd“SPJ∠a=”:J?DMS◢观测点所拨偏角“I(m)=”:I◢置镜点到观测点距离“BIAN JU(m)=”?S边距,左负右正If S=0:Then Goto 0: IfEnd“JIA JIAO L(-),R(+) =”?E边桩至中桩切线方向的夹角左负右正“BZ X(m)=”:A+SCos(F+E) →X: X ◢“BZ Y(m)=”:B+S Sin(F+E) →Y:Y ◢Pol(X-O,Y-P)If J<0:Then J+360→J:Else J→J:IfEnd J-H→JIf J<0:Then J+360→J:Else J→J:IfEnd “BZ ∠a =”:J?DMS◢“I(m)=”:I◢Goto 0四、文件名:YH HZ 另一端缓和曲线段内任意点坐标计算程序“Deg:Fix 4“FWJ∠a=”?Q起算点方位角“ZX(m)=”?O:”ZY(m)=”?P置镜点坐标“HX(m)=”?M:”HY(m)=”?N后视点坐标Pol(M-O,N-P)If J<0:Then J+360→H:Else J→H:IfEnd “HFWJ ∠a=”:H?DMS◢后视方位角“ZHUAN XIANG L(-1),R(1)=”?T曲线转向左负右正“R(m)=”?R曲线半径“LS(m)=”?D缓和曲线长度“KZH(m)=”?G曲线起点ZH里程“XZH(m)=”?U曲线起点X“YZH(m)=”?V曲线起点YLbI 0“QDK(m)=”?Z观测点里程Abs(G-Z)→CC-C^5/(40R^2D^2)+C^9/(3456 R^4D^4) →WC^3/(6RD)-C^7/(336R^3D^3)+C^11/(42240R^5D^5)→KQ-(C^2/(2RD)×(180/Π)) →FIf F<0:Then F+360→F:Else F→F:IfEnd If F>360:Then F-360→F:Else F→F:IfEnd “QFWJ∠a =”:F?DMS◢“QS X(m)=”:U-W×Cos(Q)+K×Cos(Q+90) →A: A ◢“QS Y(m)=”:V-W×Sin(Q)+K×Sin(Q+90) →B: B ◢Pol(A-O,B-P)If J<0:Then J+360→J:Else J→J:IfEndJ-H→JIf J<0:Then J+360→J:Else J→J:IfEnd“SPJ∠a=”:J?DMS◢“I(m)=”:I◢LbI 1“BJ(m)=”?SIf S=0:Then Goto 0: IfEnd“JIA JIAO L(-),R(+) =”?E“BZ X=”:A+SCos(F+E) →X: X ◢“BZ Y=”:B+S Sin(F+E) →Y:Y ◢Pol(X-O,Y-P)If J<0:Then J+360→J:Else J→J:IfEnd J-H→JIf J<0:Then J+360→J:Else J→J:IfEnd “BZ∠a =”:J?DMS◢“I(m)=”:I◢Goto 0。
CASIO fx—5800计算器工程测量与公路测量程序1、坐标正算"X0=″?X:"Y0=″?Y:"I=″?I:"J=″?JX+ICos(J)→U:Y+ISin(J)→V"X=″:U (待求点的X坐标)"Y=″:V (待求点的Y坐标)说明:X0 Y0:已知点坐标I:两点的距离J:方位角2、坐标反算Lbl 0"X1=″?X:"Y1=″?Y:"X2=″?U:"Y2=″?VPol(U-X,V-Y):J<0 J+360→J"I=″:I"J=″:J DMSGOTO 0说明:X1Y1:第一点的坐标,X2Y2第二点的坐标,I:两点的距离,J:方位角3、圆曲线"X0=″?X: "Y0=″?Y:"FWJ=″?D:"QDHAO=″?G: "ZDHAO=″?C: "R=″?RLbl 1"DQHAO=″?LL<G Or L>C GOTO 2"PY=″?K180(L-G)÷(πR) →E2RSin(0.5E) →FReC(Abs(F),D+0.5E):Cls"X=″:X+I+KCos(D+E+90) →A"Y=″:Y+J+KSin(D+E+90) →BD+E→o:o<0 360+o→0o"FWJ=″:o DMSGoto 1Lbl 2"END″说明:X0Y0:起始点的坐标,FWJ:起始点的方位角,QDHAO:起点里程,ZDHAO终点里程,R:半径,DQHAO:待求点里程,PY:偏移量4、竖曲线"QZHAO =″?J: "H+B″=?B:"I1=″?C:"I2=″?D:"R=″?R:"T=″?T:((D-C)÷100) ÷Abs((D-C) ÷100)→A:Abs(0.5R(D-C) ÷100)→S"T″:SJ-T→XJ+T→YLbl 0"DQ=″?LIf L<X:Then Goto 1:Else If L>Y:Then Goto 1:If End:If End"GC=″:B+C(L-J) ÷100+A(L-J+T) ÷(2R) →HGoto 0Lbl 1"END″说明:QZHAO:曲中点里程,H+B:曲中点高程,I1:第一坡度,I2:第二坡度,R:半径,T:切线长,DQ:待求点里程。
卡西欧5800计算器坐标正反算程序M = (1.0/Re-1.0/Rs)/Ls;x=∫{cos(Ta + L/Rs + 0.5*M *L*L),0,L};y=∫{sin(Ta +L/Rs + 0.5*M *L*L),0,L};a(i)= Ta +L/Rs + 0.5*M *L*LRs:缓和曲线起点半径Re:缓和曲线止点半径Rs,Re (NE坐标系下,右偏为正,左偏为负)Ta:缓和曲线起点的真北方位角Ls:不完整缓和曲线长度。
此公式为缓和曲线在坐标系下任意位置的通用积分公式,能完全适应缓和曲线左偏、右偏、Rs >Re 、Rs <="">Fx-5800计算机程序QXJS-000 主程序Lbl 4:“1.SZ=>NE”:“2.NE=>SZ”:?Q:?S:Prog“QXJS-SUB0”↙Lbl 0:Q=1 => Goto1:Q=2 => Goto2:↙Lbl 1:?Z:?G:Prog“QXJS-SUB1”:“N=”:N◢“E=”:E◢“F=”:F◢Goto4↙Lbl 2: “N=”:?B: “E=”:?C:B→N: C→E:Prog“QXJS-SUB2”: “S=”:S◢: “Z=”:Z◢: Goto4↙QXJS-SUB0 数据库子程序Goto1↙同时保存多个曲线时的指针Lbl 1IF S<***(线元终点里程):Then***→A(线元起点方位角):***→O(线元起点里程):***→U(线元起点X):***→V(线元起点Y):***→P(线元起点曲率半径):***→R(线元终点曲率半径): ***→L(线元起点至终点长度): Return:IfEnd↙IF S<***:Then***→A:***→O:***→U:***→V:***→P:***→R:***→L: Return:IfEnd↙………………………..为了便于解读,每增加一个线元增加一行语句,每增加一条曲线增加一个Lbl,每增加一个工程增加一个文件。
卡西欧fx-5800 坐标正算程序“SO”算方位Lbl 0“D”:Pol(X-A,Y-B) →D◢If J≥0:Then J◢Else “J”:J+360◢IfEnd“ZZ”正算直线坐标A+Rec(Abs(P-K),Q) →XB+J→Y“X”:X+Rec(D,Q+N×90) →X◢“Y”:Y+J→Y◢P?所求桩号 A,B:起点x,y K:起点桩号 Q:方位角D:边桩距离 N?左偏“-1”右偏:“+1”X= Y= 所求点坐标“YY”正算圆曲线坐标Q+C×(P-K)÷S×180÷∏→Z“X”:A+C×S×(Sin(Z)-Sin(Q))+Rec(D,Z+N×90) →X◢“Y”:B-C×S×(Cos(Z)-Cos(Q))+J→Y◢P:所求点桩号 A,B:起点x,y K:起点桩号Q:方位角 S:曲线半径 D?边桩距离N?左偏“-1”,右偏“+1”X= y= 所算点坐标 C:线路左转“-1”右转“+1”“H1”正算缓和曲线坐标Abs(P-K) →LT2÷L→HL2×180÷∏÷2÷T2→VQ+C×V→ZL-L∧(3)÷40÷H2+L∧(5)÷3456÷H∧(4)-L∧(7)÷H∧(6)÷599040→EL2÷6÷H- L∧(4)÷336÷H∧(3)+ L∧(6)÷42240÷H∧(5)- L∧(8)÷H∧(7)÷(6×1612800)→FIf C<0:Then-F→F:IfEndA+E×Cos(Q)-F×Sin(Q) →X“X”:X+Rec(D,Z+M×N×90) →X◢B+E×Sin(Q)+F×Cos(Q) →Y“Y”:Y+J◢P?所求点桩号 A,B:起点x,y K:起算点里程桩号Q:前切线方位角 T(是圆曲线要素的A1)=√(根号)缓曲总长×半径C=切线线路方向左转“-1”,右转“+1“M=第一缓曲“+1”,第二缓曲”-1“N:算边桩左偏“-1”,右偏“+1”D:边桩距离坐标正算数据库例子“肇兴隧道右线数据库”Lbl 0“P”?P:“N”?N:“D”?DIf P≥16836.5 And P≤17009.624:Then 66881.803→A:14635.782→B:16836.5→K:280032030.50→Q:902.044→T:1→C: 1→M:Prog“H1”:IfEnd (第一缓曲线)If P≥17009.624 And P≤17529.681:Then 66914.52→A:14465.781→B:17009.624→K:281035049.370→Q:4700→S:Prog“YY”:IfEnd (圆曲线)If P≥17539.681 And 17702.805≥P:Then 67102.343→A:13799.117→B:17702.805→K:108059031.50→Q:902.044→T:-1→C: -1→M:Prog“H1”:IfEnd (第二缓曲线)If P≥17702.805 And P≤19550:Then 67102.343→A:13799.17→B:17702.805→K:288059031.50→Q: Prog“ZZ”:IfEnd (直线)。
主程序坐标正反算程序名称:001XYLB1 A↙Cls : Fix 4 : 30→Dim Z :"v=1,v=0"?Z ↙If Z=1:Then Goto B:IfEnd↙(Z=1进入里程点坐标正算)If Z=0:Then Prog"FSLCBZ ": Goto A:IfEnd↙(Z=0进入反算里程边桩)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] :E →T: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↙"POINT=X"?X:" POINT=Y"?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"SJK1":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:Goto 2:Ifend:Ifend:Ifend↙Lb1 4↙Pol (X-Z[18],Y-Z[19]:"W(-Z,Y+)=":I◢(偏距)(由于该程序不能准确判断边桩左右方向,暂作修改,取消左右边判定)"K=":K+S→K◢(里程)Return↙子程序坐标放样:ZBFYLB1 0 ↙"P(N)="?M:"P(E)="?N ↙“a=”?P◢(输入边桩与线路夹角,左-右+)“W=”?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):"HD=":I◢(边桩放样距)J<0=>J+360→J:"HAR=":J→DMS◢(边桩放样方位角)Return↙直线短链要将该直线分成二条直线来对待编制数据库文件即可,曲线长链要单独建判定语句子程序并然后编制二个数据库(按来向里程和去向里程分别推出曲线起终点里程,以此编制曲线段的数据库)。
CASIO5800ZXZFS直线正反算坐标计算程序CASIO fx-5800P ZXZFS 直线正反算坐标计算程序原理:采用正余弦定理求待求点垂距进行确定里程和偏距。
公式:tan-1((yb-ya)/(xb-xa)) 、√(xB-xA)2+(yB-yA)2、sinα×D、Q÷tan(α)说明:该程序适用于计算器 CASIO fx-5800P,针对直线正反算设计,正算可算直线中边桩坐标及其斜交、反算可推算直线距线路中心的里程偏距。
1、DK(QD)? 输入起点里程2、X(QD)? 输入起点坐标X3、Y(QD)? 输入起点坐标Y4、FWJ? 输入计算方位角5、J? 输入1为正算、输入2为反算6、JSDK? 输入计算里程主程序名:ZXZFSDeg:Fix 4↙"DK(QD)"?A:"X(QD)"?B:"Y(QD)"?C:"FWJ"?F↙Lbl 0"1=>XY.2=>DK":"J"?W↙If W=1:Then Goto 1:Else If W=2:Then Goto 2:IfEnd↙Lb1 1↙"JSDK"?E:"PJ"?G:"PA"?H↙"X=":B+(E-A) ×cos(F)+G×cos(F+H)→X◢"Y=":C+(E-A) ×sin(F)+G×sin(F+H)→Y◢"ZJD(X)"?S:"ZJD(Y)"?T↙"PJ=":Pol(X-S,Y-T):I→M◢"FWJ=":If J<0:Then J+360→N:Else J→N:N▲DMS◢Goto 0↙Lb1 2↙"X="?K:"Y="?L↙Pol(K-B,L-C):I→D:If J<0:Then J+360→P:Else J→P:IfEnd↙If F<="" p="" p-f→o:else="">Sin(O)×D→Q↙"DK=":A+Q÷tan(O)→R◢"PJ=":sin(O)×D→Q:If F<="" 1×q→q:else="" p=""> Goto 0注:1、◢ 为显示指令。
5800全线任意坐标计算程序1. 正算主程序(ZHCX) (不运行)8→DimZ1÷P→Z[4 ]:(P-R)÷(2HPR)→D: 180÷π→E“Z=”?Z:”YJJ=”?A:Abs(S-O)→W0.26→Z[1 ]: 0.74→B: 0.02→K: 0.82→Z[3 ]: 1-Z[3 ]→F:1-K→Z[2 ]U+W(Z[1 ]cos(G+QEKW(Z[4 ]+KWD))+Bcos(G+Z[3 ]QEW(Z[4 ]+ Z[3 ]WD))+Bcos(G+QEFW (Z[4 ]+FWD))+ Z[1 ]cos(G+ Z[2 ]QEW(Z[4 ]+ Z[2 ]WD)))→X:V+W(Z[1 ] sin (G+QEKW(Z[4 ]+KWD))+B sin(G+ Z[3 ]QEW(Z[4 ]+ Z[3 ]WD))+B sin(G+QEFW (Z[4 ]+FWD))+ Z[1 ] sin(G+ Z[2 ]QEW(Z[4 ]+ Z[2 ]WD)))→Y:G+QEW(Z[4 ]+WD)→F:X+Zcos(F+A)→X:Y+Zsin(F+A)→Y:If F≧360:Then F-360→F:IfEnd”X=”:X→X◢”Y=”:Y→Y◢If F﹤0:Then F+360→F:IfEnd”QX FWJ=”:F▼DMS◢“C=1=>XX: C=2=>XZ”: ”C=”?C: ”QHJU=”?L: If C=1:Then Goto 1:Else Goto 2: IfEnd 可以计算斜交斜做或斜交正做的桥涵坐标Lbi 1X+L cos(F)→X:Y+Lsin(F)→Y: Goto 3Lbi 2X+L cos(F+A-90)→X:Y+Lsin(F+A-90)→Y: Goto 3Lbi 3“QH-X=”: X →X◢“QH-Y=”: Y →Y◢Prog “FY”2 . 参数子程序(直接运行)M(主线) 一条线路一个名称“S=”?SIf S≦线元终点:Then 线元起点X值→U: 线元起点Y值→V:线元起点切线方位角→G:线元起点桩号→O:线元长度→H:线元起点半径→P:线元终点半径→R:(左偏-1,或右偏 1)→Q:Goto 1:IfEnd……If S≦线元终点:Then 线元起点X值→U: 线元起点Y值→V:线元起点切线方位角→G:线元起点桩号→O:线元长度→H:线元起点半径→P:线元终点半径→R:(左偏-1,或右偏 1)→Q:Goto 1:IfEndLbi 1Prog “ZBJS”3. 放样程序(FY)(不运行)“X0=”?M:“Y0=”?NPol((X-M, Y-N)If J﹤0:Then J+360→J:IfEnd“FWJ=”:J▲DMS◢“JU-LI=”:I◢说明:一、程序功能及原理1.功能说明:本程序由一个主程序和两个子程——正算主程序(ZH)、参数子程序(M)、放样程序(FY),可以根据曲线段——直线、圆曲线、缓和曲线(完整或非完整型)的线元要素(起点坐标、起点里程、起点切线方位角、线元长度、起点曲率半径、止点曲率半径、左偏或右偏)及里程边距或坐标,对该线元段范围内任意里程中边桩坐标进行正算。
目录一、坐标正算基本公式………………………………………………………02二、坐标反算原理 (04)三、高程数据库录入变换 (05)四、计算器程序………………………………………………………07 01、ZBZS(坐标正算)………………………………………………………0702、ZBFS(坐标反算)………………………………………………………0803、GCJF(高程积分) (09)04、PJFY(坡脚放样)………………………………………………………1005、JFCX(积分程序) (11)06、ZBFY(坐标放样)………………………………………………………1107、DT(递推) (12)08、H P(横坡) (13)09、LK(路宽)………………………………………………………1410、SJK1(平面数据库) (14)11、SJK2(纵面数据库)………………………………………………1412、SJK3(左路宽度数据库) (15)13、SJK4(右路宽度数据库) (15)14、SJK5(横坡数据库)......................................................1615、SJK6(下边坡数据库) (16)16、SJK7(左上边坡数据库)………………………………………………1717、SJK8(右上边坡数据库)………………………………………………18五、后记 (19)CASIO 5800计算器公路工程测量程序一、正算所涉及得计算公式 X R i d XαβBd Y d l d βI图表 错误!不能识别的开关参数。
在图1中,A 点为回旋曲线起点,B 点为回旋曲线止点,I 点为所求坐标点。
设: A点得X 坐标为X A ,Y 坐标为Y A ,A点得切线方位角为α,A 点得曲率为ρA,A 点得里程为LA,B 点得曲率为ρB,B点得里程为L B,I 点得曲率为ρI ,I点得里程为LI 。
卡西欧5800道路坐标测量程序(通俗易懂版)
主程序(自己给取个名吧)
2→Dimz
“1.SZ=﹥XY
2.XY=﹥SZ”◢
“N=”?N
If N=1:Then Goto 1:Else Goto 2:IfEnd
Lbl 1
“S=”?S
“Z=”?Z
“J=”?T
If S﹤0:Then Prog “SYL”:Else Prog “SYR”:IfEnd(可拿掉)
1÷P→C:(P-R) ÷(2HPR)→D:180÷∏→E:Abs(Abs(S)-O)→W:Prog “SUB1”
“QJ=”:Z[1]◣DMS◢
“X=”:X◢
“Y=”:Y◢
Goto 1
Lbl 2
“S=”?S
If S<0:Then Prog “SYL”:Else Prog “SYR”:IfEnd(可拿掉) 90→T
1÷P→C:(P-R) ÷(2HPR)→D:180÷∏→E
“X=”?X
“Y=”?Y
X→I:Y→J
Prog “SUB2”
O+W→S(红色加粗加下画线为字母,常规为零)
“S=”:S◢
Z→Z
“Z=”:Z◢
Goto 2
子程序(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+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+F WD))+Asin(G+QEMW(C+MWD))) →Y
G+QEW(C+WD)→Z[1]
Z[1]+T→F
X+Zcos(F)→X
Y+Zsin(F)→Y
Return
子程序(SUB2)
G-90→Z[2]:Abs((Y-V)cos(Z[2])-(X-U)sin(L)→W:0→Z
Lbl 0
Prog “SUB1”
Z[2]+QEW(C+WD)→L
(J-Y)cos(L)-(I-X)sin(L)→Z
If Abs(Z)<10(-6):Then Goto 1:EIse W+Z→W:Goto 0:IfEnd
Lb1 1
0→Z:Prog “SUB1”
(J-Y)÷sin(F)→Z
Return
数据库(SYR)
If S>29599.031(本段线元计算范围起点里程) And S≤29759.031(本段线元计算范围终点里程):Then 3311072.206(本段线元起点X坐标)→U:502909.1014(本段线元起点Y坐标)→V: 29599.031(本段线元起
点里程)→O:256-25-59.11(本段线元起点方位角)→G:160(本段线元长度)→H:1400(本段线元起点半径)→P:10(45)(本段线元终点半径)(直线段为10的45次方)→R:-1(线元转向标识)(左偏为-1,右偏为1,直线为0)→Q:IfEnd
输入说明
正算 1 输入 N:输入1进入计算坐标模式
S:里程桩号
Z:偏距
J:与线路角度
2 显示 QJ:切线方位角
X:X坐标
Y:Y坐标
反算 1 输入 N:输入2进入坐标反算里程偏距模式
S:输入相近里程
X:输入X坐标
Y:输入Y坐标
2 显示 S:反算出的里程桩号
Z:反算出的偏距。