正算主程序(ZS):Lb10:FIX4:?S:?Z:Prog“PM-SJ”:Abs(S-O)→W:ProgSUB1:XS=:X◢YS=:Y◢F-90→F(需要时可以让他显示,不要时不必输入):Prog“SQX-SJ”:Prog“SQX”:“H=”:H◢Goto0反算主程序(FS)Lb10:FIX4:?S:?X:?Y:Prog“PM-SJ”:X→I:Y→J:ProgSUB2:S=:O+W→S◢Z=:Z◢Prog“SQX-SJ”:Prog“SQX”:“H=”:H◢Goto0隧道3心圆放样主程序(SD-3XY)Lb10:Prog“FS”:1.5→A:1.65→B:0.89→G:2.27→C:3.3→D:2.41→E:0.51→J:“H1”:F:ifF≤H+A:thenE-AbsZ→W:IfEnd:ifF>H+AAndF≤H+A+B:then√(D²-(F-H-A)²)-G-AbsZ→W:IfEnd:ifF>H+A+B:then√(C²-(F-H-A-J)²)-AbsZ→W:IfEnd:“W=”:W◢(水平方向的超欠挖:正为欠,负为超)Goto0正算子程序(SUB1)1÷P→C:(P-R)÷(2HPR)→D:180÷π→E:0.1739274226→A:0.3260725774→B:0.0694318442→K:0.3300094782→L:1-L→F:1-K→M:U+W(Acos(G+QEKW(C+KWD))+Bcos(G+QELW(C+LWD))+Bcos(G+QEFW(C+FWD))+Acos(G+QEMW(C+MWD)))→X:V+W(Asin(G+QEKW(C+KWD))+Bsin(G+QELW(C+LWD))+Bsin(G+QEFW(C+FWD))+Asin(G+QEMW(C+MWD)))→Y:G+QEW(C+WD)+90→F:X+ZcosF→X:Y+ZsinF→Y反算子程序(SUB2)G-90→T:Abs((Y-V)cosT-(X-U)sin(T))→W:0→Z:Lbl0:ProgSUB1:T+QEW(C+WD)→L:(J-Y)cosL-(I-X)sinL→Z:ifAbsZ1E-6:thenGoto1:ElssW+Z→W:Goto0:IfEndLbl1:0→Z:ProgSUB1:(J-Y)÷sinF→Z子程序(平面线形数据库)PM-SJifS≥500(线元起点里程)AndS<769.256(线元止点里程):Then19942.837→U(线元起点X坐标):28343.561→V(线元起点Y坐标):500→O(线元起点里程):125°16°31°→G(线元起点方位角):269.265→H(线元长度):10^(45)→P(线元起点曲率半径):10^(45)→R(线元终点曲率半径):0→Q(线元左右偏标志:左负右正):IfEndifS≥769.256(线元起点里程)AndS<806.748(线元止点里程):Then19787.34→U(线元起点X坐标):28563.378→V(线元起点Y坐标):769.256→O(线元起点里程):125°16°31°→G(线元起点方位角):37.492→H(线元长度):10^(45)→P(线元起点曲率半径):221.75→R(线元终点曲率半径):-1→Q(线元左右偏标志:左负右正):IfEndifS≥806.748(线元起点里程)AndS<919.527(线元止点里程):Then19766.566→U(线元起点X坐标):28594.574→V(线元起点Y坐标):806.748→O(线元起点里程):120°25°54.07°→G(线元起点方位角):112.779→H(线元长度):221.75→P(线元起点曲率半径):221.75→R(线元终点曲率半径):-1→Q(线元左右偏标志:左负右正):IfEndifS≥919.527(线元起点里程)AndS<999.812(线元止点里程):Then19736.072→U(线元起点X坐标):28701.893→V(线元起点Y坐标):919.527→O(线元起点里程):91°17°30.63°→G(线元起点方位角):80.285→H(线元长度):221.75→P(线元起点曲率半径):9579.228→R(线元终点曲率半径):-1→Q(线元左右偏标志:左负右正):IfEndifS≥999.812(线元起点里程):Then19744.038→U(线元起点X坐标):28781.659→V(线元起点Y坐标):999.812→O(线元起点里程):80°40°50°→G(线元起点方位角):100→H(线元长度):10^(45)→P(线元起点曲率半径):10^(45)→R(线元终点曲率半径):0→Q(线元左右偏标志:左负右正):IfEnd子程序(竖曲线数据库)SQX-SJifS≤999.812(竖曲线终点里程):then0.0357(前坡度:上坡正下坡负)→E:0.0227(后坡度:上坡正下坡负)→F:600→R(竖曲线半径):780→G(变坡点里程):110→C(变坡点高程):IfEnd子程序(竖曲线计算公式)SQXE-F→J:ifJ>0:then-R→R:ElssR→R:Abs(R*J÷2)→T:IfEndifS≤G-T:thenG-S→L:C-LE→H:IfEndifS>G-TAndS≤G:thenG-S→L:(S+T-G)²÷2÷R→N:C-LE+N→H:IfEndifS>GAndS≤G+T:thenS-G→L:(G+T-S)²÷2÷R→N:C+LF+N→H:IfEndifS>G+T:thenS-G→L:C+LF→H:IfEnd使用说明(1)以道路中线的前进方向(即里程增大的方向)区分左右;当线元往左偏时,Q=-1;当线元往右偏时,Q=1;当线元为直线时,Q=0。(2)当所求点位于中线时,Z=0;当位于中线左铡时,Z取负值;当位于中线中线右侧时,Z取正值。(3)当线元为直线时,其起点、止点的曲率半径为无穷大,以10的45次代替。(4)当线元为圆曲线时,无论其起点、止点与什么线元相接,其曲率半径均等于圆弧的半径。(5)当线元为完整缓和曲线时,起点与直线相接时,曲率半径为无穷大,以10的45次代替;与圆曲线相接时,曲率半径等于圆曲线的半径。止点与直线相接时,曲率半径为无穷大,以10的45次代替;与圆曲线相接时,曲率半径等于圆曲线的半径。(6)当线元为非完整缓和曲线时,起点与直线相接时,曲率半径等于设计规定的值;与圆曲线相接时,曲率半径等于圆曲线的半径。止点与直线相接时,曲率半径等于设计规定的值;与圆曲线相接时,曲率半径等于圆曲线的半径。