5800简单全线坐标计算程序

合集下载

5800全线直曲计算程序通用

5800全线直曲计算程序通用

5800全线直曲计算程序通用经实践在5800上可行,反算运行时间就是慢点有4秒左右才出结果。

5800测量程序加入了数据库,综合了网上的一些而成。

非本人原创,希望能与广大朋友交流。

5800坐标正反程序(加入了数据库) 1. 主程序(TYQXJS)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":"XS=":X◢"YS=":Y◢F-90→F:“FS=”:F▲DMS◢Goto4↙Lbl 2:?X:?Y:X→I:Y→J:Prog“SUB2”:O+W→S:“S=”:S◢“Z=”:Z◢Goto4↙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))+B sin(G+QEFW(C+FWD))+Asin(G+QEMW(C+MWD))) →Y:G+QEW(C+WD)+90→F:X+Zcos(F)→X:Y+Zsin(F)→Y2. 反算子程序(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)<0.000001:Then0→Z:Prog "SUB1" :(J-Y)÷sin(F)→Z Else W+Z→W:Goto4:IfEndSUB0 数据库子程序Goto1↙同时保存多个曲线时的指针Lbl 1:IF S<***(线元终点里程):Then***→G(线元起点方位角):***→O(线元起点里程):***→U(线元起点X):***→V(线元起点Y):***→P(线元起点曲率半径):***→R(线元终点曲率半径): ***→H(线元起点至终点长度):0或1、-1→Q:Return:IfEnd↙Lbl 1:IF S<***(线元终点里程):Then***→G(线元起点方位角):***→O(线元起点里程):***→U(线元起点X):***→V(线元起点Y):***→P(线元起点曲率半径):***→R(线元终点曲率半径): ***→H(线元起点至终点长度):0或1、-1→Q:Return:IfEnd ……………..为了便于解读,每增加一个线元增加一行语句,每增加一条曲线增加一个Lbl,每增加一个工程增加一个文件。

5800直线、圆曲线缓和曲线、坐标计算程序

5800直线、圆曲线缓和曲线、坐标计算程序

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:待求点里程。

5800交点法全线计算程序及其说明

5800交点法全线计算程序及其说明

FX5800 计算器交点法正反算程序输入图纸中的整个标段交点要素,输入桩号及距中桩距离正算本标段任意点坐标,及极坐标放样的方位角及距离;由输入大概桩号及实测坐标,反算准确桩号及距中桩距离。

