线元法路线计算程序(1602) - mr主线

合集下载

线元法

线元法

线元法1:ZHY主程序“1.SZ→XZ”:“2.XY→SZ”:If N=1:Then goto 1 :Else goto 2:lfEnd Lbl 1:‘S=’?S:“Z=”?Z:Prog〝QXSJK〞: 1÷P→C :(P-R)÷(2HPR)→D : 180÷π→E: Abs(S-O)→W:Prog〝SUB 1〞:〝XS〞: X→X ▲〝YS=〞: Y→Y▲〝FS=〞: F-90→F▲Prog〝GAO〞: goto 1LBI 2 :〝X=〞?X :〝Y=〞?Y :X→I:Y→J:Prog〝QXSJK〞: 1÷P→C :(P-R)÷(2HPR)→D : 180÷π→E: :Prog〝SUB 2〞: 〝S〞: O+W →S▲〝Z=〞: Z▲Prog〝GAO〞:〝SC〞?C〝R=〞:5.89-√((C-G)2+Z2) ▲goto 2“L=”:?L :199.965-(L-49040)*0.006+0.00 →H ◢设计高程R-√(P²+G²)2:SUB1(缓和曲线正算子程序,不能独立运行)0.1739274226→A : 0.3260725774→B : 0.0694318442→K : 0.3300094782→L : 1-L→F : 1-K→M : U+W(A Cos(G+QEKW (C+KWD))+B Cos(G+QELW(C+LWD))+ B Cos(G+QEFW (C+FWD))+A Cos(G+QEMW(C+MWD)))→X :V+W(A Sin (G+QEKW(C+KWD))+B Sin(G+QELW(C+LWD))+ B Sin (G+QEFW(C+FWD))+A Sin(G+QEMW(C+MWD)))→Y : G+QEW (C+WD)+90→F : X+Z cos(F)→X : Y+Z Sin(F)→Y3 : SUN 2(缓和曲线反算子程序,不能独立运行)G-90→T : Abs((Y-V)Cos(T)-(X-U)Sin(T))→W : 0→Z : LBI 0 : Prog〝SUB 1〞: T+QEW(C+WD)→L :(J-Y)Cos(L)-(I-X)Sin (L)→Z : If Abs(Z)< 1×10-6 : Then Goto 1 : ELse W+Z→W : Goto 0 : IfendLBI 1 : 0→Z : Prog〝SUB 1〞:(J-Y)÷Sin(F)→Z4 : QX SJK (缓和曲线数据库子程序,不能独立运行)If S≥7000 And S<8552.052 : Then 39351.594→U : 72418.7097→V : 7000→O :257.8746719→G : 2000→H : 1×1045→P : 1×1045→R : 0→Q : ELse If S≥8552.052 And S<8752.052 : Then 39025.584→U : 70901.283→V : 8552.052→O: 257.8746719→G : 200→H : 1×1045→P : 1800→R : 1→Q : ELse If S≥8752.052 And S<9900.413 : Then 38987.2071→U : 70705.0275→V : 8752.052→O : 261.0577708→G : 1148.361→H : 1800→P : 1800→R : 1→Q : ELse If S≥9900.413 : Then 39170.3263→U : 69590.9925→V : 9900.413→O : 297.6112367→G : 200→H : 1800→P : 1×1045→R : 1→Q : Ifend : Ifend : Ifend : Ifend : Return注意:0 : 表示零。

线元法线路坐标正反算程序

线元法线路坐标正反算程序

经苦心钻研,奋战多日,终于编写出了代码短,速度快,精度高,功能全的线路坐标正反算程序,欢迎试用并提出宝贵意见。

功能简介及特点:1、选用高斯-勒让德公式作计算内核,保证精度,模块化设计,便于扩充功能。

2、线元数据可自动从数据库调用,也可手工输入。

3、可管理多条线路,如里程不在线路或线元范围,将警告里程偏大、偏小。

4、边桩计算设计为导线式递推方式,可用于由一个中桩推出结构物所有角点坐标。

5、反算实现了智能化操作,只需输入线路号(或手工输线元资料)、坐标,不需近似里程,即可自动从起点向后开始试算出里程、位置,如对算出里程、位置表示怀疑,还可以让计算器从终点起再向前试算下一个可能的位置(匝道、回头曲线同一坐标可能会有一个以上结果)。

第三次及以后试算才要求输入近似里程。

6、程序代码规范简洁,便于阅读、理解。

完整程序清单:ZFS %正反算主程序B=.1739274226:C=.5-B:Lbl 1:U"0 ZS 1 FS"=0=>Prog "ZS":≠>U=1=>Prog"FS":≠>Goto 1ZS %正算子程序{K}:Prog"ZZ":I=0:{I}:I"L"≠0=>"Prog"WY":≠>Prog"ZB"FS %反算子程序{KVW}:V"XC"W"YC":Lbl 2:Prog "ZZ":I=V-S:J=W-T:Pol(I,J: J=J-F:K=K+Rec(I,J:AbsI<1m=>Prog"WZ":≠>Goto 2ΔM=0:{M}:M"0 NEXT"=0=>U=U+1:Goto 2:≠>U=1ZZ %高斯法中桩子程序(4节点)Prog"XL":M=K-L:O=(P-R)÷2PQR:D=.0694318442:E=.3300094782:F=1:G=1-E:H=1-D:I=5:Lbl 1:C[I]=A+MrC[I](1÷P+OMC[I]:Dsz I:Goto 1:S=X+M(BcosD+CcosE+CcosG+BcosH:T=Y+M(BsinD+CsinE+CsinG+BsinHWY %外移点计算子程序Lbl 1:J=90:{J}:J=F+J"<":F=J:S=S+Rec(I,J:T=T+J: Prog"ZB":I=0:{I}:I"L"≠0=>Goto 1WZ %位置显示子程序"KJ":K:Pause 1:J◢ZB %坐标显示子程序"XY":S:Pause 1:T◢YC %异常处理子程序U=1=>K=L:U=2ΔU=3=>K=M:U=4ΔU=5=>{K}:U=4ΔK<L=>"<<!":Z=1ΔK>M=>">>!":Z=1DL %断链处理子程序"DL":K=L:I>0=>K=L+Q-------------------------以上为程序运算部分,以下为数据库部分-------------------------------XL %线路数据库选择子程序Lbl 1:Z=0:N"0 SD"=0=>Prog"0"△N=1=>Prog"1"△N=2=>Prog"2"△...有几条线路仿上行格式输几行Z=1=>{NLXYOPQRK}:Goto 10 %手工输入子程序L"K0"XYAQ"LS"P"R0"R"RN":M=L+Q:Prog"YC"1 %线路一数据库子程序①Lbl B:L=线路起点里程:M=线路终点里程:Prog"YC":Z=1=>Goto EΔ②Q=线元长:P=起点半径:R=终点半径:K≤L+Q=>X=起点X坐标:Y=起点Y坐标:A=起点方位角:Goto EΔL=L+Q:③......④Q=短链长:K<L+Q=>Prog "DL":Goto BΔL=L+Q:⑤Q=线元长:P=起点半径:R=终点半径:K≤L+Q=>X=起点X坐标:Y=起点Y坐标:A=起点方位角:Goto EΔL=L+Q:⑥......⑦Q=线元长:P=起点半径:R=终点半径:X=起点X坐标:Y=起点Y坐标:A=起点方位角:Lbl E2 %线路二数据库子程序输入要求和线路一相同。

线元法万能坐标计算程序

线元法万能坐标计算程序

线元法万能坐标计算程序(适用于CASIO fx-9750GⅡ计算器)论文/:本论文仅供学习交流使用,本站仅作合理转载,原作者可来邮要求删除论文。

摘要:我国公路建设事业正处于一个高速发展的时期,在公路工程施工过程中,施工技术人员经常要使用全站仪、水准仪进行施工放样、高程测量,在测量过程中,手工计算速度慢,失误率高,工作效率极低。

利用CASIO fx-9750GⅡ编程函数计算器强大的内存(可诸存63000个字符)和编程功能,编写各种计算程序,能够在2秒钟内计算出施工放样、桩点坐标等施工过程中的各项数据资料,同时也使我们有更多的时间去挑战更富有创造性的工作。

关键词:坐标放线线元测量程序1、前言本程序采用Gauss-Legendre(高斯-勒让德)五节点公式作内核,计算速度(太约2秒)适中,计算精度很高。

在此之前,本人曾用过以下公式作内核:①积分公式simpson法②双重循环复化高斯2节点③高斯-勒让德3节点④求和公式复化simpson法⑤双重循环复化simpson法⑥高斯-勒让德4节点,⑦高斯-勒让德5节点,经过测试③计算最快,⑦代码稍长但计算速度只比③⑥稍慢,精度最高,可满足线元长小于1/2πD 的所有线形的精度要求。

⑦作内核分别计算圆曲线长1/4πD、1/2πD、3/4πD、πD处的精度,1/4πD时偏差为0.001mm,1/2πD时偏差为0.55m m,3/4πD时偏差为31.63mm,πD时偏差为968mm,偏差按半径倍数增大,如线元长大于1/2πD(1/2圆周长)时,可将其拆分二个或多个线元单位,以确计算保精度。

2、程序特点事先将所有的平曲线交点的线元要素诸存到计算器内,测量时只输桩号、边距等程序会自动寻找各类要素,一气呵成地完成施工测量任务,中途不需人工转换各类要素数据,本程序可诸存几百条线路的要素数据,计算时可按需选择线路编号进行测量。

测量时不需查阅及携带图纸,仅一台CASIO fx-9750GⅡ编程函数计算器即可。

5800公路测量程序22版(7条路线)

5800公路测量程序22版(7条路线)

FX5800计算器公路测量常用程序集2.2 版一、程序功能主要功能:采用线元法与交点法相结合计算多条线路坐标正反算,可算任意复杂线型及立交匝道,包括C型,S型、卵型、回头曲线等;极坐标放样,全线路基边坡开挖口及坡脚放样计算、路基任意点设计高程、横坡、设计半幅宽度.隧道欠超挖放样计算。

新版本优化:1、调整一次显示结果;2、交点法中考虑了不对称缓和曲线;3、修改原版本部分地方笔误.(红色为修改处)二、源程序1.总主程序(1、坐标计算放样程序2、坐标反算程序;3、高程计算查阅程序;4、路基半幅标准宽度查阅程序;5、路基边坡及开挖口放样程序;6、路基标准距离放样;7、桥梁锥坡计算放样程序;8、极坐标计算程序;9、隧道超欠挖计算程序)运行后输入1~9数子则选择1至9的程序,返回时,在桩号输入-1,返回选择选择计算类型。

输入-2,返回选择线路。

坐标计算中输入-3,则显示本段曲线要素。

