5800平曲线放样程序(分段)
5800计算器全线坐标计算放样正反算程序

5800计算器全线坐标计算放样正反算程序此处无法提供完整的程序,但是可以提供一些关于全线坐标计算放样正反算的基本知识。
全线坐标计算放样是指将一条曲线按照一定比例进行分割,然后计算每个分段的坐标值,最终得到完整曲线上每个点的坐标。
这个过程可以分为正算和反算两部分。
正算是根据曲线的起点、终点以及每个分段的长度,通过数学公式计算出每个分段末点的坐标,最终得到完整曲线上每个点的坐标。
反算则是根据给定的曲线上某个点的坐标,以及曲线起点到该点的距离,计算出该点在曲线上的位置。
在实际工作中,使用计算器进行全线坐标计算放样非常常见。
通常使用的计算器有5800和2000等型号,这些计算器都有相应的程序可以使用。
以下是大致的步骤:
正算步骤:
1. 选择“坐标计算放样”功能;
2. 输入曲线的起点坐标和终点坐标;
3. 输入曲线分段长度以及分段数量;
4. 计算每个分段的末点坐标;
5. 输出所有点的坐标。
反算步骤:
1. 选择“坐标计算放样”功能;
2. 输入曲线的起点坐标和终点坐标;
3. 输入参考点的坐标;
4. 输入参考点到曲线起点的距离;
5. 计算参考点在曲线上的位置;
6. 输出参考点在曲线上的坐标。
全线坐标计算放样是一项非常重要的工程测量工作,也是计算器的常见应用之一。
需要结合具体需求和计算器机型进行操作。
CASIO 5800 QXZB 曲线放样程序

[正确] CASIO fx-5800P QXZB曲线坐标计算CASIO fx-5800P QXZB程序可计算不等缓和曲线、圆曲线上的任意中、边桩坐标:该程序适用于计算器 CASIO fx-5800P,可计算与线路中心成任意夹角的缓和曲线、圆曲线中、边桩坐标及待测点方位角和距离。
1、DK(JD)?输入交点桩号2、X(JD)?输入交点坐标X3、Y(JD)?输入交点坐标Y4、T1?输入第一切线长(如果只有一条切线两者都输入一致)5、T2?输入第二切线长(如果只有一条切线两者都输入一致)6、FWJ?输入直线方位角(ZH→JD)7、A?输入转角:左转为负,右转为正8、R?输入圆曲线半径9、LS1?输入第一缓和曲线长(如果只有一条缓和曲线两者都输入一致)10、LY?输入圆曲线长(L-LS1-LS2)11、LS2?输入第二缓和曲线长(如果只有一条缓和曲线两者都输入一致)12、X(ZJD)?输入置镜点坐标X13、Y(ZJD)?输入置镜点坐标Y14、JSDK?输入前视点里程15、PL?输入偏距16、PA?输入偏角程序名称:QXZB"DK(JD)"?R:"X(JD)"?S:"Y(JD)"?T:"T1"?U:"T2"?V:"FWJ"?F:"A"?W:"R"?H:"LS1"?I:"LY"?J:"LS2"?K:"X(ZJD)"?D:"Y(ZJD)"?EF+W→GIf W>0: Then -1→L :IfEnd(式中为数字0…括号内不输入)If W<0: Then 1→L :IfEnd (式中为数字0…括号内不输入)If W=0: Then 0→L :IfEnd (式中为数字0…括号内不输入)R-U→AS-Ucos( F) →BT-Usin( F) →CS+Vcos( G) →Z[1]T+Vsin( G) →Z[2]180÷π→O(式中为字母0…括号内不输入)Lb1 A"JSDK"?MM-A→PIf M<A: Then Goto A :IfEndIf M>(A+I+J+K): Then Goto A :IfEnd"PL"?NIf M>(A+I+J) :Then Goto D:IfEndIf M>(A+I) :Then Goto C:IfEndLb1 BB+(P-(P^(5)÷40÷H^2÷I^2))cos( F)+(P^(3)÷6÷H÷I-P^(7)÷336÷H^(3)÷I^(3))Lsin( F)→XC+(P-(P^(5)÷40÷H^2÷I^2))sin( F)-(P^(3)÷6÷H÷I-P^(7)÷336÷H^(3)÷I^(3))Lcos( F)→Y“X=”:X+Ncos(F-(P^2÷2÷H÷I)OL+Z) →X ◢(式中OL为字母O…括号内不输入)“Y=”:Y+Nsin(F-(P^2÷2÷H÷I)OL+Z) →Y ◢(式中OL为字母O…括号内不输入)Prog"ZBFS"(此处为调用直线程序…括号内不输入)Goto ALb1 CB+(Hsin(((P-I)÷H+I÷2÷H)O)+(I÷2-I^(3)÷240÷H^2))cos(F)-(H(1-cos(((P-I)÷H+I÷2÷H)O))+I^2÷24÷H)(-1)Lsin( F)→X(中间O为字母O)C+(Hsin(((P-I)÷H+I÷2÷H)O)+(I÷2-I^(3)÷240÷H^2))sin(F)+(H(1-cos(((P-I)÷H+I÷2÷H)O))+I^2÷24÷H)(-1)Lcos( F)→Y(式中为字母0…括号内不输入)“X=”:X+Ncos(F-((P-I)÷H+I÷2÷H)OL+Z) →X ◢(式中OL为字母O…括号内不输入)“Y=”:Y+Nsin(F-((P-I)÷H+I÷2÷H)OL+Z) →Y ◢(式中OL为字母O…括号内不输入)Prog "ZBFS"(此处为调用直线程序…括号内不输入)Goto ALb1 D(A+I+J+K-M) →QZ[1]-(Q-Q^(5)÷40÷H^2÷K^2)cos( G)+(Q^(3)÷6÷H÷K-Q^(7)÷336÷H^(3)÷K^(3))Lsin( G)→XZ[2]-(Q-Q^(5)÷40÷H^2÷K^2)sin( G)+(Q^(3)÷6÷H÷K-Q^(7)÷336÷H^(3)÷K^(3))Lcos( G)→Y “X=”:X+Ncos(F-(I÷2÷H+J÷H+K÷2÷H-Q^2÷2÷H÷K)OL+Z) →X ◢(OL为字母O…括号内不输入) “Y=”:Y+Nsin(F-(I÷2÷H+J÷H+K÷2÷H-Q^2÷2÷H÷K)OL+Z) →Y ◢(OL为字母O…括号内不输入) Prog"ZBFS"(调用直线程序…括号内不输入)Goto A--------------------------------------------------------------------------------说明:本程序需要扩展变量,方法:20→DimZ附件:本程序附曲线要素坐标计算核对表。
5800平曲线和竖曲线计算程序。以验证过

