5800程序编写完整版.
- 格式:doc
- 大小:7.27 MB
- 文档页数:34
5800卡西欧计算器程序大全1.基本数学运算程序-加法:输入两个数字,然后计算它们的和。
-减法:输入两个数字,然后计算它们的差。
-乘法:输入两个数字,然后计算它们的积。
-除法:输入两个数字,然后计算它们的商。
-平方根:输入一个数字,然后计算它的平方根。
-幂运算:输入两个数字,然后计算第一个数字的第二个数字次方。
2.科学计算程序-对数运算:输入一个数字和一个底数,然后计算它们的对数。
-三角函数:输入一个角度,然后计算它的正弦、余弦和正切值。
-阶乘计算:输入一个数字,然后计算它的阶乘。
-指数函数:输入一个数字,然后计算e的这个数字次方。
-随机数生成:生成一个随机数。
3.金融计算程序-终值计算:输入本金、利率和时间,然后计算将来其中一时刻的价值。
-现值计算:输入将来其中一时刻的价值、利率和时间,然后计算现在的价值。
-年金支付计算:输入每期支付的金额、利率和时间,然后计算总支付金额。
-贷款利率计算:输入贷款金额、每期支付金额和时间,然后计算贷款利率。
-折现计算:输入每期支付金额、利率和时间,然后计算折现值。
4.统计计算程序-平均值计算:输入一组数字,然后计算它们的平均值。
-中值计算:输入一组数字,然后计算它们的中值。
-方差计算:输入一组数字,然后计算它们的方差。
-标准差计算:输入一组数字,然后计算它们的标准差。
-相关系数计算:输入两组数字,然后计算它们的相关系数。
以上只是一部分5800卡西欧计算器程序的示例,卡西欧计算器还提供了更多的功能,例如单位转换、时间计算、日期计算等等,可以根据实际需求选择使用。
希望以上内容对您有所帮助。
5 8 0 0 程序正反算选择程序:ZS-FSDeg: //设置角度模式20→DimZ: //扩展变量“1LZ=>XY,2XY=>LZ,3JGW-4DZBJS”?U://正反算选择,正算选1,反算选2,结构物4点坐标计算If U=1: ThenProg”ZS-XH”:IfEnd://进入正算循环主程序IfU=2:Then Prog”FS-XH”:IfEnd: //进入反算循环主程序IfU=3:Then Prog”JGW-4DZBJS”:IfEnd: / /进入结构物4点坐标计算主程序正算循环主体程序ZS-XH“XL-XZ“?U://选择线路1~NLbi0:”L=”?L:”Z=”?Z: //输入桩号和边距Porg”ZS-XH-1“://运行正算循环子程序Goto0:正算循环子程序ZS-XH-1Prog”PM-XL-XZ”: //进入平面线路选择程序对线路线元进行选择Prog”CHAOXIAN-CL”: //里程超限处理Prog”GL-ZS”: //进入坐标正算程序Prog”GL-BZ-ZS”: //进入公路边桩正算程序Prog”GC-XL-XZ”: //进入高程线路选择程序对线路线元进行选择Prog”GC”://进入高程部分提取中桩高程Prog”ZS-XS”: //进入正算显示程序,提取正算三维结果Goto0:反算循环主体程序FS-XH0→Z:“XL-XZ”?U://选择线路 1~NLbi0:“L”?L:“X=”?T:“Y=”?S: //输入起算假定桩号,实测X YProg”GL-FS”: /进入公路反算程序Prog”GC-XL-XZ”: //进入高程线路选择程序对线路线元进行选择Prog”GC”://进入高程部分提取中桩高程Prog”FS-XS”: //进入反算显示程序Goto0:坐标正算程序GL-ZS.1739274226→I:.3260725774→J:.0694318442→K:.3300094782→E ://四节点法计算系数录入1-E→F:1-K→M:Q+KrO(C+KD) →K: //数据库要用X、Y、Q作为起点坐标方位角Q+ErO(C+ED) →E: //r是弧度,输入方法FUNCTION 选5Q+FrO(C+FD) →F:Q+MrO(C+MD) →M:X+O(ICos(K)+JCos(E)+JCos(F)+ICos(M)) →X://计算出X坐标Y+O(ISin(K)+JSin(E)+JSin(F)+ISin(M)) →Y: //计算出Y坐标Q+Or(C+D) →Q: //计算出算点方位角,O是字母,r是弧度:边桩坐标计算程序GL-BZ-ZS"XJ"?→A:X+Zcos(Q+A) →G: //计算出边桩X坐标Y+ZSin(Q+A) →M: //计算出边桩Y坐标公路反算程序GL-FSDo:Porg”PM-XL-XZ”://进入平面线路选择程序Porg”CHAOXIAN-CL”://里程超限处理程序Porg”GL-ZS”: //进入公路正算4节点程序T-X→I:S-Y→J: //试算点与测点X,Y距离差Pol(I,J):J-Q→J://方位角转换为接近试算点到测点的值:Rec(I,J): //计算出X差和Y差(X里程,J边)L+I→L://修改后的里程Abs(I) →I://修改值的绝对值LpWhile I>0.001: //小于一毫米通过,大于一毫米循环计算中桩高程计算程序GCIf I-A<0:Then1→H:IfEnd://开口向上部分赋值IfI-A=0:ThenGoto1: IfEnd: //无竖曲线部分赋值IfI-A>0:Then-1→H:IfEnd://开口向下时赋值(L-C)I+K+(L-C)^2/(2E)H→I://计算得出竖曲线部分中桩高程Goto2:Lbi1:K+(L-C)I→I://计算得出无竖曲线部分中桩高程Lbi2:正算显示ZS-XS“FWJ”:Q◢ //显示计算里程方位角“ZHONG-X”:X◢ //显示中线X坐标“ZHONG-Y”: Y◢//显示中线Y坐标“ZHONG-GC”:I◢//显示中桩高程“B-X”:G◢//显示边桩X坐标“B-Y”: M◢ //显示边桩Y坐标反算显示FS-XS“L”:L◢ //显示计算里程“Z”:J◢//显示计算边距“ZHONG-GC”:I◢//显示中桩高程里程超限CHAOXIAN-CLIf L<A:Then “L-<<<”;Stop:IfEnd: //小于本路线最小里程提示,退出程序If L>B: Then”L+>>>”:Stop:IfEnd: //大于本路线最大里程提示,退出程序结构物循环主体程序JGW-4DZBJS30→DimZ://扩展变量“XL-XZ“?U://选择线路1~NLbi0:”L=”?L://输入桩号Prog”PM-XL-XZ”: //进入平面线路选择程序对线路线元进行选择Prog”GL-ZS”://进入坐标正算程序,提取中桩坐标“ZL”?G: //输入左边长度“YL”?V: //输入右边长度“QK”?N: //输入前方宽度“HK”?S: //输入后方宽度?T: //输入斜交角度(右前方夹角)“1=>ZS,2=>XS”?W:W=1=>Goto2: W=2=>Goto 3 ↙//1=>斜交正做(平行于路中)2=>斜交斜做Lbl 2 ↙// 斜交正做(平行于路中)X+NcosQ÷sinT-Gcos(Q+T)→Z[6]: //计算左前方X坐标Y+NsinQ÷sinT-Gsin(Q+T)→Z[7]: //计算左前方Y坐标X-ScosQ÷sinT-G]cos(Q+T)→Z[8]: //计算左后方X坐标Y-SsinQ÷sinT-Gsin(Q+T)→Z[9]: //计算左后方Y坐标X+NcosQ÷sinT+Vcos(Q+T)→Z[10]: //计算右前方X坐标Y+NsinQ÷sinT+Vsin(Q+T)→Z[11]: //计算右前方Y坐标X-ScosQ÷sinT+Vcos(Q+T)→Z[12]: //计算右后方X坐标Y-SsinQ÷sinT+Vsin(Q+T)→Z[13]: //计算右后方Y坐标“ZQ.X=”:Locate 6,4,Z[6]: //第六行第四列开始显示左前X值“ZQ.Y=”:Locate 6,4,Z[7]: //第六行第四列开始显示左前Y值“ZH.X=”:Locate 6,4,Z[8]: //第六行第四列开始显示左后X值“ZH.Y=”:Locate 6,4,Z[9] ◢//第六行第四列开始显示左后Y值“YQ.X=”:Locate 6,4,Z[10]: //第六行第四列开始显示右前X值“YQ.Y=”:Locate 6,4,Z[11]: //第六行第四列开始显示右前Y值“YH.X=”:Locate 6,4,Z[12]: //第六行第四列开始显示右后X值“YH.Y=”:Locate 6,4,Z[13] ◢//第六行第四列开始显示右后Y值Goto 0↙//返回输入桩号Lbl 3 ↙// 斜交斜做X+Nsin(Q+T)-Gcos(Q+T)→Z[14]: //计算左前方X坐标Y-Ncos(Q+T)-G]sin(Q+T)→Z[15]: //计算左前方Y坐标X-Ssin(Q+T)-Gcos(Q+T)→Z[16]: //计算左后方X坐标Y+Scos(Q+T)-Gsin(Q+T)→Z[17]: //计算左后方Y坐标X+Nsin(Q+T)+Vcos(Q+T)→Z[18]: //计算右前方X坐标Y-N]cos(Q+T)+Vin(Q+T)→Z[19]: //计算右前方Y坐标X-Ssin(Q+T)+Vos(Q+T)→Z[20]: //计算右后方X坐标Y+Scos(Q+T)+Vsin(Q+T)→Z[21]: //计算右后方Y坐标“ZQ.X=”:Locate 6,4,Z[14]: //第六行第四列开始显示左前X值“ZQ.Y=”:Locate 6,4,Z[15]: //第六行第四列开始显示左前Y值“ZH.X=”:Locate 6,4,Z[16]: //第六行第四列开始显示左后X值“ZH.Y=”:Locate 6,4,Z[17] ◢//第六行第四列开始显示左后Y值“YQ.X=”:Locate 6,4,Z[18]: //第六行第四列开始显示右前X值“YQ.Y=”:Locate 6,4,Z[19]: //第六行第四列开始显示右前Y值“YH.X=”:Locate 6,4,Z[20]: //第六行第四列开始显示右后X值“YH.Y=”:Locate 6,4,Z[21] ◢//第六行第四列开始显示右后Y值Goto 0↙数据库部分1、平曲线数据库平面线路选择程序PM-XL-XZU=1=>Prog”QXYS”://进入假定线路活大线。
5800计算器程序15800计算器程序1计算器程序通常是用来进行基本的数学运算的工具,能够帮助用户进行加减乘除等运算。
下面是一个简单的5800计算器程序的实现,代码行数大约1200字以上。
```python# -*- coding: utf-8 -*-#定义一个函数,用于检查输入是否为有效的数值def is_valid_number(num_str):try:float(num_str)return Trueexcept ValueError:return Falseclass Calculator:def __init__(self):self.result = 0#加法运算def add(self, a, b):if is_valid_number(a) and is_valid_number(b): self.result = float(a) + float(b)return self.resultelse:return "请输入有效的数字!"#减法运算def subtract(self, a, b):if is_valid_number(a) and is_valid_number(b): self.result = float(a) - float(b)return self.resultelse:return "请输入有效的数字!"#乘法运算def multiply(self, a, b):if is_valid_number(a) and is_valid_number(b): self.result = float(a) * float(b)return self.resultelse:return "请输入有效的数字!"#除法运算def divide(self, a, b):if is_valid_number(a) and is_valid_number(b): if float(b) != 0:self.result = float(a) / float(b)return self.resultelse:return "除数不能为0!"else:return "请输入有效的数字!"#主程序if __name__ == '__main__':calculator = Calculatorprint("欢迎使用5800计算器程序!")while True:print("请输入要进行的操作:")print("1. 加法")print("2. 减法")print("3. 乘法")print("4. 除法")print("5. 退出程序")choice = input("请选择操作(输入序号):")if choice == "1":num1 = input("请输入第一个数:")num2 = input("请输入第二个数:")print(f"结果为:{calculator.add(num1, num2)}")elif choice == "2":num1 = input("请输入第一个数:")num2 = input("请输入第二个数:")print(f"结果为:{calculator.subtract(num1, num2)}") elif choice == "3":num1 = input("请输入第一个数:")num2 = input("请输入第二个数:")print(f"结果为:{calculator.multiply(num1, num2)}") elif choice == "4":num1 = input("请输入第一个数:")num2 = input("请输入第二个数:")print(f"结果为:{calculator.divide(num1, num2)}")elif choice == "5":print("感谢使用5800计算器程序,再见!")breakelse:print("无效的操作!请重新输入。
FX-5800计算器公路测量常用程序一、程序功能本程序由6个主程序、5个次子程序及5个参数子程序组成。
主要用于公路测量中坐标正反算,设计任意点高程及横坡计算,桥涵放样,路基开挖口及填方坡脚线放样。
程序坐标计算适应于任何线型.二、源程序1.主程序1:一般放样反算程序(①正算坐标、放样点至置仪点方位角及距离;②反算桩号及距中距离)程序名:1ZD-XYLb1 0:Norm 2F=1:(正反算判别,F=1正算,F=2反算,也可以改F前加?,改F为变量)Z[1]=90(与路线右边夹角)Prog"THB":F=1=>Goto 1:F=2=>Goto 2Lb1 1:Fix 3:"X=":Locate 6,4,X◢"Y=":Locate 6,4,Y◢Prog"3JS”:Goto 0:Lb1 2:Fix 3:"KM=":Locate 6,4,Z◢"D=":Locate 6,4,D◢Goto 02.主程序2:高程序横坡程序(设计任意点高程及横坡)程序名:2GCLbI 0:Norm 2“KM”?Z:?D:Prog”H”:Fix 3:” H=”:Locate 6,4,H◢“ I=”: Locate 6,4,I◢Goto 03.主程序3:极坐放样计算程序(计算放样点至置仪点方位角及距离)程序名:3JSX:Y:1268.123→K(置仪点X坐标)2243.545→L(置仪点Y坐标,都是手工输入,也可以建导线点数据库子程序,个人认为太麻烦)Y-L→E:X-K→F:Pol(F,E):IF J<0:Then J+360→J:Int(J)+0.01Int(60Frac(J))+0.006Frac(60Frac(J)) →J:(不习惯小数点后四位为角度显示的,也可以用命令J◢DMS◢来直接显示) Fix 4:” FWJ=”: Locate 6,4,J◢(不习惯小数点后四位为角度显示的,也可以用命令J◢DMS◢来直接显示)Fix 3:” S=”:Locate 6,4,I◢4.主程序4:涵洞放样程序(由涵中心桩号计算出各涵角坐标、在主程序3中输入置仪点坐标后计算放样点至置仪点方位角及距离)程序名:4JH-XYLbI 0:Norm 290→Z[1](涵洞中心桩与右边夹角,手工输入,也可以修改成前面加?后变为变量)1→F:Prog”THB”:?L:Z[2]-Z[1] →E:X+Lcos(E) →X:Y+Lsin(E) →Y:Fix 3: "X=":Locate 6,4,X◢"Y=":Locate 6,4,Y◢Prog"3JS”:Goto 0:5.主程序5:路基开挖边线及填方坡脚线放样程序(输入大概桩号及测量坐标、地面标高计算出偏移距离、桩号、距中距离、填挖高度)程序名:5FBXLbI 0:Norm 2: 18→DimZ:2→F:90→Z[1]:Prog “THB”:Z:D:”M0”?M:M→Z[4]:D →Z[3]:Prog”6GD”:L→Z[6]:If D<0:Then 0.75-L→D:Goto H:Else L-0.75→D:Goto H:IfEndLbI H:Prog”H”:H-0.03-Z[4] →Z[5]:Z[6] →L:If Z[5]<0:Then –z[5] →G:Goto W:Else Z[5] →G:Goto T:LbI W:Prog “W0”:Z[10]+Z[11] →A: If G>A:Then Goto 1:Else If G>Z[10]:Then Goto 2:Else Goto 3:IfEnd:LbI 1:L+Z[12]+Z[13]+Z[14]+(G-A)×Z[9]+Z[11]×Z[8]+Z[10]×Z[7]:Goto Z:LbI 2:L+Z[12]+Z[13]+(G-Z[10])×Z[8]+Z[10]×Z[7]:Goto Z:LbI 3:L+Z[12]+G×Z[7]:Goto z:LbI T:L+0.5→N:If G>Z[17]:Then (N+Z[18]+(G-Z[17])×Z[16]+Z[17]×Z[15])→S:Goto Z:Else (N+G×Z[15])→S:Goto z:LbI Z:Z[3]→D:Fix 2:Abs(D)-S→T:” L0=”:L Locate 6,4,T◢"KM=":Locate 6,4,Z◢"D=":Locate 6,4,D◢“ TW=”: Locate 6,4,Z[5]◢Goto 06.主程序6:路基标准半幅宽度计算程序(对于设计有加宽渐变的有用,如路基宽度无变化,则把此程序直接输入半幅宽度值至L)程序名:6GDProg “G0”Z-C→E:(B-A)×E/S+A→L:L:7.坐标计算次程序(THB)程序名:THB18→DimZ:"KM"?Z:Prog "X0"1÷P→C: (P-R)÷(2HPR) →S: 180÷π→E:F=1=>Goto 1:F=2=>Goto 2←┘Lbl 1:?D: Abs(Z-O) →W:Prog "A":X:Y:Goto 3LbI 2:X:Y:X→I:Y→J:Prog "B":O+W→Z:D→D:Goto 3LbI 3:IF F=1Then X:Y:Else Z:D8. 正算子程序(A)程序名:A0.1184634425→A: 0.2393143352→B:0.2844444444→N 0.046910077→K:0.2307653449→L:0.5→M: U+W(Acos(G+QEKW(C+KWS))+Bcos(G+QELW(C+LW S))+Ncos(G+QEMW(C+MWS))+Bcos(G+QE(1-L)W(C+(1-L)WS))+Acos(G+QE(1-K)W(C+(1-K)WS))) →X:V+W(Asin(G+QEKW(C+KWS))+Bsin(G+QELW(C+LWS))+Nsin(G+QEMW(C+MWS))+Bsin(G+QE(1-L)W(C+(1-L)WS))+Asin(G+QE(1-K)W( C+(1-K)WS))) →Y:G+QEW(C+WS)+Z[1]→Z[2]:X+Dcos(Z[2])→X: Y+Dsin(Z[2])→Y9. 反算子程序(B)程序名:BG-90→T: Abs((Y-V)cos(T)-(X-U)sin(T)) →W: 0→D:Lbl 0:Prog "A":T+QEW(C+WS) →L: (J-Y)cos(L)-(I-X)sin(L)→D:IF Abs(D)<0.01:Then Goto1:Else W+D→W:Goto 0←┘Lbl 1:0→D:Prog "A":(J-Y)÷sin(Z[2]) →D:10.高程计算子程序(H)程序名:HProg “S0”:R:T:C:G:I:C-T→F:Z-F→L:C+T→E:G-TI→Q:If T=O:Then Q+LI→H:Goto 0:Else If Z<F:Then Q+LI→H:Goto 0:Else If Z≤E:Then Q+LI+L2÷2÷R→H:Goto 0:LbI 0:H:If D=0:Then Goto I:Else Prog “I”:H+V→H:Goto I:LbI I:H:I:11.高程超高计算程序(I)程序名:IProg”I0”:W=1=> Goto 0:W=2=>Goto 1:LbI 0:If L=0:Then Abs(D)×M→V:Goto 2:Else Abs(D)×((N-M)×(Z-C)÷L+M)→V:Goto 2:IfEnd:LbI 1:If L=0:Then Abs(D)×M→V:Goto 2:Else Abs(D)×(((3((Z-C)÷L)2-2((Z-C)÷L)∧(3))×(N-M))+M)→V:Goto 2:IfEnd:LbI 2:Abs(D)→E:V÷E→I:I(E-K)→V:12.数据子程序(附后示例)①程序名:X0(坐标计算要素程序)If Z≥25900 And Z≤26615.555:Then 25900→O:11587.421→U:1847.983→V:101。
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))+Bsin(G+ QEFW(C+FWD))+Asin(G+QEMW(C+MWD))) →Y:G+QEW(C+WD)+90→F:X+Zcos(F)→X:Y+Zsin(F)→Y 2. 反算子程序(SUB2)G-90→T:Abs((Y-V)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)<1E-6:Then0→Z:Prog "SUB1" :(J-Y)÷sin(F)→Z:(这里的两个冒号是自己加的)Else W+Z→w:Goto0: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,每增加一个工程增加一个文件。
1、主程序:程序名:ZCX输入:”K”?K←If K >540980.584 (直线起点里程) And K<= (小于等于符号)541358.301:(直缓点里程)Then 2890632.365→A: 526217.878→B:79°34′47.8″→F:540980.584→J:Prog”ZX”(A,B,F,J分别为起算点坐标,方位角,里程) Prog”PJ”(运行求偏距的程序)IfEndIf K>541358.301 (直缓点里程)And K<=541488.301:(缓圆点里程)Then 2890700.680→A:526589.366→B: 79°34′47.8″→F: 541358.301→J:1→G:3500→R:130→L:Prog”HHQX”(A,B,F,J,G,L分别为直缓点坐标,方位角,里程,偏向,圆曲线半径,缓和曲线长度)Prog”PJ”IfEndIf K>541488.301(缓圆点里程)And K<=541694.275:(圆缓点里程)Then 2890723.4→A: 526717.363→B:80°38′38.4″→F:541488.301→J:1→G:3500→R:Prog”YQX”(A,B,F,J,G,L分别为缓圆点坐标,方位角,里程,偏向,圆曲线半径,缓和曲线长度)Prog”PJ”IfEndIf K>541694.275 (圆缓点里程)And K<=541824.275:(缓直点里程)Then 2890762.83→A:527050.912→B: 85°04′47.7″→F: 541824.275→J:-1→G:3500→R:130→L:Prog”HHQX”(A,B,F,J,G,L分别为缓直点坐标,方位角,里程,偏向,圆曲线半径,缓和曲线长度)Prog”PJ”IfEndIf K>541824.275 (缓直点里程)And K<=542167.602:(下一段直缓点里程)Then 2890762.83→A:527050.912→B: 85°04′47.7″→F: 541824.275→J: Prog”ZX”(A,B,F,J分别为缓直点坐标,方位角,里程)注:以上程序为一段标准曲线(包括直线,缓和曲线,圆曲线,缓和曲线,直线)的主程序,程序名为ZX,HHQX,YQX2、直线程序程序名:ZXA+(K – J )xcos(F) →X:”X0=”:X◢B+(K – J )xsin(F) →Y:”Y0=”:Y◢F→W:”F=”:W◢3、圆曲线程序程序名:YQXA+2xRxSin(90x(K- J)÷∏÷R)XCos(F+90xGx(K- J) ÷∏÷R) →X:”X0=”:X◢B+2xRxSin(90x(K- J)÷∏÷R)XSin (F+90xGx(K- J) ÷∏÷R) →Y:”Y0=”:Y◢F+180xGx(K- J) ÷∏÷R→W: F=”:W◢4、缓和曲线程序程序名:HHQXA+((K- J)-(K- J)5÷(90xR²xL²))xcos(F+30xGx(K- J) ²÷∏÷R÷L) →X: “X0=”:X◢B+((K- J)-(K- J)5÷(90xR²xL²))xsin(F+30xGx(K- J) ²÷∏÷R÷L) →Y: “Y0=”:Y◢F+90xGx(K- J) ²÷∏÷R÷L→W:”F=”:W◢5、偏距程序50→DimZ“Z=”?Z:(Z为偏离线路中线的距离)X+Zxcos(W-90) →U:”XL=”:U◢(左边X坐标)Y+Zxsin(W-90) →V:”YL=”:V◢(左边Y坐标)X+Zxcos(W+90) →D:”XR=”:D◢(右边X坐标)Y+Zxsin(W+90) →E:”YR=”:E◢(右边Y坐标)Return。
卡西欧5800程序完整版"ZS=1,FS=2"?N: 1÷P →C:(P-R)÷(2HPH)→D:180÷π→E: If N=1: Then Goto 1: Else Goto 2: IfEnd←┚LbI 1:1 →I:0 →Z:Abs(K-O) →W: Prog"ZS"←┚F-90→F←┚"JJ"?K:"PJ"?L: "ZX=":X+Lcos(F+K) →Z[3]◢"ZY=": Y+Lsin(F+K) →Z[4]◢"QXFWJ=":F DMS◢Abs(Z) →Z:Goto 8←┚LbI 2:"X"?I:"Y"?J: Prog"FS":"FSZH=":O+W→K◢"FSJL=":Z◢Lbl 8正算子程序(ZS)(不运行)1÷P→C:(P-R)÷(2HPR) →D: 180÷π→E←┚0.1739274226→A:0.3260725774→B:0.0694318442→K:0.3300094782→L:1-L→F:1-K→M:U+W(Acos(G+QEKW(C+KWD))+Bcos(G+QELW(C+ LWD))+Bcos(G+QEFW(C+FWD))+Acos(G+QEMW(C+MWD)))→X:V+W(Asin(G+QEKW(C+KWD))+Bsin(G+QELW(C+LWD))+Bsin(G+Q EFW(C+FWD))+Asin(G+QEMW(C+MWD)))→Y:G+QEW(C+WD)+9 0→F:X+ZcosF→X:Y+ZsinF→Y3反算子程序(FS)(不运行)G-90→T:Abs((Y-V))cos(T)-(X-U)sin(T)→W:0→Z←┚Lbl 0←┚prog"ZS":T+QEW(C+WD)→L:(J-Y)cosL-(I-X)sinL→Z:If Abs(Z)<0.001: Then Goto1:Else W+Z→W:IfEnd :Goto 0←┚Lbl 1:0→Z:Prog"ZS":(J-Y)÷sinF→ZZX-WN(运行主程序,该程序适用于匝道,对全段完整非对称曲线计算太过麻烦)"CZX"?S(仪站X坐标):"CZY"?W(仪站Y坐标)LbI 0: "K"?K: If K≤126.9(第1条单一曲线的终点下面同上): Then Goto A:El se If K≤176.9 And K>126.9: Then Goto B:Else If K≤259.562 And K>176.9: T hen Goto C:Else If K≤309.562 And K>259.562: Then Goto D:IfEnd:IfEnd:IfEn d:IfEnd←┚LbI A:92094.336(起点X坐标)→U:8287.962(起点Y坐标)→V:0起点桩号→O:1 45°11'54"(方位角)→G:126.9(曲线长度)→H:10^(45) (起点半径)→P:10^(4 5) (止点半径)→R:+1(路线左右偏,左负右正,直线输0)→Q:Prog "WN":Got o WLbI B:91990.134→U:8360.388→V:126.9→O:145°11'54"→G:50→H:10^(45) →P: 150 →R:+1→Q:Prog "WN":Goto WLbI C:91947.609→U:8386.570→V:176.9→O:154°44'51"→G:82.662→H:150 →P: 150 →R:+1→Q:Prog "WN":Goto WLbI D:91867.101→U:8399.992→V:259.562→O:186°19'19"→G:50→H:150 →P: 10^(45) →R:+1→Q:Prog "WN":Goto WLbI W:"PJ1"?T←┚(该项是只左右边桩再左右偏距,输0为不再左右偏,可以直接出方位角、距离,适用于桥梁桥台、盖梁、涵洞八字墙等放样,以路线前进方向,前-,后+)If T=0:Then Z[3]→Z: Z[4]→M: Goto P: Else Goto V: IfEnd←┚LbI V:"JJ1"? O←┚(左右边桩再偏夹角,用180°减去路线夹角)"X1=": Z[3]+Tcos(F+N+ O)→U◢"Y1=":Z[4]+Tsin(F+N+ O)→V◢U→Z: V→M: GotoP←┚LbI P:Pol(Z-S,M-W): If J≤0:Then J+360°→J: IfEnd←┚"JL=":I◢(仪站至测点的距离)"FWJ=":J DMS◢(仪站至测点的方位角)Goto0备注:1.规定以道路中线前进方向(即里程增大的方向)区分左右;当线元往左偏时Q=-1;当元线往右偏时,Q=1:当元线为直线时,Q=0。
立交匝道坐标放样正反算CASIO fx-5800P程序(带数据库功能) [图片]MN互通式立交线位数据图(由于图片大小的限制,此处不清晰,参见《CASIO fx-5800P计算与道路坐标放样计算》P162附录2).三、立交匝道线元数据的整理经整理,匝道a、b、c线元数据如下(d匝道和MR匝道略)。
四、程序代码注:根据实际使用情况,在桩号反算时,若桩号比较大(匝道起始桩号一般为0),还是让用户输入一个估算的对应桩号为好,因此程序第29、30行分别改为(每行结尾处省略回车符):29行:"X"?F: "Y"?G: "K"?P30行:F→I: G→Jd匝道和MR匝道数据库子程序略。
五、程序变量清单六、计算流程示例1.坐标正算示例计算任务:计算MN互通式立交c匝道K0+315.3中桩坐标及切线方位角,以及该桩左侧4.5米、右侧6米的边桩坐标,假设在导线点(2807544.340,475613.014)上架设全站仪,计算这三个点位的极坐标放样数据。
使注:第22行D1计算结果应为:124.944。
2.坐标反算示例计算任务:根据上面计算的c匝道K0+315.3中桩坐标,以及该桩左侧4.5米、右侧6米的边桩坐标计算结果,反算对应的c匝道桩号及距中距离,并进行结果的验证。
使用立交匝道坐标放样计算程序RAMP-4的操作流程见下表道路中边桩坐标放样正反算程序ROAD-2(0908改进版)1.主程序清单:ROAD-22.子程序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-XS功能:显示计算结果。
1.单圆曲线(YQX1)(张队提供)“KO”?O:“X0”?A:“Y0”?B:“JDX”?X:“JDY”?Y:“FWJ”?J:“FO”?F:?N:?R:6→DimZ←┘(K0为输入起算点桩号,X0为输入起算点X坐标,Y0为输入起算点Y坐标,JDX输入曲线所在交点X坐标,无输入0,JDY为输入曲线所在的Y坐标,无输入0,FWJ为输入起算点的方位角,F0为输入交点处的转角,带正负号,N为转角方向,线路左转输入+1,线路右转输入-1,R为输入曲线半径)Abs(F)÷2→G◢“T=”:Rtan(G)→T◢(计算切线长)“L=”:GRπ÷90→L◢(计算圆曲线长)“E=”:R÷cos(G)-R→E◢(计算外距,即交点到QZ点的距离)LbI 1←┘?K:180N(K-O)÷(πR)→V:2Rsin(0.5NV)→M←┘(K为输入待求点的桩号)V为带求点与起算点间的弦长说对应的圆心角“XZ=”:A+Mcos(J+0.5V)→Z[1]◢(计算出的中桩X坐标)“YZ=”:B+Msin(J+0.5V)→Z[2]◢(计算出的中桩Y坐标)tan-1((Z[2]-Y)÷(Z[1]-X))→U←┘If U<0:Then U+360→U:Else U→U:If End←┘“FW=”?U :U DMS◢(计算出的中桩与交点的方位角)?W:“XL=”:Z[1]-NWcos(J+V+90)→Z[3]◢(W为输入路半宽,计算出的左边桩X坐标)“YL=”:Z[2]-NWsin(J+V+90)→Z[4]◢(计算出的左边桩Y坐标)“XR=” Z[1]+NWcos(J+V+90)→Z[5]◢(计算出的右边桩X坐标)“YR=”:Z[2]+NWsin(J+V+90)→Z[6]◢(计算出的右边桩Y坐标)“OK”?S:If S=1:Then Goto 1:Else“STOP”:Stop(S输入1返回继续计算下一点,输入其他值退出程序)2.YQX-ZB(圆曲线中边桩放样)“R”?R:(圆曲线半径)“P”?P:(线路转角)“F”?F:(起始方位角)“G”?G:(线路转向信息,左转为-1,右转为+1)“ZY-X”?M:?N:(ZY点坐标)“L=”πRP÷180→A◢(曲线弧长)F+90G→F(ZY点的径向方位角)“O-X”:M+Rcos (F) →A◢(圆心X坐标)“O-Y”:N+Rsin (F)→B◢(圆心Y坐标)“ZY-ZH”:?Z(ZY点桩号)Lb1 0:“JM-ZH”:?K: (加密点桩号)K-Z→V: (加密点曲线弧长)180V÷(πR) →U: (加密点曲线弧长所对应的圆心角)F+180+GU→U: (圆心至加密点的方位角)“XP=”:A+Rcos(U) →S◢(加密点中桩X坐标)“YP=”:B+Rsin(U) →T◢(加密点中桩Y坐标)“BZ”:?W: (边桩宽度)“XL=”:S+GWcos(U)◢(左边桩X坐标)“YL=”:T+GWsin(U)◢(左边桩Y坐标)“XR=”:S-GWcos(U)◢(右边桩X坐标)“YR=”:T-GWsin(U)◢(右边桩Y坐标)Goto 0:3.(ZX-ZB) 直线段中边桩放样“QD-X,Y”:?A:?B: (起点坐标(A,B))“QD-ZH”:?Z: (起算点桩号)“ZD-X,Y”:?C:?D: (终点坐标(C,D))Pol(C-A,D-B):J<0=>J+360→J: (线路方位角) LbI 0:“ZD-ZH”:?K: (加密点桩号)K-Z→V: (加密点到起算点极径)“XP=”:A+Rec(K,F) →M◢(加密点中桩X坐标)“YP=”:B+J →N◢(加密点中桩Y坐标) “BZ”:?W: (边桩宽度)F-90→U(中桩到边桩向量的方位角)“XL=”:M+Rec(W,U)◢(左边桩X坐标)“YL=”:N+J◢(左边桩Y坐标)“XR=”:M-I◢(右边桩X坐标)“YR=”:N-J◢(右边桩Y坐标)Goto 0:。
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),可以根据曲线段——直线、圆曲线、缓和曲线(完整或非完整型)的线元要素(起点坐标、起点里程、起点切线方位角、线元长度、起点曲率半径、止点曲率半径、左偏或右偏)及里程边距或坐标,对该线元段范围内任意里程中边桩坐标进行正算。
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)。
1 R(园曲半径)2 S(缓曲长,为零时是园曲)3 T(转角,左“-”,右“+”)4 W(ZH或ZY至JD的方位角)5 X(JD的纵坐标)6 Y(JD的横坐标)7 Z(JD的桩号)8 P=S^2/R/24-S^4/R^3/2688+S^6/R^5/422409 Q=S/2-S^3/R^2/240+S^5/R^4/3456010 U=S+πRAbsT/18011 V=Q+(P+R)tan(AbsT/2)12 M(计算点桩号)13 N(计算点横向距离,左“-”,右“+”)14 O(计算点纵向距离,后“-”,前“+”)15 L=M-Z+V16 L>U/2=>L=U-L:U=-1:W=W+T+180:≠>U=1⊿17 L≤0=>Z=0:Q=L:P=0: ≠>L≥S=>Z=180(L-S/2)/R/π:Q=Q+RsinZ:P=P+R-RcosZ: ≠>S=RS:Z=90L^2/S/π:Q=L-L^5/S^2/40+L^9/S^4/3456: P=L^3/S/6-L^7/S^3 /336+L^11/S^5/42240⊿⊿18 Q=Q-V:P=PUT/AbsT:T=W+ZUT/AbsT+90U19 X=X+QcosW-PsinW+NcosT+OsinT20 Y=Y+QsinW+PcosW+NsinT-OcosT21 Z=T-90坐标正算(由里程、偏距算坐标)1 L(计算点桩号)2 M(计算点横向距离,左“-”,右“+”)3 N(计算点纵向距离,后“-”,前“+”)4 Prog “QXYS”:Prog “JSZB”5 “X=”:X:Pause 0:“Y=”:Y坐标反算(由坐标计算里程、偏距)1 L=Q(有效里程,最好是起点里程): M=0: N=02 G(实测点纵坐标X): H(实测点横坐标Y)3 Lb1 0:Prog “QXYS”:Prog “JSZB”4 F=(H-Y)sinZ+(G-X)cosZ L=L+F:AbsF≥1E-3=>GOTO 0⊿5 “Li Cheng=”:L:PAUSE 0:“Ju Li=”:D=(H-Y)cosZ-(G-X)sinZ子程序——QXYS1 L≥Q=>L<V=>Q=…:R=…:S=…:T=…:U=…:V=…:W=…⊿⊿2 ……3 L≥Q=>L<V=>Q=…:R=…:S=…:T=…:U=…:V=…:W=…⊿⊿式中:Q(起点里程) R(起点纵坐标X)S(起点横坐标Y) T(起点方位角)U(起点半径,左“-”,右“+”) V(终点里程)W(终点半径,左“-”,右“+”)子程序——JSZB1 O=45(L-Q)/U/π: P=5.625(L-Q)2*(W-1-U-1)/(V-Q)/π2 I=T+O+P:J=T+2O+4P:K=T+3O+9P:Z=T+4O+16P3 X=R+(L-Q)*(cosT+4(cosK+cosI)+2cosJ+cosZ)/12-MsinZ +NcosZ4 Y=S+(L-Q)*(sinT+4(sinK+sinI)+2sinJ+sinZ)/12+McosZ+Nsin Z坐标正算(由里程、偏距算坐标)1 L(计算点桩号)2 M(计算点横向距离,左“-”,右“+”)3 N(计算点纵向距离,后“-”,前“+”)4 Prog “QXYS”:Prog “JSZB”5 “X=”:X:Pause 0:“Y=”:Y坐标反算(由坐标计算里程、偏距)1 L=Q(有效里程,最好是起点里程): M=0: N=02 G(实测点纵坐标X): H(实测点横坐标Y)3 Lb1 0:Prog “QXYS”:Prog “JSZB”4 F=(H-Y)sinZ+(G-X)cosZ L=L+F:AbsF≥1E-3=>GOTO 0⊿5 “Li Cheng=”:L:PAUSE 0:“Ju li=”:D=(H-Y)cosZ-(G-X)sinZ(H-Y)sinZ+(G-X)cosZ=(H-Y)cos(Z-90)+(G-X)sin( Z-90)子程序——QXYS1 L≥Q=>L<V=>Q=…:R=…:S=…:T=…:U=…:V=…:W=…⊿⊿2 ……3 L≥Q=>L<V=>Q=…:R=…:S=…:T=…:U=…:V=…:W=…⊿⊿式中:Q(起点里程) R(起点纵坐标X)S(起点横坐标Y) T(起点方位角)U(起点半径,左“-”,右“+”) V(终点里程)W(终点半径,左“-”,右“+”)子程序——JSZB1 O=45(L-Q)/U/π: P=5.625(L-Q)2*(W-1-U-1)/(V-Q)/π2 I=T+O+P:J=T+2O+4P:K=T+3O+9P:Z=T+4O+16P3 X=R+(L-Q)*(cosT+4(cosK+cosI)+2cosJ+cosZ)/12-MsinZ +NcosZ4 Y=S+(L-Q)*(sinT+4(sinK+sinI)+2sinJ+sinZ)/12+McosZ+Nsin Z-MsinZ=+Mcos(Z+90)+McosZ=+Msin(Z+90)5800坐标正算(由里程、偏距算坐标)1 “LI CHENG:”? L(计算点桩号)2 “S-HX(L“-”,R“+”):”?M(计算点横向距离,左“-”,右“+”)3 “S-ZX(Q“-”,H“+”:”?N(计算点纵向距离,后“-”,前“+”)4 Prog “QXYS”:Prog “JSZB”5 “X=”:X◢“Y=”:Y坐标反算(由坐标计算里程、偏距)1 Q→L(有效里程,最好是起点里程): 0→M: 0→N2 “X=”?G(实测点纵坐标X): “Y=”?H(实测点横坐标Y)3 Lb1 0:Prog “QXYS”:Prog “JSZB”:4 (H-Y)sinZ+(G-X)cosZ F: L+F→L:IF AbsF≥1E-3 THEN GOTO 0⊿5 “Li Cheng=”:L◢“Ju Li=”:(H-Y)cosZ-(G-X)sinZ子程序——QXYS1 IF L≥Q AND L<V THEN …→Q:…→R:…→S:…→T:…→U:…→V:…→W:IF END2 ……3 IF L≥Q AND L<V THEN…→Q:…→R:…→S:…→T:…→U:…→V:…→W:IF END式中:Q(起点里程) R(起点纵坐标X)S(起点横坐标Y) T(起点方位角)U(起点半径,左“-”,右“+”) V(终点里程)W(终点半径,左“-”,右“+”)子程序——JSZB1 45(L-Q)/U/π→O: 5.625(L-Q)2*(W-1-U-1)/(V-Q)/π→P2 T+O+P→I: T+2O+4P→J: T+3O+9P→K: T+4O+16P→Z3 R+(L-Q)*(cosT+4(cosK+cosI)+2cosJ+cosZ)/12-MsinZ +NcosZ→X4 S+(L-Q)*(sinT+4(sinK+sinI)+2sinJ+sinZ)/12+McosZ+Nsin Z→Y。
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 →FReC(Abs(F),D+: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(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) →HLbl 1”END〃说明:QZHAO:曲中点里程,H+B:曲中点高程,I1:第一坡度,I2:第二坡度,R:半径,T:切线长,DQ:待求点里程。
一、直线段中边桩坐标计算Deg:Fix3(设置角度单位为十进制,3位固定小数显示)“QD:K=”?→A: “QD:X=”?→B: “QD:Y=”?→C: “QD:FWJ=”?→D (输入起点桩号、坐标、方位角)Lbl 1(设置程序标签)“K=”?→E:“L=”?→F:“JJ=”?→J(输入待求点桩号;边距:左负右正)B+(E-A)cos(D)+Fcos(D+J)→HC+(E-A)sin(D)+Fsin(D+J)→I“Xn=”:H◢“Yn=”:I◢(计算并显示待求点坐标)Goto 1(转向程序标签1继续执行程序)二、圆曲线中边桩坐标计算Deg:Fix3(设置角度单位为十进制,3位固定小数显示)“ZY:K=”?→A: “ZY:X=”?→B: “ZY:Y=”?→C: “ZY:FWJ=”?→D: “R=”?→E: “ZJ=”?→F(输入ZY点桩号、坐标、方位角,圆曲线半径,转角:左负右正)Lbl 1(设置程序标签)“K=”?→G:“L=”?→H:“JJ=”?→S(输入待求点桩号;边距:左负右正)(G-A)×180°÷π÷E→J(计算圆心角)D+J→M(计算P点的切向方位角)2Esin(J÷2) →K(计算弦长)If F>0:Then (D+J÷2)→L :Else(D-J÷2)→L :IfEnd(计算ZY到P点的方位角)B+Kcos(L)+Hcos(M+S) →NC+Ksin(L)+Hsin(M+S) →O“Xn=”:N◢“Yn=”:O◢“a=”:M◢(计算并显示待求点坐标、路线切向方位角)Goto 1(转向程序标签1继续执行程序)三、第一完整缓和曲线中边桩坐标计算Deg:Fix3(设置角度单位为十进制,3位固定小数显示)“ZH:K=”?→A:“ZH:X=”?→B:“ZH:Y=”?→C:“ZH:FWJ=”?→D:“R=”?→E:“L1=”?→F:“ZJ=”?→G(输入起点桩号、坐标、方位角,圆曲线半径,缓和曲线长度,转角:左负右正)Lbl 1“K=”?→H:“L=”?→I :“JJ=”?→V(输入待求点桩号;边距:左负右正) (H-A)- (H-A)5÷40÷E 2÷F 2→K(H-A)3÷6÷E ÷F-(H-A)7÷336÷E 3÷F 3→L(H-A)2×90°÷π÷E ÷F →MIf G >0:Then D+M →N : Else D-M →N: IfEnd任意点的切向方位角TL K →+22计算弦长If G >0:Then D+M ÷3→U : Else D-M ÷3→U: IfEnd计算弦的方位角 B+TcosU+Icos(N+V) →R C+TsinU+Isin(N+V) →S“Xn=”:R ◢ “Yn=”:S ◢ “a=”:N ◢ Goto 1四、第二完整缓和曲线中边桩坐标计算 Deg:Fix3(设置角度单位为十进制,3位固定小数显示) “HZ:K=”?→A:“JD:X=”?→B:“JD:Y=”?→C: “ZH:FWJ=”?→D: “ZJ=”?→E :“T2=”?→F:“L2=”?→G: “R=”?→H(输入终点桩号,交点坐标,起点方位角,转角:正左负右,第二缓和曲线长度、切线长,圆曲线半径)If E<0:Then D+180°-(180°+E)→I:IfEnd: If E>0:Then D+180°+(180°-E)→I :IfEndB+Fcos(I) →KC+Fsin(I) →L“HZ:X=”:K◢“HZ:Y=”:L◢“a=”:I◢Lbl 1“K=”?→M:“L=”?→N:“JJ=”?→O(输入待求点桩号;边距;夹角:正左负右)(A-M)- (A-M)5÷40÷H2÷G2→P(A-M)3÷6÷H÷G-(A-M)7÷336÷H3÷G3→QIf E<0:Then I+180°+180°+90°→R :IfEnd: If E>0:Then I+180°+180°-90°→R :IfEnd(A-M)2×180°÷2÷π÷H÷G→UIf E<0:Then I+180°+(180°-U)→V:IfEnd: If E>0:Then I+180°-(180°-U)→V :IfEndK+Pcos(I+180°)+QcosR+Ncos(X+180°+O)→SL+Psin(I+180°)+QsinR+Nsin(X+180°+O)→T“Xn=”:S◢“Yn=”:T◢“a=”:V◢Goto 1二、圆曲线中边桩坐标计算Deg:Fix3(设置角度单位为十进制,3位固定小数显示)“ZY:K=”?→A: “ZY:X=”?→B: “ZY:Y=”?→C: “ZY:FWJ=”?→D: “R=”?→E: “ZJ=”?→F(输入ZY点桩号、坐标、方位角,圆曲线半径,转角:左负右正)Lbl 1(设置程序标签)“K=”?→G:“L=”?→H:“JJ=”?→S(输入待求点桩号;边距:左负右正)(G-A)×180°÷π÷E→J(计算圆心角)D+J→M(计算P点的切向方位角)If F>0:Then (D+90°)→L :Else(D-90°)→L :IfEnd(计算ZY到圆心O的方位角)If F>0:Then (L+180°+J)→X:Else(L+180°-J)→X :IfEndB+Ecos(L)+(E+H)cos(X) →NC+Esin(L)+(E+H)sin(X) →O“Xn=”:N◢“Yn=”:O◢“a=”:M◢(计算并显示待求点坐标、路线切向方位角)Goto 1(转向程序标签1继续执行程序)。
增加变量16→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":"XS=”:X→X◢"YS=”:Y→Y ◢"FS=”:(F-90) →F:F►DMS◢Prog "FA":Goto 1:Lbl 2:”CX=”?X: X→I:”CY=”?Y: Y→J:”DMG=”?→Z[7]:Prog "SUB2":"S=":(O+W) →S◢"Z="Z→Z◢If N=3:Then Prog”SDYX”: IfEnd :If N=4:Then Prog”BIANPO”:IfEnd:Goto 22. 正算子程序(SUB1)0.1739274226 →Z[1]:0.3260725774→B:0.0694318442→K:0.3300094782→L:(1-L) →F:(1-K)→M:U+W(Z[1]cos(G+QEKW(C+KWD))+Bcos(G+QELW(C+LWD))+Bcos( G+QEFW (C+FWD))+Z[1]cos(G+QEMW(C+MWD))) →X:V+W(Z[1]sin(G+QEKW(C+KWD))+Bsin(G+QELW(C+LWD))+Bsin(G+QEFW(C+FWD))+Z[1]sin(G+QEMW(C+MWD))) →Y:G+QEW(C+WD)+90→F:X+ZcosF→X:Y+ZsinF→Y3. 反算子程序(SUB2)G-90 →Z[2]:Abs((Y-V)cosZ[2]-(X-U)sinZ[2]) →W:0→Z:Lbl 0:Prog "SUB1":Z[2]+QEW(C+WD) →L:(J-Y)cosL-(I-X)sinL→Z:If Abs(Z)<1E-6:Then Goto1:Else W+Z→W:Goto 0: IfEndLbl 1:0→Z:Prog "SUB1":(J-Y)÷sinF→Z4. 数据库(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:IfEnd…………If S>236005.651:Then Cls:Stop: IfEndLbl 1: 1÷P→C:(P-R)÷(2HPR) →D:180÷π→E:5. 算方位角程序(FA)LbI0:“XC=”? A : “YC=”? T :X:Y0→J:POI(X-A,Y-T)→I:“BC=”:I◢If J<0 Then 360+J→J:ElseJ→J :IfEnd“FW=”:J►DMS◢Goto06. 使用方位角算坐标(NE)LbI0:“X=”? X: “Y=”? Y: “L=”? L:“F0”?F:L×Cos(F)+X→N: “N=”N◢L×Sin(F)+Y→E: “E=”E◢Goto07. 边坡放样程序(BIANPO)“QPDJL=”? →Z[3]: “QPDGD=”? →Z[4]: “PG=”? →Z[5]:2→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[11] ◢Else“W=”:Z[11] ◢IfEndZ[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-(Z[13]+Z[6] ×Int Z[12]+Z[3])→Z[14]:“BP+C-J=”: Z[14] ◢。
5800万能曲线计算程序(分段计算)一:ZBJS (母程序)Lb1 1: "DKI"?H:Prog"M"↓(E-D)÷Abs(G-F) →P: Abs(H-F) → Q: P×Q→I↓C+(I+2D)×Q×90÷π→J↓"J=":J▲C+(I÷8+2D)×Q×45÷(4π)→M↓C+(3I÷8+2D)×Q×135÷(4π)→N↓C+(5I÷8+2D)×Q×225÷(4π)→U↓C+(7I÷8+2D)×Q×315÷(4π)→V↓C+(I÷4+2D)×Q×45÷(2π)→K↓C+(I÷2+2D)×Q×45÷π→W ↓C+(3I÷4+2D)×Q×135÷(2π)→Z↓?T↓A+Q÷24×(cosC+4×(cosM+cosN+cosU+cosV)+2×(cosK+cosW+cosZ)+cosJ)→X↓B+Q÷24×(sinC+4×(sinM+sinN+sinU+sinV)+2×(sinK+sinW+sinZ)+sinJ)→Y↓"X=":X▲"Y=":Y▲"DL"?O: "DR"?R↓"XL=":X+Ocos(J-(180-T))▲"YL=":Y+Osin(J-(180-T)) ▲"XR=":X+Rcos(J+T) ▲"YR=":Y+Rsin(J+T) ▲Goto 1↓二、M(子程序)(数据库)If H≤19052.852(终点桩号):Then(起点桩号)18892.852→F:(终点桩号)19052.852→G:(起点X坐标)2521815.012→A:(起点Y坐标)405844.892→B:(起点切线方位角)181.2275833→C:起点曲率→D:终点曲率→E: Goto 0:If End换行If H≤19152.874(终点桩号):Then(起点桩号)19052.852→F:(终点桩号)19152.874→G:(起点X坐标)2521655.036→A:(起点Y坐标)405811.512→B:(起点切线方位角)177.9535388(弧度)→C:起点曲率→D:终点曲率→E: Goto 0:If End换行同上下一个线元要素。
卡西欧5800程序完整版"ZS=1,FS=2"?N: 1÷P →C:(P-R)÷(2HPH)→D:180÷π→E: If N=1: Then Goto 1: Else Goto 2: IfE nd←┚LbI 1:1 →I:0 →Z:Abs(K-O) →W: Prog"ZS"←┚F-90→F←┚"JJ"?K:"PJ"?L: "ZX=":X+Lcos(F+K) →Z[3]◢"ZY=": Y+Lsin(F+K) →Z[4]◢"QXFWJ=":F DMS◢Abs(Z) →Z:Goto 8←┚LbI 2:"X"?I:"Y"?J: Prog"FS":"FSZH=":O+W→K◢"FSJL=":Z◢Lbl 8正算子程序(ZS)(不运行)1÷P→C:(P-R)÷(2HPR) →D: 180÷π→E←┚0.1739274226→A:0.3260725774→B:0.0694318442→K:0.3300094782→L:1-L→F:1-K→M:U+W(Acos(G+QEKW(C+KWD))+Bcos(G+QELW(C+LWD))+Bcos(G+QEFW(C+FWD))+Acos(G+QEMW(C+MWD)))→X:V+W(Asin(G+QEKW(C+KWD))+Bsin(G+QELW(C +LWD))+Bsin(G+QEFW(C+FWD))+Asin(G+QEMW(C+MWD)))→Y:G+QEW(C+WD)+90→F:X+ZcosF→X:Y+ZsinF→Y3反算子程序(FS)(不运行)G-90→T:Abs((Y-V))cos(T)-(X-U)sin(T)→W:0→Z←┚Lbl 0←┚prog"ZS":T+QEW(C+WD)→L:(J-Y)cosL-(I-X)sinL→Z:If Abs(Z)<0.001: Then Goto1:E lse W+Z→W:IfEnd :Goto 0←┚Lbl 1:0→Z:Prog"ZS":(J-Y)÷sinF→ZZX-WN(运行主程序,该程序适用于匝道,对全段完整非对称曲线计算太过麻烦)"CZX"?S(仪站X坐标):"CZY"?W(仪站Y坐标)LbI 0: "K"?K: If K≤126.9(第1条单一曲线的终点下面同上): Then Goto A:Else If K≤176.9 And K>126.9: Then Goto B:Else If K≤259.562 And K>176.9: Then Goto C:Else If K≤309.562 And K >259.562: Then Goto D:IfEnd:IfEnd:IfEnd:IfEnd←┚LbI A:92094.336(起点X坐标)→U:8287.962(起点Y坐标)→V:0起点桩号→O:145°11'54"(方位角)→G:126.9(曲线长度)→H:10^(45) (起点半径)→P:10^(45) (止点半径)→R:+1(路线左右偏,左负右正,直线输0)→Q:Prog "WN":Goto WLbI B:91990.134→U:8360.388→V:126.9→O:145°11'54"→G:50→H:10^(45) →P:150 →R:+1→Q:Pr og "WN":Goto WLbI C:91947.609→U:8386.570→V:176.9→O:154°44'51"→G:82.662→H:150 →P:150 →R:+1→Q:Pr og "WN":Goto WLbI D:91867.101→U:8399.992→V:259.562→O:186°19'19"→G:50→H:150 →P: 10^(45) →R:+1→Q: Prog "WN":Goto WLbI W:"PJ1"?T←┚(该项是只左右边桩再左右偏距,输0为不再左右偏,可以直接出方位角、距离,适用于桥梁桥台、盖梁、涵洞八字墙等放样,以路线前进方向,前-,后+)If T=0:Then Z[3]→Z: Z[4]→M: Goto P: Else Goto V: IfEnd←┚LbI V:"JJ1"? O←┚(左右边桩再偏夹角,用180°减去路线夹角)"X1=": Z[3]+Tcos(F+N+ O)→U◢"Y1=":Z[4]+Tsin(F+N+ O)→V◢U→Z: V→M: GotoP←┚LbI P:Pol(Z-S,M-W): If J≤0:Then J+360°→J: IfEnd←┚"JL=":I◢(仪站至测点的距离)"FWJ=":J DMS◢(仪站至测点的方位角)Goto0备注:1.规定以道路中线前进方向(即里程增大的方向)区分左右;当线元往左偏时Q=-1;当元线往右偏时,Q=1:当元线为直线时,Q=0。
一、程序设计1.测量放样计算主程序 CLFYV=19:Fixm:Rad{OEFG}:O”1.XL 2.SD”:E”DZ”:F”DH”:G”AH”Pol(Z[F+52]-Z[E+52],Z[F+62]-Z[E+62])D=πG ÷ 180-JLbl 1O ¹ 1 Þ Goto 2 ◣{KQ}:K”KF”:Q”BL”Prog ”ZB”X=X+Rec(Q,U+π ÷ 2):Y=Y+JGoto 3Lbl 2{XY}:X”XF”:Y”YF”Lbl 3Pol(X-Z[E+52],Y-Z[E+62])I”S=” ◢I=J+DI>2π Þ I=I-2π ◣I<0 Þ I=I+2π ◣I=180I ÷ πI”A=” ◢Goto 12 .线路坐标计算主程序 XLZBRadFixm{O}:O”1.ZX 2.BX”Q=0Lbl 1{K}:K”K”O ¹ 1 Þ {QG}:Q”L”:G”AJ” ◣Prog ”ZB”:X=X+Rec(Q,U+πG ÷ 180):Y=Y+J X”X=” ◢Y”Y=” ◢O=1 Þ U=180U ÷ π:U”AT=” ◢◣Goto 13 .线路高程计算主程序 XLGCV=11:FixmLbl 0{KQ}:K”K”:Q”L”Prog ”KD”Prog ”GC”C”H=” ◢Goto 04 .边桩放样计算主程序 BZFYFixmRad{Z}:Z”1.CJ 2.QZ 3.QS”Z=2 Þ Z[11]=0:Goto 1 ◣Z=3 Þ Goto 1 ◣{MNGU}:M”DZ”:N”DH”:G”HZ”:U”AH”Z[8]=Z[M+52]:Z[9]=Z[M+62]C=Z[N+52]:A=Z[N+62]Pol(C-Z[8],A-Z[9]):Z[10]=J-πU ÷ 180:Z[11]=G Lbl 1Z=2 Þ Goto 2 ◣{EBFD}:B”AQ”:E”S”:D”HD”:F”HY”Rec(E,Z[10]+πB ÷ 180):X=Z[8]+I:Y=Z[9]+J:Goto 3 Lbl 2{EBD}:E”N”:B”E”:D”Z”:F=0:X=E:Y=BLbl 3Prog “FQ”G=D+Z[11]-F:G”H” ◢Prog “FY”Goto 15.线路坐标计算子程序 ZBProg ”YS”X=74445.797Y=501515.278S=771.296-KB=A+C+πS>L Þ Goto 1 ◣I=SSS ÷ 6 ÷ R ÷ LJ=S-S^5 ÷ (40RRLL)U=B-SS ÷ (2RL)-π:Goto 2Lbl 1U=(2S-L) ÷ R ÷ 2I=R(1-cos U)+Z[5]:J=Rsin U+Z[6] U=B-(S-L ÷ 2) ÷ R+πLbl 2Pol(I,J):J=J+B-π ÷ 2X=Rec(I,J)+XY=Y+JU<0 Þ U=U+2π ◣6 .曲线要素计算子程序 YSR=280L=84.7S=-0.6769479859A=-2.415291254N=-1C=1.738343268Z[5]=1.067572917Z[6]=42.31770592T=374.9146895Z[7]=RC+L7 .线路高程计算子程序 GCW=13Lbl 1P=Z[W+7]K>Z[W]-P Þ W=W+1:Goto 1 ◣W=13 Þ W=14 ◣V=W-1 Þ Goto 2 ◣V=W-1J=Z[V+4]R=(J-Z[V+3]) ÷ (Z[V]-Z[V-1]) S=(Z[V+5]-J) ÷ (Z[V+1]-Z[V]) T=Z[V+7]Lbl 2L=K-Z[V]L ≤ -T Þ H=J+RL:Goto 3 ◣L ≥ T Þ H=J+SL:Goto 3 ◣A=2T ÷ (S-R)X=L+A(R+S) ÷ 2H=J+XX ÷ 2 ÷ A-ARS ÷ 2Lbl 3H=H-Z[1]A=Abs QA ≤ Z[4] Þ C=0:Goto 6 ◣I=-1Q>0 Þ I=1 ◣Lbl 4Y=23Lbl 5K ≥ Z[Y] Þ Y=Y+1:Goto 5 ◣O=Z[Y+2]:X=Z[Y+3]:O=IO:X=IXZ[Y+2]=0 Þ O=2 ◣Z[Y+3]=0 Þ X=2 ◣N=(Z[Y]-K) ÷ (Z[Y]-Z[Y-1])M=(X-O)(1-3NN+2NNN)+OA ≤ Z[2] Þ C=(Z[4]-A)M ÷ 100:Goto 6 ◣C=0.04(Z[2]-A)-M(Z[2]-Z[4]) ÷ 100M>4 Þ C=(Z[4]-A)M ÷ 100 ◣Lbl 6C=H+C8 .反求线路桩号子程序 FQProg ”YS”Z[4]=74445.797Z[3]=501515.278Z[4]=X Þ Z[3]=Y Þ K=771.296:Q=0:Goto 2 ◣◣Q=Z[4]:K=Z[3]:G=S+π ÷ 2Prog ”ZH”G=LL ÷ 6 ÷ R:Q=L-LLL ÷ 40 ÷ R ÷ RPol(G-H,Q-W):K=J+π ÷ 2+L ÷ 2 ÷ Rcos K<0 Þ Goto 1 ◣Pol(H-(R+Z[5]),W-Z[6])K=771.296-R(π-J)-L ÷ 2Q=R-IGoto 2Lbl 1K=1:U=LProg ”HQ”K=771.296-O:Q=-QLbl 2M=1000K=Intg (MK+0.5) ÷ MQ=Intg (MQ+0.5) ÷ MZ”KD=” ◢Q”WB=” ◢9 .坐标转换计算子程序 ZH H=X-Q:W=Y-KPol(H,W)G=J-GH=Icos G:W=Isin G10 .反求缓曲长度子程序 HQ A=K ÷ 46080 ÷ R^6 ÷ U^6P=H ÷ 3840 ÷ R^5 ÷ U^5C=13K ÷ 5760 ÷ R^4 ÷ U^4T=KW ÷ 384 ÷ R^4 ÷ U^4G=H ÷ 48 ÷ R^3 ÷ U^3I=K ÷ (15RRUU)J=KW ÷ (8RRUU)L=H ÷ (2RU)N=KWS=WLbl 7M=AS^13+PS^10-CS^9+TS^8-GS^6+IS^5-JS^4+LSS-KS+NQ=13AS^12+10PS^9-9CS^8+8TS^7-6GS^5+5IS^4-4JS^3+2LS-K O=S-M ÷ QAbs (O-S)<1 E -5 Þ Goto 8 ◣S=OGoto 7Lbl 8T=KOOO ÷ 6 ÷ U ÷ RP=O-O^5 ÷ (40RRUU)T=H Þ P=W Þ Q=0:Goto 9 ◣◣Pol(H-T,W-P)Q=sin (J+KOO ÷ 2 ÷ R ÷ U-π ÷ 2)S=-1Q>0 Þ S=1 ◣Q=SILbl 911 .边桩放样计算子程序 FY V=11U=QProg ”KD”Q=-0.75-Z[2]:Z[3]=-1U>0 Þ Q=0.75+Z[2]:Z[3]=1 ◣Prog ”GC”X=G-CX ≤ 0 Þ Goto 7 ◣N=Int ((X-0.1) ÷ 8.9)+1N>5 Þ N=5 ◣I=1Lbl 2O=Z[28+I]{O}:O”M”Z[28+I]=OI=I+1I>N+1 Þ Goto 4 ◣Goto 2Lbl 4I=0W=3.55+Z[2]:H=0.04Lbl 5I=I+1I>N-1 Þ Goto 6 ◣W=W+2+9Z[I+28]H=H+8.9Goto 5Lbl 6A=X-H:A”C=” ◢W=W-Abs UA ≤ 1 Þ P=WZ[3] ◢◣A ≥ 8 Þ P=(9Z[I+28]+W+2)Z[3] ◢◣A=AZ[I+28]+WGoto 8Lbl 7X=-XX ≤ 8 Þ A=1.5X+0.75+Z[2]-Abs U ◣X>8 Þ X ≤ 12 Þ A=12.75+Z[2]+1.75(X-8)-Abs U ◣◣X>12 Þ A=14.75+Z[2]+1.75(X-8.04)-Abs U ◣Lbl 8A=AZ[3]A”DB=” ◢12. 路面宽度计算子程序 KDZ[2]=10.5Z[4]=0.5K>460 Þ K<540 Þ Z[4]=0 ◣◣Abs Q ≤ Z[4] Þ Goto 6 ◣Q>0 Þ Goto 1 ◣K<370.6255 Þ I=50:X=K-370.6255:Goto 2 ◣K>430 Þ K ≤ 467.384 Þ I=41:X=K-430:Goto 2 ◣◣K>467.384 Þ K<532.616 Þ Goto 3 ◣◣K ≥ 532.616 Þ K<570 Þ I=41:X=570-K:Goto 2 ◣◣K>686.596 Þ I=35:X=K-686.596:Goto 2 ◣Goto 5 ◣Lbl 1K<350.4277 Þ I=47:X=K-350.4277:Goto 2 ◣K>430 Þ K ≤ 463.545 Þ I=44:X=K-430:Goto 2 ◣◣K>463.545 Þ K<536.455 Þ Goto 4 ◣◣K ≥ 536.455 Þ K<570 Þ I=44:X=570-K:Goto 2 ◣◣K>686.596 Þ I=38:X=K-686.596:Goto 2 ◣Goto 5 ◣Lbl 2Z[2]=Z[I]XXX+Z[I+1]XX+Z[I+2]X+10.5:Goto 5Lbl 3Z[2]=299.104 ÷ sin (1.4543+(K-467.384) ÷ 280)-280:Goto 5 Lbl 4Z[2]=280-267.304 ÷ sin (1.4406+(K-463.545) ÷ 280)Lbl 5L=Z[2]+0.75:L”LD=” ◢Lbl 6二、扩展变量设置数值扩展变量设置实际数值表扩展变量设置实际数值表 ( 续表 )。
1、ZBJS(坐标计算)Lbl 4:Deg:Cls:"1.SZ => XY":"2.XY => SZ":"1,2="?Q:"S="?S:1→I ←┘If I=1:Then Prog"ZX":IfEnd←┘If I=2:Then Prog"YX":IfEnd←┘If Q=1:Then Goto 1:IfEnd :IF Q=2:Then Goto 2:IfEndGoto4←┘Lbl 1:If S<0 Or S>9971.664:Then Goto 4:IfEnd:"Z ="?Z:"G ="?J:Prog "ZS"←┘A+(X÷P+DX2)×180÷π→F←┘If F<0:Then F+360→F:IfEnd←┘"X=":N+Zcos(F+J)→N◢"Y=":E+Zsin(F+J)→E◢"FWJ=":F▶DMS◢Lbl 3:Cls:"1.ZH => XY":"2.SZ => XY ":"1,2="?K←┘If K=1:Then "PJ="?G:"Z="?Z:"H="?H:Cls:"X=":N-Zsin(F+G)+Hcos(F+G) →X◢"Y=":E+Zcos(F+G)+Hsin(F+G)→Y◢Goto 3:IfEnd←┘If K=2:Then Goto 4:IfEnd←┘Goto 3←┘Lbl 2:"X="?B:"Y="?C:B→N:C→E:Prog"FS":"S=":S→S◢"Z=":Z→Z◢Goto 42、ZS(正算)0.5(1÷R-1÷P)÷L→D:X←┘U+∫(cos(A+(X÷P+ DX2)×180÷π,0,X)→N←┘V+∫(sin(A+(X÷P+ DX2)×180÷π,0,X)→E:Return3、FS(反算)Lbl 1:If I=1 :Then Prog"ZX":IfEnd←┘If I=2 :Then Prog"YX":IfEnd←┘Prog"ZS"A+(X÷P+ DX2)×180÷π→F←┘PoI(N-B,E-C):Isin(F-90-J)→W:S+W→S←┘If Abs(W)>0.0001:Then Goto 1:IfEnd←┘(C-E)÷sin(F+90)→Z:Return4、YX(曲线要素)(右线)If S≤114321.111:Then 61719.889→U:384671.632→V:114181.111→O:214·24′47.4〞→A:140→L:10ˇ(45) →P:-1500→R:Return:IfEndIf S≤114464.085:Then 61603.185→U:384594.323→V:114321.111→O:211·44′21.71〞→A:142.974→L:-1500 →P:-1500→R:Return:IfEndIf S≤114604.085:Then 61478.195→U:384525.015→V:114464.085→O:206·16′41.37〞→A:140→L:-1500 →P:10ˇ(45)→R:Return:IfEndIf S≤114734.085:Then 61350.809→U:384466.974→V:114604.085→O:203·36′15.7〞→A:130→L:10ˇ(45) →P:1330→R:Return:IfEndIf S≤114859.847:Then 61232.562→U:384412.991→V:114734.085→O:206·24′16.31〞→A:125.762→L:1330 →P:1330→R:Return:IfEndIf S≤114989.847:Then 61122.73→U:384351.826→V:114859.847→O:211·49′20.28〞→A:130→L:1330 →P: 10ˇ(45)→R:Return:IfEndIf S≤115119.847:Then 61014.573→U:384279.724→V:114989.847→O:214·37′20.9〞→A:130→L:10ˇ(45) →P:-750→R:Return:IfEnd5、ZX(曲线要素)(左线)If S≤114190.204:Then 62028.741→U:384870.288→V:113819.03→O:206·4′10.8〞→A:371.174→L:10ˇ(45) →P: 10ˇ(45)→R:Return:IfEndIf S≤114320.204:Then 61695.33→U:384707.171→V:114190.204→O:206·4′10.8〞→A:130→L:10ˇ(45) →P: -950→R:Return:IfEndIf S≤114458.231:Then 61577.309→U:384652.73→V:114320.204→O:202·8′57.94〞→A:138.028→L:-950 →P: -950→R:Return:IfEndIf S≤114588.231:Then 61446.142→U:384610.144→V:114458.231→O:193·49′29.4〞→A:130→L:-950 →P: 10ˇ(45)→R:Return:IfEnd曲线要素可以添加,只要格式正确就行一、坐标计算方位角和距离的程序主程序:FSLbl 1:?M:?N:?V:?W√((V-M) 2 +(W--N)2 )→Ccos-1((V-M)÷C) →TIf W-N<0 : Then 360-T→T : Else T→T : IfEnd“C=” : C◢“T=” : T▶DMS◢Goto 1程序说明:输入坐标(M,N)、(V,W),其中(M,N)为起点坐标,(V,W)为终点坐标,输出显示C为两点间距离,T为起点到终点的方位角。
立交匝道坐标放样正反算CASIO fx-5800P程序(带数据库功能) [图片]
MN互通式立交线位数据图(由于图片大小的限制,此处不清晰,参见《CASIO fx-5800P计算与道路坐标放样计算》P162附录2)
.
三、立交匝道线元数据的整理
经整理,匝道a、b、c线元数据如下(d匝道和MR匝道略)。
四、程序代码
注:根据实际使用情况,在桩号反算时,若桩号比较大(匝道起始桩号一般为0),还是让用户输入一个估算的对应桩号为好,因此程序第29、30行分别改为(每行结尾处省略回车符):
29行:"X"?F: "Y"?G: "K"?P
30行:F→I: G→J
d匝道和MR匝道数据库子程序略。
五、程序变量清单
六、计算流程示例
1.坐标正算示例
计算任务:计算MN互通式立交c匝道K0+315.3中桩坐标及切线方位角,以及该桩左侧4.5米、右侧6米的边桩坐标,假设在导线点(2807544.340,475613.014)上架设全站仪,计算这三个点位的极坐标放样数据。
使
注:第22行D1计算结果应为:124.944。
2.坐标反算示例
计算任务:根据上面计算的c匝道K0+315.3中桩坐标,以及该桩左侧4.5米、右侧6米的边桩坐标计算结果,反算对应的c匝道桩号及距中距离,并进行结果的验证。
使用立交匝道坐标放样计算程序RAMP-4的操作流程见下表
道路中边桩坐标放样正反算程序ROAD-2(0908改进版)1.主程序清单:ROAD-2
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-XS
功能:显示计算结果。
本子程序名称应为“ROAD-XS”,特此更正。
三、数据库子程序的编写
1.道路示例项目基本资料
基本资料同《CASIO fx-5800P计算与道路坐标放样计算》第6章HY高速公路第2合同段(合同段起止桩号:K4+800~K9+600)。
这里摘取直线、曲线及转角表资料如下(若图片不清晰,请参见参见教材P161附录1):
.
2.路线数据库子程序的编写与格式说明
注:路线数据库子程序ROAD-DATA1是根据计算示例项目的直曲表编写,大家使用时应按各自项目的直曲表改写或新建,本数据库子程序采用了简化坐标,根据项目的坐标范围,小数点前只取了四位数。
数据库采用给矩阵变量Mat A赋值的形式,使数据组织更加简洁,为减少数据库子程序的输入量(因为要经常根据不同的项目编写数据库子程序),矩阵变量因子赋值给字母变量的程序代码写在主程序中(见ROAD-2程序第4行)。
矩阵变量简介:5800P计算器开始有矩阵计算功能,内部有七个矩阵存储器(Mat A是其中之一),每个矩阵的行列数最大是10×10,有关矩阵具体内容见《CASIO fx-5800P计算器与道路坐标放样计算》34-38页。
数据库格式说明:
本交点计算起终点桩号的说明:
一般情况下,本交点的计算起点是指前一交点的HZ点或YZ点,本交点的计算终点是指后一交点的ZH点或ZY点。
之所以要强调是一般情况下,是因为有些特殊情况下,要灵活处理,比如:整个路线就是一段直线、断链的处理、卵
形曲线的处理等等,这些特殊情况后面我会以专题日志的形式来详细解说,这也是本次程序改进后的亮点之一。
四、程序变量清单
五、计算流程示例
1.中桩坐标计算示例
计算任务:计算HY高速公路K6+100~K6+700段的中桩坐标及切线方位角(桩距20m),并在导线点(2807118.026,474113.687)上架设全站仪,计算各中桩的极坐标放样数据。
在计算之前,先要看一下计算路段的桩号是位于哪个交点的计算范围,由直曲表得知在JD8的计算范围内(5425.031~6721.764),则可选择6400作为交点定位桩号定位JD8。
使用道路中边桩坐标放样正反算程序RAOD-2的操作流程见下表。
下表给出了由道路路线CAD软件计算的相关结果,供大家进行计算验证。
.
2.边桩坐标计算示例
计算任务:计算HY高速公路主线K6+100~K6+700段的边桩(左右各12.25米)坐标(桩距20m)。
使用道路中边桩坐标放样正反算程序RAOD-2的操作流程见下表。
下表给出了由道路路线CAD软件计算的相关结果,供大家进行计算验证。
.
3.坐标反算计算示例
计算任务:根据K6+440的中桩、左右边桩的坐标,反算对应桩号及偏距,并进行验证。
使用道路中边桩坐标放样正反算程序RAOD-2的操作流程见下表。
.
后记:本计算示例,展示的是道路路线一般情况下的典型应用,未展示手工输入交点数据的操作流程,该流程很简单,操作与ROAD-1程序类似,在此不再赘述。
道路路线坐标计算可能会遇到的以下特殊情况,今后我会在本空间中一一阐述,敬请关注:。