5800坐标高程计算程序
5800水准高程现场计算程序(增加了偏差值计算)
5800水准高程现场计算程序(增加了偏差值计算)
程序功能目的:输入水准仪现场前视读数快速计算出该点的实测高程!(增加了偏差值计算)程序名: HC
LbI A:Cls:“HS”?X:“BM-H”?Y:X+Y→S:Cls:
“SXG=”:Locate 6,1,S◢
LbI B:Cls: “QS”?D:If D≥0 :Then Goto D:Else Goto C:IfEnd LbI C: M→Y:Abs(D)→X: Goto A
LbI D:S-D→M: Cls:
LbI E: “SJG”?F:M-F→G: Cls:“QS=”: “HC=”: “PC=”
Locate 6,1,D: Locate 6,2,M: Locate 6,3,G◢
Goto B
符号说明:
HS?
输入水准点上之后视读数
BM-H?输入水准点之设计高程
SXG= 显示视线高程
SJG= 设计高程
QS?输入该点的前视读数(注:当有转点时则转点的前视读数输入后显示HC为转点的高程,紧接着当再次提示QS?时将转点所测的后视读数以负值输入连续两次EXE即可显示转点后的视线高程,即可进行转点后的正常计算!)
QS=显示所输入的该点的前视读数
HC=显示计算所得的该点的实测高程
PC=偏差值
(在原有的程序中增加了偏差值的计算)。
5800P公路路线坐标正反算及高程计算程序
公路路线座标正反算及高程计算程序Fx-5800计算机程序1.FYJS 主程序Fix 3: “1.SZ=>NE:2.NE=>SZ:3.S=>H”:?Q:Q=1 => Goto1:Q=2 => Goto2: Q=3 => Goto3←┘Lbl 1: "K"?S: "-B,0,+B"?Z: “PJ”?M:Prog“5.DAT-SJK”:Prog“2.SUB1”: N+Zcos (F+M) →N:E+Zsin(F+M) →E←┘Prog“4.FY”:Goto 1←┘Lbl 2: “X”?B: “Y”?C:"K"?S: Pro g“3.SUB2”: “K=”:S◢“-B,0,+B=”:Z◢Goto 2←┘Lbl 3: "K"?S :Prog“5.1GCJSCX”: Goto 3"K"?S: 所计算点桩号"-B,0,+B"?Z: 计算点左右边距左- 右+ 中0“PJ”?M 所计算点斜距的右夹角“X”?B: 反算实测X坐标“Y”?C:反算实测Y坐标"K"?S: 反算点附近大概桩号2.SUB1 正算子程序0.5(1÷R-1÷P)÷L→D:S-O(字母 )→X←┘U+∫(cos(A+(X÷P+DX^(2))×180÷π,0,X)→N←┘V+∫(sin(A+(X÷P+DX^(2))×180÷π,0,X)→E←┘A+(X÷P+DX^(2))×180÷π→F←┘3.SUB2 反算子程序Lbl 1:0→Z:1→Q:Prog“5.DAT-SJK”: Prog“2.SUB1” :Pol(N-B+10^(-46), E-C+10^(-46)):Isin(F-90-J) →W:S+W→S:Abs(W)>0.0001 => Goto1←┘Lbl 2: 0→Z:Prog“2.SUB1”:(C-E) ÷sin(F+90) →Z4.FY 放样子程序"HS:X"?N:"HS:Y"?E :"CE:X"?G:"CE:Y"?H:Pol(N-G,E-H): J<0=>J+360→J: " FWJ=": J►DMS◢"JL=": I◢"HS:X"?N: 后视点(计算点)X坐标"HS:Y"?E : 后视点(计算点)Y坐标"CE:X"?G: 测站点X坐标"CE:Y"?H: 测站点Y坐标5.1高程计算子程序(5.1GCJSCX)Prog“ 6.SQX-DAT”:Z[6] Abs(Z[2]- Z[1]) ÷2→Z[3]:if Z[2]- Z[1]>θ :Then 1→Z[4]:Else -1→Z[4]:ifendif S<K:Then - Z[1]→T:Else Z[2]→T:ifendAbs (K-S)→Z[5]if Z[5]- Z[3]>θ:Then Z[7]+T Z[5]→Z[8]:“HS=”:Z[8]◢Else Z[7]+T Z[5]+ Z[4] (Z[3]- Z[5])2÷2÷Z[6]→Z[8]: “HS=”:Z[8]◢ifend5.DAT-SJK 数据库子程序Goto1←┘同时保存多个曲线时的指针Lbl 1←┘IF S<476533.296(线元终点里程):Then31°24'29.07″→A(线元起点方位角):476088→O(线元起点里程):4689534.997→U(线元起点X):479874.003→V(线元起点Y):1045→P(线元起点曲率半径):1045→R(线元终点曲率半径):445.296→L(线元起点至终点长度): R eturn:IfEnd←┘IF S<476803.296:Then31°45'48.37″→A:476533.296→O:4689913.601→U:480108.413→V:1045→P:12000→R: 270→L: Return:IfEnd←┘IF S<477106.771:Then32°24'28.85→A:476803.296→O:4690142.627→U:480251.404→V:12000→P:12000→R: 303.475→L: Return:IfEnd←┘IF S<477376.771:Then33°51'25.2″→A:477106.771→O:4690396.754→U:480417.272→V:12000→P:1045→R: 270→L: Return:IfEnd←┘IF S<488923.776:Then34°30'05.68→A:477376.771→O:4690619.834→U:480569.372→V:1045→P:1045→R: 11547.005→L: Return:IfEnd←┘IF S<489353.776:Then34°30'05.68″→A:488923.776→O:4700135.844→U:487109.930→V:1045→P:-10000→R:430→L: Return:IfEnd←┘IF S<490817.499:Then33°16'10.99″→A:489353.776→O:4700491.941→U:487350.944→V:-1000 0→P:-10000→R: 1463.723→L: Return:IfEnd←┘IF S<491247.499:Then24°52'59.52″→A:490817.499→O:4701770.051→U:488061.643→V:-1000 0→P:-1045→R: 430→L: Return:IfEnd←┘IF S<509336.037:Then23°39'04.83″→A:491247.499→O:4702162.678→U:488236.961→V:-1045→P:-1045→R: 18088.538→L: Return:IfEnd←┘程序名:(6.SQX-DAT)(高程竖曲线要素子程序)if S<332.599:Then 0.02793→Z[1]:-0.03309→Z[2]:1800→Z[6]:235→K:32.7→Z[7]: goto 1:ifendif S <734.085:Then -0.03309→Z[1]:-0.00485→Z[2]:6000→Z[6]:460→K:25.254→Z[7]: goto 1:ifend-- Lbl 1Z[1]—前坡: Z[2]—后坡: Z[6]—竖曲线半径 K—变坡点桩号: Z[7]—变坡点设计高三、使用说明1、规定(1) 以道路中线的前进方向(即里程增大的方向)区分左右;当曲线半径在左时,P、R取负值,当曲线半径在右时,P、R取正值,当曲线半径为无穷大(即直线)时,P、R以10的45次代替。
CAISO5800公路坐标、高程计算程序
“E=”(R+(Z[6]+Z[7])/2)/cos(A/2)-R→E◢
“K(ZH)=”:K-S→Z[1]
“K(HY)=”:Z[1]+B→Z[2]◢
“K(QZ)=”:Z[1]+L/2+(B-C)/4→Z[3]◢
“K(YH)=”:Z[1]+L-C→Z[4]◢
“K(HZ)=”:Z[4]+C→Z[5]◢
Deg:Fix 3↓
“X0”?X:”Y0”?Y:”R”?R”FWJ”?:C:”KS”?S↓
Lbl 0↓
“KP”?G:G-S→L↓
90L/R/π→M↓
Abs(2RSin(M))→O↓
“XP=”:X+Ocos(C+M)→I◢
“YP=”:Y+Osin(C+M)→J◢
C+2M→F↓
“BP=”:F▲DMS◢
“RE”?T:If T≠0:Then 1/T→A:Else 0→A:IfEnd↓
“X0”?U:”Y0”?V↓
Lbl 0↓
“KP”?P↓
P-S→L↓
(B-A)/2/C→M↓
πQ/180→K↓
“XP=”:W+∫(cos(K+AX+MX^2),0,L)→F◢
“YP=”:Y+∫(sin(K+AX+MX^2),0,L)→G◢
“D1=”I◢
Lbl 2↓
“D ANGEL”?H:If H=0:Then Goto 0:IfEnd:”D”?D↓
“XB=”:F+Dcos(Z+H)→D◢
“YB=”:G+Dsin(Z+H)→H◢
CASIO-5800公路高程及加宽计算程序
CASIO-5800公路高程及加宽计算程序全线路基中桩高程左右超高值以及路基加宽计算程序.要素子程序输入简便,在5800中输入待求点中桩桩号,计算器自动显示待求桩左,中,右,高程.左右路基宽.1主程序KG【路基宽度与超高值计算程序】Deg:21→DimZ:“PEG=”?Z:Goto1Lbl0:“PEG=”?Z:IfZ≥Z[3]-UAndZ≤Z[6]:ThenGoto2:IfEndLbl1:Prog“Z”:R=0=>Goto2: (本节计算曲线要素)IfA<0:Then-1→I:Ele1→I:IfEnd确认路线转向,左负右正I→Z[7]:Ab(A)→AL^(2)÷(24R)→P:L÷2-L^(3)÷(240R^(2))→Q:90L÷(πR)→B(R+P)tan(A÷2)+Q→TR(A-2B)π÷180→O计算切线长计算圆曲线长计算曲线长计算ZH点计算HY点计算YH点计算HZ点R(A-2B)π÷180+2L→CK-T→Z[3]Z[3]+L→Z[4]Z[4]+O→Z[5]Z[5]+L→Z[6]Lbl2:Prog“K1”:(本节计算路基宽与左右超高值)待求点位于直线线元时IfR=0:ThenZ[21]某Z[20]→Z[1]:Z[1]→Z[2]:Goto3:IfEnd待求点位于ZH前的直线段时IfZ≤Z[3]:ThenZ[20]某Z[21]→Z[1]:Z[1]→Z[2]:Goto3:IfEnd全线路基中桩高程左右超高值以及路基加宽计算程序.要素子程序输入简便,在5800中输入待求点中桩桩号,计算器自动显示待求桩左,中,右,高程.左右路基宽.待求点位于笫一缓和曲线时IfZ>Z[3]AndZ<Z[4]:ThenZ[21]→J:M→N:Z[20]→D:Z[4]-Z[3]→S:Z-Z[3]→F:Prog“ZG”:V→Z[1]-M→N:W→D:(Z[4]-Z[3])÷2→S:IfZ≤Z[3]+SAndZ>Z[3]:ThenZ[21]D→Z[2]:Goto3:EleZ-(Z[3]+S)→E:Prog“ZG”:V→Z[2]:Goto3:IfEnd:IfEnd待求点位于圆曲线时IfZ≥Z[4]AndZ≤Z[5]:ThenZ[20]M→Z[1]:IfZ[3]=Z[4]:ThenZ[1]→Z [2]:Goto3:EleW→D:-MD→Z[2]:Goto3:IfEnd:IfEnd待求点位于笫二缓和曲线时IfZ>Z[5]AndZ≤Z[6]:ThenM→J:Z[21]→N:Z[20]→D:Z[6]-Z[5]→S:Z-Z[5]→E:Prog“ZG”:V→Z[1]-M→J:W→D:(Z[6]-Z[5])÷2→S:IfZ>Z[5]+SAndZ≤Z[6]:ThenZ[21]D→Z[2]:Goto3:EleZ-Z[5]→E:→Prog“ZG”:V→Z[2]:IfEnd:IfEndLbl3:0→D:Prog“H”:Cl:Fi某2“H=”:Locate8,1,H:线路右转时IfZ[7]>0:Then“L=”:Locate8,1,Z[1]+H:“R=”:Locate8,3,Z[2]+H:左设计高右设计高路基总宽路基左宽(本节显示计算结果)显示中桩设计高程“KUAN=”:Locate10,4,W+Z[20]◢Cl:“KUANL=”:Locate11,1,Z[20]:全线路基中桩高程左右超高值以及路基加宽计算程序.要素子程序输入简便,在5800中输入待求点中桩桩号,计算器自动显示待求桩左,中,右,高程.左右路基宽.“R=”:Locate11,2,W:线路左转时路基右宽Ele“L=”:Locate8,2,Z[2]+H:“R=”:Locate8,3,Z[1]+H:左设计高右设计高路基总宽“KUAN=”Locate10,4,W+Z[20]◢Cl:“KUANL=”:Locate11,1,W:路基左宽“R=”:Locate11,2,Z[20]:IfEnd:路基右宽Goto02子程序K1【路基宽度计算程序】4.25→Z[20]:-0.0212→Z[21]:Prog“Z”:Z[20]为路基半幅宽,Z[21]为路基横坡值IfZ>Z[3]AndZ<Z[4]:T hen2Z[20]→A:G→B:Z[4]-Z[3]→C:Z-Z[3]→E:IfEnd待求点位于笫一缓和曲线IfZ>Z[5]AndZ≤Z[6]:ThenG→A:2Z[20]→B:Z[6]-Z[5]→C:Z-Z[5]→E:IfEnd(B-A)E÷C+A→WZ≤Z[3]=>2Z[20]→W待求点位于ZH前的直线段时待求点位于笫二缓和曲线时IfZ≥Z[4]AndZ≤Z[5]:ThenG→W:IfEnd待求点位于圆曲线时R=0=>2Z[20]→W待求点位于直线线元时Fi某2:W-Z[20]→W:Return3子程序H【路基高程中桩计算程序】Prog“S0”:I÷100→I:C-T→E:Z-F→L:C+T→E:G-TI→Q:IfT=0:全线路基中桩高程左右超高值以及路基加宽计算程序.要素子程序输入简便,在5800中输入待求点中桩桩号,计算器自动显示待求桩左,中,右,高程.左右路基宽.ThenQ+LI→H:Goto0:EleIfZ<F:ThenQ+LI→H:Goto0:EleIfZ≤E:ThenQ+LI+L^(2)÷2÷R→H:Goto0:IfEn d:IfEnd:IfEndLbl0:IfD≠0:ThenProg“I”:H+V→Z[8]:IfEnd:Return4子程序ZG【路基超高值计算程序】D((N-J)E÷S+J)→V:Return5子程序Z【路基坐标宽度超高值要素程序】(也是路基坐标计算子程序)IfZ>74009.522AndZ≤74262.228:Then137.4033→U:362°51′35″→F:74205. 803→K:3015783.911→某:522375.5984→Y:120→R:45→L:-33°34′0.6″→A:10→G:0.0588→M:IfEndU-直线长度;F-方位角;K-交点桩号;某-交点某坐标;Y-交点Y坐标;R-曲线半径;L-缓和曲线长;A-转角值(左负右正);G-路基整幅宽;M-路基超高值.IfZ>72900.557AndZ≤72959.892:Then0→R:72900.557→Z[3]:3014697.12→Z[ 16]:522932.0175→Z[17]:302°4′54.3″→F:IfEnd直线线元及断链时的解决方式R-曲线半径;Z[3]-直线段起点桩号;Z[16]-起点中桩某坐标;Z[17]-起点中桩Y坐标;F-方位角.6子程序S0【高程竖曲线要素程序】IfZ≥74003.6AndZ≤74134.2:Then-1200→R:34.2→T:74100→C:2022.92→G:3.6→I:IfEndR-竖曲线半径(凸负凹正);T-竖曲线切线长;C-竖曲线交点桩号;全线路基中桩高程左右超高值以及路基加宽计算程序.要素子程序输入简便,在5800中输入待求点中桩桩号,计算器自动显示待求桩左,中,右,高程.左右路基宽.G-交点高程;I-直线段坡度(上正下负)。
5800高程计算(含超高)
BG:(标高计算式程序)Lbl 1:Abs(.01(I-J)R÷2)-﹥T:If Z≥L+T:Then Goto 4:IfEndIf Z≥L-T:Then Goto 3:IfEndLbl 2:H+.01(Z-L)I-﹥B: Goto 5Lbl 3:H+.01(Z-L)I+(J-I)(Z+T-L)2÷(2R Abs(J-I)) -﹥B:Goto 5 Lbl 4:H+.01(Z-L)J-﹥B:Goto 5Lbl 5:BH——竖曲线顶点高程I——后坡J——前坡L——竖曲线顶点桩号B——设计高程R——圆曲线半径GX:(挂线高计算主程序)Lbl 0:“U=”?U: “Z=”?Z:If U=0: Then ?L:?H:?I:?J:?R: “Z=”?Z:Prog“BG”:“B=”:B▲“P=”?P:P:Goto 4: IfEndIf U=1: Then Prog“L1”:Prog“PY”:Goto 1: IfEndIf U=2: Then Prog“L2”:Prog“PY”:Goto 1: IfEndIf U=3: Then Prog“L1”:Prog“PZ”:Goto 1: IfEndIf U=4: Then Prog“L2”:Prog“PZ”:Goto 1: IfEndIf U=5: Then Prog“L3”:Prog“PZ”:Goto 1: IfEndIf U=6: Then Prog“LA”:Goto 2: IfEndIf U=7: Then Prog“LB”:Goto 2: IfEndIf U=8: Then Prog“LC”:Goto 2: IfEndIf U=9: Then Prog“LD”:Goto 2: IfEndIf U=10: Then Prog“LE”:Goto 2: IfEndLbl 1:Prog“BG”:Prog“HP”:“B=”:B▲“P=”:P▲Goto 3Lbl 2:Prog“BG”:“B=”:B▲“P=”:?P :Goto 3Lbl 3: “S=”?S: “W=”?W: “E=”?E: “N=”?N:Lbl 4:((B-W) -(S-N) ÷1000+.01P(E-1))×1.31+.2-﹥M: “GX=”:M▲If E≠13.5: Then Goto 3:Else E=13.5: “V=”?V:Z+V-﹥Z: Goto 0: IfEndTX:(抬线高计算主程序)Lbl 0:“U=”?U: “Z=”?Z:If U=0: Then ?L:?H:?I:?J:?R: “Z=”?Z:Prog“BG”:“B=”:B▲“P=”?P:P:Goto 4: IfEndIf U=1: Then Prog“L1”:Prog“PY”:Goto 1: IfEndIf U=2: Then Prog“L2”:Prog“PY”:Goto 1: IfEndIf U=3: Then Prog“L1”:Prog“PZ”:Goto 1: IfEndIf U=4: Then Prog“L2”:Prog“PZ”:Goto 1: IfEndIf U=5: Then Prog“L3”:Prog“PZ”:Goto 1: IfEndIf U=6: Then Prog“LA”:Goto 2: IfEndIf U=7: Then Prog“LB”:Goto 2: IfEndIf U=8: Then Prog“LC”:Goto 2: IfEndIf U=9: Then Prog“LD”:Goto 2: IfEndIf U=10: Then Prog“LE”:Goto 2: IfEndLbl 1:Prog“BG”:Prog“HP”:“B=”:B▲“P=”:P▲Goto 3Lbl 2:Prog“BG”:“B=”:B▲“P=”:?P :Goto 3Lbl 3: “S=”?S: “W=”?W: “E=”?E: “N=”?N:Lbl 4:(B-W)+.01P(E-1) -(S-N) ÷1000-﹥M: “TX=”:M▲If E≠0: Then Goto 3:Else E=0: “V=”?V:Z+V-﹥Z: Goto 0: IfEnd E——距中桩距离N——前视读数S——视线高U——条件语句V——桩号递进参数W——结构层厚度Z——所求桩号HP:(超高缓和段前后等长的线性横坡计算子程序)If Z≤A:Then -2-﹥P: Goto1:IfEndIf Z≤A+C:Then -2+(F+2)(Z-A) ÷C-﹥P: Goto1:IfEndIf Z≤A+C+O:Then F-﹥P: IfEndIf Z≤A+O+2C:Then -2+(F+2)(A+O+2C-Z) ÷C-﹥P: Goto1:IfEndIf Z>A+O+2C:Then -2-﹥P: Goto1:IfEndLbl 1:本程序超高是绕中轴旋转起讫点的横坡是-2(设定中央分隔带边缘高于路面外侧边缘横坡为负)A——前超高缓和段起点桩号C——超高缓和段长度F——全超高段横坡O——全超高长度P——所求桩号横坡HP1 (超高缓和段前后不等长的线性横坡计算子程序):If Z<A: Then -2→P: Goto 1:IfEndIf Z≤A+L:Then -2+(F+2)(Z-A)/L→P: Goto 1:IfEndIf Z≤A+L+ O: Then F→P: Goto 1:IfEndIf Z≤A+ L+O+C: Then -2+(F+2)(A+ O–Z)/C→P: Goto 1:IfEndIf Z>A + L+O+C: Then -2→P: Goto 1:IfEnd本程序超高是绕中轴旋转起讫点的横坡是-2(设定中央分隔带边缘高于路面外侧边缘横坡为负)A——前超高缓和段起点桩号L——前超高缓和段长度C——后超高缓和段长度F——全超高段横坡O——全超高长度P——所求桩号横坡HP2:(3次抛物线性横坡计算子程序)If Z≤A:Then P-﹥P: Goto1:IfEndIf Z≤Q:Then (Z-A)÷(Q-A)-﹥K: P+(3K2-2K3)(F-P) -﹥P: Goto1:IfEndIf Z>Q:Then F-﹥P: Goto1:IfEndLbl 1:本程序超高是绕中轴旋转(设定中央分隔带边缘高于路面外侧边缘横坡为负)A——横坡变化段起点桩号; P——(是过渡值)横坡变化段起点横坡Q——横坡变化段终点桩号;F——横坡变化段终点横坡P——所求桩号横坡L1..或LA...等:(竖曲线数据库)If Z≤××× :Then ×××-﹥I : ×××-﹥J :×××-﹥L :×××-﹥H :×××-﹥ R : Goto 1: IfEnd………Lbl 1:PY或PZ(横坡数据库)If Z≤Q+O:Then ×××-﹥A: ×××-﹥Q:×××-﹥P :×××-﹥F : Goto 1: IfEn d………Lbl 1:谢谢发贴:+26 分【测量空间】[0查看楼主其它文章<<返回→回复内容只查看楼主与本人回复沙发:老第楼主11-1-22 12:57L1,2,3.A,B,C....等是线路命名子程序库,如断链,分离式路基所需而设。
卡西欧5800计算器程序坐标正反算(含高程)
卡西欧5800计算器程序坐标正反算(含高程)功能:坐标正反算(含高程),把要素内置化(无需改程序文件,即可更换路线,同时存两条线要素)另含两个边仰(一个横向坡,一个纵向坡)坡放样模块.帮助文件未完成程序浏览:FileName:RESET 初始化程序Norm 1:50→C:12345→J"RESET PW"I:I=J=>500→DimZ 为数据库增加额外变量500个,在SET、SETPFDYS程序根据实际再增减变量50→Z[C+22]"PASSWORDS"I:I→Z[C+39] 重设要素保护密码Cls:StopFileName:DATLOCK 要素保护密码确定认程序Cls:Norm 1:50→C"PASSWORDS"I:Cls:I≠Z[C+39]=>StopFileName:SHELL(外壳程序)50→C ;在扩充变量预留前50个给别的程序用。
如不够就适量加大。
RESET,SHELL,SET,SETPFDYS,这几个程序中C值必需一致Z[C+35]→I:"STATION-N"I:I→Z[C+35] 设置测站N坐标Z[C+36]→I:"STATION-E"I:I→Z[C+36] 设置测站E坐标Z[C+44]→I:"STATION-Z"I:I→Z[C+44] 设置测站Z坐标Z[C+45]→I:"STATION-HI"I:I→Z[C+45] 设置仪高Z[C+41]→I:"GC-DH"I:I→Z[C+41] 放样点高差常数Norm 1Z[C+23]→N 当前分段要素N坐标Z[C+24]→E 当前分段要素E坐标Z[C+25]→M 当前分段要素起点桩号Z[C+26]→H 当前分段要素起点方位角(正北)单位:弧度Z[C+27]→A 当前分段要素起点曲率有左偏负右偏正(注意不半径)Z[C+28]→R 当前分段要素终点曲率有左偏负右偏正(注意不半径)Z[C+29]→L 当前分段要素长度Z[C+3]→WZ[C+32]→I:"DAT1 2 3"I:I→Z[C+32] 平曲线要素数库类型选择1为内置式,2文件式,3实时输入(查看当前要素值)0→IZ[C+4]→I:"1 2 3"I:I→Z[C+4] 选择本程序模式默认为坐标正算,1坐标反算,2横向边仰坡放样,3,纵向边仰坡放样(隧道进出口用到) Lbi 1Z[C+4]→II=1=>Prog"TURNZH"I=2=>Prog"HXBYP"I=3=>Prog"ZXBYP"Lbi ADeg:Norm 1:ClsZ[C+1]→G:"ZH"G:G→Z[C+1] ;G桩求桩号Z[C+2]→B:"JL"B:B→Z[C+2] ;B横向距离,左正右负Lbi BProg "ZBJS" ;坐标正算Prog "GCJS" ;高程计算Fix 3:Cls ;设置三位小数"ZH=":Locate 4,1,G ;第一行显示桩号"X=":Locate 3,2,X ;第二行显示X(N)坐标"Y=":Locate 3,3,Y ;第三行显示Y(E)坐标Prog "GCJS" ;高程计算"Z":Locate 2,4,Z+Z[C+41] ;第四行显示Z坐标Locate 10,4,Z[C+2] ;第四行显示横向距离Do:I+1→I:I=1000=>Goto 1:LpWhile Not(Getkey=57 Or Getkey=27) ;锁定键盘,并在几十秒后自动返回Getkey=57=> Goto 1Z+Z[C+41]+Z[C+49]-Z[C+44]-Z[C+45]→Z[C+48]Pol(Z[C+35]-X,Z[C+36]-Y)Cls:"DL":Locate 3,1,I:Locate 12,1,Z[C+45]"DH":Locate 3,2,Z[C+48]:Locate 12,2,Z[C+49]"FWJ"J<0=J+360→J:J◤DMS◢J→Z[C+46]I→Z[C+47]Goto 1FileName:ZBJS 坐标计算程序Prog"READDAT"RadG-M→QIF AR=0 :Then If A=R :Then 1→J:Else 3→J :IfEnd:Else If A=R :Then 2→J:Else 3→J:IfEnd:IfEndIf J=1 :Then H→F:N+QCos(H)→X:E+QSin(H)→Y:IfEnd 直线段直接计算If J=2 :Then H+QR→F:Rec(Abs(2Sin(Abs)÷R),H+QR÷2):N+I→X:E+J→Y:IfEnd 圆弧段直接计算If J=3 :Then Goto 5 :IfEndX+BCos(F+W)→XY+BSin(F+W)→YDeg:ReturnLbi 5 用五点通用坐标计算计算缓和段(R-A)÷L→KKQ2→J→P:H+IP+JP2→U→P:H+IP+JP2→V→P :H+IP+JP2→D→P:H+IP+JP2→F→P:H+IP+JP2→T→I→J→ON+Q(ICos(U)+JCos(V)+OCos(D)+JCos(F)+ICos(T))→XE+Q(ISin(U)+JSin(V)+OSin(D)+JSin(F)+ISi n(T))→YH+AQ+KQ2→FX+BCos(F+W)→XY+BSin(F+W)→YDeg:ReturnFileName:TURNZH(坐标反算)Norm 1Z[C+37]→I:"DQD-N"I:I→Z[C+37] 输入待求点N坐标I=-1=>Prog"INFWJDLDH"Z[C+38]→I:"DQD-E"I:I→Z[C+38] 输入待求点E坐标0→B:M+L÷2→G:Prog"ZBJS"Lbi S:RadZ[C+37]-X→I:Z[C+38]-Y→JIf I=0 And J=0 :Then Goto A:IfEndPol(I,J)Lbi A:Rec(I,J-F):J→Z[C+2]G+I→G:IF Abs(I)> :Then Prog"ZBJS":Goto S↙G→Z[C+1]FileName:INFWJDLDH 实测坐标(用方位角,距离,高差)输入程序Deg:Norm 1:ClsZ[C+46]→J:"DQD-FWJ"J:J→Z[C+46]Z[C+47]→I:"DQD-DL"I:I→Z[C+47]Z[C+48]→K:"DQD-DZ"K:K→Z[C+48]Z[C+49]→P:"RHT"P:P→Z[C+49]Rec(I,J)Z[C+35]+I→Z[C+37]Z[C+36]+J→Z[C+38]Z[C+44]+Z[C+45]+K-P→Z[C+43]FileName:HXBYP 横向边仰坡放样程序Cls:Norm 1Z[C+40]→I:"QPD-DL"I:I→Z[C+40] 输入起坡点与中桩距离常数Z[C+41]→I:"QPD-DZ"I:I→Z[C+41] 输入起坡点与中桩高差常数Z[C+42]→I:"i"I:I→Z[C+42] 输入边仰坡坡度,左仰坡(路堑)为正,右仰坡(路堑)为负,左边坡为负,右边坡为正Cls:Z[C+43]→I:"DQD-Z"I:I→Z[C+43] 输入实测高程Prog"TURNZH"Prog "GCJS"(Z[C+43]-Z-Z[C+41])Z[C+42]+Z[C+40]→BFix 3:B-Z[C+2]◢显示与上一次测点的偏差B→Z[C+2]FileName:ZXBYP 纵向仰坡放样程序(隧道进口使用)Cls:Norm 1:Z[C+33]→I:"QPD-ZH"I:I→Z[C+33] 输入起坡点桩号Z[C+34]→I:"QPD-Z"I:I→Z[C+34] 输入起坡点高程Z[C+42]→I:"i"I:I→Z[C+42] 仰坡时(隧道进出口仰坡),进口为正,出口为负)Cls:Z[C+43]→I:"DQD-Z"I:I→Z[C+43] 输入实测高程Prog"TURNZH"Z[C+42](Z[C+43]-Z[C+34])+Z[C+33]→GFix 3:G-Z[C+1]◢显示与上一次测点的偏差G→Z[C+1]FileName:SET 设置程序Lbi SNorm 150→C50→Z[C+22]0→KZ[C+5]→I:"1 Or 2"I:I→Z[C+5] ;选择1线或者2线180Z[C+3]÷π→J:"XZJJ"J:Jπ÷180→Z[C+3] ;斜桩夹角If I=1:Then Z[C+8]→Z[C+6]:Z[C+9]→Z[C+7]Z[C+12]→Z[C+16]:Z[C+13]→Z[C+17]:Z[C+18]→Z[C+20]Else Z[C+10]→Z[C+6]:Z[C+11]→Z[C+7]Z[C+14]→Z[C+16]:Z[C+15]→Z[C+17]::Z[C+19]→Z[C+20]Z[C+7]+3→Z[C+31]0→I:"1PQX,2SQX,3YSDS"I ;1输入平曲线要素,2输入竖曲线要素,3输入1、2线夹平竖曲线交点(变坡点)数量以让程序规划内存建立要素数据为,其它值退出本程序I=1 => Goto 1:I=2 => Goto 2:I=3 => Goto 3I≠0=>Prog"DATLOCK"Prog"SETPFDYS"StopLbi 1 ;平曲线要素输入部分Z[C+6]→D-1→Z[D+3]For 1→J T o Z[C+16]Cls:"PQX":Locate 9,1,JZ[D+1]→I:"N"I:I→Z[D+1] ;请输入N坐标Z[D+2]→I:"E"I:I→Z[D+2] ;请输入E坐标Z[D+3]→I:"R"I:I→Z[D+3] ;请输入半径RZ[D+4]→I:"LS1"I:I→Z[D+4] ;请输入缓和曲线1长度Z[D+5]→I:"LS2"I:I→Z[D+5] ;请输入缓和曲线2长度Next1→Z[D-2]Goto SLbi 2 ;竖曲线要素输入部分Z[C+7]→D-1→Z[D+3]For 1→J T o Z[C+17]Cls:"SQX":Locate 9,1,JZ[D+1]→I:"BPDZH"I:I→Z[C+1] ;请输入变坡点桩号Z[D+2]→I:"BPDGC"I:I→Z[C+2] ;请输入变坡点高程Z[D+3]→I:"R"I:I→Z[C+3] ;请输入半径RD+3→DNext1→Z[D]Goto SLbi 3 ;要素点数输入部分Z[C+12]→I:"1PQXDS"I:I→Z[C+12] ;输入1线平曲线点数,最小值为3Z[C+13]→I:"1SQXDS"I:I→Z[C+13] ;输入1线竖曲线点数,最小值为3Z[C+18]→I:"1JDZH"I:I→Z[C+18] ;输入1线平曲线第一个交点的交点桩号Z[C+14]→I:"2PQXDS"I:I→Z[C+14] ;输入2线平曲线点数,最小值为3Z[C+15]→I:"2SQXDS"I:I→Z[C+15] ;输入2线竖曲线点数,最小值为3Z[C+19]→I:"2JDZH"I:I→Z[C+19] ;输入2线平曲线第一个交点的交点桩号C+Z[C+22]→Z[C+8] 1线路平曲线要素指针偏移基数Z[C+8]+5Z[C+12]→Z[C+9] 1线路竖曲线要素指针偏移基数Z[C+9]+3Z[C+13]→Z[C+10] 2线路平曲线要素指针偏移基数Z[C+10]+5Z[C+14]→Z[C+11] 2线路竖曲线要素指针偏移基数Z[C+11]+3Z[C+15]→Z[C+21] 要素数据库结束指针Z[C+21]+1→Z[C+30]Z[C+21]→DimZ 增加额外变量-1→KGoto SFileName:SETPFDYS 交点要素=>分段要素Norm 150→CRadZ[C+6]+5→DZ[C+21]+1→FF+6→DimZ-1→Z[F] ; 设置分段要素开始标志Z[C+20]→V ; 从数据库读入当前线第一个平曲线交点桩号0→GPol(Z[D+1]-Z[D-4],Z[D+2]-Z[D-3]) ;计算第一条直线的距离I,计算方位角JJ→HZ[D-4]→Z[F+1] 直线段Z[D-3]→Z[F+2]V-I→Z[F+3]For 1→G T o Z[C+16]-2Pol(Z[D+1]-Z[D-4],Z[D+2]-Z[D-3]) ;计算第本交点与下一交点的距离I,计算方位角JI→W:J→HPol(Z[D+6]-Z[D+1],Z[D+7]-Z[D+2])J-H→K ;计算转角K,负值是左转角,正值是右转角IF Abs(K)>π:Then If K>0:Then K-2π→K:Else K+2π→K:IfEnd:IfEndZ[D+3]→R ;从数据库读入半径RZ[D+4]→L ;从数据库读入缓和曲线1长度Z[D+5]→M ;从数据库读入缓和曲线2长度L÷2÷R→B ;计算缓和曲线1的B0角M÷2÷R→O ;计算缓和曲线2的B0角(Abs(K)-B-O)R→P ;计算圆曲线长度L2÷24÷R-L^(4) ÷2384÷R^(3) →Q ;内移值计算方法2L÷2-L^(3) ÷240÷R2→S ;切线增长值计算方法2M2÷24÷R-M^(4) ÷2384÷R^(3) →J ;内移值计算方法2M÷2-M^(3) ÷240÷R2→I ;切线增长值计算方法2Abs(π÷2- Abs(K)) →ARtan(Abs(K÷2))+S+J÷Cos(A)-QTan(A)→T ;计算切线1Rtan(Abs(K÷2))+I+Q÷Cos(A)-JTan(A)→U ;计算切线2H<0=>H+2π→HK<0 =>-1→AH→Z[F+4]0→Z[F+5]0→Z[F+6]F+6→FF+6→DimZRec(T,H) 缓和段1 Z[D+1]-I→NZ[D+2]-J→EN→Z[F+1]E→Z[F+2]V-T→Z[F+3]L=0=>Goto AH→Z[F+4]0→Z[F+5]A÷R→Z[F+6]F+6→DimZLbi A 圆弧段0→I:0→JL=0=>Goto BPol(L-L^(3)÷40÷R2,L2÷6÷R-L^(4)÷336÷R^(4)) Lbi B Rec(I,H+AJ)N+I→NE+J→EN→Z[F+1]E→Z[F+2]V-T+L→Z[F+3]H+AB→Z[F+4]A÷R→Z[F+5]A÷R→Z[F+6]F+6→FF+6→DimZM=0=>Goto C 缓和段2 Rec(2RSin÷R),H+AB+AP÷R÷2) N+I→NE+J→EN→Z[F+1]E→Z[F+2]V-T+L+P→Z[F+3]H+AB+AP÷R→Z[F+4]A÷R→Z[F+5]0→Z[F+6]Lbi CF+6→FF+6→DimZRec(U,H+K)Z[D+1]+J→Z[F+1]Z[D+2]+I→Z[F+2]V-T+L+P+M→Z[F+3]V-T+L+P+M-U+I→VD+5→DNextH+K→Z[F+4]0→Z[F+5]0→Z[F+6]F+9→DimZ1→Z[F+7]V→Z[F+9] 要素终点桩号DegFileName:READDATZ[C+32]→II=3=>Prog"READDAT3"If GM+L :Then ;验证要素是否可用,否则重设要素I=1=>Prog"READDAT1"I=2=>Prog"READDAT2"Prog"REALDAT3"IfEndFileName:READDAT1 平曲线分段要素读取程序1Z[C+30]→F0→JLbi 1 搜索要素If G<z[f+3]:then< p="">-1=Z[F]=>Goto E:F-6→F:-1→J:Goto 1Else 1=Z[F+1]=>Goto E:-1=J=>Goto 2:1→J:F+6→F:Goto 1 IfEndLbi 2F→Z[C+30]Z[F+1]→Z[C+23] 当前分段要素N坐标Z[F+2]→Z[C+24] 当前分段要素E坐标Z[F+3]→Z[C+25] 当前分段要素起点桩号Z[F+4]→[C+26] 当前分段要素起点方位角(正北)Z[F+5]→Z[C+27] 当前分段要素起点曲率有左偏负右偏正(注意不半径)Z[F+6]→Z[C+28] 当前分段要素终点曲率有左偏负右偏正(注意不半径)</z[f+3]:then<>。
f5800计算器线路整套使用程序(升级版)【坐标、高程、超高、通用程序】
YONG(辛普森公式JYJ)
, YA " P " ( 1 DKI : → ( H P ] X Y FAN = ? : ? 2 : = " W ( ) ▲ ▲ ▲ = " O "RB Q ( 2 ? : = : H " V " " 1 1 S JU Prog ( ) ( " 1 ) S ? : DKB ? ÷ O : : = ZCX1 ÷ × N " = R P ) : QXFWJ " : → P
O Y P ) π V : Y
) : ) + → : Lb1 : CHENG
→ G ) 2 F R 2 X "
W + ÷ Q : → : → :
: ( Abs ÷ Goto P " I O
Prog ( ( P 5 : X : +
" ( H ) : H = Y W
ZCX1 ( Abs Lb1 → " → →
DKR=?”表示起点里程;“DKB=?”表示终点里程;“RA=?”表示起点半径;“RB=?”表示终点半径; “z=-1,Y=1?”表示曲线左偏输-1,右偏输1;“DKI=?”待求点里程;“PIAN JU=?”表示待求点的边 距,左边输-,中桩输0,右边输正。
" = ? " C R 2 > Z " 1 ×
TONG
Lb1 XA " H Z : ) : H : FWJ ÷ O 90 " " Goto Lb1 : ( ) H : : X : ▲ " Goto PIAN 2 ↙ JU " : Z 0 = ? : = ( → IfEnd : Abs " P ) ÷ XS YS 1 4 X 1 ) X F : Prog : " G " -1 P D : " ? : RA , : Lb1 ZHENG U " = Y R If 1 4 + ÷ 2 Z : : ↙ ( : H × : : = = : DKR " = ) N : : O ( Abs Q [ X Y 1 " = ? 1
5800高程计算程序
SUB3-GC(高程子程序)
Lb11:?S:Prog“SJ”:A-B→W:Abs(R*W÷2) →T:R(Abs(W)÷W)→R:If S≤O-T:Then0→K: Else If S≥O+T: Then0→K :B→A:Else S-0+T→K: IfEnd
G-(O-S)A- K2÷2÷R→H:"H=":H◢Goto1
说明
1为正算,2为反算,3为超欠挖.
S= 变坡终点里程。
G=变坡点高度→G O=变坡起点里程
A=小里程坡度 B=大里程坡度 R=交点半径
H= 高程。
SJ-GC(子程序名-竖曲线数据库)
If S≤变坡终点里程:Then变坡点高度→G:变坡起点里程→O:小里程坡度→A:大里程坡度→B:半径→R::IfEnd
(注:1.有多个竖曲线,依照上面的依次变更,每多一个,就增加一个。
每次只需要修改以上的数据或增加一个判断。
2.如整条线只有一个纵坡比喻为2﹪,那么程序应为S≥起点里程:Then 0.02→A:0.02→B:起点里程→O:起点高程→G:1×1045→R:。
卡西欧5800计算器高程程序Q-GC高程程序
卡西欧5800计算器高程程序Q-GC高程程序高程主程序Q-GC(子程序名Q-1 竖曲线要素,Q-2、Q-3横坡数据,V=-1为左半幅横坡,其他为右半幅)2→DimZLbl 0:?K:Prog”Q-1”:.005RAbs(I-L)→T:Z-T→A:Z+T→B:K-A→C:B-K→D:K-Z→EIf L>I:Then 1→J:Else L-1→J:IfendIf KB=>0→D:IfendIf K≦Z:Then I→Y:C→G:Else K>Z=>L→Y:D→G:IfendLbl 1:Fix 3:”H”:H+EY/100+JG^2/2/R→Norm 1:”HD”?U:”Z=-1,Y=1”?V:If V<0:Then Goto 2:Else Goto 3:IfendLbl 2:Prog“Q-2”:”HiGoto 4Lbl 3:Prog”Q-3”:”Hi”Goto 4Lbl 4:Norm 1:”D”?P:Fix 3:”H1”:X-U+.01OP→“10x K(+,-)”?W:K+10W→K:Goto 0主程序完子程序数据库Q-1If K≦753225:Then 749700→Z:181.776→H:30000→R:0→I:0.3→L:IfendIf K>753225:Then 753300→Z:192.576→H:30000→R:0.3→I:0.8→L:IfendIf K>下一竖曲线的前变坡点的桩号:Then下一竖曲线交点里程→Z: 下一竖曲线交点高程→H: 下一竖曲线半径→R:前纵坡→I:后纵坡→L:Ifend可输入全线竖曲线要素子程序(横坡数据库)Q-2If K≦753225:Then -2→O: IfendIf K>753225:Then -2+(-1/100)*(K-753225)→O: IfendIf K>753325:Then -3→O: IfendIf K>******:Then *****→O: IfendIf K>横坡变坡点桩号:Then 横坡或者公式→O: Ifend加宽渐变段的抛物线公式加宽渐变段起点为K0+100 终点为K0+163.523全加宽值为3.5m K待求点里程:四次方di=(4k^3-3k^4)bdi=待求点的加宽值k=bx/bl bx=(K-K0+100) bl=渐变段全长(K0+163.523-K0+100)三次方di=(3k^2-2k^3)b。
卡西欧5800坐标计算程序(通俗易懂版)
卡西欧5800道路坐标测量程序(通俗易懂版)主程序(自己给取个名吧)2→Dimz“1.SZ=﹥XY2.XY=﹥SZ”◢“N=”?NIf N=1:Then Goto 1:Else Goto 2:IfEndLbl 1“S=”?S“Z=”?Z“J=”?TIf S﹤0:Then Prog “SYL”:Else Prog “SYR”:IfEnd(可拿掉)1÷P→C:(P-R) ÷(2HPR)→D:180÷∏→E:Abs(Abs(S)-O)→W:Prog “SUB1”“QJ=”:Z[1]◣DMS◢“X=”:X◢“Y=”:Y◢Goto 1Lbl 2“S=”?SIf S<0:Then Prog “SYL”:Else Prog “SYR”:IfEnd(可拿掉) 90→T1÷P→C:(P-R) ÷(2HPR)→D:180÷∏→E“X=”?X“Y=”?YX→I:Y→JProg “SUB2”O+W→S(红色加粗加下画线为字母,常规为零)“S=”:S◢Z→Z“Z=”:Z◢Goto 2子程序(SUB1)0.1739274226→A:0.3260725774→B:0.0694318442→K:0.3300094782→L:1-L→F:1-K→M:U+W(Acos(G+QEKW(C+KWD))+Bcos(G+QELW(C+LWD))+Bcos(G+QEFW(C +FWD))+Acos(G+QEMW(C+MWD)))→XV+W(Asin(G+QEKW(C+KWD))+Bsin(G+QELW(C+LWD))+Bsin(G+QEFW(C+F WD))+Asin(G+QEMW(C+MWD))) →YG+QEW(C+WD)→Z[1]Z[1]+T→FX+Zcos(F)→XY+Zsin(F)→YReturn子程序(SUB2)G-90→Z[2]:Abs((Y-V)cos(Z[2])-(X-U)sin(L)→W:0→ZLbl 0Prog “SUB1”Z[2]+QEW(C+WD)→L(J-Y)cos(L)-(I-X)sin(L)→ZIf Abs(Z)<10(-6):Then Goto 1:EIse W+Z→W:Goto 0:IfEndLb1 10→Z:Prog “SUB1”(J-Y)÷sin(F)→ZReturn数据库(SYR)If S>29599.031(本段线元计算范围起点里程) And S≤29759.031(本段线元计算范围终点里程):Then 3311072.206(本段线元起点X坐标)→U:502909.1014(本段线元起点Y坐标)→V: 29599.031(本段线元起点里程)→O:256-25-59.11(本段线元起点方位角)→G:160(本段线元长度)→H:1400(本段线元起点半径)→P:10(45)(本段线元终点半径)(直线段为10的45次方)→R:-1(线元转向标识)(左偏为-1,右偏为1,直线为0)→Q:IfEnd输入说明正算 1 输入 N:输入1进入计算坐标模式S:里程桩号Z:偏距J:与线路角度2 显示 QJ:切线方位角X:X坐标Y:Y坐标反算 1 输入 N:输入2进入坐标反算里程偏距模式S:输入相近里程X:输入X坐标Y:输入Y坐标2 显示 S:反算出的里程桩号Z:反算出的偏距。
公路工程卡西欧5800坐标及高程计算程序(带超高计算程序)
本套程序包含的主程序及子程序:
1、主程序:0---ZXJS
2、坐标计算判断数据库:ZXDATA
3、坐标正算子程序:SUB1
4、坐标反算子程序:SUB2
5、竖曲线判断数据库程序:ZXGC
6、超高段判断数据库程序:ZXGC
7、竖曲线高程计算子程序:SUB3
8、竖曲线超高计算子程序:SUB4
H-Z((J-I)(3((S-O)÷A)^2-2((S-O)÷A)^3)+I)→H
Return
If Abs(Z)<1e^(-4):Then Goto 1:Else W+Z→W
Goto 0
Lbl 1
0→Z:Prog “SUB1”:(J-Y)÷sin(F)→Z
5:竖曲线判断数据库程序:ZXGC
参数含义:
B:变坡点桩号
G:变坡点高程
I:变坡点前坡度(区分正负,带符号)
J:变坡点后坡度(区分正负,带符号)
V+W(Z[1]sin(G+QKZ[3]W(C+Z[3]WD))+Z[2]sin(G+QKZ[4]W(C+Z[4]WD))+Z[2]sin(G+QKFW(C+FWD))+Z[1]sin(G+QKMW(C+MWD))→Y
G+QKW(C+WD)→Z[5]
Z[5]+E→F
X+Zcos(F)→X
Y+Zsin(F)→Y
Goto B
2、坐标计算判断数据库:ZXDATA
遵循 直线-缓和曲线-圆曲线-缓和曲线-直线 法则 无缓和曲线可以省略缓和曲线参数
坐标高程fx-5800P程序
fx-5800P计算器坐标正反算程序1、坐标正算主程序(命名为ZBZS)第1行:Lbl 0:”K=”?K:”LEN=”?T第2行:Prog “A“更改红色字体部份可调用其它线路数据库,本程序调用左线数据第3行:“X=“ :N+Tcos(F+90)◢显示X坐标第4行:“Y=“ :E+Tsin(F+90)◢显示Y坐标第5行:“F=“:F◢显示中线切线方位角,可省掉第6行:Prog “GCSJK“第7行:“SJZZGC=”:N◢第8行:Goto 0K——计算点里程LEN——计算点到中桩的距离(左负右正)2、坐标反算桩号和偏距主程序(命名为ZBFS)第1行:Lbl 1:“X1=“?C:“Y1=“?D:“K1=“?K第2行:Lbl 2:Prog “A“更改红色字体部份可调用其它线路数据库,本程序调用左线数据第3行:Pol(C-N,D-E):Icos(F-J) →S:K+S→K第4行:Abs(S)>0. 001=>Goto 2 判断精度(可删除)第5行:Isin(J-F) -4.725→T 反算偏距第6行:“K1=“:K◢反算桩号第7行:“T=“:T◢可与第5行合并第8行:K→K:T→T第9行:Lbl 3: ?R: ?H第10行:Prog “GCSJK“调用高程数据库第11行:(N+1.175)-H→E:Abs(E)→E: √(T2+E2)-R→M 计算超欠挖数据第12行:“CQW=“:M◢显示超欠挖数据第13行:Goto 1X1——取样点的X坐标Y1——取样点的Y坐标K1——输入时为计算起始点(在曲线内即可),输出时为反算点的桩号T——偏距(左负右正)3、计算坐标子程序(命名为XYF)为了简洁,本程序由数据库直接调用,上述中的正反算主程序不直接调用此程序第1行:K-A→S:(Q-P)÷L→I第2行:U+∫(cos(W+X(2P+XI)×90÷π),0,S) →N 计算中桩的X坐标第2行:V+∫(sin(W+X(2P+XI)×90÷π),0,S) →E 计算中桩的Y坐标第4行:W+S(2P+SI) ×90÷π→F 计算中线切线方位角4.子程序(GCSJK)Goto1Lbl 1:IfK≤232600:Then (1028.248-(232600-k)*0.04)-(k-232365.300) ^2/20000→N: Return:IfEndLbl 1:IfK≤232834.700:Then(1028.248-(232600-k)*-0.00694)-(k-232834.700) ^2/20000→N: Return: IfEndLbl 1:IfK≤233004.160:Then 1026.619-(232834.700-k)*-0.00694→N: Return:IfEndLbl 1:IfK≤233200:Then (1024.086-(233200-k)*-0.00694)+(k-233004.160)^2/24000→N: Return:IfEndLbl 1:IfK≤233395.840:Then(1024.086-(233200-k)*0.0257)+(k-233395.840) ^2/24000→N: Return: IfEndLbl 1:IfK≤234000:Then 1029.119-(233395.840-k)*0.0257→N: Return:IfEnd4、兰新铁路第二双线LXS-1标数据库(命名为A)第 1 行:K≤232100.184=>Stop第2行:232100.184→A:2911459.764→U:490442.123→V:309°32′23.8″→W:0→P:-1/900→Q:121→L:K≤A+L=>Goto 1第3行:232221.184→A: 2911534.669→U: 490347.127→V: 305°41′18.2″→W:-1/900→P:-1/900→Q:501.862→L:K≤A+L=>Goto 1第4行:232723.045→A:2911701.772→U:489880.776→V:273°44′19.9″→W:-1/900→P:0→Q:121→L:K≤A+L=>Goto 1第5行:232844.045→A:2911704.244→U:489759.826→V:269°53′14.3″→W:0→P:1/1800→Q:200→L:K≤A+L=>Goto 1第6行:233044.045→A:2911707.554→U:489559.881→V:273°4′13.5″→W:1/1800→P:1/1800→Q:886.337→L:K≤A+L=>Goto 1第7 行:233910.383→A:2911956.383→U: 488738.755→V: 300°38′48.4″→W:1/1800→P:0→Q:200→L:K≤A+L=>Goto 1第8 行:234110.383→A:2912064.618→U:488570.606→V:303°49′47.6″→W:0→P:0→Q:569.431→L:K≤A+L=>Goto 1第9 行:Lbl 1:Prog“XYF“A——曲线段起点的里程U——曲线段起点的X坐标V——曲线段起点的Y坐标W——曲线段起点的坐标方位角P——曲线段起点的曲率(左负右正)Q——曲线段终点的曲率(左负右正)L——曲线段长度(尽量使用长度,为计算断链方便。
卡西欧5800计算程序
5800计算程序本程序使用高斯四节点法为计算内核,可以计算任意里程偏距坐标,反算里程和边距,计算任意点高程,分正常计算和设计计算,支持多条线路.支持两种以中线为旋转轴的超高方式,支持加宽,支持带绿化带,支持开口线和坡脚线计算.本程序仅提供大家参考,计算器主程序: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为大地坐标转施工坐标。
选择错误重新选择。
公路三维部分正反算选择程序:ZF=FS“1LZ=>XY,2XY=>LZ,3BIANPO-FY”?U: //正反算选择,正算选1,反算选2If U=1: ThenProg”ZS-XH”:IfEnd://进入正算循环主程序IfU=2:Then Prog”FS-XH”:IfEnd: //进入反算循环主程序IfU=3:ThenProg”BIANPO-FY”:IfEnd://进入边坡开挖主程序正算循环主体程序ZS-XH“1PT-2SJ”?W://普通计算和设计边距计算选择“XL-XZ“?U //选择线路1~NIfW=1: Then //运行普通计算模式边踞自由输入Lbi0:”L=”?L:”Z=”?Z: //输入桩号和边距Porg”ZS-XH-1“:Goto0:IfEnd:运行正算循环子程序IfW=2:Then //运行设计计算模式边距按设计输入Lbi1:”L=”?//输入桩号Porg”0。
5LUKUAN”://录入公路加宽后,左右侧设计边距Porg”ZS-XH-1“:Goto1:IfEnd:运行正算循环子程序正算循环子程序ZS-XH-1Prog”PM-XL-XZ”: //进入平面线路选择程序对线路线元进行选择Prog”CHAOXIAN-CL” //里程超限处理Prog”GL-ZS”: //进入坐标正算程序Prog”GL-BZ-ZS” //进入公路边桩正算程序Prog”GC-XL-XZ”: //进入高程线路选择程序对线路线元进行选择Prog”GC”://进入高程部分提取中桩高程IfW=1:ThenProg”B-H”://普通计算时进入边桩高程部分提取边桩高程ElseZ[3] →Z: //按设计计算时候代入减去半边绿化带后的路基边距Prog”ZS-XS”: //进入正算显示程序,提取正算三维结果反算循环主体程序FS-XH“XL-XZ”?U://选择线路 1~NLbio:“L”?L:“X=”?T:“Y=”?S: //输入起算假定桩号,实测X YProg”GL-FS”: /进入公路反算程序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:Q+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: //计算出算点方位角边桩坐标计算程序ZS-BZX+Zcos(Q+90) →G //计算出边桩X坐标Y+ZSin(Q+90) →M //计算出边桩Y坐标公路反算程序GL-FS20→V: //V值设置为20,为第一次反算控制Do:Porg”PM-XL-XZ”://进入平面线路选择程序Porg:”CHAOXIAN-CL”://里程超限处理程序IfV>10: // V越小反算速度可能越慢,但是半径过小有可能算不出来,10为建议值Then Porg”GL-JY-ZS”://进入公路简易正算二节点程序Else Porg”GL-ZS”: //进入公路正算4节点程序IfEnd:T-X→I:S-Y→J: //试算点与测点X,Y距离差Pol(I,J):J-Q→J: //方位角转换为接近试算点到测点的值:Rec(I,J): //计算出X差和Y差(X里程,J边)I+(1-CJ-2DJ) →V //计算出里程大致差距(此公式为加速反算)L+V→L://修改后的里程Abs(V) →V: //修改值的绝对值LpWhile V>1m: //小于一毫米通过,大于一毫米循环计算中桩高程计算程序GCIf I-J<0:Then1→H:IfEnd: //开口向上部分赋值IfI-J=0:ThenGoto1: IfEnd: //无竖曲线部分赋值IfI-J>0:Then-1→IfEnd: //开口向下时赋值(L-C)I+K+(L-C)^2/(2E)H→I://计算得出竖曲线部分中桩高程Goto2:Lbi1:K+(L-C)I→I: Lbi2: //计算得出无竖曲线部分中桩高程边桩高程计算程序B-H(L-C)/(D-C)→P: //计算点占本线元长比例3P^(2^(S))-2P^(3^(S)) →P: //计算得线性和高次抛物线系数F+P(T-F)→E: //初步计算计算点横坡If V=1:Then If N= -1:Then //直线和直缓,缓直,曲线左偏时Z<0:ThenIfE>Z[4]:ThenZ[4]→E: IfEnd : //计算左侧时,横坡大于一般横坡取一般横坡I+Abs(Z)E→O: IfEnd : //左侧高程IfZ>0:Then I+ZF→O:IfEnd: //右侧高程得数If N=1:Then IfZ<0:Then I+Abs(Z)E:IfEnd: //曲线右偏时,左侧高程得得IfZ>0:Then If E>Z[4]:Then Z[4]→E:IfEnd //右侧高程横坡大于一般横坡,取一般横坡I+ZE→O:IfEnd: IfEnd: IfEnd: //右侧高程得数IfV=2:ThenIf Z>0:Then I+ZE→O:IfEnd://圆曲线全超高和S曲线超高渐变部分右侧高程得数IfZ<0:ThenI-Abs(Z)E→O:IfEnd:IfEnd: // 圆曲线全超高和S曲线超高渐变部分左侧高程得数设计标准路面宽度子程序 CHANGSHU12→Z[1]://选择12米为路面半宽度,根据设计修改1.5→Z[2]://选择1.5米为绿化带半宽-0.02 →Z[4] //一般横坡录入路面宽度子程序 0。
fx-5800P坐标高程计算程序交点法17页
CASIOfx-5800P单交点通用型曲线坐标高程计算程序一、说明:本程序采用交点法计算道路基本型曲线坐标及高程,在建立好数据库后,能连续计算全线各桩号的中边桩坐标及高程。
本程序共包括一个主程序和九个子程序,其中有坐标计算、高程计算、坡口坡脚线放样,锥坡放样坐标计算等子程序。
二、内容:1.PM5-3 XYZJS(主程序)“SINGLE BASIC TYPE CURVE”◢“METHOD OF COORDINATE PM5-3”◢Deg:ClrStat:FreqOn:Fix 340→DimZ“INPUT(0) Or DATA(Else)”?N“FUNCTION”?PProg “SUB5-35”If Z[30]<0:Then -1→Z[20]:Else 1→Z[20]:IfEndAbs(Z[30])→DPol(Z[26]-Z[28],Z[27]-Z[29]):ClsIf J<0: Then J+360→Z[11]:Else J→Z[11]:IfEnd 计算ZH→JD 方位角Z[11]+Z[30]+180→Z[16] 计算HZ→JD方位角If Z[16]>360:Then Z[16]-360→Z[12]:Else Z[16]→Z[12]:IfEndIf Z[12]>180:Then Z[12]-180→Z[23]:Else Z[12]+180→Z[23]:IfEnd计算JD→HZ方位角S2÷(24R)-S4÷(2688R3)→Z[1] 计算第一缓和曲线内移值0.5S-S3÷(240R2)+S5÷(34560R4)→Z[2] 计算第一缓和曲线切线增长值T2÷(24R)-T4÷(2688R3)→Z[3] 计算第二缓和曲线内移值0.5T-T3÷(240R2)+T5÷(34560R4)→Z[4] 计算第二缓和曲线切线增长值(R+Z[3])÷sin(D)-(R+Z[1])÷tan(D)+Z[2]→Z[5] 计算第一切线长(R+Z[1])÷sin(D)-(R+Z[3])÷tan(D)+Z[4]→Z[6] 计算第二切线长90S÷(πR)→Z[7]:90T÷(πR)→Z[8] 计算第一、二缓和曲线偏角πR(D-Z[7]-Z[8])÷180→Z[9] 计算圆曲线长度S+T+Z[9]→Z[10] 计算曲线总长度Z[25]-Z[5]→List X[1] 计算直缓点桩号1→K:Prog “SUB5-37”List X[1]+S→List X[2]:List X[2]+Z[9]→List X[3] 计算缓圆点、圆缓点桩号Z[26]-Z[5]cos(Z[11])→List Y[1]:Z[27]-Z[5]sin(Z[11])→List Freq[1]If S≠0:Then“ZH PEG(m)=”:List X[1]◢显示直缓点桩号Else “ZY PEG(m)=”:List X[1]◢显示直圆点桩号IfEnd“X(m)=”:List Y[1]◢显示直缓(圆)点X坐标“Y(m)=”:List Freq[1]◢显示直缓(圆)点Y坐标“H(m)=”:Z[24]◢显示直缓(圆)点Z坐标“FWJ=”:Z[11] ►DMS◢显示直缓(圆)点切线方位角1→K:Z[11]→Z[13]:Prog “SUB5-34”调子程序计算直缓点边桩坐标2→K:If S≠0:Then Prog “SUB5-31”调子程序计算缓圆点中边桩坐标Else List Y[1]→List Y[K]:List Freq[1]→List Freq[K]Z[11]→Z[17]:IfEnd3→K: Prog “SUB5-32”调子程序计算圆缓点中边桩坐标List X[1]+Z[10]→List X[4] 计算缓直点桩号4→K:Prog “SUB5-37”If T≠0:Then Z[26]+Z[6]cos(Z[23])→List Y[4]Z[27]+Z[6]sin(Z[23])→List Freq[4] 计算缓直点中桩坐标“HZ PEG(m)=”:List X[4]◢显示缓直(圆)点桩号“X(m)=”:List Y[4]◢显示缓直(圆)点X坐标“Y(m)=”:List Freq[4]◢显示缓直(圆)点Y坐标“H(m)=”:Z[24]◢显示缓直(圆)点Z坐标“FWJ=”:Z[23] ►DMS◢显示缓直点切线方位角Z[23]→Z[13]:Prog “SUB5-34”调子程序计算缓直(圆)点边桩坐标Else List Y[3]→List Y[K]:List Freq[3]→List Freq[K]:IfEndIf R<30: Then 5→I: Else If R<60: Then 10→I: Else 20→I: IfEnd :IfEnd “INT DIST(m)=”?OIf O>0: Then O→I: IfEnd“ONLY CALC +PEG(1)”?→GIf G=1:Then Goto 1:IfEndK+1→K:Int(Z[31]÷I)I+I→List X[K]If List X[K]>List X[1]:Then Prog “SUB5-31”:Else Prog “SUB5-33”:IfEnd DoK+1→K:List X[K-1]+I→List X[K]If List X[K]≤ List X[1]:Then Prog “SUB5-33”Else If List X[K] ≤ List X[2]:Then Prog “SUB5-31”Else If List X[K] ≤ List X[3]:Then Prog “SUB5-32”Else If List X[K] ≤ List X[4]:Then Prog “SUB5-31”Else Prog “SUB5-33”IfEnd:IfEnd:IfEnd:IfEndLpWhile List X[K]+I<Z[32]Lbl 1Do“+PEG(m)=”?FIf F<Z[31]:Then Break:IfEndIf F>Z[32]:Then Break:IfEndK+1→K:F→List X[K]If List X[K]≤ List X[1]:Then Prog “SUB5-33”Else If List X[K] ≤ List X[2]:Then Prog “SUB5-31”Else If List X[K] ≤ List X[3]:Then Prog “SUB5-32”Else If List X[K] ≤ List X[4]:Then Prog “SUB5-31”Else Prog “SUB5-33”IfEnd:IfEnd:IfEnd:IfEndLpWhile F>0“PM5-3→END”2.SUB5-31(缓和段坐标计算子程序)If List X[K] ≤ List X[2]:Then S→H:List X[K]-List X[1]→LElse T→H:List X[4]-List X[K]→L:IfEndIf H≠0:Then L-L5÷(40R2H2)+L9÷(3456R4H4)-L13÷(599040R6H6)→X L3÷(6RH)-L7÷(336R3H3)+L11÷(42240R5H5)-L15÷(9676800R7H7)→Y √(X2+Y2)→Z[14]:tan-1(Y÷X)→Z[15]Else 0→Z[14]:0→Z[15]:IfEndIf List X[K]≤ List X[2]:Then Z[11]+Z[20]Z[15]→Z[16]List Y[1]+Z[14]cos(Z[16])→List Y[K]List Freq[1]+Z[14]sin(Z[16])→List Freq[K]If H≠0:Then Z[11]+90Z[20]L2÷(πRH)→Z[13]Else Z[11]→Z[13]:IfEndIf List X[K] =List X[2]:Then Z[13]→Z[17]:IfEndElse Z[12]-Z[20]Z[15]→Z[16]List Y[4]+Z[14]cos(Z[16])→List Y[K]List Freq[4]+Z[14]sin(Z[16])→List Freq[K]If H≠0:Then Z[12]-90Z[20]L2÷(πRH)→Z[13]:Else Z[12]→Z[13]:IfEndZ[13]+180→Z[13]:IfEndIf Z[13]<0:Then Z[13]+360→Z[13]:Else If Z[13]>360:Then Z[13]-360→Z[13]:IfEnd:IfEndProg “SUB5-37”If List X[K] =List X[2]:Then “HY PEG(m)=”Else If G=1:Then “+PEG(m)=”Else“INT PEG(m)=”:IfEnd:IfEndList X[K]◢显示桩号“X(m)=”:List Y[K]◢显示X坐标“Y(m)=”:List Freq[K]◢显示Y坐标“H(m)=”:Z[24]◢显示Z坐标“FWJ=”:Z[13] ►DMS◢显示切线方位角Prog “SUB5-34”:Return3.SUB5-32(圆曲线曲线段坐标计算子程序)List X[K]-List X[2]→L90L÷(πR)→Z[15]:2Rsin(Z[15])→Z[14]Z[17]+Z[20]Z[15]→Z[16]List Y[2]+Z[14]cos(Z[16])→List Y[K]List Freq[2]+Z[14]sin(Z[16])→List Freq[K]Z[17]+2Z[20]Z[15]→Z[13]If Z[13]<0:Then Z[13]+360→Z[13]:Else If Z[13]>360:Then Z[13]-360→Z[13]:IfEnd:IfEndProg “SUB5-37”If List X[K] =List X[3]:Then If T≠0:Then “YH PEG(m)=”Else “YZ PEG(m)=”:IfEndElse If G=1:Then “+PEG(m)=”Else“INT PEG(m)=”:IfEnd:IfEndList X[K]◢显示桩号“X(m)=”:List Y[K]◢显示X坐标“Y(m)=”:List Freq[K]◢显示Y坐标“H(m)=”:Z[24]◢显示Z坐标“FWJ=”:Z[13] ►DMS◢显示切线方位角Prog “SUB5-34”:Return4.SUB5-33(直线段坐标计算子程序)If List X[K]≤ List X[1]:Then List X[1]-List X[K]→LList Y[1]-Lcos(Z[11])→List Y[K]List Freq[1]-Lsin(Z[11])→List Freq[K]Z[11] →Z[13]Else List X[K]-List X[4]→LList Y[4]+Lcos(Z[23])→List Y[K]List Freq[4]+Lsin(Z[23])→List Freq[K]Z[23]→Z[13]:IfEndProg “SUB5-37”If G=1:Then“+PEG(m)=”Else“INT PEG(m)=”:IfEndList X[K]◢显示桩号“X(m)=”:List Y[K]◢显示X坐标“Y(m)=”:List Freq[K]◢显示Y坐标“H(m)=”:Z[24]◢显示Z坐标“FWJ=”:Z[13] ►DMS◢显示切线方位角Prog “SUB5-34”:Return5.SUB5-34(边桩坐标计算子程序)“WL(m),0 NO=”?MIf M<0:Then Prog “SUB5-39”Else If M>0:Then “ANGLE→L(Deg)=”?AZ[13]-A→Z[21]List Y[K]+Mcos(Z[21])→Z[18]List Freq[K]+Msin(Z[21])→Z[19]“XL(m)=”:Z[18]◢“YL(m)=”:Z[19]◢If P=1:Then Prog “SUB5-36”:IfEndElse NO:IfEnd:IfEnd“WR(m),0 NO=”?WIf W<0:Then Prog “SUB5-39”Else If W>0:Then “ANGLE→R(Deg)=”?AZ[13]+A→Z[22]List Y[K]+Wcos(Z[22])→Z[18]List Freq[K]+Wsin(Z[22])→Z[19]“XR(m)=”:Z[18]◢“YR(m)=”:Z[19]◢If P=1:Then Prog “SUB5-36”:IfEndElse NO:IfEnd:IfEndReturn6.SUB5-35(平曲线要素数据库子程序,可扩充为多条线路)If N=2:Then Goto 1:IfEndIf N=0:Then Goto 2:IfEnd“+PEG(m)=”?→FIf F≤47129.607:Then 第一交点桩号→Z[25]:交点X坐标→Z[26]:交点Y坐标→Z[27]:前交点X坐标→Z[28]:前交点Y坐标→Z[29]:转角(左负右正)→Z[30]:第一缓和曲线长度→S:圆曲线半径→R:第二缓和曲线长度→T:本平曲线起点桩号→Z[31]:本平曲线终点桩号→Z[32]:ReturnElse If F≤48000:Then 第二交点桩号→Z[25]:交点X坐标→Z[26]:交点Y坐标→Z[27]:前交点X坐标→Z[28]:前交点Y坐标→Z[29]:转角(左负右正)→Z[30]:第一缓和曲线长度→S:圆曲线半径→R:第二缓和曲线长度→T:本平曲线起点桩号→Z[31]:本平曲线终点桩号→Z[32]:ReturnElse If F≤49009.82:Then 第三交点桩号→Z[25]:交点X坐标→Z[26]:交点Y坐标→Z[27]:前交点X坐标→Z[28]:前交点Y坐标→Z[29]:转角(左负右正)→Z[30]:第一缓和曲线长度→S:圆曲线半径→R:第二缓和曲线长度→T:本平曲线起点桩号→Z[31]:本平曲线终点桩号→Z[32]:ReturnElse If F≤50200:Then 第四交点桩号→Z[25]:交点X坐标→Z[26]:交点Y坐标→Z[27]:前交点X坐标→Z[28]:前交点Y坐标→Z[29]:转角(左负右正)→Z[30]:第一缓和曲线长度→S:圆曲线半径→R:第二缓和曲线长度→T:本平曲线起点桩号→Z[31]:本平曲线终点桩号→Z[32]:Return IfEnd:IfEnd:IfEnd:IfEndLbl 1:If F≤47129.607:Then 第一交点桩号→Z[25]:交点X坐标→Z[26]:交点Y坐标→Z[27]:前交点X坐标→Z[28]:前交点Y坐标→Z[29]:转角(左负右正)→Z[30]:第一缓和曲线长度→S:圆曲线半径→R:第二缓和曲线长度→T:本平曲线起点桩号→Z[31]:本平曲线终点桩号→Z[32]:ReturnElse If F≤48000:Then 第二交点桩号→Z[25]:交点X坐标→Z[26]:交点Y坐标→Z[27]:前交点X坐标→Z[28]:前交点Y坐标→Z[29]:转角(左负右正)→Z[30]:第一缓和曲线长度→S:圆曲线半径→R:第二缓和曲线长度→T:本平曲线起点桩号→Z[31]:本平曲线终点桩号→Z[32]:Return:Else If F≤49009.82:Then 第三交点桩号→Z[25]:交点X坐标→Z[26]:交点Y坐标→Z[27]:前交点X坐标→Z[28]:前交点Y坐标→Z[29]:转角(左负右正)→Z[30]:第一缓和曲线长度→S:圆曲线半径→R:第二缓和曲线长度→T:本平曲线起点桩号→Z[31]:本平曲线终点桩号→Z[32]:ReturnElse If F≤50200:Then 第四交点桩号→Z[25]:交点X坐标→Z[26]:交点Y坐标→Z[27]:前交点X坐标→Z[28]:前交点Y坐标→Z[29]:转角(左负右正)→Z[30]:第一缓和曲线长度→S:圆曲线半径→R:第二缓和曲线长度→T:本平曲线起点桩号→Z[31]:本平曲线终点桩号→Z[32]:ReturnIfEnd:IfEnd:IfEnd:IfEndLbl 2“JD PEG(m)=”?→Z[25]“JD X(m)=”?→Z[26]“JD Y(m)=”?→Z[27]“ZD X(m)=”?→Z[28]“ZD Y(m)=”?→Z[29]“TURNING ANGLE,-L +R(Deg)=”?→Z[30]“Lh1(m)=”?S“R(m)=”?R“Lh2(m)=”?T“START PEG(m)=”?→Z[31] 本平曲线起点桩号“END PEG(m)=”?→Z[32] 本平曲线终点桩号Return7.SUB5-36(锥坡放样坐标计算子程序)“ZHUIPO FANGYANG”◢“LONG R(m)=”?U 锥坡椭圆的长轴半径U“FW→LONG(Deg)=”?C 锥坡长轴的方位角C“SHORT R(m)=”?V 锥坡椭圆的短轴半径V“LONG→SHORT ANGLE(Deg)=”?Z 锥坡长半轴与短半轴的夹角If Z≥0:Then 1→D:Else -1→D:IfEnd 短半轴在长半轴右侧夹角为正,反之则为负U-V→L 计算锥坡椭圆长短轴的半径差Lbl 1“ADD ANGLE(Deg)=”?J 取锥坡椭圆的等分角度If J>Abs(Z):Then Return:IfEndC+DJ→HZ[18]+Vcos(H)→X:Z[19]+Vsin(H)→YIf J≤90:Then J→H:C→Q:Else 180-J→H:C+180→Q:IfEndLcos(K)→EX+Ecos(Q)→X 计算锥坡椭圆等分角度所对应的椭圆弧点X坐标Y+Esin(Q)→Y 计算锥坡椭圆等分角度所对应的椭圆弧点Y坐标“X(m)=”:X◢显示X坐标“Y(m)=”:Y◢显示Y坐标Goto 18.高程计算子程序(SUB5-37)Prog “SUB5-38”0.5Z[35]Abs(0.01(Z[37]-Z[36]))→Z[38]If Z[37]>Z[36]:Then 1→D:Else -1→D:IfEndIf List X[K]<Z[33]:Then -0.01Z[36]→H:Else 0.01Z[37]→H:IfEndAbs(Z[33]-List X[K])→LIf L>Z[38]:Then Z[34]+HL→Z[24]:Else Z[34]+HL+D(Z[38]-L)2÷(2Z[35])→Z[24]:IfEndReturn9.高程数据库子程序:SUB5-38(两条线路,可扩充为多条线路)If N=0:Then Goto 1:Else If N=2:Then Goto 2:IfEnd:IfEndIf List X[K]≤46500:Then 46150→Z[33]:361.26→Z[34]:40000→Z[35]:-0.3→Z[36]:-1.2→Z[37]:ReturnElse If List X[K]≤47200:Then 46800→Z[33]:353.46→Z[34]:20000→Z[35]:-1.2→Z[36]:1→Z[37]:ReturnElse If List X[K]≤48400:Then 47500→Z[33]:360.46→Z[34]:20000→Z[35]:1→Z[36]:-1.6→Z[37]:ReturnElse If List X[K]≤49600:Then 48700→Z[33]:341.26→Z[34]:10000→Z[35]:-1.6→Z[36]:2.45→Z[37]:ReturnElse 49800→Z[33]:368.21→Z[34]:150000→Z[35]:2.45→Z[36]:2.7→Z[37]:Return IfEnd:IfEnd:IfEnd:IfEndLbl 1:“C PEG(m)=”?→Z[33]“C H(m)=”?→Z[34]“R(m)=”?→Z[35]“I1=”?→Z[36]“I2=”?→Z[37]ReturnLbl 249840→Z[33]:369.19→Z[34]:100000→Z[35]:2.45→Z[36]:2.8→Z[37]:Return10.SUB5-39(坡口坡脚线坐标计算子程序)“TIANWA LINE”◢“L(1) Or R(Else)=”?C 选择中线左右,1为左,其它为右“DIST→ZX(m)=”?U 起坡点与中桩距离常数“H→ZX(m)=”?V 起坡点与中桩高差常数“T(1) Or W(Else)=”?Z 填方边坡为1,其它为挖方边坡“i=”?E 填方或挖方边坡坡度Lbl 1“FY DIST(m)=”?Q 实际计算距离If C=1:Then List Y[K]+Qcos(Z[13]-90)→Z[18]List Freq[K]+Qsin(Z[13]-90)→Z[19]Else List Y[K]+Qcos(Z[13]+90)→Z[18]List Freq[K]+Qsin(Z[13]+90)→Z[19]:IfEnd“X(m)=”:Z[18]◢“Y(m)=”:Z[19]◢Q-U→L: LE→BIf Z=1:Then Z[24]-V-B→Z[39]:Else Z[24]+V+B→Z[39]:IfEnd“JS H(m)=”:Z[39]◢计算出应有高程“SC H(m)=”?→Z[40] 输入实测高程Z[40]-Z[39]→H“GC(m)=”:H◢显示实测高程与计算高程的差异If Abs(H)<0.05:Then “FANGYANG OK!”◢Return:Else Goto 1:IfEnd希望以上资料对你有所帮助,附励志名言3条:1、宁可辛苦一阵子,不要苦一辈子。
fx-5800p全线坐标正反算带高程计算程序(线元法
曲线任意里程中边桩坐标正反算(CASIO fx-5800P计算器)程序一、程序功能及原理1.功能说明:本程序由一个主程序(TYQXJS)和五个子程——正算子程序(SUB-ZS)、反算子程序(SUB-FS)等构成,可以根据曲线段——直线、圆曲线、缓和曲线(完整或非完整型)的线元要素(起点坐标、起点里程、起点切线方位角、线元长度、起点曲率半径、止点曲率半径)及里程边距或坐标,对该曲线段范围内任意里程中边桩坐标进行正反算。
本修改版程序既可实现正算全线贯通,亦可实现反算全线贯通。
本程序在CASIO fx-5800P计算器运行。
2.计算原理:利用Gauss-Legendre 5点通用公式正算线路中边桩坐标、线外测点至曲线元起点和终点的垂距的符号是否相异(即Dca×Dcb<0=>该测点在其线元内)进行判断并利用该线元要素反算中桩里程、支距,最后计算出放样数据。
二、源程序1.主程序(TYQXJS)Deg:fix 3119→DimZ“INPUT(0) Or DATA(Else)”?ILbl 0:“1.SZ=>XY,2.XY=>SZ,3.TF=>CK,4.SD=>FY,5.TW=>FY”?NIf N=1 Or N=5:Then Goto 1Else If N=2 Or N=3 Or N=4:Then Goto 2Else Goto 3IfEnd:IfEndLbl 1:“K(m)=”?SIf S<0:Then Goto 0:IfEnd“JL(m)=”?ZIf Z≠0:Then “ANGLE→R(Deg)=”?M:IfEndIf I=0:Then Prog “DAT1”:Else Prog “DAT2”:IfEndS-O→W:If W<0:Then Goto 0:Else If W>H:Then Goto 0:IfEnd:IfEndProg “SUB-ZS”:Prog “SUB-GC”If Z<0:Then“XL(m)=”:X◢“YL(m)=”:Y◢If N=5:Then Prog “SUB-TW”:IfEndElse If Z>0:Then “XR(m)=”:X◢“YR(m)=”:Y◢If N=5:Then Prog “SUB-TW”:IfEndElse “X(m)=”:X◢“Y(m)=”:Y◢“Hs(m)=”:L◢“FWJ=”: F►DMS◢IfEnd:IfEndGoto 1Lbl 2:“X(m)=”?X:If X<0:Then Goto 0:IfEnd“Y(m)=”?YIf N=3 Or N=4:Then “H(m)=”?→Z[2]:IfEndX→Z[4]:Y→Z[5]:90→MIf I=0:Then Prog “DAT1”G+QEH(C+HD)→F:1→J:U→Z[8J]:V→Z[8J+1]G-M→A:F-M→B:Prog “SUB-ZX1”:Goto BG+M→A:F+M→B:Prog “SUB-ZX1”:Goto B:IfEnd0→J:Lbl A: Isz JZ[8J+3]-M→A:Z[8(J+1)+3]-M→B:Prog “SUB-ZX1”If Z[6]Z[7]<0:Then J→J:Prog“DAT1” :Goto B:IfEndZ[8J+3]+M→A:Z[8(J+1)+3]+M→B:Prog “SUB-ZX1”If Z[6]Z[7]<0:Then J→J:Prog “DAT1” :Goto B:Else Goto A:IfEndLbl B:Prog“SUB-FS”O+W→S:Prog “SUB-GC”“K(m)=”:S◢“Hs(m)=”:L◢“JL(m)=”:Z◢If N=3:Then Prog “WIDE”:IfEndIf N=4:Then Prog “SDFY”:IfEndGoto 2Lbl 3:“TYQXJS→END”2. 正算子程序(SUB-ZS)0.1184634425→A: 0.2393143352→B:0.2844444444→Z[1]:0.0469100770→K:0.2307653449→L:0.5→Z[3]U+W(Acos(G+QEKW(C+KWD))+Bcos(G+QELW(C+LWD))+Z[1]cos(G+QEZ[3]W(C+Z[3]WD))+Bcos(G+QE(1 -L)W(C+(1-L)WD))+Acos(G+QE(1-K)W(C+(1-K)WD)))→XV+W(Asin(G+QEKW(C+KWD))+Bsin(G+QELW(C+LWD))+Z[1]sin(G+QEZ[3]W(C+Z[3]WD))+Bsin(G+QE(1-L)W(C+(1-L)WD))+Asin(G+QE(1-K)W(C+(1-K)WD)))→YG+QEW(C+WD)+M→FX+Zcos(F)→X:Y+Zsin(F)→YF-M→F:If F<0:Then F+360→F:IfEndReturn3. 反算子程序(SUB-FS)G-M→T:Abs((Y-V)cos(T)-(X-U)sin(T))→W:0→ZLbl C:Prog “SUB-ZS”T+QEW(C+WD)→L:(Z[5]-Y)cos(L)-(Z[4]-X)sin(L)→ZIf Abs(Z)<10-6:Then Goto D:Else W+Z→W:Goto C:IfEndLbl D:0→Z:Prog “SUB-ZS”:(Z[5]-Y)÷cos(F)→Z:Return4.高程计算子程序(SUB-GC)Prog “DAT3”0.5RAbs(0.01(E-D))→TIf E>D:Then 1→C:Else -1→C:IfEndIf S<A:Then -0.01D→W:Else 0.01E→W:IfEndAbs(A-S)→LIf L>T:Then B+WL→L:Else B+WL+C(T-L)2÷2÷R→L:IfEndReturn5. 垂距计算子程序(SUB-ZX1)(Z[5]-Z[8J+1])cos(A)-(Z[4]-Z[8J])sin(A)→Z[6](Z[5]-Z[8(J+1)+1])cos(B)-(Z[4]-Z[8(J+1)])sin(B)→Z[7]Return6.曲线元要素数据库:DAT1(两条线路,可扩充为多条线路)If I=0:Then Goto E: Else If I=2:Then Goto F:IfEnd:IfEndJ=1=>***→Z[8]:***→Z[9]:***→Z[10]:***→Z[11]:***→Z[12]:***→Z[13]:***→Z[14]:*** →Z[15]:IfEndJ=2=>***→Z[16]:***→Z[17]:***→Z[18]:***→Z[19]:***→Z[20]:***→Z[21]:***→Z[22]:***→Z[23]:IfEndJ=3=>***→Z[24]***→Z[25]:***→Z[26]:***→Z[27]:***→Z[28]:***→Z[29]:***→Z[30]:***→[31]:IfEnd………………………………………………..Goto HLbl F: J=1=>***→Z[8]:***→Z[9]:***→Z[10]:***→Z[11]:***→Z[12]:***→Z[13]:***→Z[14]:*** →Z[15]:IfEndJ=2=>***→Z[16]:***→Z[17]:***→Z[18]:***→Z[19]:***→Z[20]:***→Z[21]:***→Z[22]:***→Z[23]:IfEndJ=3=>***→Z[24]***→Z[25]:***→Z[26]:***→Z[27]:***→Z[28]:***→Z[29]:***→Z[30]:***→[31]:IfEnd(注:如有多个曲线元要素继续添加入数据库DAT1中)Goto GLbl E:“X0=”?U:“Y0=”?V:“S0=”?O:“F0=”?G:“LS=”?H:“R0=”?P:“RN=”?R:“Q=”?Q Lbl G:1÷P→C:(P-R)÷(2HPR)→D:180÷π→E:Return7.隧道放样子程序:SDFY5.5→A:8.5→B:L+1.5→CIf I=1:Then -1→K:Else 1→K:IfEnd 给左右隧道符号赋值1.25K→F:4.25K→L:7.25K→K 给各圆心距路线的偏距赋值Z[2]-C→D 计算测点至圆心的高差D,If D>A:Then Goto 1:Else If D<0:Then Goto 2:IfEnd:IfEndZ-L→E:Abs(E)→E:√(D2+E2)→W:W-A→T: 计算测点至圆心的平距E,实测半径W“R(m)=”:W◢“DR(m)=”:T◢If E≤A:Then D-√(A2-E2)→C:E-√(A2-D2)→L 计算测点水平偏移量L、垂直偏移量C “Dh(m)=”:C◢显示测点垂直偏移量C“DL(m)=”:L◢显示测点水平偏移量LElse E-√(A2-D2)→L“DL(m)=”:L◢IfEnd:ReturnLbl 1Z-L→E:Abs(E)→E:√(D2+E2)→W:W-A→T: 计算测点至圆心的平距E,实测半径W“R(m)=”:W◢“DR(m)=”:T◢If E≤A:Then D-√(A2-E2)→C“Dh(m)=”:C◢IfEnd:ReturnLbl 2:Abs(D)→D:Abs(Z)→Z:Abs(K)→K:Abs(F)→FIf Z>K:Then Z-F→E:Else Z+K→E:IfEnd√(D2+E2)→W:W-B→T“R(m)=”:W◢“Rc(m)=”:T◢If E≤B:Then D-√(B2-E2)→C:E-√(B2-D2)→L 计算测点水平偏移量L、垂直偏移量C “Dh(m)=”:C◢显示测点垂直偏移量C“DL(m)=”:L◢显示测点水平偏移量LElse E-√(B2-D2)→L“DL(m)=”:L◢显示测点水平偏移量LIfEnd:Return8.曲线元要素判断数据库:DAT2(两条线路,可扩充为多条线路)If I=2:Then Goto A:IfEndIf S<第一线元终点里程:Then 1→J:Prog “DAT1”:ReturnElse If S<第二线元终点里程:Then 2→J:Prog “DAT1”:ReturnElse If S<第三线元终点里程:Then 3→J:Prog “DAT1”:ReturnElse If S<第四线元终点里程:Then 4→J:Prog “DAT1”:ReturnIfEnd:IfEnd:IfEnd:IfEndIf S≥第四线元起点里程And S<第五线元终点里程:Then 5→J:Prog “DAT1”:Return .................................Else If S<第n线元里程:Then n→J:Prog “DAT1”:ReturnIfEnd:IfEnd:IfEnd:IfEndLbl AIf S<第一线元终点里程:Then 1→J:Prog “DAT1”:ReturnElse If S<第二线元终点里程:Then 2→J:Prog “DAT1”:ReturnElse If S<第三线元终点里程:Then 3→J:Prog “DAT1”:ReturnElse If S<第四线元终点里程:Then 4→J:Prog “DAT1”:ReturnIfEnd:IfEnd:IfEnd:IfEndIf S≥第四线元起点里程And S<第五线元终点里程:Then 5→J:Prog “DAT1”:Return Else If S<第n线元里程:Then n→J:Prog “DAT1”:ReturnIfEnd:IfEnd:IfEnd:IfEnd .................................9.高程数据库子程序:DAT3(两条线路,可扩充为多条线路)If I=0:Then Goto A:Else If I=2:Then Goto B:IfEnd:IfEndIf S≤46500:Then 46150→A:361.26→B:40000→R:-0.3→D:-1.2→E:ReturnElse If S≤47200:Then 46800→A:353.46→B:20000→R:-1.2→D:1→E:ReturnElse If S≤48400:Then 47500→A:360.46→B:20000→R:1→D:-1.6→E:ReturnElse If S≤49600:Then 48700→A:341.26→B:10000→R:-1.6→D:2.45→E:Return IfEnd:IfEnd:IfEnd:IfEndIf S>49600 And S≤50300:Then 49840→A:369.19→B:100000→R:2.45→D:2.8→E:Return Else If I=2:Then49800→A:368.21→B:150000→R:2.45→D:2.7→E:ReturnIfEnd:IfEndLbl A:“C PEG(m)=”?→A“C H(m)=”?→B“R(m)=”?→R“I1=”?→D“I2=”?→EReturnLbl B49800→A:368.21→B:150000→K:2.45→D:2.7→E:Return10.填方路基宽度检查子程序(WIDE)“WIDTH CHECK”◢“H→MID(m)=”?→A 起坡点与中桩高差常数“DIST→MID(m)=”?→B 起坡点与中桩距离常数“i=”?→C 路基填筑坡度CAbs(Z[2]-L+A)→DAbs(Z)-B-D→E“DL(m)=”:E◢显示实有宽度与应有宽度之差值Return11.坡口坡脚线坐标计算子程序:SUB-TW“TIANWA LINE”◢“DIST→MID(m)=”?A 起坡点与中桩距离常数“H→MID(m)=”?B 起坡点与中桩高差常数“T(1) Or W(Else)=”?C 填方边坡为1,其它为挖方边坡“i=”?E 填方或挖方边坡坡度Abs(Z)-A→D: DE→KIf C=1:Then L-B-K→W:Else L+B+K→W:IfEnd“JS H(m)=”:W◢计算出应有高程“SC H(m)=”?→D 输入实测高程D-W→T“GC(m)=”:T◢显示实测高程与计算高程的差异Return三、使用说明1、规定(1) 以道路中线的前进方向(即里程增大的方向)区分左右;当线元往左偏时,Q=-1;当线元往右偏时,Q=1;当线元为直线时,Q=0。
CASIO fx-5800P计算器路线坐标高程计算程序
CASIO fx—5800P计算器路线坐标计算程序(单个交点)主程序名CALXY (计算中桩、边桩坐标)Lbl 1:“ZZ”? →Z[27] :“D(-+m)”? →D:If D≠0 :Then “∠(DMS)”? →V:Ifend』If Z[27]≤Z[17]:Then Z[18]+ (Z[27] —Z[17]) Cos( F)+D Cos( F+V):“X=”:Ans▲Z[19]+ (Z[27] —Z[17]) Sin( F )+D Sin( F+V):“Y=”:Ans▲:Ifend』If Z[27]>Z[17] And Z[27]≤Z[20]:Then Z[27] —Z[17] →L:Prog “HHXY”:Z[18] +I Cos( F+ JH)+D Cos( F+WH+V):“X=”:Ans▲:Z[19] +I Sin(F+ JH)+D Sin( F+WH+V):“Y=”:Ans▲:Ifend』If Z[27]>Z[20] And Z[27]≤Z[24] —Z[6]:Then Z[27] —Z[20] →L:Prog “YUXY”:Z[21] +I Cos( Z[23]+ JH)+D Cos( Z[23]+WH+V):“X=”:Ans▲:Z[22] +I Sin(Z[23]+ JH)+D Sin( Z[23]+WH+V):“Y=”:Ans▲:Ifend』If Z[27]>Z[24] —Z[6] And Z[27]≤Z[24]:Then Z[24] —Z[27] →L:Prog “HHXY”:Z[25] +I Cos( C—JH)—D Cos( C—WH+V):“X=”:Ans▲:Z[26] +I Sin(C—JH)—D Sin( C—WH+V):“Y=”:Ans▲:Ifend』If Z[27] >Z[24]:Then Z[25] —(Z[27] —Z[24]) Cos( C )—D Cos( C+V):“X=”:Ans▲Z[26] —(Z[27] —Z[24]) Sin( C —D Sin( C+V):“Y=”:Ans▲:Ifend』Goto 1子程序名JD (输入曲线参数,计算曲线要素)30→Dim Z:Fix 5:“JD”? →Z[1] :“XJD”? →Z[2] :“YJD”? →Z[3]:“F0(DMS)”? →F:“A(-+ DMS)”?→Z[4]:“R”? →R:“LH1”? →Z[5]:“LH2”? →Z[6]:√ ̄(Z[4]2)→A:Int(Z[4] ÷A)→H』Z[5] →S:Prog “PQ”:Q →Z[7]:P→Z[8]:B →Z[9]:R →S:Prog “PQ”:Q →Z[10]:P→Z[11] :B →Z[12] 』(R+ Z[8])Tan(A÷2)+ Z[7] —(Z[8] —Z[11]) ÷Sin(A)→Z[13] :“T1=”:Ans ▲(R+ Z[11])Tan(A÷2)+ Z[10] —(Z[8] —Z[11])÷Sin(A)→Z[14] :“T2=”:Ans▲』√ ̄((Z[13] —Z[7])2+( R+ Z[8])2) —R →Z[15]:“E=”:Ans▲R( A —Z[9] —Z[12] )÷57.2958+ Z[5] + Z[6] →Z[16]:“L=”:Ans▲』Z[1] —Z[13]→Z[17]:Z[2] —Z[13]Cos( F) →Z[18]:Z[3] —Z[13] Sin( F) →Z[19]:If Z[5]>0 :then Z[17] +Z[5]→Z[20]:Z[5] →L:Prog “HHXY”:Z[18] +I Cos( (F+ JH))→Z[21]:Z[19] +I Sin( (F+ JH))→Z[22]:(F+ WH)→Z[23] :Else Z[17]→Z[20]:Z[18]→Z[21]:Z[19]→Z[22]:F→Z[23]:Ifend』Z[17] + Z[16]→Z[24]:Z[2] +Z[14] Cos( (F+ Z[4]))→Z[25]:Z[3] +Z[14] Sin( (F+ Z[4]))→Z[26]:F+ Z[4] —180→C』Prog “CALXY”』子程序名PQS÷2—S3÷(240 R2)→Q:S2÷(24 R)—S4÷(2384 R3)→P:28.6479S ÷R→B』子程序名HHXYL—L5÷(40S2 R2)+L9÷(3456 R4S4) →X:L3÷(6S R)—L7÷(336S3 R3)+L11÷(42240 R5S5)→Y:28.6479L2÷(S R) →W:Pol(X,Y)』子程序名YUXY57.2958L÷R →W:RSin(W)→X:R(1—Cos(W))→Y:Pol(X,Y)』CASIO fx—5800P计算器路线坐标计算程序(单个交点)使用说明首先运行子程序“JD”,输入曲线参数,计算曲线要素。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
CASIO5800计算器公路测量计算程序程序设计:魏加训2009.2.28Casio 5800计算器数据库型万能坐标正反算计算程序一、主程序:1XYLbl 0:“1.ZS 2.FS”?→V↙If V=1: Then “CZ X” ?H: “CZ Y” ?T:Goto 1: Else If V=2: Then Goto 2 :IfEnd: IfEnd↙Lbl 1: “K××+×××”?D:?Z: “RJ”?G↙Prog “P.Z”↙(注:计算另一线路时修改替换此处和FS子程序中的P.Z为对应线路的数据库名称即可)Prog “ZS” ↙If Z<0: Then Cls:“X(L)=”: “Y(L)=”: Locate 6,1,X : Locate 6,2,Y◢Pol(X-H,Y-T): Cls: “S(L)=”: Locate 6,1,I : "F(L)=":360Frac((J+360)÷360▼DMS◢Goto 1:IfEnd↙If Z=0: Then Cls:“X(Z)=”: “Y(Z)=”: Locate 6,1,X : Locate 6,2,Y : “QXFWJ (Z)=”: 360Frac((J+360)÷360▼DMS◢Pol(X-H,Y-T): Cls: “S(Z)=”: Locate 6,1,I : "F(Z)=":360Frac((J+360)÷360▼DMS◢Goto 1:IfEnd↙If Z >0: Then Cls:“X(R)=”: “Y(R)=”: Locate 6,1,X : Locate 6,2,Y◢Pol(X-H,Y-T): Cls: “S(R)=”: Locate 6,1,I : "F(R)=":360Frac((J+360)÷360▼DMS◢Goto 1:IfEnd↙Lbl 2: 0→Z:0→G:”X” ?M:”Y” ?I:Prog “FS”: Cls:“K=”:“Z=”:Locate 4,1,D : Locate 4,2,Z◢Goto 2↙二、正算子程序:ZS5→N: U(E-1-R-1)÷Abs(K-F)→P: Abs(D-F)÷N→Q: 90Q÷π→S:(注:此处5→N是控制计算精度可修改的,一般取值为4~6即可)C+(NPQ+2UR-1)NS→J:1→L↙A+Q÷6×(Cos (C)+Cos (J) +4∑(Cos (C+((L+0.5)PQ+2UR-1)×(L+0.5)S),L,0,(N-1))+2∑(Cos (C+((LPQ+2UR-1)LS,L,1,(N-1)))+ZCos(J+G) →X :B+Q÷6×(Sin(C)+Sin( J) +4∑(Sin (C+((L+0.5)PQ+2UR-1)×(L+0.5)S),L,0,(N-1))+2∑(Sin (C+((LPQ+2UR-1)LS,L,1,(N-1)))+Z Sin(J+G)→Y ↙三、反算子程序:FSLbl 0:Prog “P.Z”:Prog “ZS”↙(注:计算另一线路时修改替换此处和1XY主程序中的P.Z为对应线路的数据库名称即可)(I-Y)sin(J)+(M-X) cos(J)→ P :D+P→ D ↙If Abs(P)≥0.001:Then Goto 0 : Else Goto 1 : IfEnd↙Lbl 1: (I-Y)cos(J)-(M-X) sin(J) →Z四、曲线元要素数据库格式If D≥线元起点里程:Then线元起点里程→F:线元终点里程→K:线元起点X坐标→A:线元起点Y坐标→B:线元起点切线方位角→C:线元起点半径→R:线元终点半径→E:线元转向(注:左-1,右+1,直线为0) →U: IfEnd↙五、曲线元要素数据库样例:P.ZIf D≥***:Then***→F:***→K: ***→A: ***→B: ***→C: ***→R: ***→E: ***→U: IfEnd↙If D≥***:Then***→F:***→K: ***→A: ***→B: ***→C: ***→R: ***→E: ***→U: IfEnd↙If D≥***:Then***→F:***→K: ***→A: ***→B: ***→C: ***→R: ***→E: ***→U: IfEnd↙...............…………………………………………………………If D≥***:Then***→F:***→K: ***→A: ***→B: ***→C: ***→R: ***→E: ***→U: IfEnd↙(注:如一条路有多个曲线元要素则按顺序排列依次添加入数据库P.Z中)六、程序说明:程序线元判断原则:(1) 以道路中线的前进方向(即里程增大的方向)区分左右;(2) 当所求点位于中线时,Z=0;当位于中线左侧时,Z取负值;当位于中线右侧时,Z取正值。
(3) 当线元为直线时,其起点、终点的曲率半径为无穷大,以10的45次代替输入×10x45。
(4) 当线元为圆曲线时,无论其起点、终点与什么线元相接,其曲率半径均等于圆弧的半径。
(5) 当线元为完整缓和曲线时,起点与直线相接时,曲率半径为无穷大,以10的45次代替输入×10x45;与圆曲线相接时,曲率半径等于圆曲线的半径。
终点与直线相接时,曲率半径为无穷大,以10的45次代替输入×10x45;与圆曲线相接时,曲率半径等于圆曲线的半径。
(6) 当线元为非完整缓和曲线时,起点与直线相接时,曲率半径等于设计规定的值;与圆曲线相接时,曲率半径等于圆曲线的半径。
终点与直线相接时,曲率半径等于设计规定的值;与圆曲线相接时,曲率半径等于圆曲线的半径。
七、输入与显示说明1.ZS时CZ X ? CZ Y? 输入置镜点即测站的X,Y坐标K××+×××? 输入所求的桩号Z ?输入所求点距中线的边距(在中线输零)RJ?输入边桩时左右边桩连线与线路前进中线的右交角X(L) 、X(Z) 、X(R)=×××计算得出的所求点的左、中、右X坐标Y(L) 、Y(Z) 、Y(R)=×××计算得出的所求点的左、中、右Y坐标QXFWJ(Z)= ×××计算得出所求点的中桩切线方位角F(L) 、F(Z) 、F(R)= ×××计算得出置镜点到测点即左、中、右的方位角S(L) 、S(Z) 、S(R)= ×××计算得出置镜点到测点即左、中、右的水平距离2.FS时X=×××输入所求点的X坐标Y=×××输入所求点的Y坐标K=×××计算得出求点所对应的里程Z=×××计算得出求点到所对应的里程的垂直距离(负就是左边,正就是右边)Casio 5800计算器数据库型全线高程计算程序一、主程序:2HLbl 1:“K××+×××”?K : Prog“S.Z”↙C÷100→C: D÷100→D: R Abs(D-C)÷2→T↙If D>C :Then 1→W:Else -1→W:IfEnd↙If K<A:Then -C→I:Else D→I: IfEnd↙Abs (A-K)→L↙If L>T:Then Z+IL→H:Cls :"H(S)=": Locate 7,1, H : 显示路面设计中桩高Gotoθ:Else Z+IL+W(T-L)2÷2÷R→H: Cls :"H(S)=": Locate 7,1, H◢显示路面设计中桩高IfEnd↙Lbl 0: “JGC(h)” ?O:”Z”?N:”HP”? J:“HC”?P:Abs(N) →N:H-O+N J÷100→B: Cls :"H=": Locate 4,1, B: "h=": Locate 4,2, B-P◢Goto 1二、竖曲线数据库格式:If K<下一竖曲线起点里程: Then: 本竖曲线前坡度(%前分子有正负)→C:本竖曲线后坡度(%前分子有正负)→D:本竖曲线半径→R:本竖曲线变坡点桩号→A:本竖曲线变坡点高程→Z: Goto 1: IfEnd ↙三、数据库样例: S.ZIf K<*** : Then: ***→C: ***→D: ***→R: ***→A: ***→Z: Goto 1: IfEnd↙If K<*** : Then: ***→C: ***→D: ***→R: ***→A: ***→Z: Goto 1: IfEnd↙If K<*** : Then: ***→C: ***→D: ***→R: ***→A: ***→Z: Goto 1: IfEnd↙…………………………………………(注:如一条路有多个竖曲线要素则按顺序排列依次添加入数据库S.Z中)If K≤*** : Then: ***→C: ***→D: ***→R: ***→A: ***→Z: Goto 1: IfEnd↙Lbl 1四、输入与显示说明K××+×××? 输入所求的桩号H(S)= ×××? 显示所求桩号的路面中桩设计高程JGC(h) ? 输入结构层厚度或从设计路面高程点处垂直向下的厚度Z ?输入所求点距中线的边距(注:只可输入正值,不可输入负值)HP?输入所求桩号处的横坡(%前分子有正负).HC?输入所求桩号处的全站仪实测高程H=×××显示计算得出的所求点的高程"h=" 显示计算得出的所求点的高差(+为填–为挖)(①当Z和JGC(h)为0时,则H=×××为路面中桩设计高程等于前面显示的H(S) ;②当Z为0,JGC(h)不为0时,则H=×××为路面垂直向下至某层的中桩设计高程;③当Z、JGC(h)、HP三者同时不为0时,则H=×××为路面垂直向下至某层的边桩对应Z位置的设计高程;④当Z不为0、JGC(h)为0、HP不为0时,则H=×××为路面边桩对应Z位置的设计高程;)。