1、主程序程序名:JDF-ZCXLbI 0:7→DimZ:Norm 2:1→A:"ZS=1,FS=2"?A:A=1=>Goto 1:A=2=>Goto 2LbI 1:Z[4] → K:Z[5] →L:“CZ-X”?K:” CZ-Y”?L:K→Z[4]:L→Z[5]:LbI A:Prog"JDF-XLXZ":90→ B: "P-JIAO"?B:B → Z[1] :LbI B: "K"?Z:Z=-1=>Goto0:Z=-2=>Goto A: Prog"JDF-YL-SJK":"P-JU"?D: Prog "JDF-ZS":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"JDF-JZBFY":Goto BLbI 2:Prog"JDF-XLXZ":"K"?Z:LbI C: Prog"JDF-YL-SJK": "X0"?X:X=-1=>Goto 0:X=-2=>Goto 2: "Y0"?Y:Prog "JDF-FS": Fix3:"KM=":Locate 6,4,Z:"D=":Locate 6,4,D:Goto C2. 交点法正算子程序程序名:JDF-ZSH2÷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÷Abs(P→W:0→M:H→C: (R+N2÷R÷24-N∧(4)÷2688÷R∧(3))tan(Abs(P)÷2)+N÷2-N∧(3)÷240÷R2+E→Z[6]: O-T+ΠR×Abs(P)÷180+H÷2-N÷2→Z[7]: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“JDF-HHQX”:G+WK→Z[2]:A-T→A:G→E:Goto2:IfEnd:If Z≤Z[7]: Then 180(Z-O+T-0.5H)÷R÷Π→S : A+R(1-Cos(S))→B:H÷2-H∧(3) ÷240÷R2+Rs in(S)→A:R→M:G+WS→Z[2]: A-T→A:G→E :Goto 2:IfEnd:If Z≤Z[7]+N:Then Z[7]+N-Z→S:Z[6]→T :N→H:Prog “JDF-HHQX”:G+P→E:E-WK→Z[2]:T-A→A:C→H:Goto 2:IfEnd:Z-Z[7]-N+Z[6]→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)→J3. 交点法缓和段子程序程序名:JDF-HHQXS-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. 交点法反算子程序程序名:JDF-FS0→D:Do(语法):Z+D→Z:Prog“JDF-ZS”:Pol(X-I,Y-J+.000000001: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)>0.001:Z+D→Z:S→D5.线路选择子程序程序名:JDF-XLXZ1→A:” SHURU=0,SJK =1”?A:A→Z[3]:If A=0:Then ”JDKM”?O:”X”?U:”Y”?V:”FW J”?G:”LS1”?H:“LS2”?N:“ZHUAN-JIAO”?P:“BAN-JIN”?R:IfEnd6.坐标计算参数矩阵调出子程序程序名:JDF-JZMat F[1,1]→O: Mat F[1,2]→U: Mat F[1,3]→V: Mat F[1,4]→G: Mat F[1,5]→H: Mat F[1,6]→N: Mat F[1,7]→P: Mat F[1,8]→R7:极坐放样计算程序(计算放样点至置仪点方位角及距离) 程序名:JDF-JZBFYZ[4]→K:Z[5]→L:Pol(X-K, Y-L+.0000000001): J<0=>J+360→J: Int(J)+0.01Int(60Frac(J))+0.006Frac(60Frac(J)) →J:Fix 4:” FWJ=”: Locate 6,4,J:Fix 3:” JL=”:Locate 6,4,I◢8.数据子程序程序名:JDF-YL-SJKZ[3]=0=>Return:Z[3]=1=>Goto 1LbI 1If Z≤122269.856:Then [[121656.952, 2603848.019,508351.147, 98°53′22.6″,660,300,41°47′44.1″, 1415.097]]→Mat F: Prog”JDF- JZ”: Return: IfEnd:If Z≤125115.900:Then [[123984.982, 2601974.464, 509885.441, 140°41′06.8″,700,400, -39°31′43.7″,2800.000]]→Mat F: Prog” JDF- JZ”: Return:IfEnd:If Z≤396.166:Then [[213.698, 2600569.493, 514256.323, 238°49′17.1″,107.584,120.474, 64°39′40″, 250]]→Mat F: Prog” JDF- JZ”: Return: IfEnd:说明:If Z ≤交点HZ 点桩号(或者直线段桩号:Then [[交点桩号,交点X 坐标,交点Y 坐标,前交点至止交点方位角,交点前段缓和曲线长度,交点后段缓和曲线长度,交点转角,圆半径]]→Mat F: Prog”JDF- JZ”: Return: IfEnd:注:转角分正负,左偏为负,右偏为正.加粗O 为子母..Z[2]值为所计算点切线方位角。

5800全线坐标正算

5800全线坐标正算

GAUSSLE坐标正反算fx-4850程序源程序1、正算主程序 ZBZS“K”?K:“L(-Z +Y)”?L:90→M:(注:此处若不给M赋值,则可计算斜交点)Prog”DAT”: (P-R)÷(2(H-O)PR) →DAbs(K-O) →J:Prog“SUB1”“X=”:X ◢“Y=”: Y◢2、正算子程序 SUB14→Dimz0.1184634425→A: 0.2393143352→B: 0.2844444444→Z[4]: 0.0469100770→C: 0.2307653449→E: 0.5→Z[1]I+J(Acos(G+QCJ(1÷P+CJD)×180÷π)+Bcos(G+QEJ(1÷P+EJD)×180÷π)+Z[4 ]cos(G+QZ[1]J(1÷P+Z[1]JD)×180÷π)+Bcos(G+Q(1-E)J(1÷P+(1-E)JD)×18 0÷π)+Acos(G+Q (1-C)J(1÷P+(1-C)JD) ×180÷π)) →XS+J(Asin(G+QCJ(1÷P+CJD)×180÷π)+Bsin(G+QEJ(1÷P+EJD)×180÷π)+Z[4 ]sin(G+QZ[1]J(1÷P+Z[1]JD)×180÷π)+Bsin(G+Q(1-E)J(1÷P+(1-E)JD)×18 0÷π)+Asin(G+Q (1-C)J(1÷P+(1-C)JD) ×180÷π)) →YG+QJ(1÷P+JD) ×180÷π+M→F: X+LcosF→X: Y+LsinF→Y3. 曲线元要素数据库:DATIf K<本段曲线终点桩号:Then本段线元起点的X坐标→I:本段线元起点的Y 坐标→S:本段线元起点里程→O:本段线元起点切线方位角→G:本段线元终点里程→H:本段线元起点曲率半径→P:本段线元终点曲率半径→R:本段线元左右偏标志→Q:Else If K<二段曲线终点桩号:Then二段线元起点的X坐标→I:二段线元起点的Y坐标→S:二段线元起点里程→O:二段线元起点切线方位角→G:二段线元终点里程→H:二段线元起点曲率半径→P:二段线元终点曲率半径→R:二段线元左右偏标志→Q:…………(注:如有多个曲线元要素继续添加入数据库DAT-M中,下划线的要输数据)I=线元起点的X坐标:S=线元起点的Y坐标:O=线元起点里程:G=线元起点切线方位角:H=线元终点里程:P=线元起点曲率半径:R=线元止点曲率半径:Q=线元左右偏标志(注:如有多个曲线元要素继续添加入数据库DAT中)说明: K ?正算时所求点的里程:L ?正算时所求点距中线的边距(左侧取负值,右侧取正值,在中线上取零): X ?反算时所求点的X坐标: Y ?反算时所求点的Y坐标: M ? 斜交右角说明:一、程序功能及原理1.功能说明:本程序由两个主程序——正算主程序(GSZS)、反算主程序(GSFS)和两个子程——正算子程序(SUB1)、线元数据库(DAT-M)构成,可以根据曲线段——直线、圆曲线、缓和曲线(完整或非完整型)的线元要素(起点坐标、起点里程、起点切线方位角、终点里程、起点曲率半径、止点曲率半径)及里程边距或坐标,对该曲线段范围内任意里程中边桩坐标进行正反算。

5800计算器全线坐标计算放样正反算(定稿)

5800计算器全线坐标计算放样正反算(定稿)

5800计算器全线坐标计算放样正反算(定稿)程序名称:ZHOUSHUNXINLb1 A↙Cls : Norm 1: 22→Dim Z: 0→Z:“0=ZS”:“1=FS”?Z ↙If Z=0:Then Goto B:IfEnd↙(Z=0进入里程点坐标正算)If Z=1:Then Prog“FSBZ ”: Goto A:IfEnd↙(Z=1进入反算里程边桩)Lb1 B ↙“X h=”?M(置镜点X):“Y h=”?N(置镜点Y):“X°=”?G(后视点X):“Y°=”?L(后视点Y): Pol(G-M,L-N):J<0=>J+360→J:“J=”:J→DMS◢(后视方位角)Fix 4:“I(m)=”:I(后视距)◢Norm 1:90→P:“Z°=”?P:(输入边桩与线路夹角)“X,Y(≠0=1)”?Z↙Lb1 C↙Norm 1:“K=”?K :(计算里程)“B(-L,+R)=”?D:(输入边桩距,左-右+)Prog“SJK ”:Prog“ZSFS”:Goto C↙子程序数据库SJKIf 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”ZBJS”:Return: I fEnd↙IF…………Prog”ZBJS”:Return:I fEnd(曲线段分段输入)↙补充直线段输入如下(单独直线段)If K<本段直线终点里程And K≥本段直线起点里程:Then 本段直线终点里程→Z[3]:终点X→Z[16]:终点Y→Z[17]:方位角→E:Z[16]+ (K- Z[3])*Cos E→Z[21]:Z[17]+ (K- Z[3])*Sin E→Z[22] : Return:IfEnd ↙子程序坐标正算,名称:ZBJSLb1 0 ↙(曲线要素计算)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]↙(切线T 1)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点里程)Goto 1 ↙Lb1 1 ↙(判断里程点与曲线关系)If K≤Z[3] A nd K> Z[2] : Then Goto 2 : IfEnd ↙If K≤Z[4] A nd K> Z[3] : Then Goto 3 : IfEnd ↙If K≤Z[5] A nd K> Z[4] : Then Goto 4 : IfEnd↙If K≤Z[1] A nd K> Z[5] : Then Goto 5 : IfEnd ↙Lb1 2 ↙(里程小于直缓点直线独立坐标)K- Z[3] →Z[18] : 0→Z[19] : E→T : Goto 6↙Lb1 3 ↙(第一缓和曲线独立坐标)K- Z[3] →H ↙H-H^5/(40*R^2* Z[6]^2)+H^9/(3456*R^4* Z[6]^4) →Z[18] ↙H^3/(6*R* Z[6])-H^7/(336*R^3* Z[6]^3) →Z[19] ↙90*H^2/( R*π* Z[6]) →T ↙If O>0 :Then T +E→T : E lse E-T →T : T<0=>360+T→T :IfEnd ↙Goto 6 ↙Lb1 4 ↙(圆曲线独立坐标)K- Z[4] →H ↙H*180/( R*π)+ Z[14]→T ↙R*Sin T+ Z[8]→Z[18] ↙R*(1-Cos T)+ Z[10]→Z[19] ↙If O>0 :Then T +E→T : E lse E-T →T : T<0=>360+T→T : IfEnd ↙Goto 6 ↙Lb1 5 ↙(第二缓和曲线独立坐标)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→Z[18] ↙Z[13]*Sin A-U*Sin A+V*Cos A→Z[19] ↙If O>0 :Then F-T→T : T<0=>360+T→T : E lse F+T →T : IfEnd ↙Goto 6 ↙Lb1 6 ↙If O<0 : Then - Z[19]→Z[19] : I fEnd ↙Z[16]+Z[18]*Cos E-Z[19]*Sin E→Z[21]↙Z[17]+Z[18]*Sin E+Z[19]*Cos E→Z[22]↙ReTurn↙子程序反算里程边桩,名称:FSBZLb1 0↙“XK=”?X:“YK=”?Y(输入任意测点的XY坐标):“K=”?K (试算里程,任意输入标段内里程点即可,也可以输入大致的估算里程加快速度)↙Lb1 1↙Prog”SJK”:T-90 →W:W<0=>360+W→W:Abs((Y-Z[22])*Cos W-(X -Z[21])*Sin W)→S↙If S<0.0001:Then Goto 3:Else Goto 2:IfEnd↙Lb1 2↙K+S→K: Prog"SJK”:T-90 →W:W<0=>360+W→W:Abs((Y-Z[22])* Cos W-(X-Z[21])*Sin W)→Q↙If Q<0.0001 :Then Q→S: Goto 3:Else I f Q<S: Then K+Q→K: Goto 1 :Else If Q>S :Then K-Q→K:Goto 1:If End:IfEnd: IfEnd↙Lb1 3↙Pol (X-Z[21],Y-Z[22])↙(Y-Z[22])Cos(T) - (X-Z[21]) Sin(T) →D↙“K=”:K+S→K◢(里程)↙“B(-L+R)=”:D◢(偏距)↙Return↙子程序坐标放样:ZSFSLb1 0 ↙“QXJ=” :T◢(计算里程点切线方位角,可以不显示)Z[21]+D*Cos(T+P) →X↙Z[22]+D*Sin(T+P) →Y↙If Z=1 :Then Cls:“X N=”:“Y E=”:Locate 4,1,X:Locate 4,2, Y ◢IfEnd ↙Pol(X-M,Y-N):J<0=>J+360→J:“J=”:J→DMS◢(桩放样方位角)Fix 4 :“I(m)=”:I◢(桩放样距)Return↙1、坐标正算XY“0=ZS”:“1=FS”?Z: Z=0=>Goto 0: Z=1=>Goto 2↙Lb1 0: “Xh=”?M:“Yh=”?N↙Lb1 1:Norm 1:“XN=”?X:“YE=”?Y↙Pol(X-M,Y-N):J<0=>J+360→J :“J=”:J DMS◢Fix 4 :“I(m)=”:I ◢Goto 1↙2、坐标反算说明:Xh Yh:已知点坐标,J:方位角,I:两点的距离Goto 2 “Xh=”?M:“Yh=”?N↙Goto 3 “J°=”?J :“I(m)=”?I↙M+ICos(J)→X:N+ISin(J)→Y↙Cls:“X N=”:“Y E=”:Locate 4,1,X: (待求点的X坐标)Locate 4,2, Y ◢(待求点的Y坐标)Goto 3↙说明:Xh,Yh:第一点的坐标,XN,YE第二点的坐标,J:方位角I:两点距离Y线路起点0+00坐标X=4266763.294 Y=385874.5564 方位角58-39-38JD1=17.794 坐标X=4266772.549 Y=385889.7545 方位角58-39-38a y=5-39-31.8 R=270 ZH=0 HY=0QZ=0YH=0 HZ=53.333 LH1=0 LH2=53.333 TH1=17.794TH2=35.574 LH=53.333 EH=0.5857 JH=0.035缓和曲线参数1=0缓和曲线参数2=120.000JD2=245.911 坐标X=4266871.419 Y=386095.37 方位角64-19-09.8a Z=91-35-49.4 R=155 ZH=53.333 HY=117.85 QZ= 201.549 YH=285.249 HZ=343.744 LH1=64.516 LH2=58.495 TH1=192.578TH2=170.815 LH=290.4104 EH=68.808 JH=72.982 缓和曲线参数1=100 缓和曲线参数2=160JD3=500.834坐标X=4267162.86 Y=385945.0901 方位角332-43-20.4a Z=66-15-05.9 R=240 ZH=0 HY=343.744 QZ= 469.897YH=596.050 HZ=646.466 LH1=0 LH2=50.417 TH1=157.000TH2=181.613 LH=302.7226 EH=46.84 JH=35.981 缓和曲线参数1=0 缓和曲线参数2=50.417JD4=726.038坐标X=4267146.782 Y=385684.4008 方位角266-28-14.5a Y= 37-20-03.5 R=160 ZH=646.466 HY=697.091 QZ= 723.907 YH=750.907 HZ=801.348 LH(缓和曲线长度) =50.625 TH=79.572LH=302.7226 EH=46.84 JH=35.981 缓和曲线参数90线路终点1+358.861坐标X=4267501.234 Y=385155.025 方位角303-48-18If K<53.333And K≥0.000:T hen 53.333 →Z[1] :0.000 →Z[2]:1→O:270→R:0→Z[6]: 53.333 →Z[7]: 4266772.549 →B:385889.7545→C:58-39-38 →E:64-19-09.8 →F: Goto 2: IfEndIf K<343.744And K≥53.333:T hen 373.744→Z[1]:53.333→Z[2]:-1→O:155→R:64.516→Z[6]:58.495→Z[7]:4266871.419→B:386095.37→C:64-19-09.8→E:332-43-20.4→F:G ot o 2:IfEndIf K<646.466And K≥343.744:T hen 646.466→Z[1]:343.744→Z[2]:-1→O: 240 → R:0→Z[6] :50.417→Z[7]:4267162.86→B:385945.0901→C:332-43-20.4→E:266-28-14.5→F: Goto 2:IfEndIf K<801.348And K≥646.466:T hen 801.348→Z[1]:646.466→Z[2]:-1→O:160→R: 50.625→Z[6]:50.625→Z[7]:4267146.782→B:385684.4008→C:266-28-14.5→E:303-48-18→F:G oto 2:IfEndIf K<1358.861And K≥801.348:T hen 1358.861→Z[1]:801.348→Z[2]:-0→O:0→R:0.001→Z[6]:0.001→Z[7]:4267501.234→B:385155.025→C:303-48-18→E:303-48-18→F:G oto 2:IfEndPol (X-Z[18],Y-Z[19]:J<0=>J+360→J:(J-T)<0=>-I→I↙"DP(-Z+Y)=":I◢(偏距,-左+右)在反算这个判定中我感觉这个公式好像不够严密啊,但又不知从何改起请楼主再仔细看下因为当j为0到90度时,路线偏距是往右这样T正好是为270到360度范围,此时T 是比J大,按你的公式判断出来却是往左的。

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全线任意坐标计算程序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),可以根据曲线段——直线、圆曲线、缓和曲线(完整或非完整型)的线元要素(起点坐标、起点里程、起点切线方位角、线元长度、起点曲率半径、止点曲率半径、左偏或右偏)及里程边距或坐标,对该线元段范围内任意里程中边桩坐标进行正算。