5800平曲线和竖曲线计算程序。
以验证过5800平曲线程序1.主程序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◢D:X+DCos(F)→X: "X=":X◢Y+DSin(F)→Y: "Y=":Y◢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))+B cos(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+QE MW(C+MW D))) →Y:G+QEW(C+WD)+90→F:X+Zcos(F)→X:Y+Zsin(F)→Y2. 反算子程序(SUB2)G-90→T:Abs((Y-V)cosT-(X-U)sinT) →W:0→Z:Lbl 0:Prog "SUB1":T+QEW(C+WD) →L:(J-Y)cos(L)-(I-X)sin(L)→Z:IF Abs (Z)<10-6:T hen Goto1:Else W+Z→W:Goto 0:IfEndLb1 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: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程序(修改于湘桂)R(主程序,通过里程求中桩、边桩坐标,在输入测站坐标后并求极坐标放样要素)1→M :“NEWZ CIRCLE”?M : If M=-1: Then “JD”?U :“1-TR-1-TL” ? N : “AT ” ? O : “JX” ? S : “JY ” ? P : “L0 ” ? H : “R” ? R : “ZJ” ? A : IfEnd↙“OPP NAME ”?W : If W=-1 : Then “OPPX”?B : “OPPY”?C : Else Prog“CONTREL”:IfEnd↙Lbl 0: “C”?K : If Int(K÷1000)>0 : Then Int(K÷1000)→V :Else “V”?V :K+1000V→K:IfEnd↙If M=1:Then Prog“CIRCLE” IfEnd↙H÷2-H^(3)÷(240R2)+(R+H2÷(24R))tan(A÷2)→T:πR(A-180H÷π÷R)÷180+2H→L↙U-T→G:K→Q↙If Q≤G+L÷2:Then Q-G→Q: Else G+L-Q→Q: IfEnd↙If Q<0:Then Prog “L”:Goto1: IfEnd↙If Q≤H:Then Q-Q^(5)÷(40R2H2)→X:Q^(3)÷(6RH)-Q^(7)÷(336R^(3)H^(3)) →Y:90Q2÷(πRH) →F: Else 180(Q-H÷2)÷(πR) →F:Rsin(F)+H÷2-H^(3)÷(240R2) →X:R(1-Cos(F))+H2÷(24R) →Y: IfEnd↙Pol(T-X,Y) ↙If K≤G+L÷2:Then O-180-NJ→E:NF+O→F: “F=”:F▲DMS◢ ElseNA+NJ+ O→E: O+NA-NF→F: “F=”:F▲DMS◢IfEnd↙“X=”:S+Icos(E)→X◢“Y=”:P+Isin(E)→Y◢If F<0:Then 360+F→F: IfEnd↙If F≥360:Then F-360→F: IfEnd↙Lbl1: “÷1”?Z: If Z=1:Then Prog “I”: IfEnd↙If Z=2:Then Prog “LD”: IfEnd↙If Z=-1:Then Prog “Q”: “X=”:X◢“Y=”: Y◢IfEnd↙Prog “P”↙Goto 0↙P(子程序,受主程序R调用,求极坐标放样要素:方位角及平距)Pol(X-B,Y-C): “D=”:I◢If J<0:Then 360+J→J: Else 0+J→J: IfEnd↙“AQ=”:J▲DMS◢L(子程序,受主程序R调用,求直线上点位坐标及切线方位角)T-Q→Q:If K<G:Then O+180→E: O→F: “X=”:S+Qcos(E)→X◢“Y=”:P+Qsin(E) →Y◢ Else O+NA→F: “X=” S+Qcos(F) →X◢“Y=”:P+Qsin(F) →Y◢IfEnd↙I(子程序,受主程序R调用,求边桩坐标)“RA”?E:“D”?D:E+F→E: If E≥360:Then E-360→E: IfEnd↙X+Dcos(E)→X: Y+Dsin(E)→Y: “X=”: X◢“Y=”: Y◢E→F↙Q(子程序,受主程序R调用,求副线边桩坐标)“1A”?E:“1D”?D:E+F→E↙X+Dcos(E)→X: Y+Dsin(E)→Y:E→F↙“2R”?E: “2D”?D: E+F→E↙X+Dcos(E)→X: Y+Dsin(E)→Y↙E→F↙LD(子程序,受主程序R调用,通过坐标反求里程和偏距)40→DimZ↙O→Z[1]:U→Z[2]:S→Z[3]: P→Z[4] ↙H÷2-H^(3)÷(240R2)→M: H2÷(24R)-H^(4)÷(2688R^(3))→V:90H2÷(πR)→D:(R+V)Tan(A÷2)+M→T: πRA÷180+H→K:O+NA→J:Prog“JD”:J→Z[21]:U-T+K→Z[22]: S-Tcos(O)→Z[5]:P-Tsin(O)→Z[6]:Z[5]+Mcos(O)+(R+V)cos(O+90N)→Z[7]:Z[6]+Msin(O)+ (R+V)sin(O+90N)→Z[8] ↙H-H^(5)÷(40R2H2)→Z:H^(3)÷(6RH)-H^(7)÷(336R^(3)H^(3))→C: Pol(C,Z):90-J→J:Prog“JD”: O+JN→J:Prog“JD”↙Z[5]+Icos(J)→Z[9]:Z[6]+Isin(J)→Z[10]:S+Tcos(Z[21])→Z[11]: P+Tsin(Z[21])→Z[12] ↙Pol(Z[10]-Z[8],Z[9]-Z[7]):90-J→J:Prog“JD”:J→Z[13] ↙J+(A-2D)N→J: Prog“JD”: J→Z[14] ↙“CEDIAN”◢Lbl 0: ↙“B”?B:If B=0:Then Prog “R”: IfEnd↙“XN=”?X: “YN=”?Y:Pol(Y-Z[8],X-Z[7]) ↙90-J→J: Prog“JD”:J→W:J-Z[13]→J↙Prog“JD”:J→Z[15] ↙W-Z[14]→J↙Prog“JD”:J→Z[16] ↙If N=1:Then Goto 1: IfEnd↙If N=-1:Then Goto 2: IfEnd↙Lbl 1: ↙If Z[15]>180:Then Goto 3: IfEnd↙If Z[16]≤180:Then Goto 5:Else Goto 4 : IfEnd↙Lbl 2: ↙If Z[15]<180:Then Goto 3: IfEnd↙If Z[16] >180:Then Goto 5:Else Goto 4 : IfEnd↙Lbl 3: ↙“H1”◢Pol(Y-Z[6],X-Z[5]):90-J→J: Prog“JD”↙J-Z[1]+90→J: Prog“JD”↙Isin(J)→G↙If G>0:Then 0→L:Goto 6: IfEnd↙If G≤0:Then “DK=”:Z[2]-T+G→Z[19]◢If N=1:Then “LD=”:-NIcos(J)→Z[20]◢Else “LD=”:NIcos(J) →Z[20]◢IfEnd↙“SD=1,LD≠1”?D:If D=1:Then Prog “SDCQJC”: IfEnd↙Goto 0↙Lbl 4: ↙“Y”◢If N=-1:Then 360-Z[15]→Z[15]: IfEnd: “DK=”:Z[2]-T+H+πR(Z[15])÷180→Z[19]◢If N=1:Then “LD=”:-(I-R)→Z[20]◢Else “LD=” :I-R→Z[20]◢IfEnd↙“SD=1,LD≠1”?D:If D=1:Then Prog “SDCQJC”: IfEnd↙Goto 0↙Lbl 5: ↙“H2”◢Pol(Y-Z[12],X-Z[11]):90-J→J: Prog“JD”:J→W:Z[21]-90→J: Prog“JD”:W-J→J: Prog“JD”:Isin(J)→G:If G<0:Then 0→L: -G→G↙Goto 7: IfEnd↙If G≥0:Then “DK=”:Z[22]+G→Z[19]◢IfEnd: If N=1:Then “LD=”:-NIcos(J)→Z[20]◢Else “LD=”:NIcos(J)→Z[20]◢IfEnd↙“SD=1,LD≠1”?D:If D=1:Then Prog “SDCQJC”: IfEnd↙Goto 0↙Lbl 6: ↙L+G→L:L-L^(5)÷(40R2H2)→Z:L^(3)÷(6RH)-L^(7)÷(336R^(3)H^(3)) →C:Pol(C,Z):90-J→J: Prog“JD”:J→W:Z[1]+WN→J: Prog“JD”:Z[5]+Icos(J)→Z[17]: Z[6]+Isin(J) →Z[18] ↙J+2WN→J: Prog“JD”:J-90→J: Prog“JD”:J→W↙Pol(Y-Z[18],X-Z[17]):90-J→J: Prog“JD”↙J-W→J: Prog“JD”:Isin(J)→G:If Abs(G)>0.001:Then Goto 6: IfEnd↙“DK=”:Z[2]-T+L+G→Z[19]◢If N=1:Then “LD=”:-Ncos(J) →Z[20]◢Else“LD=”:NIcos(J) →Z[20]◢IfEnd↙“SD=1,LD≠1”?D:If D=1:Then Prog “SDCQJC”: IfEnd↙Goto 0↙Lbl 7: ↙L+G→L:L-L^(5)÷(40R2H2)→Z:L^(3)÷(6RH)-L^(7)÷(336R^(3)H^(3)) →C:Pol(C,Z):90-J→J: Prog“JD”:J→W:Z[21]-180-WN→J: Prog“JD”↙Z[11]+Icos(J)→Z[17]:Z[12]+Isin(J)→Z[18]:J-2WN→J: Prog“JD”↙J-90→J: Prog“JD”:J→W↙Pol(Y-Z[18],X-Z[17]):90-J→J: Prog“JD”↙J-W→J:Prog “JD”↙Isin(J)→G: If Abs(G)>0.001:Then Goto 7:IfEnd↙“DK=”:Z[22]-L-G→Z[19]◢If N=1:Then “LD=”:NIcos(J)→Z[20]◢Else“LD=”:-NIcos(J) →Z[20]◢IfEnd↙“SD=1,LD≠1”?D:If D=1:Then Prog “SDCQJC”: IfEnd↙Goto 0↙JD(子程序,受LD程序调用,计算角度归化值)If J<0:Then J+360→J: IfEnd↙If J≥360:Then J-360→J: IfEnd↙CIRCLE(子程序,线路平面曲线要素,受主程序R调用)If K≤缓直点里程:Then 交点里程→U:交点X坐标→S:交点Y坐标→P:转角值→A:-1(曲线段左偏)或1(曲线段右偏)→N:圆曲线半径→R:缓和曲线长→H:直线段起始方位角→O:Goto 1: IfEnd↙If K≤……(同上输完全部曲线要素为止)Lbl 1↙CONTREL(控制点坐标数据库子程序,受主程序R和ZBFS调用)If W=控制点点号:Then 控制点X坐标→B:控制点Y坐标→C: IfEnd↙If W=……(同上输完全部控制点数据为止)ZBFS(主程序,求两已知点方位角及平距,或已知两点求后方交会点坐标)Lbl 0:1→W: “NEW OPP”?W:If W=1:Then “OPPX”?X: “OPPY”?Y:Else Prog “CONTREL”:B→X:C→Y: IfEnd↙Lbl 1:-1→W: “NEW CPP”?W: If W=-1:Then “CPPX”?S: “CPPY”?T: Else Prog “CONTREL”:B→S:C→T: IfEnd↙Pol(S-X,T-Y): “D=”:I◢If J<0:Then J+360→J: Else 0+J→J: IfEnd↙“AQ=”:J▲DMS◢Lbl 2:0→W: “ZBFS=0,SQS≠0”?W:If W=0:Then Goto 1: Else Prog “SQS”: IfEnd↙Goto 0↙SQS(子程序,受主程序ZBFS调用,通过角度边长求交会点坐标值)Lbl 0: “S1=”?A: “J1=?M: “J2=”?N: “S2=?D:N-M→Q: If Q <0:Then Q+360→Q: IfEnd↙If Q<45°0′0″:Then “ERROR PLEASE REPEAT”◢Goto 0: IfEnd↙√(A2+D2-2ADos(Q))→E: “S3=”:E◢If Abs(A-D)≥60:Then “ERROR PLEASE REPEAT”◢Goto 0: IfEnd↙If Abs(I-E)<0.01:Then cos-1((A2+E2-D2)÷(2AE))→R: cos-1((D2+E2-A2) ÷(2DE))→G: Else “ERROR PLEASE REPEAT”◢Goto 0: IfEnd↙If J<0:Then J+360→J:IfEnd↙(X+Acos(J+R)+S+Dcos(J+180-G))÷2→F: “X=”:F◢(Y+Asin(J+R)+T+Dsin(J+180-G))÷2→P: “Y=”:P◢SQX(主程序,竖曲线求线路各里程点中桩设计高程)1→S:“NEWZ SQXK”?S: If S=-1:Then ?U:?R:?T:?N:?I:?F: “HB”?B: IfEnd↙Lbl 0: “C”?K : If Int(K÷1000)>0 : Then Int(K÷1000)→V :Else “V”?V :K+1000V→K:IfEnd↙If S≠-1:Then Prog “SQXK”: IfEnd↙U-T→G:K→Q: If Q≤G:Then Q-U→Q: Else Q-G→W: IfEnd↙If Q≤G:Then “H=”:B+QN÷1000→H◢Goto 1↙Else If Q≤U+T:Then “H=”:B+(Q-U)N÷1000+FW2÷(2R)→H◢Goto 1↙Else If Q≥U+T:Then “H=”:B+(Q-U)I÷1000→H◢Goto 1:IfEnd↙Lbl 1: “P”?P: “O=”:H-P→O◢Goto 0↙SQXK(子程序,受主程序SQX调用,竖曲线要素)If K≤竖曲线圆直点里程:Then 变坡点里程→U:变坡点设计高程→B:竖曲线圆曲线半径→R:竖曲线切线长→T:竖曲线直线段坡度常数(上、下坡有正负之分)→N:变坡点常数(凸为-1,凹为1)→F: Goto 0: IfEnd↙If K≤……(同上输完全部竖曲线要素为止)Lbl 0↙SDCQJC(子程序,受LD程序调用,采集隧道支护位置坐标高程数据一次性计算出该支护位置的超欠挖量)40→DimZ↙Lbl 0:Z[19]→Z[23]:Prog “SQXZ”↙Z[24]-Z[27]→Z[30]: Z[23]→Z[31] ↙If Z[31]≤Z[30]:Then Z[31]-Z[24]→Z[31]:Else Z[31]-Z[30] →Z[32]: IfEnd↙If Z[31]≤Z[30]:Then Z[25]+(Z[31])×(Z[28])÷1000→Z[33]: Goto 1↙Else If Z[31]≤Z[24]+Z[27]:Then Z[25]+(Z[31]-Z[24])×(Z[28])÷1000+(Z[29])×(Z[32])2÷(2×Z[26])→Z[33]: Goto 1↙Else If Z[31]≥Z[24]+Z[27]:Then Z[25]+(Z[31]-Z[24])×I÷1000→Z[33]: Goto 1: IfEnd↙Lbl 1: “H0=”:Z[33]+内轨面至圆心高差常数→Z[33]◢“HN”?K: “Δh=”:K-Z[33]→Z[34]◢If Z[20]≥隧道中心线与设计中心线的偏移量ω:Then Z[20]-ω→Z[35]:Else ω- Z[20]→Z[35] : IfEnd↙“RN=”:√((Z[34])2+(Z[35])2)→Z[36]◢“R0”?Z: “RCQ=”: Z[36]-Z→Z[37]◢SQXZ(子程序,受主程序SDCQJC调用,竖曲线要素)40→DimZ↙If Z[23]≤竖曲线圆直点里程:Then 变坡点里程→Z[24]:变坡点设计高程→Z[25]:竖曲线圆曲线半径→Z[26]:竖曲线切线长→Z[27]:竖曲线直线段坡度常数(上、下坡有正负之分)→Z[28]:变坡点常数(凸为-1,凹为1)→Z[29]:IfEnd↙If Z[23]≤……(同上输完全部竖曲线要素为止)Lbl 0↙。
非常实用的5800放线程序(4800转换,增加计算竖曲线标高,增加使用说明)