程序名:0ZCXLbl 0: 24→DimZ:Norm 2:1→A:"A:XY=1,ZD=2 ,GC=3,GD=4, BP=5,FM=6,ZP=7,JS=8,SD=9"?A:A=1=>Goto 1:A=2=>Goto 2:A=3=>Goto 3:A=4=>Goto 4:A=5=>Goto 5:A=6=>Goto 6:A=7=>Goto 7:A=8=>Goto 8:A=9=>Goto 9Lbl 1:Prog"DX":LbI A:Prog"QX":90→B:"PJ1"?B:B→C:"PJ2"?C:B→Z[1]:C→Z[8]:Lbl B:1→F:"KM"?Z:Z= -1=>Goto 0:Z=-2=>Goto A:Z=-3=>GotoX:Prog"KM":?D:Porg"THB":0→L:"L0"?L:Z[2]+Z[1]-Z[8] →E:X+L cos(E)→X:Y+Lsin(E) →Y:Prog"XY":Prog"JS":Goto BLbl 2:2→F:90→Z[1]:Prog"QX": Lbl C:"DKLC"?Z:Z=-1=>Goto 0:Z=-2=>Goto 2:Z=-3=>Goto X:Prog"KM": "X0"?X: "Y0"?Y:Prog"THB":Porg"ZD":Goto CLbI 3:Prog"QX":→B:"H-B"?B:B→Z[9]:"SXG"?L:Lbl D:"KM"?Z:Z=-1=>Goto 0:Z=-2=>Goto 3:?D:"ZS"?P: Porg"H":Fix 3:"SJG=":Lcoate 6,4,H-Z[9]:"SCG=":Lcoate 6,4,F:"I=":Locate 6,4,I×100: If U<0:Then "W=": Locate 6,4, U: Else"T=": Locate 6,4, U : IfEnd◢Goto DLbl 4:Prog"QX":LbI E:"KM"?Z:Z=-1=>Goto 0:Z=-2=>Goto 4:?D:Prog"GD":Fix 3:" SJGD=":Locate7,4,L: Goto ELbl 5:Prog"QX":0.5→B:"TH-GD"?B:B→Z[23]:Lbl F:2→F:90→Z[1]:"KM"?Z:Z=-1 =>Goto 0:Z=-2 =>Goto 5:Prog"KM":"X0"?X:"Y0"?Y:0→M:"M0"?M: M→Z[4]:Prog"FBX":Fix 2: P→D :Abs(D)-S→O: " L0=":Locate 6,4,O:Prog"ZD": Z[4]→T:" TW=":Lcoate 6,4,T◢ Goto FLbl 6:Prog"DX":LbI G:Prog"QX":LbI H:1→F:90→Z[1]:"KM"?Z:Z=-1=>Goto 0:Z=-2=>Goto G:Prog"KM":?D:Prog"THB":Prog"XY":Prog"JS":Prog"H":0→M: "M0"?M:Fix 2:H-M→T:" TW=":Locate 6,4,T◢ Goto HLbl 7:Prog"DX":LbI I:Prog"QX": "Z0"?Z:0→D: "LD:Z-,Y+"? D:Abs(D) →R:"LR"?R: D→Z[6]:R→Z[7]:Z→Z[8]:LbI J:0→Y: "L0:DZH+,XZH-"?Y:Y=-1=>Goto 0:Y=-2=>Goto I:Prog"ZP":Goto JLbl 8:Prog"DX":Lbl K:?X:X=-1=>Goto 0:X=-2=>Goto 8:?Y:Prog"JS":Goto KLbl 9:Porg"DX":Lbl L:Prog”QX”:Lbl M:2→F:90→Z[1]: "KM"?Z:Z=-1=>Goto 0:Z=-2=>Goto L:Z=-3=>Goto X: Prog"SD1": 0.5→A:"CQHD"?A:“X0"?X:"Y0"?Y:0→M:"M0"?M:M→Z[8]:A→Z[15]:Prog"SD": Goto M: Lbl X:Mat F◢ Goto 02、次程序:路基开挖边线及填方坡脚线放样程序(输入填方放宽值、大概桩号及测量坐标、地面标高计算出偏移距离、桩号、距中距离、填挖高度)程序名:FBXProg“THB”:D→P:Prog“GD”:If D<0:Then 0.75-L→D:Goto H:Else L-0.75→D:Goto H:IfEnd:Lbl H:Prog“H”:H-0.03-Z[4] →Z[4]: Prog “W-1”:If Z[4]<0:Then –Z[4]→G:Goto W:Else Z[4] →G:Goto T:IfEnd:Lbl W: Z[10]+Z[11] +Z[12] +Z[13]→A: Z[10]+Z[11]+Z[12]→B:Z[10]+Z[11]→C: If G>A:Then Goto 1:Else If G>B:Then Goto 2:Else If G>C:Then Goto 3:Else If G>Z[10]:Then Goto 4:Else Goto 5:IfEnd:Lbl 1: L+Z[14]+Z[15]+Z[16]+Z[17]+Z[18]+(G-A)×Z[9]+Z[13]×Z[8]+Z[12]×Z[7]+Z[11]×Z[6]+Z[10]×Z[5]→S:Goto Z:Lbl 2: L+Z[14]+Z[15]+Z[16]+Z[17]+(G-B)×Z[8]+Z[12]×Z[7]+Z[11]×Z[6]+Z[10]×Z[5]→S:Goto Z:Lbl 3:L+Z[14]+Z[15]+Z[16]+(G-C)×Z[7]+Z[11]×Z[6]+Z[10]×Z[5]→S:Goto Z: Lbl 4:L+Z[14]+Z[15]+(G-Z[10])×Z[6]+Z[10]×Z[5]→S:Goto Z:Lbl 5:L+Z[14]+G×Z[5] →S:Goto Z:Lbl T:L+Z[23]→T:If G>Z[21]:Then T+Z[22] +Z[21]×Z[19]+(G-Z[21])×Z[20]→S:Goto Z:Else T+G×Z[19]→S:Goto Z: IfEnd:Lbl Z3.次程序3.隧道超欠挖值计算放样程序(输入隧道线路,大概桩号、输入衬砌厚度、测量三维坐标,计算准确桩号及位置、计算欠超挖值)程序名:SDProg “KM”:Prog“THB”: D→Z[13]:0→D:Prog“H”:Cos(Z[10])×Z[4] →E: H+Z[5] →Z[5]: H+Z[7] →Z[7]: E+Z[5] →Z[10]:If Z[8]>Z[10]:Then Goto R:Else Goto S:IfEnd:Lbl R:√((Z[13]-Z[9]) 2+(Z[8]-Z[5]) 2 )- Z[4]-Z[15] →L:Goto L:Lbl S:Z[4]-Z[6] →S:√(S 2-(Z[7]-Z[5]) 2 )×S÷Abs(S)→T:Abs(Z[13]-Z[9])-T→T:√(T 2+(Z[8]-Z[7]) 2 )- Z[6]-Z[15] →L:Goto L:Lbl L: Fix 2: “L0=”: Locate 6,4,L:Prog“ZD”:“H0=”: Locate 6,4,Z[8]-H◢4:极坐放样计算程序(计算放样点至置仪点方位角及距离)程序名:JS(一式)X:Y:Z[11]→K:Z[12]→L:Pol(X-K, Y-L):IF J<0:Then J+360→J:IFEnd:Int(J)+0.01Int(60Frac(J))+0.006Frac(60Frac(J)) →J: Fix 4: “FWJ=”: Locate 6,4,J:Fix 3:“JL=”:Locate 6,4,I◢JS(二式)X:Y:Z[11]→K:Z[12]→L:Pol(X-K, Y-L):IF J<0:Then J+360→J:IFEndFix 3:“JL=”:Locate 6,4,I: J▲DMS◢5.路基宽度子程序:路基标准半幅宽度计算程序(对于设计有加宽渐变的有用,如路基宽度无变化,则把此程序直接输入半幅宽度值至L)程序名: GD1→S: Prog “G-1”:Z-C→E: E ×(B-A)/S+A→L:6.坐标计算次程序程序名:THBIf Q>1:Then Goto J: Else 1÷P→C:(P-R)÷(2HPR)→S:180÷π→E:IfF=1:Then Abs(Z-O) →W:Prog "A":Goto 2:Else X→I:Y→J:Prog "B":O+W→Z:D→D:Goto 2: IfEnd:LbI J: If F=1:Then Prog "Z":Goto 1:Else Prog "ZX":Goto 2: IfEnd: LbI 1:I+D×COS(Z[2]+Z[1]) →X: J+D×Sin(Z[2]+Z[1]) →Y: LbI 27. 线元法正算子程序(A)程序名:A0.1184634425→A: 0.2393143352→B:0.2844444444→N:0.0→K:0.2307653449→L:0.5→M:U+W(Acos(G+QEKW(C+KWS))+Bcos(G+QELW(C+LWS))+Ncos(G+QEMW(C+MWS))+Bcos(G+Q E(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+Q E(1-L)W(C+(1-L)WS))+Asin(G+QE(1-K)W(C+(1-K)WS))) →Y:G+QEW(C+WS)→Z[2]:X+Dcos(Z[2]+Z[1])→X: Y+Dsin(Z[2]+Z[1])→Y8. 线元法反算子程序(B)程序名: B G-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 Goto 1:Else W+D→W:Goto 0: IfEnd: Lbl 1:0→D:Prog "A":(J-Y)÷sin(Z[2]+90) →D9. 交点法正算子程序(Z)程序名:ZH2÷R÷24-H∧(4)÷2688÷R∧(3)→A:H÷2-H∧(3)÷240÷R2→B:((H2-N2)÷24÷R)÷Sin(Abs(P))-((H∧(4)-N∧(4))/2688/R∧(3))÷Sin(Abs(P))→E:(R+A)tan(Abs(P)÷2)+B-E→T:P÷Abs(P)→W:0→M:H→C:If Z≤O -T:Then Z-O→S:G→Z[2]:Goto 2: IfEnd:If Z≤O -T+H:Then Z-O +T→S:Prog “HX”:G+WK→Z[2]:Goto 4:IfEnd:If Z≤O -T+πR×Abs(P)÷180+H÷2-N÷2: Then 180(Z-O +T-0.5H)÷R÷π→S : A+R(1-Cos(S))→B : H÷2-H∧(3)÷240÷R2+Rsin(S)→A:R→M:G+WS→Z[2]:Goto 4: IfEnd:O -T+πR×Abs(P)÷180+H÷2+N÷2-Z→S:(R+N2÷R÷24-N∧(4)÷2688÷R∧(3))tan(Abs(P)÷2)+N÷2-N∧(3)÷240÷R2+E→T :N→H:Prog “HX”:G+P→S:S-WK→Z[2]:U+(T-A)Cos(S)-WBSin(S)→I:V+(T-A)Sin(S)+WBcos(S)→J:Goto 3:Lbl 4:U+(A-T)cos(G)-WBsin(G)→I:V+(A-T)Sin(G)+WBcos(G)→J: Goto 3:Lbl 2:U+Scos(Z[2])→I:V+Ssin(Z[2])→J: LbI 3:C→H10. 交点法缓和段转化子程序(HX)程序名:HXS-S∧(5)÷40÷R2÷H2+S∧(9)÷3456÷R∧(4)÷H∧(4)→A:S∧(3)÷6÷R÷H-S∧(7)÷336÷R∧(3)÷H∧(3)+S∧(11)÷42240÷R∧(5)÷H∧(5)→B:90S2÷π÷R÷H→K:RH÷S→M11. 交点法反算子程序(ZX)程序名:ZXZ:0→D:Lbl 0:Prog“Z”:Pol(X-I,Y-J):J-Z[2]→J:Isin(J)→S:Icos(J) →I:If Abs(I)<0.1:Then Z+I→Z:S→D:Goto 2:Else Goto 1: LbI 1:If M=0:Then Z+I→Z:Goto 0:Eles Pol(M-WS,I):(JMπ)/180→I:Z+I→Z:Goto 0:IfEnd:LbI 212.高程计算子程序(H)程序名:HProg “S-1”:N-I→A:A÷Abs(A→W:R×Abs(A÷2→T:If Z<C-T:Then G+I(Z-C→H:Goto 0:IfEnd:If Z<C+T:Then G-TI+(I+(Z-C+T)W÷2÷R)×(Z-C+T→H:Goto 0: IfEnd:N→I: G+I(Z-C→H:Lbl 0:If D=0:Then H→H: I→I:Goto I:Else Prog “I”:H+V→H:Abs(L-13.高程超高计算程序(I)程序名:IIf Z[3]=1:Then Prog“I-1”:Goto 1:Else If Z[3]=2:Then Prog“I-2” :Goto1: Else If Z[3]=3:Then Prog“I-3” :Goto 1: Else If Z[3]=4:Then Prog“I-4” :Goto 1: Else If Z[3]=5:Then Prog“I-5” :Goto 1: Else IfZ[3]=6:Then Prog“I-6” :Goto 1: Else Prog“I-7”:Goto 1: IfEnd:Lbl 1: If W=1:Then Goto Z:Else Goto X: IfEnd :Lbl Z:If S=0:Then Abs(D)×M→V:Goto 2:Else Abs(D)×((N-M)×(Z-C)÷S+M)→V:Goto 2:IfEnd:Lbl X:If S=0:Then Abs(D)×M→V:Goto 2:Else Abs(D)×(((3((Z-C)÷S)2-2((Z-C)÷S)∧(3))×(N-M))+M)→V:Goto 2:IfEnd:Lbl 2:Abs(D)→E:V÷E→I:I(E-K)→V14.导线点子程序(DX)程序名:DXZ[11]→K:Z[12]→L:“XZ”?K:“YZ”?L:K→Z[11]:L→Z[12]15.线路选择子程序(线路选择输0时,则输曲线参数)(QX)程序名:QX1→A:“LX:XX-1,XA-2,XB-3,XC-4,XD-5,XE-6,XF-7”?A:A→Z[3]:If A=0:Then Goto 1:Else Goto 2: IfEnd:Lbl 1:“JDO”?O:“XO”?U:“YO”?V:“FW”?G:“LS”?H:?P:?R:“J=2,3;X=(0,1,-1)”?Q:If Q=2:Then H→N:Goto 2:Else If Q=3:Then“LS”?N:Lbl 216.线路中线元段判别子程序(KM)程序名:KMIf Z[3]=0:Then Goto 0:Else If Z[3]=1:Then Prog “XX-1”:Goto 0: Else If Z[3]=2:Then Prog “XA-2”:Goto 0: Else If Z[3]=3:Then Prog “XB-3”:Goto 0: Else If Z[3]=4:Then Prog “XC-4”:Goto 0: Else IfZ[3]=5:Then Prog “XD-5”:Goto 0: Else If Z[3]=6:Then Prog “XE-6”:Goto 0: Else Prog “XF-7”:Goto 0: IfEnd: LbI 017.坐标计算参数转化子程序(F)程序名:FMat F[1,1]→O:Mat F[1,2]→U:Mat F[1,3]→V:Mat F[1,4]→G:Mat F[1,5]→H:Mat F[1,6]→P:Mat F[1,7]→R: Mat F[1,8]→Q:Q=2=>H→N:Q=3=>Mat F[1,9]→N18.桥梁锥坡放样子程序(ZP)程序名:ZP√(Z[6]2(1-Y2/Z[7]2)) →X:Z[8] →Z:Prog“GD”:If D>0:Then L+X→D:Else –L-X→D:IfEnd:Z[8]+Y→Z:D:1→F:90→Z[1]:Prog“KM”:Prog“THB”:Prog“XY”:Prog“JS”19.显示子程序(XY)和(ZD)①程序名:XYFix 3:"XS=":Locate 6,4,X:"YS=":Locate 6,4,Y:②程序名:ZDFix 3:"KM=":Locate 6,4,Z:" D=":Locate 6,4,Z:20.数据子程序(附后示例)①-1程序名:X X-1(线路1坐标计算要素程序)If Z≤26615.555:Then [[25900,11587.421,1847.983, 101。