卡西欧5800测量坐标计算程序

卡西欧5800测量坐标计算程序

一.使用说明:1.规定:(1)以道路中线的前进方向区分线路的左右偏转方向,线路左偏Q=-1,线路右偏Q=1,直线Q=0。

(2)当所求点位于线路中线时,Z=0;当位于左侧时,Z取负值;当位于右侧时,Z取正值。

(3)当线元为直线时,其起终点的曲率半径为无穷大,取10的45次方代替。

(4)当线元为圆曲线时,起终点曲率半径为圆曲线半径。

(5)当线元为缓和曲线时,起终点曲率半径与直线相接取10的45次方代替,与圆曲线相接取圆曲线半径。

2.输入与显示说明:(1)输入部分:N?:选择计算方式,输入1表示由里程边距计算坐标,输入2表示由坐标计算里程边距。

X0?线元起点X坐标。

Y0?线元起点Y坐标。

S0?线元起点里程。

F0?线元起点切线方位角。

LS?线元长度。

R0?线元起点曲率半径。

RN?线元终点曲率半径。

Q?线元左右偏标志(左偏=-1,右偏=1,直线=0)S?正算时所求点里程。

Z?正算时所求点距中线边距。

位于线路左侧输入负值,在右侧输入正值。

AR?斜交角度。