卡西欧fx-5800p计算道路中、边线坐标放样程序(此程序计算速度快,可以查找桩号和偏中距离)(单园曲线超过半圈后有误差,半径5000米时,在半圈处的计算误差单方向8cm)SUB-10.1739274226→A:0.3260725774→B:0.0694318442→K:0.3300094782→L:U+W(Acos(G+180QKW(1÷P+KWD)÷π)+Bcos (G+180QLW(1÷P+LWD)÷π)+Bcos (G+180QW(1-L)(1÷P+WD(1-L))÷π)+Acos (G+180QW(1-K)(1÷P+WD(1-K))÷π))→X:V+W(ASIN(G+180QKW(1÷P+KWD)÷π)+Bsin(G+180QLW(1÷P+LWD)÷π)+Bsin (G+180QW(1-L)(1÷P+WD(1-L))÷π)+Asin (G+180QW(1-K)(1÷P+WD(1-K))÷π))→Y:G+180QW(1÷P+WD)÷π→FS—O(放线主程序)Deg:Fix3LbI7:“XC=”?C:“YC=”?E“H=”?TLbI1:“XL=1,2”?NIF N=0:T hen“X0=”?U:“Y0=”?V:“F0=”?G: “R1=” ?P: “R2=” ?R: “DK1=” ?О: “DK2=” ?H:“L(-1),R(+1),Z(0)” ?Q:Prog“SJ”: GOTO2:IfendLbI 0: “ZHUANG HAO=” ?S: IF T≠0:T hen Z=0:Goto 8:Ifend {Z} :Z”KUAN DU”LbI8IF N=0:T hen GOTO2:IfendIF N=1:T hen Prog“1”:GOTO2:IfendIF N=2:T hen Prog“2”:GOTO2:IfendIF N=3:T hen Prog“3”:GOTO2:Ifend ……………………………………………GOTO1LbI2: IF S<О-0.001: T hen GOTO1: IfendIF S>H+0.001:T hen GOTO1: Ifend(P-R)÷(2PR(H-О)) →D: Abs(S-О) → W:Prog“SUB-1”IF Z=1000: T hen GOTO 5: IfendIF Z≠0: T hen GOTO 3: IfendIF T≠0:T hen GOTO 9 △“ZX=”:X →X▲“ZY=” Y→Y▲IF F<0: T hen F+360 →F: Ifend“QX-FWJ=”:F→F▲LbI4: 0→I: 0→J:PoI(X-C,Y-E+0.00001)IF J<0: T hen J+360→J: Ifend“FWJ=”:J→J▲“HD=”:I→I▲GOTO 0IF T=0: T hen Goto 0: IfendLb1 9: Prog“BG”: ”SXG=” ?E”H△”:G-T+E→J▲Goto 0Lb13: “PJ=”? M: F+M→F: “BX=”: X+ZCosF→X▲“BY=”:Y+ZSinF →Y▲Goto4Lb1 5:Deg0→J: 0→I:PoI(X-C,Y-E+0.00001):IF J<0: T hen J=J+360: IfendIF Abs(Icos(J-F))<0.010: T hen Goto6: IfendS-Icos(J-F) →S:Goto8Lb16: 0→Z:”JISUANZH=” :S→S▲IF J-F=0 or J-F=180: T hen”ZX--PT”:I→I▲Goto7: IfendIF J-F>0 and J-F<180 or J-F<-180: T hen”L=m” :I→I▲Goto7: Else ”R=m” :I→I▲Goto7: Ifend竖曲线计算子程序 BGV=4:Y=Z[1]Lb1 0IF S<Z[1]:T hen Goto2:IfendIF V>4:ThenA=(Z[V-2]-Z[V-5])/(Z[V-3]-Z[V-6]): B=(Z[V+1]-Z[V-2])/(Z[V]-Z[V-3]):L=ABS(Z[V-1]*tan((tan-1 B- tan-1 A)/2))Y=Z[V-3]+L: IfendA=(Z[V+1]-Z[V-2])/(Z[V]-Z[V-3]): B=(Z[V+4]-Z[V+1])/(Z[V+3]-Z[V]):L=ABS(Z[V+2]* tan ((tan -1 B-tan -1 A)/2))X=Z[V]-L:U=z[v]+LIF A-B>0:T hen Q=-1:IfendIF A-B<0:T hen Q=1:IfendW=(S- X)/ Z[V+2]*180/piIF S≥Y and S≤X:T hen ZG=Z[V-2]+A(S-Z[V-3]): Goto 1:IfendIF S≥X and S≤U:T hen ZG= Z[V+1]-L*A +2* Z[V+2]*SIN(W/2)*SIN(SIN-1 A+Q*W/2): Goto 1:IfendIF S<Y:T hen V=V-3:Goto 0: IfendIF S>U and Z[V]≠Z[V-3]:T hen V=V+3:Goto 0: IfendIF S<Z[1]:T hen ZG=0: IfendLbI 2:”MEI YOU SHU JU” ? GLb1 1(标高数据输入程序)SJ1→I:LbI 0:”BIAN PO DIAN=”I▲”ZHUANG HAO=” ? E:Z[3I-2]=E:”BIAO GAO=” ? E:Z[3I-1]=E:”BAN JING=”? E:Z[3I]=E:IF I<3:T hen I+1→I:Goto 0:Ifend说明: I为变坡点号,本程序为3个(最少3个),如果增加变坡点,相应增加I<后的数字,并增加“s-o”程序的Defm后的数字为(I+1)*31 (1为线路名称,预装要素子程序)(线路名称预装要素子程序) 1o=线元起点里程:H=线元终点里程: U=线元起点X坐标:V=线元起点y坐标:G=线元起点方位角:P=线元起点半径(直缓点、缓直点半径为1045):R=线元终点半径(直缓点、缓直点半径为1045): Q=(左转为-1,右转为+1,直线为0)IF S≤o and S≥H T hen GOTO 3:Ifendo=线元起点里程:H=线元终点里程: U=线元起点X坐标:V=线元起点y坐标:G=线元起点方位角:P=线元起点半径(直缓点、缓直点半径为1045):R=线元终点半径(直缓点、缓直点半径为1045): Q=(左转为-1,右转为+1,直线为0)IF S≤o and S≥H T hen GOTO 3:Ifend 。
卡西欧计算器5800测量放样程序

