主程序 坐标正反算
程序名称:ZBZFS
LB1 A↙
Cls : Fix 4 : 30→Dim Z :"0=ZS,1=FS"?Z ↙
If Z=0:Then Goto B:IfEnd↙(Z=0进入里程点坐标正算)
If Z=1:Then Prog"FSLCBZ ": Goto A:IfEnd↙(Z=1进入反算里程边桩)
Lb1 B ↙
“K=”?K :(计算里程) Prog"SJK1 ":Prog”ZBFY”:Goto A↙
子程序 数据库 SJK1
IF K<本段曲线终点里程 AND K≥上段曲线终点里程:THEN 本段终点里程→Z[1] : 上段曲线终点里程→Z[2] :1→O (注:左偏曲线输入-1→O,右偏曲线输入1→O): 半径→R : 曲线偏角→A:第一缓和曲线→Z[6] : 第二缓和曲线→Z[7] : 交点 X→B :交点 Y→C : 小里程向交点方位角→E : 交点向大里程方位角→F : Prog”XLZBJSCX”:Return: IFEND↙
IF…………Prog”XLZBJSCX”:Return:IFEND(曲线段分段输入)↙
补充直线段输入如下(单独直线段)
IF K<本段直线终点里程 AND K≥本段直线起点里程:THEN 本段直线终点里程→Z[3]:终点X→Z[16]:终点Y→Z[17]:方位角→E: Z[16]+ (K- Z[3])*COS E→Z[18]:Z[17]+ (K- Z[3])*SIN E→Z[19] : Return:IFEND
子程序坐标正算,名称:XLZBJSCX
LB1 2 ↙(曲线要素计算)
Z[6]/2- Z[6]^3/(240*R^2)+ Z[6]^5/(34560*R^4) →Z[8] ↙ (M1)
Z[7]/2- Z[7]^3/(240*R^2)+ Z[7]^5/(34560*R^4) →Z[9] ↙ (M2)
Z[6]^2/(24*R)- Z[6]^4/(2688*R^3) →Z[10] ↙ (P1)
Z[7]^2/(24*R)- Z[7]^4/(2688*R^3) →Z[11] ↙ (P2)
π*A*R/180+*( Z[6]+ Z[7])→Z[25] ↙ (曲线总长)
90* Z[6]/(R*π) →Z[14] ↙ (第一缓和曲线总偏角)
90* Z[7]/(R*π) →Z[15] ↙(第二缓和曲线总偏角,可以省略)
Z[8]+(R+Z[10])TAN(A/2)-(Z[10]-Z[11] )/SIN A→Z[12]↙ (切线T1)
Z[9]+(R+Z[11])TAN(A/2)+(Z[10]-Z[11] )/SIN A→Z[13]↙ (切线T2)
B+ Z[12]*COS (E+180)→ Z[16] ↙ (ZH点X)
C+ Z[12]*SIN(E+180)→ Z[17] ↙ (ZH点Y)
Z[1]- Z[25]→Z[3] ↙ (ZH点里程)
Z[3]+ Z[6]→Z[4] ↙ (HY点里程)
Z[1]- Z[7]→Z[5] ↙ (YH点里程)
GOTO 3 ↙
LB1 3 ↙(判断里程点与曲线关系)
IF K≤Z[3] AND
5800全线坐标正反算 来自淘豆网www.taodocs.com转载请标明出处.