(为线路右角,在0-180度之间)X?反算时所求点X坐标。

Y?反算时所求点Y坐标。

(2)显示部分:XS=计算结果,所求点X坐标。

YS=计算结果,所求点Y坐标。

FS=计算结果,所求点切线方位角。

S=计算结果,反算时所求点里程Z=计算结果,反算时所求点边距。

二.程序清单1(用于任意曲线元的坐标计算)1.主程序(TYQXJS)″1.SZ=>XY″:″2.XY=>SZ″:?N:″X0″?U:″Y0″?V:″S0″?O: ″F0″?G:″LS″?H:″R0″?P:″RN″?R:?Q:1÷P→C:(P-R) ÷(2HPR) →D:180÷π→E:If N=1: THEN Goto 1:Else Goto 2:IfEnd:Lbl 1:?S:”D(Z-,Y+)=”?Z:90→T:”O=”?T:Abs(S-O) →W:Prog ″SUB1″:″XS″:X◢″YS″:Y◢″FS″:F◢Goto 1:Lbl 2:?X:?Y:I→X:J→Y:Prog ″SUB2″:″S″:O+W→S:◢″Z″:Z◢Goto 22.正算子程序(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))+Asin(G+QEMW(C+MWD))) →Y:G+QEW(C+WD) →F:X+Zcos(F+T) →X:Y+Zsin(F+T) →Y3.反算子程序(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)<1E-6 :Then Goto 1:Else W+Z→W:Goto 0 : IfEnd:Lbl 1:0→Z:Prog ″SUB1″:(J-Y)÷sin(F)→Z 三.用于提前将曲线元要素输入子程序,计算时只输入里程桩号与边距。

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