卡西欧5800程序(修改于湘桂)R(主程序,通过里程求中桩、边桩坐标,在输入测站坐标后并求极坐标放样要素)1→M :“NEWZ CIRCLE”?M : If M=-1: Then “JD”?U :“1-TR-1-TL” ? N : “AT ” ? O : “JX” ? S : “JY ” ? P : “L0 ” ? H : “R” ? R : “ZJ” ? A : IfEnd↙“OPP NAME ”?W : If W=-1 : Then “OPPX”?B : “OPPY”?C : Else Prog“CONTREL”:IfEnd↙Lbl 0: “C”?K : If Int(K÷1000)>0 : Then Int(K÷1000)→V :Else “V”?V :K+1000V→K:IfEnd↙If M=1:Then Prog“CIRCLE” IfEnd↙H÷2-H^(3)÷(240R2)+(R+H2÷(24R))tan(A÷2)→T:πR(A-180H÷π÷R)÷180+2H→L↙U-T→G:K→Q↙If Q≤G+L÷2:Then Q-G→Q: Else G+L-Q→Q: IfEnd↙If Q<0:Then Prog “L”:Goto1: IfEnd↙If Q≤H:Then Q-Q^(5)÷(40R2H2)→X:Q^(3)÷(6RH)-Q^(7)÷(336R^(3)H^(3)) →Y:90Q2÷(πRH) →F: Else 180(Q-H÷2)÷(πR) →F:Rsin(F)+H÷2-H^(3)÷(240R2) →X:R(1-Cos(F))+H2÷(24R) →Y: IfEnd↙Pol(T-X,Y) ↙If K≤G+L÷2:Then O-180-NJ→E:NF+O→F: “F=”:F▲DMS◢ ElseNA+NJ+ O→E: O+NA-NF→F: “F=”:F▲DMS◢IfEnd↙“X=”:S+Icos(E)→X◢“Y=”:P+Isin(E)→Y◢If F<0:Then 360+F→F: IfEnd↙If F≥360:Then F-360→F: IfEnd↙Lbl1: “÷1”?Z: If Z=1:Then Prog “I”: IfEnd↙If Z=2:Then Prog “LD”: IfEnd↙If Z=-1:Then Prog “Q”: “X=”:X◢“Y=”: Y◢IfEnd↙Prog “P”↙Goto 0↙P(子程序,受主程序R调用,求极坐标放样要素:方位角及平距)Pol(X-B,Y-C): “D=”:I◢If J<0:Then 360+J→J: Else 0+J→J: IfEnd↙“AQ=”:J▲DMS◢L(子程序,受主程序R调用,求直线上点位坐标及切线方位角)T-Q→Q:If K<G:Then O+180→E: O→F: “X=”:S+Qcos(E)→X◢“Y=”:P+Qsin(E) →Y◢ Else O+NA→F: “X=” S+Qcos(F) →X◢“Y=”:P+Qsin(F) →Y◢IfEnd↙I(子程序,受主程序R调用,求边桩坐标)“RA”?E:“D”?D:E+F→E: If E≥360:Then E-360→E: IfEnd↙X+Dcos(E)→X: Y+Dsin(E)→Y: “X=”: X◢“Y=”: Y◢E→F↙Q(子程序,受主程序R调用,求副线边桩坐标)“1A”?E:“1D”?D:E+F→E↙X+Dcos(E)→X: Y+Dsin(E)→Y:E→F↙“2R”?E: “2D”?D: E+F→E↙X+Dcos(E)→X: Y+Dsin(E)→Y↙E→F↙LD(子程序,受主程序R调用,通过坐标反求里程和偏距)40→DimZ↙O→Z[1]:U→Z[2]:S→Z[3]: P→Z[4] ↙H÷2-H^(3)÷(240R2)→M: H2÷(24R)-H^(4)÷(2688R^(3))→V:90H2÷(πR)→D:(R+V)Tan(A÷2)+M→T: πRA÷180+H→K:O+NA→J:Prog“JD”:J→Z[21]:U-T+K→Z[22]: S-Tcos(O)→Z[5]:P-Tsin(O)→Z[6]:Z[5]+Mcos(O)+(R+V)cos(O+90N)→Z[7]:Z[6]+Msin(O)+ (R+V)sin(O+90N)→Z[8] ↙H-H^(5)÷(40R2H2)→Z:H^(3)÷(6RH)-H^(7)÷(336R^(3)H^(3))→C: Pol(C,Z):90-J→J:Prog“JD”: O+JN→J:Prog“JD”↙Z[5]+Icos(J)→Z[9]:Z[6]+Isin(J)→Z[10]:S+Tcos(Z[21])→Z[11]: P+Tsin(Z[21])→Z[12] ↙Pol(Z[10]-Z[8],Z[9]-Z[7]):90-J→J:Prog“JD”:J→Z[13] ↙J+(A-2D)N→J: Prog“JD”: J→Z[14] ↙“CEDIAN”◢Lbl 0: ↙“B”?B:If B=0:Then Prog “R”: IfEnd↙“XN=”?X: “YN=”?Y:Pol(Y-Z[8],X-Z[7]) ↙90-J→J: Prog“JD”:J→W:J-Z[13]→J↙Prog“JD”:J→Z[15] ↙W-Z[14]→J↙Prog“JD”:J→Z[16] ↙If N=1:Then Goto 1: IfEnd↙If N=-1:Then Goto 2: IfEnd↙Lbl 1: ↙If Z[15]>180:Then Goto 3: IfEnd↙If Z[16]≤180:Then Goto 5:Else Goto 4 : IfEnd↙Lbl 2: ↙If Z[15]<180:Then Goto 3: IfEnd↙If Z[16] >180:Then Goto 5:Else Goto 4 : IfEnd↙Lbl 3: ↙“H1”◢Pol(Y-Z[6],X-Z[5]):90-J→J: Prog“JD”↙J-Z[1]+90→J: Prog“JD”↙Isin(J)→G↙If G>0:Then 0→L:Goto 6: IfEnd↙If G≤0:Then “DK=”:Z[2]-T+G→Z[19]◢If N=1:Then “LD=”:-NIcos(J)→Z[20]◢Else “LD=”:NIcos(J) →Z[20]◢IfEnd↙“SD=1,LD≠1”?D:If D=1:Then Prog “SDCQJC”: IfEnd↙Goto 0↙Lbl 4: ↙“Y”◢If N=-1:Then 360-Z[15]→Z[15]: IfEnd: “DK=”:Z[2]-T+H+πR(Z[15])÷180→Z[19]◢If N=1:Then “LD=”:-(I-R)→Z[20]◢Else “LD=” :I-R→Z[20]◢IfEnd↙“SD=1,LD≠1”?D:If D=1:Then Prog “SDCQJC”: IfEnd↙Goto 0↙Lbl 5: ↙“H2”◢Pol(Y-Z[12],X-Z[11]):90-J→J: Prog“JD”:J→W:Z[21]-90→J: Prog“JD”:W-J→J: Prog“JD”:Isin(J)→G:If G<0:Then 0→L: -G→G↙Goto 7: IfEnd↙If G≥0:Then “DK=”:Z[22]+G→Z[19]◢IfEnd: If N=1:Then “LD=”:-NIcos(J)→Z[20]◢Else “LD=”:NIcos(J)→Z[20]◢IfEnd↙“SD=1,LD≠1”?D:If D=1:Then Prog “SDCQJC”: IfEnd↙Goto 0↙Lbl 6: ↙L+G→L:L-L^(5)÷(40R2H2)→Z:L^(3)÷(6RH)-L^(7)÷(336R^(3)H^(3)) →C:Pol(C,Z):90-J→J: Prog“JD”:J→W:Z[1]+WN→J: Prog“JD”:Z[5]+Icos(J)→Z[17]: Z[6]+Isin(J) →Z[18] ↙J+2WN→J: Prog“JD”:J-90→J: Prog“JD”:J→W↙Pol(Y-Z[18],X-Z[17]):90-J→J: Prog“JD”↙J-W→J: Prog“JD”:Isin(J)→G:If Abs(G)>0.001:Then Goto 6: IfEnd↙“DK=”:Z[2]-T+L+G→Z[19]◢If N=1:Then “LD=”:-Ncos(J) →Z[20]◢Else“LD=”:NIcos(J) →Z[20]◢IfEnd↙“SD=1,LD≠1”?D:If D=1:Then Prog “SDCQJC”: IfEnd↙Goto 0↙Lbl 7: ↙L+G→L:L-L^(5)÷(40R2H2)→Z:L^(3)÷(6RH)-L^(7)÷(336R^(3)H^(3)) →C:Pol(C,Z):90-J→J: Prog“JD”:J→W:Z[21]-180-WN→J: Prog“JD”↙Z[11]+Icos(J)→Z[17]:Z[12]+Isin(J)→Z[18]:J-2WN→J: Prog“JD”↙J-90→J: Prog“JD”:J→W↙Pol(Y-Z[18],X-Z[17]):90-J→J: Prog“JD”↙J-W→J:Prog “JD”↙Isin(J)→G: If Abs(G)>0.001:Then Goto 7:IfEnd↙“DK=”:Z[22]-L-G→Z[19]◢If N=1:Then “LD=”:NIcos(J)→Z[20]◢Else“LD=”:-NIcos(J) →Z[20]◢IfEnd↙“SD=1,LD≠1”?D:If D=1:Then Prog “SDCQJC”: IfEnd↙Goto 0↙JD(子程序,受LD程序调用,计算角度归化值)If J<0:Then J+360→J: IfEnd↙If J≥360:Then J-360→J: IfEnd↙CIRCLE(子程序,线路平面曲线要素,受主程序R调用)If K≤缓直点里程:Then 交点里程→U:交点X坐标→S:交点Y坐标→P:转角值→A:-1(曲线段左偏)或1(曲线段右偏)→N:圆曲线半径→R:缓和曲线长→H:直线段起始方位角→O:Goto 1: IfEnd↙If K≤……(同上输完全部曲线要素为止)Lbl 1↙CONTREL(控制点坐标数据库子程序,受主程序R和ZBFS调用)If W=控制点点号:Then 控制点X坐标→B:控制点Y坐标→C: IfEnd ↙If W=……(同上输完全部控制点数据为止)ZBFS(主程序,求两已知点方位角及平距,或已知两点求后方交会点坐标)Lbl 0:1→W: “NEW OPP”?W:If W=1:Then “OPPX”?X: “OPPY”?Y:Else Prog “CONTREL”:B→X:C→Y: IfEnd↙Lbl 1:-1→W: “NEW CPP”?W: If W=-1:Then “CPPX”?S: “CPPY”?T: Else Prog “CONTREL”:B→S:C→T: IfEnd↙Pol(S-X,T-Y): “D=”:I◢If J<0:Then J+360→J: Else 0+J→J: IfEnd↙“AQ=”:J▲DMS◢Lbl 2:0→W: “ZBFS=0,SQS≠0”?W:If W=0:Then Goto 1: ElseProg “SQS”: IfEnd↙Goto 0↙SQS(子程序,受主程序ZBFS调用,通过角度边长求交会点坐标值)Lbl 0: “S1=”?A: “J1=?M: “J2=”?N: “S2=?D:N-M→Q: If Q <0:Then Q+360→Q: IfEnd↙If Q<45°0′0″:Then “ERROR PLEASE REPEAT”◢Goto 0: IfEnd↙√(A2+D2-2ADos(Q))→E: “S3=”:E◢If Abs(A-D)≥60:Then “ERROR PLEASE REPEAT”◢Goto 0: IfEnd↙If Abs(I-E)<0.01:Then cos-1((A2+E2-D2)÷(2AE))→R: cos-1((D2+E2-A2) ÷(2DE))→G: Else “ERROR PLEASE REPEAT”◢Goto 0: IfEnd↙If J<0:Then J+360→J:IfEnd↙(X+Acos(J+R)+S+Dcos(J+180-G))÷2→F: “X=”:F◢(Y+Asin(J+R)+T+Dsin(J+180-G))÷2→P: “Y=”:P◢SQX(主程序,竖曲线求线路各里程点中桩设计高程)1→S:“NEWZ SQXK”?S: If S=-1:Then ?U:?R:?T:?N:?I:?F: “HB”?B: IfEnd↙Lbl 0: “C”?K : If Int(K÷1000)>0 : Then Int(K÷1000)→V :Else “V”?V :K+1000V→K:IfEnd↙If S≠-1:Then Prog “SQXK”: IfEnd↙U-T→G:K→Q: If Q≤G:Then Q-U→Q: Else Q-G→W: IfEnd↙If Q≤G:Then “H=”:B+QN÷1000→H◢Goto 1↙Else If Q≤U+T:Then “H=”:B+(Q-U)N÷1000+FW2÷(2R)→H◢Goto 1↙Else If Q≥U+T:Then “H=”:B+(Q-U)I÷1000→H◢Goto 1:IfEnd↙Lbl 1: “P”?P: “O=”:H-P→O◢Goto 0↙SQXK(子程序,受主程序SQX调用,竖曲线要素)If K≤竖曲线圆直点里程:Then 变坡点里程→U:变坡点设计高程→B:竖曲线圆曲线半径→R:竖曲线切线长→T:竖曲线直线段坡度常数(上、下坡有正负之分)→N:变坡点常数(凸为-1,凹为1)→F: Goto 0: IfEnd↙If K≤……(同上输完全部竖曲线要素为止)Lbl 0↙SDCQJC(子程序,受LD程序调用,采集隧道支护位置坐标高程数据一次性计算出该支护位置的超欠挖量)40→DimZ↙Lbl 0:Z[19]→Z[23]:Prog “SQXZ”↙Z[24]-Z[27]→Z[30]: Z[23]→Z[31] ↙If Z[31]≤Z[30]:Then Z[31]-Z[24]→Z[31]:Else Z[31]-Z[30] →Z[32]: IfEnd↙If Z[31]≤Z[30]:Then Z[25]+(Z[31])×(Z[28])÷1000→Z[33]: Goto 1↙Else If Z[31]≤Z[24]+Z[27]:Then Z[25]+(Z[31]-Z[24])×(Z[28])÷1000+(Z[29])×(Z[32])2÷(2×Z[26])→Z[33]: Goto 1↙Else If Z[31]≥Z[24]+Z[27]:Then Z[25]+(Z[31]-Z[24])×I÷1000→Z[33]: Goto 1: IfEnd↙Lbl 1: “H0=”:Z[33]+内轨面至圆心高差常数→Z[33]◢“HN”?K: “Δh=”:K-Z[33]→Z[34]◢If Z[20]≥隧道中心线与设计中心线的偏移量ω:Then Z[20]-ω→Z[35]:Else ω- Z[20]→Z[35] : IfEnd↙“RN=”:√((Z[34])2+(Z[35])2)→Z[36]◢“R0”?Z: “RCQ=”: Z[36]-Z→Z[37]◢SQXZ(子程序,受主程序SDCQJC调用,竖曲线要素)40→DimZ↙If Z[23]≤竖曲线圆直点里程:Then 变坡点里程→Z[24]:变坡点设计高程→Z[25]:竖曲线圆曲线半径→Z[26]:竖曲线切线长→Z[27]:竖曲线直线段坡度常数(上、下坡有正负之分)→Z[28]:变坡点常数(凸为-1,凹为1)→Z[29]:IfEnd↙文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持. If Z[23]≤……(同上输完全部竖曲线要素为止)Lbl 0↙。
卡西欧5800公路施工放样程序

