| 1.主程序(TYQXjs) "1.SZ => XY":"2.XY => SZ":N:U"X0":V"Y0":O"S0":G"F0":H"LS":P"R0":R"RN":Q:C=1P:D= (P-R)(2HPR):E=180π:N=1=>Goto 1:≠>Go to 2Δ←┘ Lbl 1:{SZ}:SZ:W=Abs(S-O):Prog "SUB1":X"XS"=X◢ Y"YS"=Y◢ Goto 1←┘ Lbl 2:{XY}:XY:I=X:J=Y:Prog "SUB2":S"S"=O+W◢ Z"Z"=Z◢ Goto 2 2. 正算子程序(SUB1) A=0.1739274226:B=0.3260725774:K=0.0694318442:L=0.3300094782:F=1-L:M=1-K:X=U+W(Acos (G+QEKW(C+KWD))+Bcos(G+QELW(C+LWD))+Bcos(G+QEFW(C+FWD))+Acos(G+QEMW(C+MWD))):Y=V+W(Asin (G+QEKW(C+KWD))+Bsin(G+QELW(C+LWD))+Bsin(G+QEFW(C+FWD))+Asin(G+QEMW(C+MWD))): F=G+QEW(C+WD)+90: X=X+ZcosF:Y=Y+ZsinF 3. 反算子程序(SUB2) T=G-90:W=Abs((Y-V)cosT-(X-U)sinT):Z=0:Lbl 0:Prog "SUB1":L=T+QEW(C+WD):Z=(J-Y)cosL-(I- X)sinL:AbsZ<1E-6=>Goto1:≠>W=W+Z:Goto 0Δ←┘ Lbl 1:Z=0:Prog "SUB1":Z=(J-Y)sinF 二、使用说明 1、规定        (1) 以道路中线的前进方向(即里程增大的方向)区分左右; 当线元往左偏时, Q=-1;当线元往右偏时,Q=1;当线元为直线时,Q=0。         (2) 当所求点位于中线时,Z=0;当位于中线左铡时,Z取负值; 当位于中线中线右侧时,Z取正值。         (3) 当线元为直线时,其起点、止点的曲率半径为无穷大,以 10的45次代替。         (4) 当线元为圆曲线时,无论其起点、止点与什么线元相接,其曲率 半径均等于圆弧的半径。         (5) 当线元为完整缓和曲线时,起点与直线相接时,曲率半 径为无穷大,以10的45次代替;与圆曲线相接时,曲率半 径等于圆曲线的半径。止点与直线相接时,曲率半径为无穷大, 以10的45次代替;与圆曲线相接时,曲率半径等于圆曲线的半径。          (6) 当线元为非完整缓和曲线时,起点与直线相接时,曲率半径等于设计规定的值; 与圆曲线相 接时,曲率半径等 于圆曲线的半径。止点与直线相接时,曲率半径等于设计规定的值;与圆曲 线相接时,曲率半径等于圆曲线的半径。 2、输入与显示说明        输入部分:       1. SZ => XY       2. XY = > SZ        N ?  选择计算方式,输入1表示进行由里程、边距计算坐标 ;输入2 表示由坐标反算里程和边距。      X0 ?线元起点的X坐标       Y0 ?线元起点的Y坐标       S0 ?线元起点里程      F0 ?线元起点切线方位角      LS ?线元长度      R0 ?线元起点曲率半径      RN  ?线元止点曲率半径      Q ?  线 元左右偏标志(左偏Q=-1,右偏Q=1,直线段Q=0)      S ? 正算时所求点的里程      Z ?正算时所求点距中线的边距(左侧取负,值右侧取正值, 在中线上取零)      X ?反算时所求点的X坐标      Y ?反算时所求点的Y坐标      显示部分:      XS=?   正算时,计算得出的所求点的X坐标      YS=?   正算时,计算得出的所求点的Y坐标      S=?    反算时,计算得出的所求点的里程      Z=?    反算时,计算得出的所求点的边距 |
|【路桥隧】
( 湘ICP备16018960号-1 ) QQ群:
GMT+8, 2026-4-2 08:21
Powered by Discuz! X3.2
© 2001-2013 Comsenz Inc.