CASIO fx-5800P YQX圆曲线坐标计算程序
- 格式:docx
- 大小:13.02 KB
- 文档页数:3
曲线任意里程中边桩坐标正反算(CASIO fx-5800P计算器)程序曲线任意里程中边桩坐标正反算(CASIO fx-5800P计算器)程序一、程序功能本程序由一个主程序(TYQXJS)和两个子程——正算子程序(SUB1)、反算子程序(SUB2)序构成,可以根据曲线段——直线、圆曲线、缓和曲线(完整或非完整型)的线元要素(起点坐标、起点里程、起点切线方位角、线元长度、起点曲率半径、止点曲率半径)及里程边距或坐标,对该曲线段范围内任意里程中边桩坐标进行正反算。
另外也可以将本程序中核心算法部分的两个子程序移植到其它相关的程序中,用于对曲线任意里程中边桩坐标进行正反算。
本程序也可以在CASIO fx-4500P计算器及CASIO fx-5800 P计算器上运行。
特别申明:(1). 适用于弧长小于2倍半径的各种线元坐标正反算,精度优于1mm;(2). 在引用该核心计算部分时,请注明来源。
(3)该程序可计算标准、非标准曲线,但不可以计算与线路成斜交角的坐标二、源程序主程序(QXJS)"1.SZ => XY":"2.XY => SZ"?N:"X0"?U: "Y0"?V: "S0"?O: "FWJ0"?G: "LS"?H:"R0"?P?"RS"?R: "PX "?Q:1÷P→C:(P-R)÷(2HPR)→D:180÷π→E:If N=1:Then Goto 1:Else Goto 2:IfEndLbl 1: "KS"?Z:"ES"?S:Abs(Z-O)→W:Prog "QXZS":"XS=" :X→X◢"YS=": Y→Y◢"FWJS=":(F-90)DMS◢Prog "GC"Goto1Lbl 2:"XS"?X:"YS"?Y:X→I:Y→J:Prog "QXFS":O+W→Z"KS=":Z→Z◢"ES=": S→S◢"FWJS=":(F-90)DMS◢Prog "GC"Goto 21.全线计算主程序(XLJS)"1.SZ => XY":"2.XY => SZ":"1 or 2"?N: Lbl 0:"KS"?Z:"ES"?S:Prog "XXX":1÷P→C:(P-R)÷(2HP R)→D:180÷π→E:If N=1:Then Goto 1: Else Goto 2:IfEndLbl 1:Abs(Z-O)→W:Prog "QXZS":"XS=" :X→X◢"YS=": Y→Y◢"FWJS=":(F-90)DMS◢Prog "GC"Goto 0Lbl 2:"XS"?X:"YS"?Y:X→I:Y→J:Prog "QXFS":O+W→Z"KS=":Z→Z◢"ES=": S→S◢"FWJS=":(F-90)DMS◢Prog "GC"Goto 22. 正算子程序(QXZS)0.1739274226→A:0.3260725774→B:0.0694318442→K:0.3300094782→L:(1-L)→F:(1-K)→M:(U+W(Ac os(G+QEKW(C+KWD))+Bcos(G+QELW(C+LWD))+Bcos(G+QEFW(C+FWD))+Acos(G+QEMW(C+MW D))))→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+Scos(F→X:Y+Ssin(F→YReturn3. 反算子程序(QXFS )G-90→T:Abs((Y-V)cos(T)-(X-U)sin(T))→W:0→S:Lbl 0:Prog " QXZS ":T+QEW(C+WD)→L:(J-Y)co s(L)-(I-X)sin(L)→S:If Abs(S)<10^(-6):Then Goto1:Else S+W→W:Goto 0:IfEndLbl 1:0→S:Prog " QXZS ":(J-Y)÷sin(F)→SReturn数据库:XXXLbl 1:If Z≤下一起点里程: Then本线路起点里程→O:本线路X→U:本线路Y→V:本线路方位角→G:本线路长度→H:本线路起点半径→P:本线路止点半径→R:±1→Q (左偏Q=-1,右偏Q=1,直线段Q=0):Else If Z≤下一起点里程: Then本线路起点里程→O:本线路X→U:本线路Y→V:本线路方位角→G:本线路长度→H:本线路起点半径→P:本线路止点半径→R:±1→Q :IfEnd: IfEndReturn四、数据库1、线路平面数据库数据名:“XXX”可根据自己须要更改Lbl 1:If Z≤80(计算段终点里程) : Then 0→O (计算段起点里程): 62450.391→U(起点里程纵坐标): 56853.282→V (起点里程横坐标): 220°31′33″→G(计算段起点里程切线方位角): 80→H(缓和线): 10^45→P曲率半: 782.716→R(曲率半): -1→Q (线路左右偏): Else If Z≤xxx: Then0→O (计算段起点里程): 62450.391→U(起点里程纵坐标): 56853.282→V (起点里程横坐标): 220°31′33″→G(计算段起点里程切线方位角): 80→H(缓和线): 10^45→P曲率半: 782.716→R(曲率半): -1→Q: IfEnd: IfEndReturnO=80:U=62388.712:V=56802.348:G=²²²²²²²²²²²²注:数据库内数据为示意数据,编两曲线中直线段时“H=”为该段长;半径“P=”、“R=”详以上使用说明;坐标、方位角为计算段起点的。
卡西欧fx-5800p计算器测量程序(作者:水江华)1.坐标反算程序"ZBFS QH1-4"◢Deg:Fix 3←┘"X+YiS(m)="?A←┘Lb1 0:"X+YiE(m),0=>END="?B←┘Abs(B)=0=>Goto E←┘Arg(B-A)→JJ<0=>J+360→J"DIST(m)=":Abs(B-A)◢"α(DMS)=":J▶DMS◢Goto 0←┘Lb1 E:"ZBFS QH1-4=>END"2.坐标正算程序"ZBZS QH1-3"◢Deg:Fix 3←┘"XS(m)= "?A:"YS(m)= "?B←┘Lb1 1:"DIST(m)= "?L←┘If L≤0:Then Goto 2:IfEnd←┘"α(Deg)="?R←┘A+Lcos(R)→C←┘B+Lsin(R)→D←┘Fix 3:"XE(m)= ":C◢"YE(m)= ":D◢Goto 1←┘Lb1 2:"ZBZS QH1-3=>END"3.单一闭、附合导线近似平差程序"BFHDXPC QH1-8"◢Deg:Norm 1:FreqOn←┘n→N←┘If List Y[N]=0:Then N-1→DimZ:Goto 0←┘Else N→DimZ:Goto 1: IfEnd←┘Lb1 0: "CLOSE Or CONECT TRA VE"◢"ANGLE NUM=":N◢"SIDE NUM=":N-1◢"UNKNOWN P NUM=":N-2◢"CLOSE(0),CONNECT(≠0)="?→Z←┘Fix 3:"XA(m),≤0=>αA→B(Deg)="?A←┘If A>0:Then "YA(m)= "?B:Else "αA→B(Deg)="?R:IfEnd←┘"XB(m)= "?C:"YB(m)= "?D←┘C+Di→U:U→V←┘If A>0:Then Pol(C-A,D-B):Cls←┘J<0=>J+360→J:J→R←┘"DIST A→B(m)=":I◢"αA→B(DMS)=":R▶DMS◢IfEnd←┘If Z≠0:Then "XC(m)= "?E:"YC(m)= "?F←┘E+Fi→V←┘"XD(m),≤0=>αC→D(Deg)="?G←┘If G>0:Then "YD(m)= "?H←┘Pol(G-E,H-F):Cls←┘J<0=>J+360→J:J→S←┘"DIST C→D(m)=":I◢"αC→D(DMS)=":S▶DMS◢Else "αC→D(Deg)="?S:IfEnd←┘Else If R>180:Then R-180→S:Else R+180→S:IfEnd←┘IfEnd←┘∑y→M←┘For 1→I To N←┘If I=1:Then R+List X[I]→L:Else L+List X[I]→L:IfEnd←┘If L>180:Then L-180→L:Else L+180→L:IfEnd←┘Nent←┘3600(L-S)→T←┘"α CLOSE ERROR(S)=":T◢40→W←┘Abs(T)>W=>"α CLOSE ERROR OVRE!"←┘-T÷N÷3600→P:0→O←┘For 1→I To N←┘If I=1:Then R+List X[I]+P→L←┘Else L+List X[I] +P→L:IfEnd←┘If L>180:Then L-180→L:Else L+180→L:IfEnd←┘If I<N:Then List Y[I]<L→Z[I] :Z[I]+O→O:IfEnd←┘Nent←┘3600(L-S)→T←┘"CHECK α CLOSE ERROR(S)=":T◢U+O-V→O←┘Int(M÷Abs(O))→K←┘"DELTA X(m)= ":ReP(O)◢"DELTA Y(m)= ":ImP(O)◢"RELAT CLOSE ERROR=1÷":K◢K<4000=>"RELAT CLOSE ERROR OVER! "←┘For 1→I To N-1←┘Z[I]-OList Y[I]÷M→X←┘If I=1:Then U+X→Y:Else Y+X→Y:IfEnd←┘Norm 1:"POINT n=":I◢Fix 3:"X(m)= ":ReP(Y)◢"Y(m)= ":ImP(Y)◢Nent←┘Y-V→Q←┘"CHECK X (m)= ":ReP(Q)◢"CHECK Y (m)= ":ImP(Q)◢Goto E←┘Lb1 1:"NO DIRECT TRA VE"◢"ANGLE NUM=":N-1◢"SIDE NUM=":N◢"UNKNOWN P NUM=":N-1◢"XA(m)= "?A:"YA(m)= "?B←┘"XB(m)= "?C:"YB(m)= "?D←┘A+Bi→U:C+Di→V←┘0→H:U+List Y[1]<H→Z[1]←┘For 1→I To N-1←┘H+List X[1]→H←┘If H>180:Then H-180→H:Else H+180→L:IfEnd←┘以下未完程序由读者完成。
CASIO fx-5800P YQX圆曲线坐标计算程序原理:采用长弦偏角法进行单元坐标计算。
公式:αi=li÷R×180°÷π、xi=R×sinαi、yi=R×(1-cosαi)、ci=√(xi^2+yi^2)、δi=arctan(yi÷xi)、Xi=YZx+ci*cos(A+δi×cc)、Yi=YZy+ci*sin(A+δi×cc)。
方位:(li÷R×180°÷π)×cc +A注解:li=计算点至直圆点之间的弧长、δi偏角、ci=弦长、A=第一切线方位角、cc曲线转向偏左=-1,偏右=1。
说明:该程序适用于计算器 CASIO fx-5800P,针对圆曲线线形设计,可计算圆曲线线路中、边桩坐标、切线方位角及斜交。
1、JD(DK)=? 输入交点里程2、JD(X)=? 输入交点坐标X3、JD(Y)=? 输入交点坐标Y4、α=? 输入转角(左为-、右为+)5、R=? 输入曲线半径6、FWJ=? 输入第一切线方位角7、JSDK=? 输入计算桩号9、PJ=? 输入偏距10、PA=? 输入偏角主程序名:YQXLb1 0"JD(DK)="?A:"JD(X)="?B:"JD(Y)="?C:"α="?D:"R="?R:"FWJ="?F↙If D<0:Then -1→G:Else 1→G:IfEnd↙"T=":R×tan(G×D÷2)→T◢"L=":R×G×D×π÷180°→L◢"E=":R×(1÷cos(G×D÷2)-1)→E◢"ZY=":A-T→H◢"QZ=":H+L÷2→I◢"YZ=":H+L→J◢B+T×cos(F+180°)→U↙C+T×sin(F+180°)→V↙Lb1 1↙"JSDK="?K↙K-H→M↙M÷R×180°÷π→N↙R×sin(N)→O↙R×(1-cos(N))→P↙√(O^2+P^2)→Q↙tan-1(P÷O)→S↙M÷R×180°÷π→W↙"FWJ=":F+G×W→Z◢Lb1 2↙"X=":U+Q×cos(F+S×G)→X◢"Y=":V+Q×sin(F+S×G)→Y◢"PJ="?I↙"PA="?J↙"X=":X+I×cos(Z+J)→E◢"Y=":Y+I×sin(Z+J)→L◢Goto 1注:1、◢为显示指令。
1.ZBJS (坐标计算主程序) 10→Dim Z:“1.ZX,2.YX”?C:“1.ZS,2.FS”?E:E=2=>Goto 2“X00”?A:“Y00”?BLbl 1:?K:?Z:Prog“1.YS”:Prog“1.HQ”:“X=”:X-Z sin(Z[1]) →Q▲“Y=”:Y+Z cos(Z[1]) →S▲Pol(Q-A,S-B):J<0=>J+360→J“D=”:I▲“F=”:J▼DMS▲Goto 10→KLbl 2:“XP”?Q:“YP”?S:“HP”?I:I→Z[4]Lbl 3:Prog“1.YS”:Prog“1.HQ”:(X-Q)sin(Z[1]+90)-(Y-S)cos(Z[1]+90) →I:If Abs(I)≥0.0001:Then K-I→K:Goto 3:IfEnd“K=”:K▲“Z=”:(X-Q)sin(Z[1])-(Y-S)cos(Z[1]) →Z▲Prog“2.GC”:Prog“1.R”Goto 21.YS (平曲线要素子程序)If C=1:Then If K≤53038.260(下一交点ZH点桩号):Then 2379.165→U(交点X):2429.939→V(交点Y):52792.353→D(交点桩号):9°9′7.1″→O(线路转角): -1→W(左转-,右转+):1900→R(半径):0→M(一缓长):200→N(二缓长):157.583→T(第一切线长):246.615→P(第二切线长):403.491→L(曲线长):90°22′58.6″→F(起点方位角):Return:IfEnd: If K≤53038.260(下一交点ZH点桩号):Then 2379.165→U(交点X):2429.939→V(交点Y):52792.353→D(交点桩号):9°9′7.1″→O(线路转角): -1→W(左转-,右转+):1900→R(半径):0→M(一缓长):200→N(二缓长):157.583→T(第一切线长):246.615→P(第二切线长):403.491→L(曲线长):90°22′58.6″→F(起点方位角):Return:IfEnd:IfEndIf C=2:Then If K≤53038.260(下一交点ZH点桩号):Then 2379.165→U(交点X):2429.939→V(交点Y):52792.353→D(交点桩号):9°9′7.1″→O(线路转角): -1→W(左转-,右转+):1900→R(半径):0→M(一缓长):200→N(二缓长):157.583→T(第一切线长):246.615→P(第二切线长):403.491→L(曲线长):90°22′58.6″→F(起点方位角):Return:IfEnd: If K≤53038.260(下一交点ZH点桩号):Then 2379.165→U(交点X):2429.939→V(交点Y):52792.353→D(交点桩号):9°9′7.1″→O(线路转角): -1→W(左转-,右转+):1900→R(半径):0→M(一缓长):200→N(二缓长):157.583→T(第一切线长):246.615→P(第二切线长):403.491→L(曲线长):90°22′58.6″→F(起点方位角):Return:IfEnd:IfEnd1.HQ (坐标计算子程序)K-D+T→IIf I≤0:Then I→X:0→Y:0→Z[1]:Goto 1:IfEndIf I≤M:Then I-I∧(5)÷(40R2M2) →X:I∧(3)÷(6RM)-I∧(7) ÷(336 R∧(3) M∧(3)) →Y:90I2÷(πRM) →Z[1]:Goto 1:IfEndIf I≤L-N:Then180(I-M)÷(Rπ)+90M÷(Rπ)→Z[1]:Rsin(Z[1])+M ÷2-M∧(3)÷(240R2)→X:R(1-cos(Z[1]))+M2÷(24R)→Y:Goto 1:IfEndIf I≤L:Then L-I→I:F+W O-W(90I2÷(πRN)) →Z[1]: I∧(3)÷(6RN)→J: I-I∧(5)÷(40R2N2) →I:U+P cos(F+W O)+I cos(F+W O+180)+WJsin(F+W O+180)→X:V+P sin(F+W O)+I sin (F+W O+180)-WJcos (F+W O+180) →Y:Return:IfEndIf I>L:Then K-D+T-L→J:F+W O→Z[1]:U+P cos(Z[1])+J cos(Z[1])→X:V+Psin(Z[1])+Jsin(Z[1])→Y:Return:IfEndLbl 1:X→I:WY→J:U+Tcos(180+F)+Icos(F)-Jsin(F)→X:V+Tsin(180+F)+Isin(F)+Jcos(F)→Y:F+WZ[1]→Z[1]1.R (半径计算子程序)说明:X表示圆心至测设线的距离,Y表示圆心至设计高程的距离。
卡西欧FX5800---辛普森公式(万能公式)复化辛普森公式1.Lbl 0:“XA=”?A:“YA=”?B: “CA=”?C:“1/RA=”?D:“1/RB=”?E:“DKA=”?F:“DKB=”?G2.Lbl 1:“DKI=”?H:“DL=”?O:“DR=”?R:IF H>G:THEN Goto0 IFEND3.(E-D)/Abs(G-F)→P:Abs(H-F) →Q: P×Q→I:D+I→T4.C+(I+2D)×Q×90/π→J5. C+(I/4+2D)Q×45/(2π) →M: C+(3I/4+2D)Q×135/(2π) →N6. C+(I/2+2D)Q×45/π→K7. A+Q(cosC+4(cosM+cosN)+2cosK+cosJ)/12 →X8.B+Q(sinC+4(sinM+sinN)+2sinK+sinJ)/12 →Y9.”FW=”:J▲DMS ▲10. “X=”:X▲11. “Y=”:Y▲12.“XL=”: X+Ocos(J-90) →U ▲13.“YL=”: Y+Osin(J-90) →V▲14.“XR=”:X+Rcos(J+90)→ W▲15.“YR=”:Y+Rsin(J+90)→ Z▲16.Goto 1程序结束程序说明:A- 曲线元起点A的坐标;B- 曲线元起点B的坐标;C- 曲线元起点A的切线坐标方位角;F- 曲线元起点A的里程;G- 曲线元起点B的里程;H- 曲线上待求点i的里程;D- 曲线元起点A的曲率;E- 曲线元终点B的曲率;XL-左边线点位X坐标;YL-左边线点位Y坐标;XR-右边线点位X坐标;YR-右边线点位Y坐标;X- 中线点位纵坐标;Y- 中线点位横坐标;DL-左边线距中线平距;DR-右边线距中线平距;该程序需要输入的数据为:(1).曲线元起点A的坐标及切线坐标方位角,计算器上用“XA”,“YA”,“CA”显示;(2).曲线元起点A和B的曲率,计算器上用I÷RA,I÷RB显示(曲线左偏时取“-”);(3).曲线元起点A和终点B的里程,计算器上用“DKA”,“DKB”显示;(4).输入待求点里程和该点距左右的水平距离,计算器上用“DKI”,“DL”,“DR”显示;每算完一个待求点的中线及边线坐标,程序又让输入下一点的“DKI”,“DL”,“DR”当输入的“DKI”大于“DKB”时,此时输入下一个曲线元起点的曲率和里程,即可计算下一个曲线中线及边线点位坐标。
5800直线、圆曲线缓和曲线、坐标计算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=″?R Lbl 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:待求点里程。
C A SI O f x-5800P综合曲线坐标计算程序说明:该程序适用于计算器C ASI O f x-5800P,可计算线路中心的缓和曲线、圆曲线、直线段,中、边桩坐标及切线方位角。
1、α? 输入转角:左转为负,右转为正2、R?输入圆曲线半径3、LS? 输入缓和曲线长度4、J D(DK)?输入交点里程桩号5、X(JD)?输入本交点X 坐标6、Y(JD)?输入本交点Y 坐标7、F W J?输入待求点切线方位角9、J? 输入0 程序计算中桩,输入 1 程序计算边桩10、JSDK? 输入里程桩号主程序名:ZHQ X1. Deg:Fix 4↙2. Lb1 A↙3. "α"?A:?R:"LS"?C:"JD(DK)"?D:"X(JD)"?N:"Y(JD)"?E:"FWJ"?F↙4. Lb1 B↙5. ?J ↙6. C∧2÷24÷R-C∧(4)÷2688÷R∧(3)→P↙7. C÷2-C∧(3)÷240÷R∧2→Q↙8. 90×C÷兀÷R→B↙9. "T=":(R+P)tan(Abs(A)÷2)+Q→T◢10. "E=":(R+P)÷c o s(A÷2)-R→W◢11. "L=":(Abs(A)-2×B)兀R÷180+2×C→L◢12. "ZH=":D-T→G◢13. "HY=":G+C→H◢14. "QZ=":G+L÷2→I◢15. "YH=":G+L-C→K◢16. "HZ=":G+L→M◢17. If A<0:Th en-1→S:E l se1→S:If End↙(本行中0 为数字)18. F+A÷2+90×S→U↙19. W+R→V↙20. N+V×cos(U)→B↙21. E+V×sin(U)→O↙(本行中O 为字母)22. Lbl 1 ↙23. "JS DK"?Z↙24. If Z≤G:Th en T+G-Z→L ↙25. F+180→V ↙26. "FW J=":F→U◢27. Goto 2 ↙28. IfEnd ↙29. If Z≤H:Th en Z-G→L ↙30. L-L∧(5)÷(90×R∧2×C∧2)→V↙31. 30×L∧2×S÷(兀RC)→L ↙32. F+180→P ↙33. F+L→Q↙34. "FW J=":F+3×L→U◢35. Goto 4 ↙36. IfEnd ↙37. If Z≤K:Th en F+A÷2+90×S+180+180(Z-I)×S÷R÷兀→L↙38. "FW J=":L+90×S→U:If U≥360:The n U-360→U◢39. Else U→U◢40. IfEnd:G o to5:If End↙41. If Z≤M:Th en M-Z→L↙42. L-L∧(5)÷(90×R∧2×C∧2)→V↙43. 30×S×L∧2÷(兀RC)→L ↙44. F+A→P ↙45. F+A+180-L→Q↙46. "FW J=":F-3×L+A→U:If U≥360:Th en U-360→U◢47. Else U→U◢48. IfEnd:G o to4:If End↙49. If Z>M:Then Z-M+T→L↙50. F+A→U ↙51. U→V ↙52.G o to2 ↙53. Lbl 2 ↙54. "X=":N+L×cos(V)→X◢55. "Y=":E+L×sin(V)→Y◢56. G o to6 ↙57. If End↙58. Lbl 3 ↙59. ?W60. "XL=":X+W×cos(U-90)→P◢61. "YL=":Y+W×sin(U-90)→Q◢62. "XR=":X+W×cos(U+90)→P◢63. "XL=":Y+W×sin(U+90)→Q◢64. G o to1 ↙65. Lbl 4 ↙66. "X=":N+T×cos(P)+V×cos(Q)→X◢67. "Y=":E+T×sin(P)+V×cos(Q)→Y◢68. G o to6 ↙69.Lbl 5 ↙70. "X=":B+R×cos(L)→X◢71. "Y=":O+R×sin(L)→Y◢(本行中O 为字母)72. G o to6 ↙73. Lbl 6 ↙74. J=1 G o to3 ↙75. G o to1 ↙。
F x-5800p 常用程序1、坐标反算(FS )?X :?Y ?Y↙↙∟b ∣0:?:?A A :?:?B B ↙Pol(A-X,B-Y):J Pol(A-X,B-Y):J<<0=>J+360J+360→→J ↙“S=S=””:I :I◢◢“T=T=””:J :J►►DMS DMS◢◢Goto 0↙说明说明::X,Y X,Y——基点坐标A,B A,B——测点坐标2、坐标正算(ZS )∟b ∣0:0:??S :?:?T T :?:?A A :?:?B B ↙Rec(S,T)+A Rec(S,T)+A→→X ↙B+J B+J→→Y ↙“X=X=””:X ◢“Y=Y=””:Y :Y◢◢Goto 0↙说明说明::S —距离T —方位角A,B A,B——基点坐标X,Y X,Y——计算坐标3、坐标转换(ZH —H )?N :?:?E E :?:?Q Q ↙∟b ∣0:0:““1.S =>D ”:“2.D =>S ”:?F ↙I f F=1:Then Goto 1:Eles Goto 2:If End End↙↙∟b ∣1:1:??X :?:?Y Y ↙N+X cos cos((Q )—Y sin sin((Q )→U ↙E+X sin sin((Q )+Y cos cos((Q )→V ↙“X1=X1=””:U ◢:“Y1=Y1=””:V ◢Goto 0↙∟b ∣2:?:?X X :?:?Y Y ↙(X —N )cos cos((Q )+(Y —E )sin sin((Q )→U ↙(N —X )sin sin((Q )+(Y —E )cos cos((Q )→V ↙“X2=X2=””:U ◢“Y2=Y2=””:V ◢Goto 0↙说明:N ,E —施工坐标原点大地坐标Q —施工坐标X 轴在轴在大地坐标系大地坐标系大地坐标系中的中的中的方位角方位角X ,Y —需转换坐标F —判断符F=1F=1,施工,施工,施工→→大地,其他,大地大地,其他,大地→→施工4、竖曲线(SQX )?A :?B :?D :?T :?R :?Z ↙If Z ≥1:Then Goto 1:Eles Goto 2:If End End↙↙∟b ∣1:?:?C C :A+A+Abs(Abs(Abs(((B —A ))÷T (C —D )—(C —D )2÷(2R 2R))→H ↙“H=H=””:H ◢Goto 1↙∟b ∣2:?:?C C :A+A+Abs(Abs(Abs(((B —A ))÷T (C —D )+(C —D )2÷(2R 2R))→H ↙“H=H=””:H ◢Goto 2↙说明:说明:AA —起点(终点)高程B —切线交点高程C —需计算点的需计算点的桩号桩号D —起点(终点)桩号T —切线长R —半径H —C 桩号的高程Z —Z ≥1时为凸曲线,其他为凹曲线5、曲线任意里程坐标正反算1.主程序(TYQXJS)"1.SZ =>XY":"2.XY =>SZ"SZ"::?N :1÷P →C :(P-R)(P-R)÷÷(2HPR)→D:180180÷π÷π→E :If N =1:Then Goto 1:Else Goto 2↙Lbl 1:?:?S S :?:?Z Z :Abs(S-O)→W :Prog "SUB1""SUB1"::"XS=""XS="::X ◢"YS=""YS="::Y ◢Goto 1↙Lbl 2:?X :?:?Y Y :X →I :Y →J :Prog "SUB2""SUB2"::O+W →S:"S=""S="::S ◢"Z=""Z="::Z ◢Goto 2↙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+FWD))+A sin(G+QEMW(C+MWD)))→Y:G+QEW(C+WD)+90→F:X+ZcosF→X:Y+ZsinF→Y:Return↙3.反算子程序(SUB2)G-90→T:Abs((Y-V)cosT-(X-U)sinT)→W:0→Z:Lbl0:Prog"SUB1":T+QEW(C+WD)→L:(J-Y)cosL-(I-X)sinL→Z:If AbsAbs((Z)<1E-6: Then Goto1:Else W+Z→W:Goto0↙(J-Y)÷÷sinF→Z:Return↙Lbl1:Z=0:Prog"SUB1":(J-Y)三、使用说明1、规定(1)以道路中线的前进方向(即里程增大的方向)区分左右;当线元往左偏时,Q=-1;当线元往右偏时,Q=1;当线元为直线时,Q=0。
圆曲线坐标计算交点桩号YK20+734.498;N=2889769.961;E=527002.305 ;方位角314'24'58.3' 转角27'19'31.4' 切线长度T1= 814.345 ;T2= 814.347 ;半径R=3000 ;曲线长度LS1:170;LC=1260.752;LS2= 170 曲线总长=1600.752 求ZH,HY,QZ,YH,HZ以及圆心点的坐标。
1、A?输入转(偏)角;左转为负,右转为正。
转角27'19'31.4'2、R?输入曲线半径。
30003、LS?输入缓和曲线长度。
1704、JD(DK)?输入交点里程桩号。
20734.498结果显示T = 814.347 W=87.776 L=1600.754 ZH=19920.151;HY=20090.151; QZ=20720.528; YH=21350.905; HZ=21520.9055、X(JD)?输入本交点X坐标。
2889769.9616、Y(JD)?输入本交点Y坐标。
527002.3057、FWJ?输入直缓(ZH)点切线方位角。
314'24'58.3'8、J?输入0程序计算中桩,输入1程序计算边桩。
09、Z?输入里程桩号。
ZH=19920.151FWJ:314.416 X=2889200.028 Y= 527583.973完(FWJ:314.416=314'24'57.6' )ZH(2889200.026 527583.975) HY(2889320.140 527463. 682)QZ(2889816.373 527076.808) YH(2890382.383 526801.950)HZ(2890543.311 526747.167)例如2:JD15:4013872.8781;456031.1661 JD16:4015349.321;451808.075ZH:75+137.901 ay:16.45.49.69 R=9000 缓和曲线长:490 T=1571.257 JD(DK) =76709.158 FWJ=289-16-12.85 给我算一下74+400;75+300;75+800;76+500左中线坐标。
主程序坐标正反算程序名称: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↙直线短链要将该直线分成二条直线来对待编制数据库文件即可,曲线长链要单独建判定语句子程序并然后编制二个数据库(按来向里程和去向里程分别推出曲线起终点里程,以此编制曲线段的数据库)。
CASIO fx-5800P YQX圆曲线坐标计算程序
原理:采用长弦偏角法进行单元坐标计算。
公式:αi=li÷R×180°÷π、xi=R×sinαi、yi=R×(1-cosαi)、ci=√(xi^2+yi^2)、δ
i=arctan(yi÷xi)、Xi=YZx+ci*cos(A+δi×cc)、Yi=YZy+ci*sin(A+δi×cc)。
方位:(li÷R×180°÷π)×cc +A
注解:li=计算点至直圆点之间的弧长、δi偏角、ci=弦长、A=第一切线方位角、cc曲线转向偏左=-1,偏右=1。
说明:该程序适用于计算器 CASIO fx-5800P,针对圆曲线线形设计,可计算圆曲线线路中、边桩坐标、切线方位角及斜交。
1、JD(DK)=? 输入交点里程
2、JD(X)=? 输入交点坐标X
3、JD(Y)=? 输入交点坐标Y
4、α=? 输入转角(左为-、右为+)
5、R=? 输入曲线半径
6、FWJ=? 输入第一切线方位角
7、JSDK=? 输入计算桩号
9、PJ=? 输入偏距
10、PA=? 输入偏角
主程序名:YQX
Lb1 0
"JD(DK)="?A:"JD(X)="?B:"JD(Y)="?C:"α="?D:"R="?R:"FWJ="?F↙
If D<0:Then -1→G:Else 1→G:IfEnd↙
"T=":R×tan(G×D÷2)→T◢
"L=":R×G×D×π÷180°→L◢
"E=":R×(1÷cos(G×D÷2)-1)→E◢
"ZY=":A-T→H◢
"QZ=":H+L÷2→I◢
"YZ=":H+L→J◢
B+T×cos(F+180°)→U↙
C+T×sin(F+180°)→V↙
Lb1 1↙
"JSDK="?K↙
K-H→M↙
M÷R×180°÷π→N↙
R×sin(N)→O↙
R×(1-cos(N))→P↙
√(O^2+P^2)→Q↙
tan-1(P÷O)→S↙
M÷R×180°÷π→W↙
"FWJ=":F+G×W→Z◢
Lb1 2↙
"X=":U+Q×cos(F+S×G)→X◢
"Y=":V+Q×sin(F+S×G)→Y◢
"PJ="?I↙
"PA="?J↙
"X=":X+I×cos(Z+J)→E◢
"Y=":Y+I×sin(Z+J)→L◢
Goto 1
注:
1、◢为显示指令。
2、√为根号。
3、↙为回车(EXE)标识。
计算参数:
1、JD(DK)=? 84344.66
2、JD(X)=? 3480633.030
3、JD(Y)=? 515023.795
4、α=? 16°16ˊ05.3″
5、R=? 2800
6、FWJ=? 104°00ˊ06.92″
7、T= 400.198
8、L= 795.011
9、E= 28.455
10、ZY= 83944.462
11、QZ= 84341.968
12、YZ= 84739.473
13、JSDK=? 84200
14、FWJ= 109°13ˊ51.37″
15、X= 3480656.811
16、Y= 514880.270
17、PJ=? 10
18、PA=? 90°
19、X= 3480647.369
20、Y= 514876.976。