公路曲线大地坐标施工放样程序(CASIO fx-58000)一、主程序28:""?:""?:""?:""?:.5^(3)/(240):""?:"":(/(24R )-G ^(4)/(2688R ^(3)))ta n (0.5)T "":/180+G L""?:"":[3]"1,2"?:""?:""?:""?:10:"Z B J SD im Z X C Z Y C C L S G R R G G R Q A A T Q R G L R A Z H O H Z O Z Y Z H J D N P J DE MF F L b K π→====-→==++→=→==+→=====▲▲▲"?:","?:""?:0:0:0:P r "":P r "":0:K V N W V B B K O S IfS T h e n S XY U o g C o g D G o to IfE n d ==-+=-→↵≤→→→↵[][]IfS L :T h e n T +C O S (A )(T +S -L )X :S i n (A )(T +S -L )Y :A U :P ro g "C ":P ro g "D ":G o to 0:IfE n d IfS L -G :T h e n L -S S :P ro g "B ":X Z1:YZ2:T -Z [2]S in (A )+C o s (A )(T -Z [1])X :Z [2]C o s (A )+S in (A )(T -Z [1])Y :L -S S :A -U U :P ro g "C ":P ro g "D ":G o ≥→→→↵≥→→→→→→→2222to 0:IfE n d IfS G :T h e n 90(2S -G )/(R )U :Q +R S in (U )X :G/(24R )-G ^(4)/(2688R ^(3))+R (1-C o s (U ))Y :P ro g "C ":P ro g "D ":G o to :If E n d If S G :T h e n K -0S :S -S ^(5)/(40RG)X :S ^(3)/(6R G )-S ^(7)/(336R ^(3)G ^(3))Y :90S /(R G )ππ↵≥→→→↵≤→→→U :P ro g "C ":P ro g "D ":G o to 0:I f E n d →↵二、子程序 BSC"X=Dta注:”/”表示÷三、程序变量说明以程序运行时计算器显示为准:XC?EC?提示输入架仪点的坐标LS?提示输入测设曲线缓和曲线长R?提示输入测设曲线半径A?提示输入测设曲线转角(以度分秒输入)T= L=显示计算的曲线元素(检验LS、R、A是否输入正确)ZH? 提示输入测设曲线直缓(圆)桩桩号(对比设计资料可检查直缓(直圆)桩桩号输入是否正确Y1,Z2?判断曲线转向,右转输入1,左转输入2JDN?JDE?提示输入交点的N和E坐标F?提示输入曲线计算起始边的坐标方位角(以度分秒格式输入)K?提示输入欲放样点的桩号V?提示输入欲放样点相对中点的法线方向的距离,位于曲线内侧输入负值,外侧为正值,测设中桩时输0B?提示输入欲放样点相对中点的切线方向的距离,位于曲线前进方向输入正值,后退方向输入负值。
CASIOfx5800任意平曲线极坐标与直角坐标放样求里程及边距

CASIO-fx5800 (任意平曲线极坐标与直角坐标放样,求里程及边距)湖南津市赵济汉主程序PQXDeg : Fix 3 : “XZ→0:YZ→1”?A : If A = 1: Then Goto 1 : IfEnd ↙If A = 0 : Then “ BS→0:XY→1:AND→2:DK→3:L(I)→4 ” ?O : IfEnd ↙If O = 4: Then Goto 1 : IfEnd ↙If O = 3: Then Prog “ F.2 ” : If X= 0 : Then Goto 1 : IfEnd : IfEnd ↙If O ≠ 1: Then “ X1 ” ?X : “ Y1” ?Y : X→Z[11]: Y→Z[12]: “ X2 ” ?P : “ Y2” ?Q : Pol( P-X , Q-Y) : If J﹤0 : Then J + 360→J : IfEnd : Cls : “ S12= ” : Locate 6 ,1, I : “ B12= ” : J ►DMS◣1→B : IfE nd ↙If O = 1: Then “XY(0) →0: ≠﹥1” ? B: IfEnd ↙Lbl 1 : If A = 1 And O = 3 :Then Prog “ F.2 ” : IfEnd : Prog “ Q.1 ”子程序PPQX (给定综合曲线属性)“ ZQX →0: *** →1: *** →2 ******* ” ?C ↙If C=0: Then 100→Z[98]: n0 →Z[99]: IfEnd ↙If C=1: Then m1→Z[98]: n1 →Z[99]: IfEnd ↙If C=2: Then m2→Z[98]: n2 →Z[99]: IfEnd ↙*******Prog “ PQX ”其中: mi为第i条综合曲线矩阵变量起始单元,(第1条综合曲线矩阵变量起始单元应自100开始,以便其他程序临时使用100以前的矩阵变量,综合曲线中每一基本单元需8个矩阵存储单元);ni为第i条综合曲线中基本单元数,每增加一个条综合曲线则增加一行If C=*******→Z[99]: IfEnd↙语句。
(整理)5800计算器全线坐标计算放样程序.

任意桩号坐标及高程一、程序功能本程序由一个主程序(ZHUCHENXU)和几个子程序——正算子程序(SUB1)、反算子程序(SUB2)、数据库(SUB3)、曲线要数(SUB4,4-1)、边坡放样程序(BIANPO),可以根据直线、圆曲线、缓和曲线(完整或非完整型)的线元要素(起点坐标、起点里程、起点切线方位角、线元长度、起点曲率半径、止点曲率半径)及里程边距或坐标及中桩高程,对该曲线段范围内任意里程中边桩坐标进行正反算。
二、源程序增加变量18→DimZ1.主程序(ZHUCHENXU)"1.SZ → XY,2.XY → SZ,3.SDYX,4. BIANPO "?N:Lbl 1:”ZHUANGHAO=”?S: Prog "SUB3":N≥2=>Goto 2: Abs(S -O)→W:”BIANZHU=”?→Z:Prog "SUB1":Prog"SUB4":“H=”H◢"XS=”:X→X◢"YS=”:Y→Y◢"FS=”:(F-90) →F:F►DMS◢ Goto1 Lbl 2:”CX=”?X: X→I:”CY=”?Y: Y→J:”DMG=”?→Z[7]:P rog "SUB2": "S=":(O+W) →S◢"Z="Z→Z◢ Z→Z[17] :If N=3:Th en Prog”SDYX”: IfEnd :If N=4:Then Prog”BIANPO”:IfEnd:G oto 22.SUB1(正算子程序名)0.1739274226→A:0.3260725774→B 0.0694318442→K:0.330009482→L 1-L→F:1-K→MG+QEKW(C+KWD)→Z[1]G+QELW(C+LWD)→Z[2]G+QEFW(C+FWD)→Z[3]G+QEMW(C+MW D)→Z[4]A×cos(Z[1])→X(剩號可省略) X+Bcos(Z[2])→XX+Bcos(Z[3])→XX+Acos(Z[4])→XU+WX→XAsin(Z[1])→YY+Bsin(Z[2])→YY+Bsin(Z[3])→YY+Asin(Z[4])→YV+WY→YG+QEW(C+WD)+90→FX+Zcos(F)→XY+Zsin(F)→Y3.SUB2(反算子程序名)G-90→T(Y-V)cos(T)-(X-U)sin(T)→WAbs(W)→W:0→ZLbI 4:Prog"SUB1"T+QEW(C+WD)→L(J-Y)cos(L)-(I-X)sin(L)→ZIf Abs(Z)<1E-6:Then 0→Z :Prog"SUB1"(J-Y)÷sin(F)→ZElse W+Z→W:Goto 4:IfEnd注:1E-6即是10的負6次方,亦即是等於0.000001輸入時按SHIFT---log---(-)---64. 数据库(SUB3)If S<226100:Then Cls:Stop: IfEndIf S<226255.833:Then 226100→O:99037.9736→U: 4282.3590→V:201.3266304→G:1045→P:1045→R:253.543→H:0→Q: Goto 1:IfEndIf S>And S<…………If S>236005.651:Then Cls:Stop: IfEndLbl 1: 1÷P→C:(P-R)÷(2HPR) →D:180÷π→E:5、曲线主程序: 1-E.BG(SUB4)Fix 3:Prog”Z.EBG”:R Abs(D-C)/2→T:if D-C>θ :Then 1→W:Else -1→W:ifendif S<A:Then -C→I:Else D→I:ifendAbs (A-S)→Lif L-T>θ:Then Z+IL→H:Else Z+IL+W(T-L)2/2/R→H:"HS=":H◢曲线数据库: Z.EBG(SUB4-1)if S<332.599:Then 0.02793→C:-0.03309→D:1800→R:235→A:32. 7→Z: goto 1:ifendif S>322.599 And K<734.085:Then -0.03309→C:-0.00485→D:60 00→R:460→A:25.254→Z: goto 1:ifend----Lbl 1C—前坡:D—后坡:R—呵呵,都知道是什么!A—变坡点:Z—变坡点设计高O—从设计高程点处垂直向下的距离:N—距设计高程处的平距(若你的设计高程线是路中线的话,请把0.75改为0):J—所求桩号处的横坡.6. 边坡放样程序(BIANPO) (SUB6)“QPDJL=”? → Z[3]: “QPDGD=” : Prog “(SUB4)”:H→ Z[4]◢“PG=” ?→ Z[5]:PTK→Z[6]:“P1=” ? → Z[8]:“P2=”? → Z[9]:“P3=” ? → Z[10] (没有的话就删): Z[7]-Z[4] → Z[11]:If Z[11]〈0 Then AbsZ[11] →Z[11]: “T=”:Z[1 1] ◢Else“W=”:Z[11] ◢IfEnZ[11]÷Z[5] →Z[12]:If Z[12]〈1 Then Z[8]×Z[11] →Z[13]:Else Z[8]×Z[5]+Z[9]×Z[5]×(Z[12]-1)→Z[13]:IfEnd: AbsZ [17]-(Z[13]+Z[6] ×Int (Z[12])+Z[3])→Z[14]:“BP+C-J=”: Z[14] ◢说明:Z[3]= QPDJL ………………起坡点离中桩距离Z[4]=“QPDGD” ……………起坡点设计标高Z[5]=“PG” ………………坡高Z[6]=“PTK” ……………… 平台宽度Z[7]=“DMG” ………………实测地面高度Z[8]=“P1” ………………一级边坡坡度Z[9]=“P2” ………………二级边坡坡度Z[10]=“P3” ……………… 三级边坡坡度(没有的话就删)Z[14]=“BP+C-J=” ………………边坡超欠挖宽度(+表超,-表欠)三、使用说明1、规定(1) 以道路中线的前进方向(即里程增大的方向)区分左右;当线元往左偏时, Q=-1;当线元往右偏时,Q=1;当线元为直线时,Q=0。
Fx5800计算器程序(对称平曲线)