线元法路线计算程序

线元法路线计算程序

线元法路线计算程序线元法(LE法)是一种用于计算电力系统潮流分布的方法,它将电力系统抽象成节点和支路的网络,通过对节点和支路进行编号,可以建立节点电压和潮流分布之间的方程,进而求解电力系统中各节点的电压和潮流分布。

下面是一个用于计算线元法路线的程序。

1.定义节点和支路:首先,我们需要对电力系统的节点和支路进行定义。

节点可以是发电站、变电站或负荷节点;支路可以是输电线路或变压器。

每个节点和支路都需要有一个唯一的编号,以便在后续的计算中进行引用。

2.建立节点电压方程:根据电力系统的KCL(电流平衡方程),我们可以得到节点电压方程。

每个节点的电压方程可以表示为:V(i) = Σ{(V(j) - V(i)) / Z(ij)},其中V(i)表示第i个节点的电压,V(j)表示第j个节点的电压,Z(ij)表示第i个节点到第j个节点的支路阻抗。

3.建立支路潮流方程:根据每个支路的电流平衡方程,我们可以得到支路潮流方程。

每个支路的潮流方程可以表示为:I(ij) = (V(i) - V(j)) / Z(ij),其中I(ij)表示从第i个节点到第j个节点的支路电流,V(i)表示第i个节点的电压,V(j)表示第j个节点的电压,Z(ij)表示第i个节点到第j个节点的支路阻抗。

4.解线性方程组:将节点电压方程和支路潮流方程组合成一个线性方程组,我们可以通过求解线性方程组,得到电力系统中各节点的电压和潮流分布。

5.输出结果:根据求解的节点电压和支路潮流,我们可以将结果输出,以便进行分析和评估。

下面是一个基本的线元法路线计算程序的伪代码示例:```Input: 节点和支路的定义,节点电压和支路阻抗的初始值Output: 节点电压和支路潮流的计算结果1.建立节点电压方程和支路潮流方程-初始化节点电压和支路潮流的初始值-根据节点电压方程和支路潮流方程2.解线性方程组-使用数值计算方法求解线性方程组,得到节点电压和支路潮流的计算结果3.输出结果-将节点电压和支路潮流的计算结果输出,以便进行分析和评估```这是一个简化的线元法路线计算程序的框架,具体实现时需要根据具体的电力系统结构和算法细节进行调整和优化。

4800、4850线元法单心圆隧道三维(坐标正反计算、高程)程序

4800、4850线元法单心圆隧道三维(坐标正反计算、高程)程序

2010-4-2修改版1. XH(此为主程序)Lbl 0:”1.LC=>XY”:“2.XY=>LC”:“3.ZHZL=>GC”:{V}:V=1=>GOTO 1△V=2=> GOTO 2 △V=3=>GOTO 3△:≠> GOTO 0△Lbl 3:{HZ}:H”ZH”:Z”XLZJ,-Z+Y”:Z”SDZF,-Z+Y”=Z-0.125▲Prog”SQXBG”:GOTO 0:Lbl 1 :{L}:L”ZH”:L>173000=>L<174661.96=>GOTO 4△△GOTO 0△Lbl 4:{QJ}:L”ZH”=L:Q”XLZJ,-Z+Y”:Prog “QXYS”:Q=0=>J=0:≠>J=90△Prog “ZSZB”:Q “SDZJ,-Z+Y”=Q-0.125▲ X”X=“▲ Y”Y=“▲O”FWJ=“▲H=L:Z=Q:Prog “SQXBG”:GOTO 0:Lbl 2:{MR}:M”XO”:R”YO”:M>3845505.273 =>M<3846506.099=>R>499371.832 =>R<500352.224 => GOTO 5△△△△GOTO 0△Lbl 5:L:Q=0:J=0:M”XO”=M:R”YO”=R:L”ZH” =173300:Prog “FSZB”:L”LC=“▲Q”JL=“▲Q “SDZJ,-Z+Y”=Q-0.125▲H=L:Z=Q:Prog “SQXBG”:GOTO 02.正算坐标ZSZBH=( L-S ) / 4:F=90/π:U=HHF(1/T-1/I)/(K-S):D=2HF/ I:O=C+4D+16U:P=O+J : E=C+ D+ U: W=C+2D+4U: G=C+3D+9U:X=A+AbsH/3*(cosC+4(cosG+cosE)+2cosW+cosO)+Qcos P :Y=B+AbsH/3*(sinC+4(sinG+sinE)+2sinW+sinO)+Qsin P3.反算坐标:FSZBLbl 0:Prog “QXYS”:Prog “ZSZB”:Z=O-90:P= (R-Y)cosZ-(M-X) sinZ :L=L+P:AbsP≥0.001=> GOTO 0 :≠> GOTO 1 △Lbl 1:Q= (R-Y)cosO-(M-X) sinO4. 曲线元要素数据库:QXYSL≥S=>L<K=> S=**:A=**:B=**:C=**:I=**:K=**T=**⊿⊿←┘L≥S=>L<K=> S=**:A=**:B=**:C=**:I=**:K=**T=**⊿⊿←┘L≥S=>L<K=> S=**:A=**:B=**:C=**:I=**:K=**T=**⊿⊿←┘L≥S=>L<K=> S=**:A=**:B=**:C=**:I=**:K=**T=**⊿⊿←┘L≥S=>L<K=> S=**:A=**:B=**:C=**:I=**:K=**T=**⊿⊿←┘……………………………L≥S=>L<K=> S=**:A=**:B=**:C=**:I=**:K=**T=**⊿⊿←┘(注:如有多个曲线元要素继续添加入数据库QXYS中)5高程计算主程序:SQXBG(后有修改说明){X}:X”SCGC”:H”ZH”:Z”ZJ,-Z+Y”:M”R”:N”CS”:Prog"SJK":F=C-D:T=Abs(RF÷2):R=R AbsF÷F:H≤B-T=>K=0:≠=>H≥B+T=>K=0:C=D:≠=>K=H-B+T⊿⊿G”XLZG”=A-(B-H)C-K^2÷2R▲Z≥-0.125=>Z=Z-0.125:X>100=>J”YO1XGC”=G+N▲J”Y GCFSKD”= Abs√(M^2-(X-(G+N))^2) ▲J”Y KDCQ,+C,-Q”=J- Abs (Z+0.125) ▲J”Y SBSJGC”=G+N+√(M^2-(Z+0.125)^2) ▲J”Y GCCQ,C+,Q-”=X-J ▲Goto1:≠=>J”Y SBSJGC”=G+N+√(M^2-(Z+0.125)^2) ▲Goto1:≠=>Z=Z-0.125:X>100=>J”Z O1XGC”=G+N▲J”ZGCFSKD”= Abs√(M^2-(X-(G+N))^2) ▲J”ZKDCQ,+C,-Q”=J-Abs(Z+0.125) ▲J”ZSBSJGC”=G+N+√(M^2-(Z+0.125)^2) ▲J”ZGCCQ,C+,Q-”=X-J ▲Goto1:≠=>J”ZSBSJGC”=G+N+√(M^2-(Z+0.125)^2) ▲Goto1:Lbi16高程计算主程序子程序:SJKH≤第二竖曲线起点桩号=>A=第一竖曲线交点高程:B=第一竖曲线交点桩号:C=第一竖曲线前坡度:D=第一竖曲线后坡度:R=第一竖曲线半径:Goto1⊿H≤第三竖曲线起点桩号=>A=第二竖曲线交点高程:B=第二竖曲线交点桩号:C=第二竖曲线前坡度:D=第二竖曲线后坡度:R=第二竖曲线半径:Goto1⊿H≤第四竖曲线起点桩号=>A=第三竖曲线交点高程:B=第三竖曲线交点桩号:C=第三竖曲线前坡度:D=第三竖曲线后坡度:R=第三竖曲线半径:Goto1⊿………………………继续添加要素:Goto1:Lbi1说明:第一部分坐标部分(1、2、3、4)V=1进入坐标正算V=2进入坐标反算V=3进入单独的高程计算当V不等于1、2、3时,则返回程序,要求再次输入V值。

公路、铁路曲线坐标计算程序

公路、铁路曲线坐标计算程序

公路、铁路曲线坐标计算程序一、主程序:M(M是文件名,下同)L1 A”CX”B”CY”C”HX”D”HY”E”ZHX”F”ZHY”Q”HZX”L”HZY”G”ZHDK”H”ZHJD°”V”A°”W”L0”K”L1”RL2 Pol(C-A,D-B):M=JL3 Lbl 2:J=90:{NOJZ}:Z”DK”N”Z/!/Y(1/2/3)”:N=2=>Goto 1⊿O”M”J”A°”L4 Lbl 1:P=Z-G:S=E:T=F:U=H:I=H:FixmL5 P≤0=>Prog ”3”:≠=>P≤W=>Prog ”1”:≠=>P≤W+K=>Prog ”2”:I=90W/π/R+180π-1R-1(P-W)⊿⊿P≤W+K=>Prog ”4”:I=H+I⊿⊿L6 P>W+K=>P=2W+K-P:S=Q:T=L:P>0=>Prog ”1”:X=-X:U=H+V:Prog ”4”: I=U-I:≠=>U=H+V:I=U:P=-P:Prog ”3”⊿⊿L7 N≠2=>P=O:U=I-J:N=3=>P=-P⊿S=X:T=Y:Prog ”3”⊿L8 Pol(X-A,Y-B):J=J-M:J<0=>J=J+360⊿L9 J:”°°°=”◢I:”S=”◢X:”X=”◢Y:”Y=”◢Goto 2二、子程序:1L1 I=90P2(πRW)-1L2 X=P-Px y5(40R2W2)-1L3 Y=PIπ/540三、子程序:2L1 Y=180π-1R-1(P-0.5W)L2 X=RsinY+W/2- Wx y3/240/R2L3 Y=W/24/R+R-RcosY四、子程序:3L1 X=S+PcosUL2 Y=T+PsinU五、子程序:4L1 V<0=>Y=-Y:I=-I⊿L2 S=S+XcosU-YsinUL3 Y=T+XsinU+YcosUL4 X=S说明:1、该程序适用于计算器 CASIO fx-4800P。