5800全线任意坐标计算程序
1. 正算主程序(ZHCX) (不运行)
8→DimZ
1÷P→Z[4 ]:(P-R)÷(2HPR)→D: 180÷π→E
“Z=”?Z:”YJJ=”?A:Abs(S-O)→W
0.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 1
X+L cos(F)→X:Y+Lsin(F)→Y: Goto 3
Lbi 2
X+L cos(F+A-90)→X:Y+Lsin(F+A-90)→Y: Goto 3
Lbi 3
“QH-X=”: X →X◢
“QH-Y=”: Y →Y◢
Prog “FY”
2 . 参数子程序(直接运行)
M(主线) 一条线路一个名称
“S=”?S
If 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:IfEnd
Lbi 1
Prog “ZBJS”
3. 放样程序(FY)(不运行)
“X0=”?M:“Y0=”?N
Pol((X-M, Y-N)
If J﹤0:Then J+360→J:IfEnd
“FWJ=”:J▲DMS◢
“JU-LI=”:I◢
说明:
一、程序功能及原理
1.功能说明:
本程序由一个主程序和两个子程——正算主程序(ZH)、参数子程序(M)、放样程序(FY),可以根据曲线段——直线、圆曲线、缓和曲线(完整或非完整型)的线元要素(起点坐标、起点里程、起点切线方位角、线元长度、起点曲率半径、止点曲率半径、左偏或右偏)及里程边距或坐标,对该线元段范围内任意里程中边桩坐标进行正算。

本程序可以在CASIO fx-4800P计算器及CASIO fx-4850P计算器上运行。

2.计算原理:
利用Gauss-Legendre 5点通用公式计算线路中边桩坐标并计算放样数据。

利用待求点至线元起点切线作垂线,逐次迭代趋近原理反算里程及边距。

二、使用说明
1、规定
(1) 以道路中线的前进方向(即里程增大的方向)区分左右;当线元往左偏时,Q=-1;当线元往右偏时,Q=1。

(2) 当线元为直线时,其起点、止点的曲率半径为无穷大,以10的45次代替。

(3) 当线元为圆曲线时,无论其起点、止点与什么线元相接,其曲率半径均等于圆弧的半径。

(4) 当线元为完整缓和曲线时,起点与直线相接时,曲率半径为无穷大,以10的45次代替;与圆曲线相接时,曲率半径等于圆曲线的半径。

止点与直线相接时,曲率半径为无穷大,以10的45次代替;与圆曲线相接时,曲率半径等于圆曲线的半径。

(5) 当线元为非完整缓和曲线时,起点与直线相接时,曲率半径等于设计规定的值;与圆曲线相接时,曲率半径等于圆曲线的半径。

止点与直线相接时,曲率半径等于设计规定的值;与圆曲线相接时,曲率半径等于圆曲线的半径。

2、运行参数子程序(要做哪条线就直接运行哪条线的参数子程序)
输入
S (S=?)为任意里程桩号
Z (Z=?) 为斜距(当所求点位于中线时,Z=0;当位于中线左侧时,Z 取负值;当位于中线右侧时,Z取正值)
A (YJJ=?) 为右夹角(0≦W≦180)
输出
X=********* 计算的X坐标值
Y=********* 计算的Y坐标值
QXFWJ= *°*′*″计算的里程桩号K的切线方位角
输入
C=? 当C=1时,为计算斜交斜做的桥涵坐标;当C=2时,为计算斜交正做的桥涵坐标
QHJU=? 相对于刚计算完坐标的那个点的大桩号(+)或小桩号(-)的距离输出
QH-X=*******.*** 计算的斜交斜做或斜交正做的X坐标值
QH-Y=********* 计算的斜交斜做或斜交正做的Y坐标值输入
X0=? 测站的X值
Y0=? 测站的Y值
输出
FWJ= *°*′*″计算的X 、Y对于测站的方位角
JU-LI=******* 计算的X 、Y对于测站的距离。

相关文档
最新文档