Fx-5800计算器程序一、程序名称:B-D-PQX(对称平曲线)Prog “ZJZB”:“A”?→A:“R”?→R:“LS”?→L:“JDL”?→N:“JX”?→U:“JY”?→V:“F”?→F:180/π/R→Z:ZL/2→B:L2/24/R- L^(4)/2688/R^(3)+L^(6)/506880/R^(5)→P:L/2-L^(3)/240/R^(2)+L^(5)/34560/R^(4) →Q“T=”:(R+P)tan(Abs(A/2))+Q→T▲“L=”:(Abs(A)-2B)/Z+2L→o▲“E=”(R+P)/Cos(Abs(A/2))-R→E▲“ZH=”:N-T→E▲“HY=”:E+L→Z〔1〕▲“QZ=”:E+o/2→Z〔2〕▲“YH=”:E+o-L→Z〔3〕▲“HZ=”:E+o→Z〔4〕▲LbI 8: “XL”?→M:Prog“ZBJS”:Goto 8二、子程序:ZBJS180/π/R→Z:ZL/2→B:L^(2)/24/R-L^(4)/2688/R^(3) +L^(6)/506880/R^(5)→P:L/2-L^(3)/240/R^(2)+L^(5)/34560/R^(4)→Q(R+P)tan(Abs(A/2))+Q→T(Abs(A)-2B)/Z+2L→o(R+P)/Cos(Abs(A/2))-R→EN-T→EE+L→Z〔1〕E+o/2→Z〔2〕E+o-L→Z〔3〕E+o→Z〔4〕0→W:0→Y:If M≤E:Then M-E→X:Goto 3:IfEnd:If M≤Z〔1〕:Then Goto 1:IfEnd:If M≤Z〔3〕:Then Goto 2:IfEnd:If M<Z〔4〕:Then Goto 1:IfEnd: If M≥Z〔4〕:Then Z〔4〕-M→X:Goto 3:IfEndLbI 1:If M≤Z〔1〕:Then M-E→G:EIse Z〔4〕-M→G: IfEnd:G-G^(5)/(40R^(2)L^(2))+G^(9)/3456/(RL)^(4) →X:G^(3)-(6RL)-G^(7)/(336R^(3)L^(3))+G^(11)/42240/(RL)^(5)→Y:ZG^(2)/2/L →W:Goto 3LbI 2:M- Z〔1〕→G:RSin(B+GZ)+Q→X:R-RCos(B+GZ)+P→Y:B+ZG→WLbI 3:If M≥Z〔3〕:Then F+A→C:If A>0:Then C+90→D:IfEnd:EIse C-90→D:IfEnd:EIse F+180→C:If A>0:Then F+90→D:EIse F-90→D: IfEnd: IfEnd“X=”:U+(T-X)Cos(C)+YCos(D)→Z〔7〕▲“Y=”: V+(T-X)Sin(C)+Y Sin(D)→Z〔8〕▲Z〔7〕→Z〔5〕: Z〔8〕→Z〔6〕:Prog “J”LbI 4:“BZ”?→S:If M≤Z〔3〕:Then Goto 5:EIse Goto 6:IfEndLbI 5:F→C:If A<0:Then -W→W:EIse W→W:IfEnd:Goto 7LbI 6:F+A→C:If A>0:Then -W→W:EIse W→W:IfEndLbI 7:“X=”:Z〔7〕+SCos(C+W+90)→Z〔5〕▲“Y=”:Z〔8〕+SSin(C+W+90)→Z〔6〕▲Prog“J”三、子程序:JI=PoI(Z〔5〕-H, Z〔6〕-K):If J<0:Then J+360→J:EIse J→J: IfEnd“F=”:J◆DMS“D=”:I▲四、子程序:ZJZB30→Dim Z:“HX”?→Z〔5〕:“HY”?→Z〔6〕: “ZX”?→H: “ZY”?→K:Prog“J”五、B-D-PQX(对称平曲线)说明1、▲——代表计算器中显示符号(黑色实心三角符号,在计算器中输入方法:SHIFT+X2)。
5800放样程序

5800放样程序1、主程序:ROAD SETU P“XST”?X:“YST”?Y:“XBL”?C:“YBL”?D:Prog“XYSA”:“XJD”?O:“Y JD”?U:“FWJ”?G:“A(AZ+,A Y-)”?A:“R”?R:“LS”?L:“ZH ZH”?Z: L÷2-L^3÷(240R2)→M:13751L÷(480R) →B: L2÷(24R)-L^4÷(2688R^3) →P: M+tan(AbsA÷2)(P+R) →T:“T=”:T ⊿∏R(AbsA-2B)÷180+2L→S: “QXC=”:S⊿P+R)(1÷cos(AbsA÷2))-R→E: “E=”:E⊿Lbl 0:Fix3: “INPU T ZH”?H: “LK(IN-,O U T+)”?K: “XIE JIA O”?F: Abs(H-Z)→Q:If H≥S+Z:Then Goto4:Else If H≤Z:ThenGoto5:IfEnd: IfEnd﹄(回车)If Q﹥S-L:Then Goto2: Else If Q≥L:Then Goto1: IfEnd: IfEnd﹄(回车)13751Q2÷(480RL)+F→E: Prog“HHQX”: Goto3﹄(回车)Lbl 1: 13751(Q-L)÷(240R)+B+F→E: Rsin(13751(Q-0.5L)÷(240R))+M→C: R(1-cos(13751(Q-0.5L) ÷(240R)))+P→D: Goto3﹄(回车)Lbl 2: S-Q→Q: AbsA-13751Q2÷(480RL)+F→E: Prog“HHQX”:C→V: D →W: T+(T-V)cosAbsA-WsinAbsA→C: (T-V)sinAbsA+WcosA bsA→D﹄(回车)Lbl 3: C+KsinE→C: D-KcosE→D: C→V: -D A÷AbsA→W: G+180→N:O+Rec(T,N)+VcosG-WsinG→C: U+J+VsinG+WcosG→D:Goto7﹄(回车)Lbl 4: G+90K A÷(Abs(K+10^-7) AbsA)+360-A+F→E:O+Rec(H-S-Z+T, G-A) →C: U+J→D: Goto6﹄(回车)Lbl 5: G-90K A÷(Abs(K+10^-7) AbsA)+540 +F→E:O+Rec(Z-H+T,G+180) →C: U+J→D﹄(回车)Lbl 6:C+cosEAbsK→C: D+sinEAbsK→D﹄(回车)Lbl 7:FIX:3:“XP=”:C⊿“YP=”:D⊿Prog“XYSA”: Goto0﹄(回车)2、子程序:XYSA0→I: 0→J:Pol(X-C.Y-D):Fix3:“SS=”:I⊿Fix4: J+180→J:IntJ+Int(60FracJ)÷100+6 Frac(60FracJ)÷1000→J:“SS=”:J⊿3、子程序:H H Q XQ-Q^5÷(40R2L2)→C:Q^3÷(6R L)-Q^7÷(336R^3×L^3)→D说明:X S T?输入测站点X坐标;Y S T?输入测站点Y坐标;X B L?输入后视点X 坐标;X B L?输入后视点Y坐标;S S=计算出的测站点至后视点距离;A A=计算出的测站点至后视点方位角(已经是度分秒,直接用于对后视);X J D?输入交点X坐标;Y J D?输入交点Y坐标;F W J?输入前一个交点至本交点的方位角;A(A Z+,A Y-)?输入曲线转角(左转输正,右转输负);R?输入半径;L S?输入缓和曲线长:Z H Z H?输入直缓点桩号:T=计算出的切线长度;Q X C=计算出的曲线总长;E=计算出的外距;I N P U T Z H?输入放样点桩号;L K(I N-,O U T+)?输入放样点至中桩的距离;X I E J I A O?放样点至中桩连线与法线的夹角;X P=计算出的放样点X坐标;Y P=计算出的放样点Y坐标;S S=计算出的测站点至放样点距离;A A=计算出的测站点至放样点方位角(已经是度分秒,直接用于放样);。
5800计算器ROAD—2道路放样程序分解