fx9750卡西欧9750公路线元法计算程序

fx9750卡西欧9750公路线元法计算程序

新版程序把线元法和交点法已经集成在一个模块中了,用户只需修改JD程序和ZA程序中的数据部分即可,其余不需作任何的改动。

2.因为每条路高程计算不尽相同,且比较复杂,现在可利用PC机EXCEL计算好打印成表格带到工地上使用,所以本版程序未对线路高程序进行专门的编程计算,而是利用统计计算模式中来输入桩号(第一列X)及左、右高程(第二、三列Y,Freq),这种输入数据的方式最为直观,易发现错误,也易修改,输入完毕后运行S 程序对数据按桩号进行排序,在程序中通过调用GG程序来进行内插计算,SG=-1得左标高,SG=1得右标高(若SG输入0,则可进行一般的线性内插计算)。

3.在JD程序和XY程序中,先将一个计算单元的数据置入矩阵F中(1行8列或1行9列),这样程序可读性极好。

4.相比原CASIO4850程序操作习惯,作了一点小小的改动,测站坐标存在Z[10],N中,X坐标原存在M中容易被误操作修改,而设计标高存在M中,这样易于修改,因为CASIO5800没有IN,OUT功能,很不方便。

4.程序利用Z[2]变量值来判断是采用交点法还是线元法模型计算,Z[2]=0为线元法,否则为交点法。

一、PQX程序:计算中边桩坐标及近似的桩号反算,在运行模式直接调用。

① Z*10+→S:”XO”?S:S→Z*10+:”YO”?N:Prog “AU”② Lbl 2:?L:Prog “Z”:Prog “E”:1n→O:90→S③ Lbl 4:”JJ”?S:”YC”?O:SO=0 =>Goto 2‘原来lbl 后没有标号4的。

④ O=-1 =>Goto 6⑤ “X,Y”:R+OCos(Z+S)→X▲U+OSin(Z+S)→Y▲Prog“D”:Goto 4⑥ Lbl 6:Z*7+→X:Z*8+→Y:”XF”?X:”YF”?Y:XY=0 =>Goto 4⑦ X→Z*7+:Y→Z*8+:Pol(X-R,Y-U+1p):Z+S-J→J:”YC,DL,L”:ICos(J)→O▲ISin(J)→I▲L+I▲Goto 6二、P程序:在程序中提供一个自由运算的模式。

卡西欧Fx5800p道路三维坐标计算程序(线元法)

卡西欧Fx5800p道路三维坐标计算程序(线元法)

卡西欧5800p道路三维坐标计算程序(线元法)QXJS-000 主程序(文件名)Lbl 4:"1.SZ=>NE":"2.NE=>SZ":?Q:?S: Prog"QXJS-SUB0"↙Lblθ:Q=1 => Goto1:Q=2 => Goto2:↙θ为阿拉伯数字零Lbl 1:?Z:Prog"QXJS-SUB1":Cls:"N=":Locate5,1,N: (X坐标在第一行第五列显示)"E=":Locate4,2,E: (Y坐标在第二行第四列显示)"ZH=":Locate4,3,S:Locate9,3,"BJ=":Locate12,3,Z: (桩号在第三行第四列显示)F▶DMS◢(方位角在第四行显示)Prog"SQX-000": Goto4↙Lbl 2: "N=":?B: "E=":?C:B→N: C→E:Prog"QXJS-SUB2": "S=":S ◢"Z=":Z◢Goto4↙QXJS-SUB0 平面数据库子程序(文件名)Goto1↙Lbl 1 :IF S<***(线元终点里程):Then***→A(线元起点方位角):***→O (线元起点里程):***→U(线元起点X):***→V(线元起点Y):***→P(线元起点曲率半径):***→R(线元终点曲率半径): ***→L(线元起点至终点长度): Return:IfEnd↙ (一个完整的线元)。

IF S<***:Then***→A:***→O:***→U:***→V:***→P:***→R: ***→L: Return:IfEnd↙ (下一个完整的线元),……无限添加线元。