5800计算器ROAD-2放样程序一、前言1.采用交点定位技术,程序开始执行输入一个定位桩号K0用于定位交点,后面的坐标正、反算均在该交点范围内进行,曲线要素计算只在程序开始时运行一次,避免了每次计算桩号都要重新定位交点数据、计算曲线要素的麻烦,提高了计算速度,虽然存在每次执行程序只能在一个交点计算范围内计算,要计算另一个交点范围的桩号,要重新执行程序的缺点,但比起由此带来的优势,这是微不足道的(交点定位技术还有其它优点,后面还会提到);2.交点定位技术的采用,结合交点计算桩号范围的确定,可圆满解决纯直线路段、断链、卵形曲线等公路中比较特殊的情况,具体解决方案会在后面的日志中详细解读;3.数据库子程序采用矩阵变量的形式,使数据组织更加简洁,输入更加便捷;4.程序考虑了调用数据库子程序和手工输入交点数据两种方法。
二、程序清单道路坐标放样计算程序包括一个主程序和四个子程序(不含交点数据子程序)。
1.主程序清单:ROAD-2注意:这里删除了原ROAD-QXYS子程序第8行计算圆曲线长度的代码,请注意更改。
2.子程序1清单:ROAD-QXYS功能:计算非对称型道路平曲线要素及主点桩号。
3.子程序2清单:ROAD-LXZB功能:计算道路中线坐标。
注意:第16行笔误,改为:Z<0=>Z+360→Z:Z>360=>Z-360→Z。
4.子程序3清单:ROAD-XY功能:计算缓和曲线上一点的局部坐标。
5.子程序4清单:ROAD-XS2.路线数据库子程序的编写与格式说明数据库采用给矩阵变量Mat A赋值的形式,使数据组织更加简洁,为减少数据库子程序的输入量(因为要经常根据不同的项目编写数据库子程序),矩阵变量因子赋值给字母变量的程序代码写在主程序中(见ROAD-2程序第4行)。
数据库格式说明:本交点计算起终点桩号的说明:一般情况下,本交点的计算起点是指前一交点的HZ点或YZ点,本交点的计算终点是指后一交点的ZH点或ZY点。
Fx-5800计算器程序(含定向及放样方位角、距离计算)

Fx-5800计算器程序一、道路放样(含定向及放样方位角、距离计算)1、主程序:1JDZB(利用第一交点坐标,第二交点坐标,第三交点坐标及里程,偏角,半径,缓和曲线长度计算)20→DimZ“JD1X=”:?X:X→Z[1]:“JD1Y=”:?Y:Y→Z[2]: 输入JD1坐标“JD2X=”:?X:X→U:“JD2Y=”:?Y:Y→V: 输入JD2坐标“JD3X=”:?X:X→Z[3]:“JD3Y=”:?Y:Y→Z[4]: 输入JD3坐标I=PoI(U-Z[1],V-Z[2]):If J<0:Then J+360→J:EIse J→J:IfEnd:J→F:"F12=":F►DMS▲显示起始边方位角I=PoI(Z[3]-U,Z[4]-V):If J<0:Then J+360→J:EIse J→J:IfEnd:J→Z[5]:"F23=":Z[5]►DMS▲显示结束边方位角F-Z[5]→A:If A<-180:Then A+360→A:EIse A→A:If End:"A=":A►DMS▲显示偏角Prog“2FJDA”2、次主程序:2FJDA(利用起始方位角,交点坐标及里程,偏角,半径,缓和曲线长度计算)"HX="?X:"HY="?Y: 输入定向(后视点)坐标"ZX="?H:"ZY="?K: 输入测站点坐标Prog“J”显示定向(后视点)距离和方位角“A=”?A:输入偏角(左“-”右“+”),当利用1JDZB程序时,不用再次输入“R=”?R:输入平曲线半径“LS=”?L:输入缓和曲线长度“JDL=”?N:输入平曲线交点里程“JDX=”?U:输入交点X坐标,当利用1JDZB程序时,不用再次输入“JDY=”?V:输入交点Y坐标,当利用1JDZB程序时,不用再次输入“F=”?F:输入起边方位角,当利用1JDZB程序时,不用再次输入180/R/π→Z:ZL/2→B: “B=”:B►DMS▲缓和曲线角“P=”:L^(2)/(24R)-L^(4)/(2688R^(3))→P▲内移距“Q=”:L/2-L^(3)/(240R^(2))+L^(5)/(34560R^(4))→Q▲切线增长“T=”:(R+P)tan(Abs(A/2))+Q→T▲显示平曲线切线长度“E=”:(R+P)/Cos(Abs(A/2))-R→E▲显示平曲线外距值“L=”:(Abs(A)-2B)/Z+2L→o▲显示平曲线曲线长度“D=”:2T-o→D▲显示球曲差30→DimZ“ZH=”:N-T→Z[1]▲显示直缓点里程“HY=”:Z[1]+L→Z[2]▲显示缓圆点里程“QZ=”:Z[1]+o/2→Z[3]▲显示曲中点里程“YH=”:Z[1]+o-L→Z[4]▲显示圆缓点里程“HZ=”:Z[1]+o→Z[5]▲显示缓直点里程“ZHX=”:U+Tcos(F+180)→Z[7]▲显示直缓点X坐标“ZHY=”:V+Tsin(F+180)→Z[8]▲显示直缓点Y坐标“HZX=”:U+Tcos(F+A)→Z[15]▲显示缓直点X坐标“HZY=”:V+Tsin(F+A)→Z[16]▲显示缓直点Y坐标0→C:0→W:L-L^(3)/(90R^(2))→C:ZL/6→W:If A<0:Then -W→W: EIse W→W: If End:“HYX=”:Z[7]+Ccos(F+W)→Z[9]▲显示缓圆点X坐标“HYY=”:Z[8]+Csin(F+W)→Z[10]▲显示缓圆点Y坐标“YHX=”:Z[15]+Ccos(F+A+180-W)→Z[13]▲显示圆缓点X坐标“YHY=”:Z[16]+Csin(F+A+180-W)→Z[14]▲显示圆缓点Y坐标If A<0:Then -B→B:EIse B→B:If End:0→S:0→C:0→W:o/2-L→S:SZ/2→W:2Rsin(W)→C:If A<0:Then -W→W: EIse W→W:If End:“QZX=”:Z[9]+Ccos(F+B+W)→Z[11]▲显示曲中点X坐标“QZY=”:Z[10]+Csin(F+B+W)→Z[12]▲显示曲中点Y坐标LbI8:“LP=”?→M:Prog“3ZBJS”:Goto8 输入放样点P里程3、子程序:3ZBJS20→DimZ0→S:0→W:0→D:0→G:If M≤Z[1]:Then F+180→W:F+90→G:N-M→S:U→P:V→Q:Goto5: Else If M≤Z[2]:Then M-Z[1]→S:Z[7]→P:Z[8]→Q:Goto1:Else If M<Z[4]:Then M-Z[2]→S:Z[9]→P:Z[10]→Q:Goto2:Else If M<Z[5]:Then Z[5]-M→S:Z[15]→P:Z[16]→Q:Goto1: Else F+A→W:W+90→G:T+M-Z[5]→S:U→P:V→Q:Goto5:If End:LbI 1:ZS^(2)/(6L)→W:3W→G:S-S^(5)/(90R^(2)L^(2))→S:If A<0:Then -W→W:-G→G:EIse W→W:G→G:If End:If M<Z[2]:Then F+W→W:F+G+90→G:EIse F+A+180-W→W:F+A+180-G-90→G:If End:Goto5:LbI 2:SZ/2→W:2W→G:2Rsin(W)→S:If A<0:Then -W→W:-G→G:EIse W→W:G→G:If End:F+B+W→W:F+B+G+90→G:Goto5:LbI 5:“X=”:P+Scos(W)→Z[13]▲“Y=”:Q+Ssin(W)→Z[14]▲Z[13]→X:Z[14]→Y:Prog“J”:显示放样点(前视点)距离和方位角Goto6:LbI 6:“BZ=”?D: 输入偏距(左“-”右“+”)“X=”:Z[13]+Dcos(G)→Z[17]▲“Y=”:Z[14]+Dsin(G)→Z[18]▲Z[17]→X:Z[18]→Y:Prog“J”显示放样点(前视点)距离和方位角4、子程序:JI=PoI(X-H,Y-K):If J<0:Then J+360→J:EIse J→J:IfEnd:"S=":I▲"F=":J►DMS▲。
卡西欧5800P曲线坐标放样程序

卡西欧5800P曲线坐标放样程序摘要:本文介绍了卡西欧5800P编程的程序源代码,程序编制依据原理和程序使用说明,旨在完善全站仪软件功能的不足之处,在现场施工测量中,能极大提高工作效率。
关键词:不等长缓和曲线;交点法;逐次渐进试算法;卡西欧5800P编程Abstract: This paper introduces the Casio 5800P programming source code, programming compilation basis principle and procedures instructions for use, designed to improve the inadequacies of the total station software features, in the measurement of the on-site construction can greatly improve work efficiency.Key words: unequal length of transition curve; the intersection of law; try successive approximation algorithm; Casio 5800P programming中图分类号:U212.33+2.2 文献标识码:A 文章编号:2095-2104(2012)03-00一、引言在铁路、公路、市政道路的工程建设中,避不开各种曲线的测量,曲线测量大量的计算工作,是现场施工测量的必不可少的一个重要环节,数据计算的准确于否,测量成果的好坏,直接关系到工程质量、进度。
传统的测量方法,总是拿着提前计算好的曲线数据,进行外业测量。
但施工现场,各种障碍物及不可预测的客观因素的存在,往往是提前算好的数据无法在施工现场进行实地测量,需要在施工现场根据实际情况进行机动调整而重新进行曲线的数据计算,如何快捷、准确、有效的在施工现场进行大量的计算工作,能以最少的时间做出最多的作业效率?卡西欧5800P编程计算器的使用,大幅度提高了计算速度与作业效率,有效地解决了这一实际问题。
5800计算器全线坐标计算放样程序(修改第三版)

5800计算器全线坐标计算放样程序(修改第三版)5800计算器全线坐标计算放样程序(修改第三版)5800计算器全线坐标计算放样程序(修改版)“XLZBJSCX” ◢LB1 0 ↙CLS : FIX 4 : 30→DIM Z ↙“XHS="?G(后视点X):"YHS="?L(后视点Y):"XZJ="?M(置镜点X):"YZJ="?N(置镜点Y)0l(G-M,L-N):"DH=":I(后视距)◢J<0=>J+360→J:"FH=":J→DMS◢(后视方位角)LB1 1 ↙“K=”?K ◢(计算里程)IF K<本段曲线终点里程AND K≥上段曲线终点里程:THEN 本段终点里程→Z[1] : 上段曲线终点里程→Z[2] :1→0 (注:左偏曲线输入-1→0,右偏曲线输入1→0): 偏角→A:半径→R : 第一缓和曲线→Z[6] : 第二缓和曲线→Z[7] : 交点X→B :交点Y→C : 小里程向交点方位角→E : 交点向大里程方位角→F: G0T0 2 : IFEND↙…………(曲线段分段输入)补充直线段输入如下IF K<本段直线终点里程AND K≥本段直线起点里程:THEN 1→0:本段直线终点里程→Z[2]:终点X→Z[16]:终点Y→Z[11]:方位角→E:G0T0 4:IFENDLB1 2 ↙(曲线要素计算)Z[6]/2- Z[6]^3/(240*R^2)+ Z[6]^5/(34560*R^4) →Z[8] ↙(M1)Z[7]/2- Z[6]^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[3]+ Z[2])→W ↙(曲线总长)90* Z[6]/(R*π) →Z[14] ↙(第一缓和曲线总偏角)90* Z[7]/(R*π) →Z[15] ↙(第二缓和曲线总偏角,可以省略)Z[8]+(R+Z[10])TAN(A/2)-(Z[11]-Z[11] )/SIN A→Z[11]↙(切线T1) Z[9]+(R+Z[12])TAN(A/2)+(Z[10]-Z[12] )/SIN A→Z[12]↙(切线T2) B+ Z[12]*C0S (E+180)→ Z[13] ↙(ZH点X)C+ Z[12]*SIN(E+180)→ Z[15] ↙(ZH点Y)Z[1]-S→Z[3] ↙ (ZH点里程)Z[3]+ Z[6]→Z[4] ↙(HY点里程)Z[1]- Z[7]→Z[5] ↙(YH点里程)G0T0 3 ↙LB1 3 ↙(判断里程点与曲线关系)IF K≤Z[3]AND K> Z[2] : THEN G0T0 4 : IFEND ↙IF K≤Z[4]AND K> Z[3] : THEN G0T0 5 : IFEND ↙IF K≤Z[5]AND K> Z[4] : THEN G0T0 6 : IFEND ↙IF K≤Z[1]AND K> Z[5] : THEN G0T0 7 : IFEND ↙LB1 4 ↙(里程小于直缓点直线独立坐标)K- Z[3] →X : 0→Y : E→T : PR0G“TYZBCX” :G0T0 1 ↙LB1 5 ↙(第一缓和曲线独立坐标)K- Z[3] →H ↙H-H^5/(40*R^2* Z[6]^2)+H^9/(3456*R^4* Z[6]^4) →X ↙H^3/(6*R* Z[6])-H^7/(3362*R^3* Z[6]^3) →Y ↙90*H^2/( R*π* Z[6]) →T ↙IF 0>0 :THEN T +E→T : ELSE E-T →T : T<0=>360+T→T : I FEND ↙PR0G“TYZBCX” :G0T0 1 ↙LB1 6 ↙(圆曲线独立坐标)K- Z[4] →H ↙H*180/( R*π)+ Z[14]→T ↙R*SIN T+ Z[8]→X ↙R*(1-C0S T)+ Z[13]→Y ↙IF 0>0 :THEN T +E→T : ELSE E-T →T : T<0=>360+T→T : IFEND ↙PR0G“TYZBCX” :G0T0 1 ↙LB1 7 ↙(第二缓和曲线独立坐标)Z[1] -K →H ↙H-H^5/(40*R^2* Z[7]^2)+H^8/(3456*R^4* Z[4]^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]C0S A+ Z[12]-U*C0S A-V*SIN A→X ↙Z[13]*SIN A-U*SIN A+V*C0S A→Y ↙IF 0>0 :THEN F-T→T : T<0=>360+T→T : ELSE F+T →T : IFEND ↙PR0G“TYZBCX” :G0T0 1 ↙子程序:“TYZBCX” ↙(统一坐标计算)IF 0<0 : THEN -Y→Y : IFEND ↙“QXJ=” :T◢(计算里程点切线方位角,可以不显示)Z[16]+X*C0S E-Y*SIN E→Z[15] ↙Z[17]+X*SIN E+Y*C0S E→Z[12] ↙“XI=” : Z[13] ◢(中线X)“YI=” : Z[19] ◢(中线Y)P0l(Z[18]-M,Z[13]-N):"DI=":I(中桩放样距)◢J<0=>J+360→J:"FI=":J→DMS◢(中桩放样方位角)“PJ=”?P◢(输入边桩与线路夹角,左-右+)“PD=”?D◢(输入边桩距)Z[12]+D*C0S(T+P) →Z[20] ↙Z[13]+D*SIN(T+P) →Z[21] ↙“XP=”: Z[20] ◢(边桩X)“YP=”: Z[21] ◢(边桩Y)P0l(Z[20]-M,Z[21]-N):"DP=":I◢(边桩放样距)J<0=>J+360→J:"FP=":J→DMS◢(边桩放样方位角)一、程序功能主要功能:采用交点法方式计算多条线路坐标正反算,可算任意复杂线型及立交匝道,包括C型,S型、卵型、回头曲线等;极坐标放样,全线路基边坡开挖口及坡脚放样计算、路基任意点设计高程、横坡、设计半幅宽度.隧道欠超挖放样计算。
fx5800最好用公路放样程序

fx5800公路全能曲线计算、放样程序在公路工程施工放样时需要计算各桩号的坐标、高程、路基宽度、超高、ZH、QZ、HZ点。
在计算器中建立程序文件[K+]、【SQX】[LJFY]及数据库文件[XL?]、[SH]。
把平曲线要素输入文件[XL?],竖曲线要素输入文件[SH]中,输入任一桩号K?主程序[K+]即可计算出该桩号坐标X、Y,设计标高H,路基左右宽度L/R,边桩高程P/Q。
程序中A、Z-为程序转向参数,道路左边A为负数,道路右边A为正,S 距中距离、H设计高程,?Z—实测高程。
Z、S=0、±1或±2程序桩号自动加减10或20米返回主程序,等于3时返回桩号反算。
程序从[K+]进入,输入任一桩号K=?,令,A=0程序即可计算出该桩号坐标X、Y、标高H、边桩及露肩高程LH(P)、LH1/RH(Q)、RH1、路基宽度L/R,A=-5,路中墙放样,A=5路槽放样,A=±3/4路肩、路堤挡土墙放样,A=±7桥、涵洞放样。
A=±6距中S点放样,A=10程序计算五大桩号,Z[1]= ±3任意距中点资料反算,令AbsA=1边桩放样,AbsZ<5自动加减桩号,A=2反算桩号后进入路基边沟放样边坡放样:(A=±1)实测任一桩号附近点坐标XY、高程Z,令A=8,输入XY,程序反算XY点对应桩号,程序进入边坡放样,输入实测高程Z,程序自动计算该高程对应距中,把该数据放样到实地并测得一新的实测高程Z,反复把Z输入程序直至程序计算距中偏移值接近零,该点即为边坡放样点。
Z[1] –内外业选择,外业为0,GPS放样=-1、1,内业=2,资料=3、4Z[2]—线路选择,Z[3]—94、95、96区结构层厚度,Z[4]—切线方位角,Z[5] 土路肩宽,Z[6]、V—右幅横坡,Z[7]—加宽值,左负右正Z[8]/Z[9]计算点坐标Z[10]/Z[11]—测站坐标,Z[12]路面水沟加平台宽度,Z[13]边坡平台宽度,Z[14] 半幅中央分隔带宽;Z[15]—中桩高程,Z[16]路面横坡不同坡标志,高速路行车道与硬路肩不同坡线路在数据库里加入2→Z[16] ,行车道与路肩同坡Z[16]=1Abs(A)<5时,路基距中不分左右,均为正,大于等于5时,左负右正蓝色字体语句根据线路修改程序使用也许有些复杂,懂得使用后却是最简单好用的公路测量程序,边桩放样只要输入实测高程即可自动计算放样数据,涵洞输入涵长及前距+或后距-即可计算放样点,放样后输入实测高程即可自动计算填挖值。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
5800-平曲线程序
程序目的:依平曲线要素计算直线、圆曲线、缓和曲线的任意中桩、左、右桩坐标。
程序说明:K0:起始桩号 X0:起始X坐标 Y0:起始Y坐标 ALF:起始方位角 R:半径 LS:缓和曲线长 N:曲线左转N=1,右转N=2 K:待求桩号 LL、LR:左、右桩距离 Q:左、右桩与中线斜交角求得XZ、YZ、XL、YL、XR、YR分别为中桩、左、右桩坐标。
一、直线段
文件名:ZX (COMP)
“K0=”? L:“X0=”? O:“Y0=”? P:“ALF=”? W:
Lbl 0:“K=”?:O+(K-L)cosW→X: P+(K-L)sinW→Y:“XZ=”:X◢“YZ=”:Y◢“LL=”?B:“XJJ=”?Q: X-Bcos(W +Q) →E:Y-Bsin(W+Q) →F:“XL=”:E◢“YL=”:F◢“RL=”?C: X+Ccos(W+Q) →I:Y+Csin(W+Q) →J:“XR=”:I ◢“YR=”:J◢Goto 0
注:在程序执行过程中,赋给的要素变数的值被固定不变,可对变数(K、LL、LR)赋予不同值,迅速求得所需坐标。
二、圆曲线段
文件名:YQX (COMP)
“K0=”? L:“X0=”? O:“Y0=”? P:“ZH—JD FWJ=”? G:“LS=”?L:“R=”?R:G+L÷2÷R×180÷π→W:Lbl 0:“K=”?K:(-1)^N(K-L)÷R×180÷π→J: 2Rsin((-1)^N J÷2)→D:O+Dcos(W+J÷2)→X:P+Dsin(W+J÷2)→Y:“XZ=”:X◢“YZ=”:Y◢“LL=”?B:“XJJ=”?Q:X-Bcos(W+J+Q):Y-Bsin(W+J+Q) →F:“XL=”:E◢“YL =”:F◢ “RL=”?C:“XJJ=”?Q:X+Ccos(W+J+Q) →U:Y+Csin(W+J+Q) →V:“XR=”:U◢“YR=”:V◢ Goto 0
注:公式里面W为HY点方位角,通过ZH-JD方位角计算,公式为G±Ls/2/R×180/π,(曲线左转-,曲线右转+)。
三、缓和曲线
文件名:HHQX (COMP)
“K0=”?K: “X0=”?O:“Y0=”?“ALF=”?W:“LS=”?M:“R=”?R: Lbl 0:“K=”?K:“N=”?N:(-1)^N ×(K-L)^2÷M÷R÷6×180÷π→I:(K-L)-(K-L)^5÷90÷(RM)^2→D:O+Dcos(W+I) →X:P+Dsin(W+I) →Y:“XZ=”:X ◢“YZ=”:Y◢“LL=”?B:“XJJ=”?Q:X-Bcos(W+3I+Q) →E:Y-Bsin(W+3I+Q) →F:“XL=”:E◢“YL=”:F◢“R L=”?C:X+Ccos(W+3I+Q) →I:Y+Csin(W+3I+Q) →J:“XR=”:I◢“YR=”:J◢Goto 0
注:1、坐标计算方法是根据偏角法原理;
2、缓和曲线(ZH~HY或YH~HZ)以ZH(或HZ)为起始点;
3、平曲线左转(ZH~HY段N=1,YH~HZ段N=2),曲线右转(ZH~HY段N=2,YH~HZ段N=1)。
2008/12/8。