QXJS-SUB1 正算子程序(文件名)0.5(1÷R-1÷P)÷L→D:S-O→X↙U+∫( cos(A+(X÷P+DX2)×180÷π,θ,X)→N↙V+∫( sin(A+(X÷P+DX2)×180÷π,θ,X)→E↙A+(X÷P+DX2)×180÷π→F↙N+Zcos(F+90) →N:E+Zsin(F+90) →EQXJS-SUB2 反算子程序(文件名)Lbl1:θ→Z:1→Q:Prog"QXJS-SUB0": Prog"QXJS-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: θ→Z:Prog"QXJS-SUB1":(C-E) ÷sin(F+90) →Z使用使用说明:1、规定以道路中线的前进方向(即里程增大的方向)区分左右;当线路左转时,P、R取负值,当线路右转时,P、R取正值,当线路为直线时,P、R以10的45次方代替,即10^(45)。

线元法计算道路平曲线主点的精度分析

线元法计算道路平曲线主点的精度分析

线元法计算道路平曲线主点的精度分析作者:苏林活王贵满来源:《数码设计》2020年第06期摘要:线元法是道路平曲线主点计算的主要方法,当线长的取长精度不同时,对道路的主点数据的计算精度是有影响的,本文以某工程案例进行分析,得出线长的取值精度是如何影响道路平曲线主点数据的计算,并给出提高平曲线主点精度的方法。

关键词:线元法;线长;计算精度中图分类号:U412.24文献标识码:A文章编号:1672-9129(2020)06-0106-02Abstract:thelineelementmethodisthemainmethodtocalculatemainpointroad,whenlinelonglongprecisionwithoutatthesametime,thecalculationprecisionofthemainpointsofroaddataisinfluential,isanalyzedinthispaper,someengineeringcase,havetoqualifylongprecisionvaluesofthemainpointishowtoinfluenceroaddatacalculation,mainpointandimprovetheprecisionofthemethod.Keywords:lineelementmethod;Linelength;Calculationaccuracy1线元法概述道路中边桩计算方法有线元法和交点法。

这两种方法的功能相同,但是需要输入的设计数据类型不同,交点法是通过输入交点设计数据来计算平曲线的,而线元法是通过线元设计数据来计算平曲线。

交点法在计算时需要输入大量的交点坐标数据和曲线的设计参数数据,在计算时,稍有不慎,坐标容易输错,现场计算耗时且计算结果准确度把握不够。

采用线元法,仅需要输入起点的坐标数据,其他线元只需要输入线元4参数即可,简单方便且不容易出错。

交点法、线元法坐标计算

交点法、线元法坐标计算

For personal use only in study and research; not for commercial useFor personal use only in study and research; not for commercial use3、交点法、线元法坐标计算坐标计算是根据图纸中“直线及曲线转角一览表”提供的数据计算道路中桩坐标,然后和图纸提供的“逐桩坐标表”比对,如果一样则说明输入平曲线参数输入正确,可以计算边桩坐标和其他结构物坐标了;如果中桩坐标不一样,一般是平曲线参数输入有误,需要重新检查输入,另一种结果是图纸有错,这种情况少见,但不代表没有。

“直线及曲线转角一览表”和“逐桩坐标表”见附件1、附件2。

线元法是以路线的起点坐标、方位角、起终点桩号等节点元素来计算出要求的坐标;交点法是以路线的交点要素和路线的主要要素来求得坐标。

①交点法交点:路线的转折点,路线改变方向是相邻两直线的延长线相交的点。

用JD表示,有些图纸上用IP表示。

看下图:交点是针对曲线的(包含圆曲线和缓和曲线),一段曲线就有一个交点。

交点参数有:坐标(X,Y)、交点桩号、转角值、圆曲线半径R、缓和曲线长度。

教学提供软件(轻松测量、双心软件、测量工具)交点法曲线要素输入说明:1、QD起点坐标:起点坐标必须在直线段上,或填写前一交点的坐标。

2、JD交点曲线要素:(1)交点桩号(2)交点坐标(X,Y)(3)曲线半径R(4)第一缓和曲线长度LS1,若为0,输入0,不能为空。

(5)第二缓和曲线长度LS2,若为0,输入0,不能为空。

3、ZD终点坐标:终点坐标也必须在直线段上,或填写后一交点的坐标。

检核数据是否输入正确的方法:软件生成的圆曲线要素中切线长、外距、交点里程:注意校正起点里程、等与设计图纸是否一致。

如果上述数据和图纸不一样,请认真检查有错误的交点处的数据输入是否正确,如果输入没有错误,请考虑是否包含不完整缓和曲线,使用公式A²=R*Ls检查是否包含不完整缓和曲线。

线元法

线元法

5800 计算程序 (线元法)主程序 QXJSFix 3:Deg:Lbl 4:“1.SZ=>XY”:“2.XY=>SZ”:? QLbl 4: “LICHENG= ” ?S:Prog“SUB0” ↙Lbl 0:If Q=1:Then Goto1:IfEndIfQ=2:ThenGoto2:IfEnd ↙Lbl 1:”-B,0,B=”? Z: “J J右交角=”?G:Prog“SUB1”: Fix 4:Cls“X=”:N →N ◢“X=”: Locate3,1,N◢“Y=”:E→E ◢ “Y=”: Locate3,1,E◢Prog“JI”:Goto4“QXFWJ=”:F →F:F ▲ DMS ◢Goto4 ↙Lbl 2: “X=”? B: “Y=”? C:B→N: C→E:Prog“SUB2”: “LICHENG=”:S◢ “OUT JL=”:Z◢Goto4 ↙说明:Q: 代表正反算,其中 1 为正算, 2 为反算; S: 代表里程; Z :代表偏移距离; G :代表偏移角度(以线路前进方向为 X 方向,顺时针转为正; N : X 坐标; E : Y 坐标; F :切线方位角;JIClstatPol(N-G,-E-H):ClsIf S<0:Then J+360→Y:Ease J→Y:Ifend“F W J=”:Y▲ DMS ◢黄色为计算机程序SUB0 ( 数据库 )Goto1 ↙Lbl 1IF S<157687.528:THEN2884169.2517→U:471475.6573→V:157547.528→O:98 ° 32 ′ 43.08 ″→A:140→L:10^45→P:10000→R: Return:IfEnd ↙IF S<163781.879:THEN2883008.7030→U:477458.2815→V:163641.879→O:101 ° 6 ′ 4.08 ″→A:140→L:10^45→P:10000→R: Return:IfEnd ↙IF S<164195.661:THEN2882981.4268→U:477595.5984→V:163781.879→O:101 ° 30 ′ 7.93 ″→A:413.7833→L:10000→P:10000→R: Return:IfEnd ↙IF S<164335.661:THEN2882890.5519→U:477999.2492→V:164195.6623→O:103 ° 52 ′ 22.82 ″ →A:140→L:10000→P:10^45→R: Return:IfEnd ↙IF S<171831.142:THEN2882856.3502→U:478135.0069→V:164335.6623→O:104 ° 16 ′ 26.67 ″ 说明: S :里程;157547.528→O 为线元终点里程;2884169.2517→U 为线元起点 X 坐标;471475.6573→V 为线元起点 Y 坐标;98 ° 32 ′ 43.08 ″ →A 线元起点切线方位角;0^45→P 线元起点半径(左转为负右转为正);10000→R 线元终点半径(左转为负右转为正)SUB1 正算子程序0.5 (1÷R-1÷P)÷L→D:S-O→X ↙U+∫(cos(A+(X÷P+DX2)×180÷π,0,X)→N ↙V+∫( sin(A+(X÷P+DX2)×180÷π,0,X)→E ↙A+(X÷P+DX2)×180÷π→F ↙N+Zcos(F+G) →N:E+Zsin(F+G) →EReturnSUB2 反算子程序Lbl 1:0→Z :1→Q :Prog“SUB0”: 0.5 (1÷R-1÷P )÷L→D:S-O→X ↙ U+∫(cos(A+(X÷P+DX2)×180÷π,0,X)→N ↙V+∫( sin(A+(X÷P+DX2)×180÷π,0,X)→E ↙A+(X÷P+DX2)×180÷π→F ↙N+Zcos(F+90) →N:E+Zsin(F+90) →E :Pol(N-B+10^(-46), E-C+10^(-46)):Isin(F-90-J) →W:S+W→S ↙IfAbs(W)>0.0001 :Then Goto1:IfEnd ↙Lbl 2: 0→Z :Prog“QXJSSUB1”:(C-E) ÷sin(F+90) →ZReturnH (高程主程序)Fix 3 :Lb1 3: ” LICHENG= ” ?Z: Prog“SQXZL”:(P-Q) ÷ Abs(P-Q) →W ↙If Z<(H-T):Then(H-Z) × P →X:Goto 2:IfEnd ↙If Z ≥ (H-T) And Z<H:Then (H-Z) × P+(Z-H+T)2÷ (2WR) →X:Else (H+T-Z)2÷ (2WR)-(Z-H) × Q→X: Goto 2:IfEnd ↙Lb1 2: ” GAO CHENG= ” D-X →X ◢Goto 3SQXZL (竖曲线数据库)Goto 1Lb1 1If Z ≤ 157893.75:Then25000→R:93.75→T:157800→H:421.977→D:-0.0045→P:0.003→Q:Return:IfE nd ↙If Z ≤ 159000:Then25000→R:150→T:158850→H:425.127→D:0.003→P:0.015→Q:Return:IfEnd ↙If Z ≤ 165017.5:Then25000→R:117.5→T:164900→H:515.877→D:0.015→P:0.0056→Q:Return:IfEn d ↙If Z ≤ 168207.5:Then25000→R:107.5→T:168100→H:533.797→D:0.0056→P:-0.003→Q:Return:IfE nd ↙If Z ≤ 172175:Then 25000→R:75→T:172100→H:521.797→D:-0.003→P: 0.003→Q:Return:IfEnd ↙说明: 157893.75 代表竖曲线终点里程,25000→R 代表竖曲线半径;93.75→T 代表竖曲线切长;421.977→D 代表边坡点标高(未改正之前); -0.0045→P 代表前段坡度,上坡为正,下坡为负;0.003→Q 代表后段坡度,上坡为正,下坡为负;。

5800程序(线元法全线坐标正方算)

5800程序(线元法全线坐标正方算)

5800程序(线元法全线坐标正方算)本程序比较复杂.测量原理不是很明白的朋友慎用请大家经常关注程序B-H的更新2009,5,10日修改见超高子程序B-H黄色部分,另超高数据库增加在超高缓和段输入超高为公路外侧超高说明2009,5,8日正反算选择程序:ZS-FS 更改小错,详见紫色修改内容2009,4,30日更改如下:把原来的4个子程序分解成5个子程序,解决了一个大的竖曲线不能包含几个超高变化段,另外程序内也有两处改变请看红色区域.本程序经过综合考虑5800的设计缺陷,计算速度较慢故只使用高斯四节点法为计算内核.支持多条线路正反算,中桩,边桩高程计算,超高计算,超高缓和计算,加宽计算,加宽缓和计算,边坡开口线计算,挡土墙坡脚线计算,考虑了中间绿化带的影响,适用与国家高速公路至乡村四级公路计算和放样,路基路面工程可以直接得出中边桩的设计三维坐标,去掉加宽和超高影响的计算困难,边坡和坡脚线计算可直接在边坡上提取坐标带入程序,经过所有设计因素的综合,得出更改边距并显示修改偏差后的坐标.反算速度明显提高,只需要3秒.程序无错,可放心输入,另本程序可以增加隧道超欠挖计算子程序,非常方便,因为每个隧道的断面数据不一样,所以在此没有明确写出,有需要的可以联系我.本人QQ76805071,只为交友.计算器主程序:ZHU-CHENG-XULbi0:“1,ZS=FS,2ZS,3FS,4XY=>SG,5。

”?U:U=1=>Prog”ZS-FS”:进入公路三维程序U=2=>Porg”ZS”:进入坐标正算程序U=3=>Porg”FS”:进入坐标反算程序U=4=>Porg”XY =>SG”:进入大地坐标转施工坐标程序…………Goto0:说明:计算器总的主程序,进入选择各种分支计算程序。

1为公路三维计算,2为普通正算,3为普通反算,4为大地坐标转施工坐标。

选择错误重新选择。

此程序可以不用输入,只为给大家一个思路,可以把计算器所有程序集中到一个主程序内管理.公路三维部分正反算选择程序:ZS-FSDeg: //设置角度模式20→DimZ: //扩展变量“1LZ=>XY,2XY=>LZ,3BIANPO-FY”?U://正反算选择,正算选1,反算选2,坡口坡脚选3If U=1: ThenProg”ZS-XH”:IfEnd://进入正算循环主程序IfU=2:Then Prog”FS-XH”:IfEnd: //进入反算循环主程序IfU=3:ThenProg”BP-FY”:IfEnd://进入边坡开挖主程序正算循环主体程序ZS-XH“1PT-2SJ”?W://普通计算和设计边距计算选择“XL-XZ“?U://选择线路1~NIf W=1: Then //运行普通计算模式边踞自由输入Lbi0:”L=”?L:”Z=”?Z: //输入桩号和边距Porg”ZS-XH-1“:Goto0:IfEnd: //运行正算循环子程序If W=2:Then //运行设计计算模式边距按设计输入Lbi1:”L=”? L: //输入桩号Porg”0。

CASIO4850公路线元法积分公式计算器程序V11版

CASIO4850公路线元法积分公式计算器程序V11版

请使用WORD的Times New Roman字体,若使用其它字体,字母O与数字0是区别不出的.切记切记!积分公式计算的线元法CASIO4850计算器程序第十一版1 (主程序)(使用时请运行这个)L1 LbI 0:{ QDV}L2 U<4=> Prog “4”△L3 U=5=> Prog “2”△L4 U=6=> Prog “2”△L5 Int U=7=> D=0:V=0△L6 U=8=>{M}: PSW:D=(B+M“01”P)÷Cos Abs(90-AbsV): Q=W+S√(1-M2)△L7 U>5=> Prog “4” △L8 LbI2:IntU=9=> PS: Prog“F”:A=R+90: Prog“9”:Goto 2△L9 LbI3:U=10=>PSWB: Prog“F”: Pol ( P-W,S-B):J<0=>J=J+360:△A=J: Prog“9”:Goto 3△L10 QDVHEFACZG: Frac Y=0=> Prog “3”: △O: Prog “10”L11 U=2=>T=T+ Int (-5+10 Ran# )÷1000: K=K+ Int (-5+10Ran# )÷1000: Prog “8”: Prog “5”△L12 U=3=> I= -S+2S Ran# :J=√(S2-I2): I= Int I÷1000:J= Int (-J+2J Ran# )÷1000:T+I: Pause 0:K+J: Pause 0:I: Pause 0:J◢√(I2+J2) ◢△L13LbI 1: IntU=7=> {DV}: Prog“10”: S=D:D=B÷2÷Sin Abs V:J=R:U=7.1=>D=B÷2:J=R+V-90: △ Prog “6”: Prog “8”: Prog “5”:D=2D:J=R-180: U=7.1=> J=R+V+90: △ Prog “6”: Prog “8”: Prog “5”: V≤0=>V=V+180: ≠>V=V-180: △D=S:Goto 1△L14 U<5=>Q=Q+B: △Goto 010(子程序)(为共用计算中桩/加转角/用正算计算边桩/反算/显示 的过程)L1 Prog “F”:U=11=>R=0:△J= R+V: Prog “6” : Prog “8” : Prog “5”9 (子程序)(为点垂桩垂距/涵交桩交角的共同运行部分)L1 Prog“7”: Prog“8”: Abs(J-R)<1=>Q=Q-I:≠> Q=Q+I:△I<0.001=>T=P:K=S: Prog “8”: “OK”: Q: Pause 0:I: Pause 0: J=J-R:J>180=>J=-J+180:△J→DMS◢U=9.1=> Prog “11”: △△ Prog “4”7 (子程序)(两点斜直线交点部分)(也可作为两点斜直线交点主程序独立运行)L1E=Tan A:F= Tan R:Y=(EP-S-FT+K) ÷(E-F): Pause 0:O=E(Y-P)+S5 (子程序)( 显示部分)L1T: Pause 0:K: Pause 0:I: Pause 0:J→DMS◢F (子程序) (中桩计算部分)L1 RAD:I= Abs(Q-H):J= Abs(G-H):R=Aπ/180+CI+I2(Z-C)/2/J:T=E+∫(Cos (Aπ/180+CX+X2(Z-C)/2/J),0,I,4):K= F+∫(Sin (Aπ/180+CX+X2(Z-C)/2/J),0,I,4):Q>G =>R=R+π:△DEG:R=180R/πF2 (子程序) (中桩计算部分)(使用时把F2改为F;同时把F改为F1)(这个子程序计算速度快,但在缓曲长到2或3百米且半径小到6或7十米时,计算误差有几厘米)L1 Defm 7L1 I=Q-HL2 J= (Z-C)I÷(G-H)L3 Z[1]=A+90(J÷8+2C)(I÷8)÷πL4 Z[2]=A+90(J÷4+2C)(I÷4)÷πL5 Z[3]=A+90(3J÷8+2C)(3I÷8)÷πL6 Z[4]=A+90(J÷2+2C)(I÷2)÷πL7 Z[5]=A+90(5J÷8+2C)(5I÷8)÷πL8 Z[6]=A+90(6J÷8+2C)(6I÷8)÷πL9 Z[7]=A+90(7J÷8+2C)(7I÷8)÷πL10 R=A+90(J+2C) I÷πL11 T=E+ AbsI(Cos A+4(CosZ[1]+ CosZ[3]+ CosZ[5]+ CosZ[7])+2(CosZ[2]+ CosZ[4]+ CosZ[6])+ CosR)÷24L12 K=F+ AbsI(Sin A+4(SinZ[1]+ SinZ[3]+ SinZ[5]+ SinZ[7])+2(SinZ[2]+ SinZ[4]+ SinZ[6])+ SinR)÷248(子程序) (座标反算部分)(也可作为座标反算主程序独立运行, 方位角按RCL R SHIFT °′″ 显示)L1J=TK: Pol ( T-Y,K-O): Pause 0:J<0=>J=J+360△6(子程序) (边桩和座标正算计算部分)(也可作为座标正算主程序独立运行)L1TK:T=T+ Rec (D,J): Pause 0:K=K+J2(子程序) (推算开挖/填筑桩部分){平原微丘一般推算1-2次,山岭重丘一般4-5次,能达到5厘米以内的精度,看你的熟练程度} L1 {WSPB}:I= -W+ S◢L2 D= Abs IP+B◢L3 {D}:D3(导线点数据库)(数据库中的数字请按你所在公路的数据替换)L1 Y=21=>Y=36640.666:O=65111.666△L2 ……(省略号表示类同上行, 并非真在程序中输入省略号. 注意: 第一个Y为导线点编号, 第二个Y为导线点X座标,O为导线点Y座标, 数据库中的数字请按你所在公路的数据替换. 但注意: 导线点编号必须没字母也没小数;导线点X座标则必须有小数,若刚好没有小数,请加上0.0001并不影响精度)4(平曲线数据库) (数据库中的数字请按你所在公路的数据替换)L1 Q≤444.978=>H=374.978:E=36771.643:F=64929.942:A=151°29′38″:C=0: G=444.978:Z=-600-1: Goto 1△L2 Q≤811.819=>H=444.978: E=36710.800:F=64964.534:A=148°09′06″:C=-600-1: G= 811.819:Z=-600-1: Goto 1△L3 Q≤881.819=> H=811.819:E=36475.596:F=65238.599:A= 113°07′15″:C=-600-1: G=881.819:Z=0: Goto 1△L4 ……(省略号表示类同上行,并非真在程序中输入省略号)L5 LbI 1 (注意:这行始终是平曲线数据库的最后一行, 之前行都是相同的) (为更好的理解这个平曲线数据库的结构,请对照上面数据看下图)11 (子程序)(双圆垂轴隧道断面开挖超欠测量部分)A:实测高程 H:设计高程I:实测宽度 B:超欠值(设棱镜半径0.03)L1 {AHI}:A≤H=>B=110:≠>A≤H+2.75+1.056=>B=√((A-(H+1.905))2+(I+1.813)2) +0.03-4.5 : ≠> B =√ ((A-(H+2.75))2+I2 )+0.03-2.5:△△B◢平曲线数据库的数据图示:(图画得不好,现丑了.图示是对称缓曲,但线元法程序对任意公路线形都适用的)ZH HZ 0+374.978X=36771.643 0Y=64929.942 HY151°29′38″ 0+444.9780 X=36710.800Y=64964.534-600-1 X=36475.596Y=65238.599113°07′15″-600-1使用说明:{本程序是针对CASIO4850计算器的,其它的计算器请作相应修改}{有方框的字为一个字符,不是几个字母,为各种计算状态名或函数名,如RAD与Cos等等,∫为积分符号,L1\ L2\ L3\L4等为程序行号不要在程序中输入, ……省略号表示类同上行,并非真在程序中输入省略号}{如有其它疑问或进行技术交流,请打詹德军的电话015918402837欢迎交流!}运行主程序 1 (按1 FILE进入)U?(判断进入何种计算状态)1为数据库输入原始数据计算中边桩,2为数据库输入计算放线测量记录表,3为数据库输入计算平面位置检查记录表,4为人工输入原始数据计算中边桩,5为人工输入推算开挖/填筑桩状态,6为数据库输入推算开挖/填筑桩状态,7为数据库输入计算斜交斜做涵洞/单跨桥七点放样状态 ,7.1为数据库输入计算斜交正做涵洞七点放样状态 ,(斜交斜做涵洞的伸缩缝处的放样也可用)8为数据库输入计算锥坡放样,9为数据库输入反算线外点垂桩垂距,9.1为数据库输入双圆垂轴隧道 断面开挖 超欠测量,10为数据库输入求线外两点交路线的桩号与夹角,11为计算曲线桥平行布桩的桩/柱放样状态(因为D=0时就是中桩,D≠0时就是边桩,所以不再单独设立中桩或边桩的计算状态,方便程序进一步开发)(U=1)数据库输入原始数据计算中边桩1.U?1(判断进进入何种计算状态)2.Q?所求桩号(计算第二个桩开始Q已经自动加了步长,不用手工输入,但仍然会显示你看,并可修改成别的桩号)3.D?中桩到边桩的距离(求中桩输入0)4.V?中桩到边桩方位角与中桩前进切线方位角间的夹角(注意左转为负值,角度按需要以度分秒输入任意输入)5.Y?置仪点X座标 (也可以输入导线点编号,因为此时使用了导线点数据库)6.O?置仪点Y座标(当X座标输入了导线点编号,则此行不显示,因为数据库已经装入了导线点的X与Y座标)7.=所求桩号X座标 (注:四个结果同时显示于屏幕)=所求桩号Y座标=所求桩号放样距离=所求桩号放样方位角8.B?步长(步长就是间隔长度,当要计算的是大量有相同距离间隔 且 相同中边距或都是中桩 时,步长就是好东西了,计算完第一个桩后所有桩,都只需闭着眼睛连按四次EXE,就是下个桩要计算的所有结果了)9.以后循环第2/3/4/7步(U=2)计算放线测量记录表1.U?2(判断进进入何种计算状态)2.Q?所求桩号(计算第二个桩开始Q已经自动加了步长,不用手工输入,但仍然会显示你看,并可修改成别的桩号)3.D?中桩到边桩的距离(求中桩输入0)4.V?中桩到边桩方位角与中桩前进切线方位角间的夹角(注意左转为负值,角度按需要以度分秒输入任意输入)5.Y?置仪点X座标 (也可以输入导线点编号,因为此时使用了导线点数据库)6.O?置仪点Y座标(当X座标输入了导线点编号,则此行不显示,因为数据库已经装入了导线点的X与Y座标)7.=所求桩号计算X座标 (注:四个结果同时显示于屏幕)=所求桩号计算Y座标=所求桩号计算放样距离=所求桩号计算放样方位角8.=所求桩号复测检查X座标 (注:四个结果同时显示于屏幕)=所求桩号复测检查Y座标=所求桩号复测检查放样距离=所求桩号复测检查放样方位角9.B?步长(步长就是间隔长度)10.以后循环第2/3/4/7/8步(U=3)计算平面位置检查记录表1.U?3(判断进进入何种计算状态)2.Q?所求桩号(计算第二个桩开始Q已经自动加了步长,不用手工输入,但仍然会显示你看,并可修改成别的桩号)3.D?中桩到边桩的距离(求中桩输入0)4.V?中桩到边桩方位角与中桩前进切线方位角间的夹角(注意左转为负值,角度按需要以度分秒输入任意输入)5.Y?置仪点X座标 (也可以输入导线点编号,因为此时使用了导线点数据库)6.O?置仪点Y座标(当X座标输入了导线点编号,则此行不显示,因为数据库已经装入了导线点的X与Y座标)7.=所求桩号设计X座标 (注:四个结果同时显示于屏幕,但后两个数据是用不上的) =所求桩号设计Y座标=所求桩号放样距离=所求桩号放样方位角8.?所允许的最大误差(以毫米为单位,比如高速公路的中线允许的最大误差为20MM,就输入20)9.=所求桩号检测X座标 (注:四个结果同时显示于屏幕)=所求桩号检测Y座标=所求桩号X轴偏差=所求桩号Y轴偏差10.=所求桩号双轴偏差11.B?步长(步长就是间隔长度)12.以后循环第2/3/4/7/9/10步(U=4)人工输入原始数据计算中边桩1.Q?所求桩号(计算第二个桩开始Q已经自动加了步长,不用手工输入,但仍然会显示你看,并可修改成别的桩号)2.D?中桩到边桩的距离(求中桩输入0)3.V?中桩到边桩方位角与中桩前进切线方位角间的夹角(注意左转为负值,角度按需要以度分秒输入任意输入)4.H?起算点桩号5.E?起算点X座标6.F?起算点Y座标7.A?起算点方位角(以度分秒输入)8.C?起算点曲率(即半径分之一,直线为0,注意左转为负值)9.Z?终算点曲率(即半径分之一,直线为0,注意左转为负值)10.G?终算点桩号11.Y?置仪点X座标12.O?置仪点Y座标13.=所求桩号X座标 (注:四个结果同时显示于屏幕)=所求桩号Y座标=所求桩号放样距离=所求桩号放样方位角14.?步长(步长就是间隔长度)15.以后循环第1/2/3/13步(U=5)人工输入原始数据推算开挖/填筑桩状态(平原微丘一般推1-2次,山岭重丘4-5次达到5厘米的精度,要看你的熟练程度)1.W?实测大地高程2.S?变坡点设计高程3.=变坡点设计高程 与 实测大地高程 之高差(正为填方,负为挖方)4.P?填方或挖方的坡比(若1:1.5侧输1.5,无论填挖坡比全为正)5.B?中桩到变坡点宽度6.=推算的中桩到开挖/填筑桩距离7. D?采用的中桩到开挖/填筑桩距离7.Q?所求开挖/填筑桩桩号8.V?中桩到边桩的方位角与中桩的前进切线方位角间的夹角(注意左转为负值,只能输入右边90或左边-90,因为开挖/填筑桩总是垂直的)9.H?起算点桩号10.E?起算点X座标11.F?起算点Y座标12.A?起算点方位角(以度分秒输入)13.C?起算点曲率(即半径分之一,直线为0,注意左转为负值)14.Z?终算点曲率(即半径分之一,直线为0,注意左转为负值)15.G?终算点桩号16. Y?置仪点X座标17. O?置仪点Y座标18.=推算开挖/填筑桩桩号X座标 (注:四个结果同时显示于屏幕)=推算开挖/填筑桩桩号Y座标=推算开挖/填筑桩桩号放样距离=推算开挖/填筑桩桩号放样方位角12.以后循环第1/2/3//4/5/6/7/8/18步(U=6)数据库输入原始数据推算开挖/填筑桩状态(平原微丘一般推1-2次,山岭重丘4-5次达到5厘米的精度,要看你的熟练程度)1.W?实测大地高程2.S?变坡点设计高程3.=变坡点设计高程 与 实测大地高程 之高差(正为填方,负为挖方)4.P?填方或挖方的坡比(若1:1.5侧输1.5,无论填挖坡比全为正)5.B?中桩到变坡点宽度6.=推算的中桩到开挖/填筑桩距离7.D?采用的中桩到开挖/填筑桩距离8.Q?所求开挖/填筑桩桩号9.V?中桩到边桩的方位角与中桩的前进切线方位角间的夹角(注意左转为负值,只能输入右边90或左边-90,因为开挖/填筑桩总是垂直的)10.Y?置仪点X座标 (也可以输入导线点编号,因为此时使用了导线点数据库)11.O?置仪点Y座标(当Y输入了导线点编号,则此行不显示,因为数据库已经装入了导线点的X与Y座标)12.=推算开挖/填筑桩桩号X座标 (注:四个结果同时显示于屏幕)=推算开挖/填筑桩桩号Y座标=推算开挖/填筑桩桩号放样距离=推算开挖/填筑桩桩号放样方位角 12.以后循环第1/2/3//4/5/6/7/8/11步推算开挖/填筑桩的图示(以有二级填方边坡的填筑线为例,其它类推)中桩S变坡点高程中桩至该变坡点距离 B地面线(U=7/7.1)为计算斜交斜做涵洞单跨桥 / 斜交正做涵洞七点放样状态(U=7/7.1并能避免曲线内单跨桥涵进出水口长度不一至)(U=7同时适用于,曲线桥扇形布桩的盖梁放样; 曲线桥扇形布桩的支座放样)1.U? 7/7.1进入计算斜交斜做涵洞单跨桥/ 斜交正做涵洞七点放样状态2.Q? 涵洞桩号3.Y?置仪点X座标 (也可以输入导线点编号,因为此时使用了导线点数据库)4. O?置仪点Y座标(当Y输入了导线点编号,则此行不显示,因为数据库已经装入了导线点的X与Y座标)5.=涵洞中桩X座标 (注:四个结果同时显示于屏幕)=涵洞中桩Y座标=涵洞中桩放样距离=涵洞中桩放样方位角6.D?右侧涵斜长7.V? 右侧转角(进流水轴 与 中桩的前进切线方位角间的夹角,左负右正)8.= 右侧桩X座标 (注:四个结果同时显示于屏幕)=右侧桩Y座标=右侧桩放样距离=右侧桩放样方位角9.B?正的跨径长度(程序自算斜跨径长度)10. =右侧前进侧台身脚X座标 (注:四个结果同时显示于屏幕)=右侧前进侧台身脚Y座标=右侧前进侧台身脚放样距离=右侧前进侧台身脚放样方位角11. =右侧后退侧台身脚X座标 (注:四个结果同时显示于屏幕)=右侧后退侧台身脚Y座标=右侧后退侧台身脚放样距离=右侧后退侧台身脚放样方位角12.D?左侧涵斜长13.V? 左侧转角(出流水轴 与 中桩的前进切线方位角间的夹角,左负右正,程序自动按180度转换了,其实不用输入,只是显示观看)14.= 左侧桩X座标 (注:四个结果同时显示于屏幕)=左侧桩Y座标=左侧桩放样距离=左侧桩放样方位角15. =左侧前进侧台身脚X座标 (注:U=7.1时为后退侧结果,四个结果同时显示于屏幕)=左侧前进侧台身脚Y座标=左侧前进侧台身脚放样距离=左侧前进侧台身脚放样方位角16. =左侧后退侧台身脚X座标 (注: U=7.1时为前进侧结果,四个结果同时显示于屏幕)=左侧后退侧台身脚Y座标=左侧后退侧台身脚放样距离=左侧后退侧台身脚放样方位角17.以后循环第6-8/10-17步(当然这种循环只是重新检查而已,按两次AC/ON退出)计算涵洞单跨桥七点放样图示(注: U=7.1时左侧的15步与16步顺序互换)前进方向10步15步8步 右侧左侧14步 5步11步16步切线 路线(U=8)为数据库输入原始数据计算锥坡放样1.U?8为进入数据库输入原始数据计算锥坡放样2.P?椭圆单侧斜长轴3.S?椭圆单侧斜短轴(当从近桥0点往远桥1点推桩号增加时,S输入负值。

详解用线元法计算公路中线坐标

详解用线元法计算公路中线坐标

%


Risin[!A+("AVi

l+
"ABVi2 2Ls
l2 ) 180 ] !
式中:
X 、Y— ——线元上所求任意点坐标;
l—— —任意点到线元起点的弧长,即Zi- ZA ; XA 、YA— ——线元起点的坐标; !A—— —线元起点的切线方位角; Ls— ——线元的长度,即 ZB- ZA; "A、"B— ——起终点曲率(左偏时取“- ”号, 右偏取“+”号);
3 曲线上点位切线方位角的计算
如图 2,设回旋曲线起点 A 的曲率为 !A ,其 里程为 ZA;回旋曲线终点 B 的曲率为 !B,其里程 为 ZB,Ax'y' 为以 A 为坐标原点、以 A 点切线为 x' 轴的局部坐标系;AXY 为线路统一坐标系。
线元编号 ① ② ③ ④ ⑤
表1 某卵形曲线参数值
曲线类型
点里程 =240
l=240-223.71=16.285(m) Ls=271.881-223.715=48.166(m) "AB=1/75- 1/50= - 0.006 666 666 667 Ri、Vi 数值直接代入公式,计算过程如表 2 所示。
&R1= R5= 0.118 463 4425 $$R2 = R4 = 0 .239 314 335 2 其中:#$R3 = 0 .284 444 444 4 $V1 = 1 - V5 = 0. 046 910 077 0 $$V2 = 1 - V4 = 0.230 765 344 9 %V3= 0. 5
线元法(亦称积木法),它是将组合复杂的公 路平面线形“化整为零”,分解成若干个线形单 元。若已知路线平面曲线的起点信息如坐标、切 线方向和曲率半径,则从起点处开始设置任何一 单元,沿任何方向延伸,此单元终点的信息如坐 标、切线方位角、曲线半径都可以计算出来,同 时,将其作为下一单元起点的相同信息加以利 用。如此逐个单元往下计算,似同搭积木一样,

曲线正反算程序(线元法)

曲线正反算程序(线元法)

曲线正反算程序(线元法)用到的变量:除E外其余25个程序中红色和蓝色部分可以删掉,不影响正反算主程序 QX ZFS XYFLbl 0Cls1→N"ZS(1),FS(2)"?NN=1=>Goto 1N=2=>Goto 2Goto 0Lbl 2Cls"X"?X:"Y"?Y 要反算的点的X、Y坐标"LC"?S 要反算的点所在的线元内任意里程,尽量避免用两个端点的里程If S=0:Then 若里程输0,则进入手动设置线元要素程序Cls"X0"?U 起点X坐标"Y0"?V 起点Y坐标"FWJ"?G 起点切线方位角"LC0"?O字母O,起点里程"LCN"?H:H-O→H 字母O,终点里程"R0"?P 起点曲率半径"RN"?R 终点曲率半径"Q"?Q 左右偏标志Goto 4:IfEndGoto 3:IfEndLbl 1***** 为方便做资料而加入该段条件语句,还有一段在程序末端If 1=2:ThenZ[109]→A:"(CE)X"?A: A→Z[109] 测站点X坐标If A=0:Then 若测站点X坐标输0,则进入控制点程序Prog"KZD"X→Z[109]:Y→Z[110]Goto 1:IfEndZ[110]→B:"(CE)Y"?B: B→Z[110] 测站点Y坐标IfEnd*****Cls"LC"?S 正算时的里程If S=0:Then 若里程输0,则进入手动设置线元要素程序Cls"X0"?U"Y0"?V"FWJ"?G"LC0"?O 字母O"LCN"?H:H-O→H 字母O"R0"?P"RN"?R"Q"?QCls"LC"?S 正算时的里程"PJ"?Z 正算时的偏距Goto 4:IfEnd"PJ"?Z 正算时的偏距****** 为方便计算涵洞而加入该段条件语句,还有一段在If 1=2:Then 程序末端,用蓝色标记Z→E:0→Z 先要求出偏距为0的点,因此将Z值保存在E中Z[134]→A:"+- ZHUAN JIAO"?A: A→Z[134] 待求点相对线IfEnd路前进方向的转角,顺时针为正,逆时针为负******Lbl 3 该段为线元要素数据库S≥9728.483=>Goto 9 三个条件语句,加快搜索线元的效率8863.416≤S And S﹤9728.483=>Goto 87755.868≤S And S﹤8863.416=>Goto 7If 5059.485≤S And S≤7002.287:Then 判断是否在第一段线元3539714.589→U 以下为第一段线元相应要素521939.4098→V273°59°27.9°→G5059.485→O 字母O,起点里程7002.287-5059.485→H 线元长度1045→P1045→R0→QGoto 4:IfEndIf 7002.287≤S And S≤7102.287:Then 判断是否在第二段线元*→U 以下为第二段线元相应要素*→V*→G*→O 字母O*→H*→P*→R*→QGoto 4:IfEnd……同理……Lbl 7If 7755.868≤S And S≤7810.162:Then*→U*→V*→G*→O 字母O*→H*→P*→R*→QGoto 4:IfEnd…………Lbl 8If 8863.416≤S And S≤9194.088:Then *→U*→V*→G*→O 字母O*→H*→P*→R*→QGoto 4:IfEnd…………Lbl 9If 9728.483≤S And S≤9917.694:Then *→U*→V*→G*→O 字母O*→H*→P*→R*→QGoto 4:IfEnd…………If 10411.371≤S And S≤10471.371:Then*→U*→V*→G*→O 字母O*→H*→P*→R*→QGoto 4:IfEnd 数据库部分到此结束Cls"LC CUO WU"◢未找到相应线元,显示里程错误N=1=>Goto 1 返回正算程序N=2=>Goto 2 返回反算程序Lbl 4(1÷P)→C:(P-R)÷(2HPR)→D:(180÷∏)→HN=2=>Goto 6Lbl 5Abs(S-O)→W 字母OProg"SUB1"执行正算子程序X+Zcos(F)→AY+Zsin(F)→BA→XB→YF-90→F*****If 1=2:Then 为方便计算涵洞而加入该段条件语句,还有一段A+Abs(E)cos(F+Z[134])→X 在程序前端,用蓝色标记B+Abs(E)sin(F+Z[134])→YE→Z 将最初输入的偏距返回Z,以便再次计算IfEnd 时显示上一次的值*****Cls"X=""""Y="Fix 3Locate 4,1,XLocate 4,3,Y◢Cls"F=":F▼DMS◢*****If 1=2:Then 为方便做资料加入该段条件语句,还Cls 有一段在程序前端,用红色标记Pol(X-Z[109],Y-Z[110])J<0=>J+360→J"FWJ=":J▼DMS 测站点至正算出的目标点的方位角"JL=":I◢测站点至正算出的目标点的平距IfEnd*****Norm 2Z[111]=123=>Return 判断Z[111]的值,以便其他程序调1→N:Goto 1 用时返回Lbl 6X→I:Y→JProg"SUB2"执行反算子程序O+W→S 字母OCls"LC=""""PJ="Fix 3Locate 4,1,SLocate 4,3,Z◢I→X:J→Y:2→NNorm 2:Goto 2正算子程序 SUB1用到的变量:ABCDFGHKLMQUVWXYZ,剩EIJNOPRST0.1739274226→A0.3260725774→B0.0694318442→K0.3300094782→L1-L→F:1-K→MU+W(Acos(G+QHKW(C+KWD))+Bcos(G+QHLW(C+LWD))+Bcos(G+QHFW (C+FWD))+Acos(G+QHMW(C+MWD)))→XV+W(Asin(G+QHKW(C+KWD))+Bsin(G+QHLW(C+LWD))+Bsin(G+QHFW (C+FWD))+Asin(G+QHMW(C+MWD)))→YG+QHW(C+WD)+90→F反算子程序 SUB2用到的变量:ABCDFGHIJKLMQTUVWXYZ,剩ENOPRSG-90→TAbs((Y-V)cos(T)-(X-U)sin(T))→W0→ZLbl 0Prog "SUB1"执行正算子程序X+Zcos(F)→XY+Zsin(F)→YT+QHW(C+WD)→L(J-Y)cos(L)-(I-X)sin(L)→ZIf Abs(Z)<10^(-3):thenGoto 1Else W+Z→WGoto 0:IfEndLbl 10→ZProg "SUB1"执行正算子程序X+Zcos(F)→XY+Zsin(F)→Y(J-Y)÷sin(F)→Z。

Qh2-8线元法任意路线与匝道曲线坐标正、反算程序共11页文档

Qh2-8线元法任意路线与匝道曲线坐标正、反算程序共11页文档

5800计算器坐标计算程序(线元法任意路线与匝道曲线坐标正、反算程序)程序1:QH2-8"ROUTE Or RAMP QH2-8"◢书中多了个个双引号(这里说的书是产品配备的说明书)Deg:Fix 3:书中Freqon取消"NEW(0),OLD(≠0)DATA="?→CIf C≠0:Then "RECOMP(0),NO(≠)= "?→G书中0取消If G=0:Then Goto T:Else Goto J: IfEnd“CURVE NUM=”?N1→Q:5N+11→DimZ“START a(Deg)=”?→Z[5]For 1→I To N“n=”:I◢“START R(m)=”?→Z[5I-4]Z[5I-4]=0=>1X1030→Z[5I-4]“END R(m)=”?→Z[5I-3]Z[5I-3]= 0=>1X1030→Z[5I-3]“LENGTH(m)=”?→Z[5I-2]If Z[5I-4]<1X1030 Or Z[5I-3] <1X1030Then “DEFLEX L(-1),R(1)=”?→Z[5I-1]:IfEnd 注意-1是减1 NEXT“[MODE][1] =>Stop!”◢Lb1 T:0→I:For 1→I To NList X[I]+Rep(Z[5I-2])→List X[I+1]List X[I+1]→ZIf Z[5I-4]=Z[5I-3]And Z[5I-4]= 1X1030Then 0→S:0→T:Z[5I-2]→DProg “SUBQ2-84”:Goto 0:IfEndIf Z[5I-4]=Z[5I-3] And Z[5I-4] <1X1030Then Prog “SUBQ2-83”:Goto 0:IfEnd√根号(Rep(Z[5I-2])÷Abs(Z[5I-4]-1-Z[5I-3]-1))→A Rep(Z[5I-2])+Ai→Z[5I-2]Prog “SUBQ2-82”Lb1 0:T→Z[5I+1]]Rep(U)→List Y[I+1]:Imp(U)→List Freq[I+1]Next“PEG-END(m)=”:List X[N+1] ◢“a-END(DMS)=”DMS◢“X-END(m)=”:List Y[N+1] ◢“Y-END(m)=”:List Freq[N+1] ◢“[MODE][4]=>Stop!”◢Lb1 J:”STA BACKXY,NEW(0),O LD(≠0)=”?→JJ≠0=>Goto 1“STAn,X(m),<0=>NO=“?→S0→Z[5N+6]:S<0=>Goto 1If Frac(S)=0 And S≤N+1Then List Y[S]+List Freq[S]i→Z[5N+6]Else “STA Y(m)=”?→T:S+Ti→Z[5N+6]:IfEndLb1 B:”BACKn,X(m),OLDa(0),<0=>a=”?→UU=0=>Goto 1If U<0:Then “a-BACK(Deg)=”?→Z[5N+8]:Goto 1:IfEnd If S=U And Frac(U)=0Then”STAn=BACKn,REPEAT!”Goto B:IfEndIf Frac(U)=0 AND U≤N+1Then List Y[U]+List Freq[U]i→Z[5N+7]Else”BACK Y(m)=”?→V:U+Vi→Z[5N+7]:IfEndLb1 S:Arg(Z[5N+7]-Z[5N+6])→JJ<0=>J+360→J:J→Z[5N+8]Lb1 1:”PEG→XY(1),XY→PEG(≠1)=”?→QQ≠1=>Goto 2Do:”+PEG(m),<0=>END=”?→ZZ<List X[1] Or Z>List X[N+1]=>BreakFor 1→I To NZ<List X[I] Or Z>List X[I+1]=>Goto NZ-List X[I]→LIf Z[5I-4]=Z[5I-3] And Z[5I-4]= 1X1030Then 0→S:0→T:L→DProg “SUBQ2-84”: Prog “SUBQ2-85”:Break:IfEnd If Z[5I-4]=Z[5I-3] And Z[5I-4]<1X1030Then Prog”SUBQ2-83”Prog “SUBQ2-85”: Break:IfEndProg “SUBQ2-82”: Prog “SUBQ2-85”:BreakLb1 N:NextLpWhile Z>0:Goto ELb1 2:”XJ(m), <0=>END=”?X:X<0=>Goto E“YJ(m)=”?Y“J in NUM,<0=>AUTO=”?→I:I>0=>Goto3Abs(X+Yi-List Y[1]-List Freq[1]i→CList X[1]+C→ZFor 1→S To NZ>List X[S] And Z<List X[S+1]=>Break:Next 9000→C:S→EFor E→I To N(List Y[I]+ListY[I+1])÷2→U(List Freq[I]+List Freq[I+1])÷2→VAbs(X+Yi-U-Vi)→DIf D<C:Then D→C:I→F:IfEndNext:F≥2=>F-1→ILb1 3:If Z[5I-4]=Z[5I-3] And Z[5I-4]=1X1030 Then tan(Z[5I])→T(X+T2List Y[I]-T(List Freq[I]-Y))÷(T2+1)→UU+(Y-(U+X)÷T)i→U:Z[5I]→TU-List Y[I]-List Freq[I]→FArg(F)→H:H<0=>H+360→H1→J:Abs(T-H)>150=>-1→JList X[I]+JAbs(F)→ZIf Z≥List X[I] And Z≤List X[I+1]:Then Goto Z Else I+1>N=>Goto Z:I+1→I:Goto 3:IfEnd:IfEnd If Z[5I-4]=Z[5I-3] And Z[5I-4]<1X1030Then List Y[I]+List Freq[I]i→SZ[5I]+90Z[5I-1]→AZ[5I-4]→R:S+R<A→VX+Yi→U:Arg(U-V)→F:Abs(U-V)→DV+R<F→UAbs(U-S)→C:sin-1(C÷2÷R)→EZ[5I]+2Z[5I-1]E→TList X[I]+∏ER÷90→ZIf Z≥List X[I] And Z≤List X[I+1]:Then Goto Z Else I+1>N=>Goto Z:I+1→I:Goto 3:IfEnd:IfEndList Y[I+]+List Freq[I]i→UList Y[I+1]+List Freq[I+1]→V(U+V)÷2→FV-U→C:Abs(C)→S:Arg(C)→JJ<0=>J+360→J:J+90Z[5I-1]→GIf Z[5I-4]>Z[5I-3]:Then 2Z[5I-3]→R Else 2Z[5I-4]→R:IfEnd√(R2-S2÷4)→TF+T<G→OSin-1(S÷R÷2)→V:∏VR÷90→J(Rep(Z[5I-2])-J)÷J→PX+Yi-O→V:Arg(V)→JO+R<J→C:Abs(C-U)→SSin-1(S÷R÷2)→V:∏VR÷90→JList X[I]+J(1-P)→ZProg “SUBQ2-82”DoX+Yi-U→C:Abs(C)→SArg(C)→J:J<0=>J+360→JJ-T→J:J<0=>J+360→JIf J>220:Then J-270→J:-1→FElse 90-J→J:1→F:IfEndIf Z[5I-4]>Z[5I-3]Then πJ÷180÷(FZ[5I-1]L÷A2+S-1)→EElse πJ÷180÷(-FZ[5I-1]L÷A2+S-1)→E:IfEndZ+E→ZIf Z>List X[I+1]:Then I+1→I:Goto 3:IfEndProg “SUBQ2-82”Tan(T)(ImP(U)-Y)+ReP(U)-X→CLpWhile Abs(C)>0.001Fix 4:”f(Lp)=”:C◢Fix 3:Lb1 Z:Prog “SUBQ2-85”:Goto 2Lb1 E:”QH2-8=>END”程序2:SUBQ2-81If L<1X10-5:Then 0→U:0→J:Return:IfEndL-L∧(5)÷40÷A∧(4)+L∧(9)÷3456÷A∧(8)-L∧(13)÷599040÷A ∧(12)+L∧(17)÷175472640÷A∧(16)→OL∧(3)÷6÷A2-L∧(7)÷336÷A∧(6)+L∧(11)÷42240÷A∧(10)-L∧(15)÷9676800÷A∧(14)+L∧(19)÷3530096640÷A∧(18)→UO+Ui→U:(L2÷(2A2))r→JReturn程序3:SUBQ2-82ImP(Z[5I-2])→AA2÷Z[5I-4]→LProg “SUBQ2-81”:U→V:J→EIf Z[5I-4]>Z[5I-3]:Then Z-List X[I]+L→L Prog “SUBQ2-81”:U-V→OElse A2÷Z[5I-3]→LList X[I+1]-Z+L→LProg “SUBQ2-81”:V-U→O:IfEdnAbs(O)→D:Arg(O)→TAbs(T-E)→S:Abs(J-E)→TProg “SUBQ2-84”Return程序4:SUBQ2-83Z[5I-4]→R:Z-List X[I]→L(L÷2÷R)r→S:2Rsin(s)→D2S→T:Prog”SUBQ2-84”Return程序5:SUBQ2-84Z[5I]+Z[5I-1]S→S:Z[5I]+Z[5I-1]T→TT<0=>T+360→T:T>360=>T-360→TList Y[I]+List Freq[I]i+D<S→UReturn程序6:SUBQ2-85T<0=>T+360→T:T>360=>T-360→TIf Q=1:Then “ai(DMS)=”:T◢“Xi(m)=”:Rep(U)◢“Yi(m)=”:Imp(U)◢Else Z<List X[I] Or Z>List X[I+1]=>”OUT OF The CURVE!”◢Arg(X+Yi-U)→H:H<0=>H+360→HAbs(X+Yi-U)→DIf H>180:Then “J in Left,NUM=”:I◢Else “J in Right,NUM=”:I◢IfEnd“p PEG(m)=”:z◢“ap(DMS)=”◢“Xp(m)=”:Rep(U)◢“YP(m)=”:Imp(U) ◢“J→p DIST(m)=”:D◢IfEndIf Abs(Z[5N+6])>0:Then U→Z[5N+7]:Prog “SUBQ2-87”:IfEndZ≠0=>Porg “SUBQ2-86”Return程序7:SUBQ2-86“ANGLE(0)=>NO,-L+R(Deg)=”?KK=0=>ReturnIf K<0:Then K+180→P:Else K→P:K-180→K:IfEnd“WL(m),0=>NO=”?MIf M>0:Then U+M<(T+K)→V“XL(m)=”:Rep(V) ◢“YL(m)=”:Imp(U) ◢If Abs(Z[5N+6])>0:Then V→Z[5N+7]:Prog “SUBQ2-87”:IfEnd:IfEdn“WR(m),0=>NO=”?WIf W>0:Then U+W<(T+P)→V“XR(m)=”:Rep(V) ◢“YR(m)=”:Imp(V) ◢If Abs(Z[5N+6])>0:Then V→Z[5N+7]:Prog “SUBQ2-87”:IfEndIfEdn:Return程序8:SUBQ2-87Z[5N+7]-Z[5N+6]→O:Arg(O)→JJ<0=>J+360→JJ-Arg(Z[5N+8])→J:J<0=>J+360→J(J+1X10-8)≥360=>J-360→J“HR(DMS)=”◢“HD(m)=”:Abs(O) ◢Return红色“O”表示为字母,仅对单个字母另作标记。

线元法(积木法)匝道坐标正反算放样程序

线元法(积木法)匝道坐标正反算放样程序

Cls :"1Z 2A 3B"?→I ↙(注:此处""内为线路名,有几条线路就加入几条!)Cls:"K Or –K To Shu"?K:If K≥0:Then↙I=1=>Prog"P. Z"↙I=2=>Prog"P. A"↙I=3=>Prog"P. B"↙………………………(注:此处必须与上述""内为线路名和下面的数据库子程序名对应,有几条线路就加入几条!)Mat B[1,1]→A: Mat B[1,2]→L: Mat B[1,3]→U: Mat B[1,4]→V: MatB[1,5]→W: Mat B[1,6]→P: Mat B[1,7]→Q: Mat B[1,8]→G↙Else Cls:"K0"?A:"KN"?L :"X0"?U :"Y0"?V :"F0"?W :"R0"?P :"RN"?Q:"ZX:-1,+1,0"?G:IfEnd :Cls↙1→O: Prog "XY-B"↙Cls:"1.ZS 2.FS"? →I: I=2=>Goto 3↙Cls:"XC"?H:"YC"?Z↙LbI 1 : Cls:"K×+×××"?K↙If K>L Or K<A : Then Cls: Locate 6,2,"K OUT !"◢Stop: IfEnd↙LbI 2: Cls:90→B: Cls:"RJ Or 0 To K"?B:B=0 =>Goto 1:"Z"?T↙Prog "XY-A"↙X+Tcos(M+B)→X↙Y+Tsin(M+B)→Y↙360Frac((M+360)÷360→M↙Pol(X-H,Y-Z : 360Frac((J+360)÷360→J↙2→O: Prog "XY-B":Goto 2↙LbI 3 : Cls: "X"?C:"Y"?D↙LbI 4 : If K>L Or K<A : Then Cls: Locate 6,2,"K OUT !"◢Stop:IfEnd↙Prog "XY-A"↙(D-Y)sin(M)+(C-X)cos(M)→H↙If Abs(H)>X10-3 :Then K+H→K:Goto 4:IfEnd↙(D-Y)÷cos(M)→T↙3→O: Prog "XY-B":Goto 3↙子程序1名: XY-A5→N: G(Q-1-P-1)÷Abs(L-A)→F: Abs(K-A)÷N→R: 90R÷π→S:W+(FNR+2GP-1)NS→M:1→E↙U+R÷6×(Cos (W)+Cos (M) +4∑(Cos (W+((E+0.5)FR+2GP-1)×(E+0.5)S),E,0,(N-1))+2∑(Cos (W+((EFR+2GP-1)ES,E,1,(N-1)))→X ↙V+R÷6×(sin (W)+sin (M) +4∑(sin (W+((E+0.5)FR+2GP-1)×(E+0.5)S),E,0,(N-1))+2∑(sin (W+((EFR+2GP-1)ES,E,1,(N-1)))→Y↙子程序2名: XY-BCls :Fix 3:If O=1:Then "XY RESULTS:": "K0=":"KN=":"F0=": Locate 5,2,A : Locate 5,3,L : Locate 5,4,W◢Cls :"X0=":"Y0=":"R0=":"RN=": Locate 5,1,U : Locate 5,2,V : Locate 5,3,GP : Locate 5,4,GQ◢IfEnd↙If O=2:Th en↙Cls :"K×××=":"Z=":"X=":"Y=": Locate 6,1, K : Locate 4, 2, T : Locate 4,3, X : Locate 4,4, Y◢If T=0 :Then Cls :"QF(Z)=": Locate 8,1, M:M▼DMS◢IfEnd↙Cls :"K×××=":"S=": Locate 6,1, K : Locate 4, 2, I :"F=":J:J▼DMS◢IfEnd↙If O=3:Then "X=":"Y=":"K×××=":"Z=": Locate 4,1,C: Locate 4, 2, D : Locate 6,3,K :Locate 4,4,T◢IfEnd:Cls↙线路线元数据库子程序格式:数据库采用给矩阵变量Mat B赋值的形式,使数据组织更加简洁,极大的减少了线路数据库子程序的输入量,节约了计算器空间程序说明:程序线元判断原则:(1) 以道路中线的前进方向(即里程增大的方向)区分左右;(2) 当所求点位于中线时,Z=0;当位于中线左侧时,Z取负值;当位于中线右侧时,Z取正值。

(整理)线路计算程序

(整理)线路计算程序

FX5800计算器公路测量常用程序集一、程序功能本程序组由2个主程序、5个次子程序及3个参数子程序。

主要用于公路测量中坐标正反算,设计任意点高程及横坡计算。

程序坐标计算适应于任何线型.二、源程序1.主程序1:一般放样反算程序(①正算坐标、放样点至置仪点方位角及距离;②反算桩号及距中距离)程序名:1ZD-XYLb1 0:Norm 2F=1:(正反算判别,F=1正算,F=2反算)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◢来直接显示)F ix 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:T hen –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:E lse 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)程序名:6GDP rog “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 3 LbI 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.04 6910077→K: 0.2307653449→L:0.5→M: U+W(Acos(G+QEKW(C +KWS))+Bcos(G+QELW(C+LWS))+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+QE MW(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:L bl 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:Go to 0←┘Lbl 1:0→D:Prog "A":(J-Y)÷sin(Z[2]) →D:10.高程计算子程序(H)程序名:HP rog “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)程序名:IP rog”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:IfEn d: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. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档