《CASI@ fx-4850P线路坐标放样》程序设计
程序设计
特别说明:各程序中@即为英文大写字母O(使用@代替O以区分阿拉伯数字0) 1. ZBFY(坐标放样主程序) NEXY Prog“XYFS” Lb1 0 {K} Lb1 A
K≤(起点桩号)?Goto 0
??K≤(第1个交点终止桩号) ?H=(第1个交点的交点桩号):C=(第1个交点X坐标):D=(第1个交点Y坐标):A=(第1个交点ZH至JD方位角):B=(第1个交点总转角,左为负,右为正):T=(第1个交点总切线长):R=(第1个交点半径长):L=(第1个交点缓和曲线长):G=(第1个交点圆曲线长,不包含缓和曲线):Goto 1
?? K≤(第2个交点终止桩号) ?H=(第2个交点的交点桩号):C=(第2个交点X坐标):D=(第2个交点Y坐标):A=(第2个交点ZH至JD方位角):B=(第2个交点总转角,左为负,右为正):T=(第2个交点总切线长):R=(第2个交点半径长):L=(第2个交点缓和曲线长):G=(第2个交点圆曲线长,不包含缓和曲线):Goto 1 断链:
??K≤(第n个交点终止桩号) ?H=(第n个交点的交点桩号):C=(第n个交点X坐标):D=(第n个交点Y坐标):A=(第n个交点ZH至JD方位角):B=(第n个交点总转角,左为负,右为正):T=(第n个交点总切线长):R=(第n个交点半径长):L=(第n个交点缓和曲线长):G=(第n个交点圆曲线长,不包含缓和曲线):Goto N
Lb1 N:K≥(断链处去向方向桩号)?K=K+断链长度(长链为正,短链为负):Goto 1:?? Goto 1......(依此类推)
??K≤(第n个交点终止桩号) ?H=(第n个交点的交点桩号):C=(第n个交点X坐标):D=(第n个交点Y坐标):A=(第n个交点ZH至JD方位角):B=(第n个交点总转角,左为负,右为正):T=(第n个交点总切线长):R=(第n个交点半径长):L=(第n个交点缓和曲线长):G=(第n个交点圆曲线长,不包含缓和曲线):Goto 1:?? Goto B (n最多只能为14个交点)
-1-
《CASI@ fx-4850P线路坐标放样》程序设计
Lb1 B
K≤(第n+1个交点终止桩号) ?H=(第n+1个交点的交点桩号):C=(第n+1个交点X坐标):D=(第n+1个交点Y坐标):A=(第n+1个交点ZH至JD方位角):B=(第n+1个交点总转角,左为负,右为正):T=(第n+1个交点总切线长):R=(第n+1个交点半径长):L=(第n+1个交点缓和曲线长):G=(第n+1个交点圆曲线长,不包含缓和曲线):Goto 1
?? K≤(第n+2个交点终止桩号) ?H=(第n+2个交点的交点桩号):C=(第n+2个交点X坐标):D=(第n+2个交点Y坐标):A=(第n+2个交点ZH至JD方位角):B=(第n+2个交点总转角,左为负,右为正):T=(第n+2个交点总切线长):R=(第n+2个交点半径长):L=(第n+2个交点缓和曲线长):G=(第n+2个交点圆曲线长,不包含缓和曲线):Goto 1 断链:
??K≤(第n个交点终止桩号) ?H=(第n个交点的交点桩号):C=(第n个交点X坐标):D=(第n个交点Y坐标):A=(第n个交点ZH至JD方位角):B=(第n个交点总转角,左为负,右为正):T=(第n个交点总切线长):R=(第n个交点半径长):L=(第n个交点缓和曲线长):G=(第n个交点圆曲线长,不包含缓和曲线):Goto N
Lb1 N:K≥(断链处去向方向桩号)?K=K+断链长度(长链为正,短链为负):Goto 1:?? Goto 1......(依此类推)
??K≤(第n+n个交点终止桩号) ?H=(第n+n个交点的交点桩号):C=(第n+n个交点X坐标):D=(第n+n个交点Y坐标):A=(第n+n个交点ZH至JD方位角):B=(第n+n个交点总转角,左为负,右为正):T=(第n+n个交点总切线长):R=(第n+n个交点半径长):L=(第n+n个交点缓和曲线长):G=(第n+n个交点圆曲线长,不包含缓和曲线):Goto 1:?? Goto N(N为B、C、D......Z) (n最多只能为15个交点) Lb1 N
K≤(第n+n+1个交点终止桩号) ?H=(第n+n+1个交点的交点桩号):C=(第n+n+1个交点X坐标):D=(第n+n+1个交点Y坐标):A=(第n+n+1个交点ZH至JD方位角):B=(第n+n+1个交点总转角,左为负,右为正):T=(第n+n+1个交点总切线长):R=(第n+n+1个交点半径长):L=(第n+n+1个交点缓和曲线长):G=(第n+n+1个交点圆曲线长,不包含缓和曲线):Goto 1
?? K≤(第n+n+2个交点终止桩号) ?H=(第n+n+2个交点的交点桩号):C=(第n+n+2个交点X坐标):D=(第n+n+2个交点Y坐标):A=(第n+n+2个交点ZH至JD方位角):B=(第n+n+2个交点总转角,左为负,右为正):T=(第n+n+2个交点总切线长):R=(第n+n+2个交点半径长):L=(第n+n+2个交点缓和曲
-2-
《CASI@ fx-4850P线路坐标放样》程序设计
线长):G=(第n+n+2个交点圆曲线长,不包含缓和曲线):Goto 1 断链:
??K≤(第n个交点终止桩号) ?H=(第n个交点的交点桩号):C=(第n个交点X坐标):D=(第n个交点Y坐标):A=(第n个交点ZH至JD方位角):B=(第n个交点总转角,左为负,右为正):T=(第n个交点总切线长):R=(第n个交点半径长):L=(第n个交点缓和曲线长):G=(第n个交点圆曲线长,不包含缓和曲线):Goto N
Lb1 N:K≥(断链处去向方向桩号)?K=K+断链长度(长链为正,短链为负):Goto 1:?? Goto 1......(依此类推)
??K≤(第n+n+n个交点终止桩号) ?H=(第n+n+n个交点的交点桩号):C=(第n+n+n个交点X坐标):D=(第n+n+n个交点Y坐标):A=(第n+n+n个交点ZH至JD方位角):B=(第n+n+n个交点总转角,左为负,右为正):T=(第n+n+n个交点总切线长):R=(第n+n+n个交点半径长):L=(第n+n+n个交点缓和曲线长):G=(第n+n+n个交点圆曲线长,不包含缓和曲线):Goto 1:?? Goto 0 (n最多只能为15个交点) Lb1 1
B<0?M=-1:??M=1@=H-T+L:P=@+G:Q=P+L
K<@?Z=K-H+T: Prog“HHQX”: Goto 2K≤P?Z=K-@: Prog“YQX”: Goto 2
K<Q?Z=Q-K: Prog“HHQX”: Goto 3: ?? Goto 4Lb1 2
G=C+ Rec(T,A+180):H=D+J R=A+MW
S“SP”=Pol(P,Q):F“Deg”=J X=G+ Rec(S,A+MF): “X”:X◢ Y=H+J: “Y”:Y◢ Prog“XYFS” Goto 5 Lb1 3
G=C+ Rec(T,A+B):H=D+J
-3-
《CASI@ fx-4850P线路坐标放样》程序设计
R=A+B-MW
S“SP”= Pol(P,Q):F“Deg”=J X=G+ Rec(S,A+B+180-MF): “X”:X◢ Y=H+J: “Y”:Y◢ Prog“XYFS” Goto 5 Lb1 4 Z=K-Q:R=A+B
X=C+ Rec(Z+T,R): “X”:X◢ Y=D+J: “Y”:Y◢ Prog“XYFS” Goto 5 Lb1 5 C=X:D=Y Lb1 6 {VU}
V“BZ”:V=0? Goto 0
U“PJ”:V<0?V=Abs V:Goto 7:?? Goto 8:Goto 6 Lb1 7
X=C+ Rec(V,R-U): “X”:X◢ Y=D+J: “Y”:Y◢ Prog“XYFS” Goto 6 Lb1 8
X=C+ Rec(V,R+U): “X”:X◢ Y=D+J: “Y”:Y◢ Prog“XYFS” Goto 6
-4-
《CASI@ fx-4850P线路坐标放样》程序设计
2. XYFS(坐标反算) I=0:J=0 Pol(X-N,Y-E)
J<0?F=J+360: ??F=J“Deg”: F DMS◢ “SP”:S=I◢
3. HHQX(缓和曲线) W=Z÷(2×R×L)×180÷π
P=Z-Z÷(40×R×L)+Z÷(3456×R×L)
Q= Z÷(6×R×L)- Z÷(336×R×L)+Z÷(42240×R×L)
4. YQX(圆曲线)
W=(L÷(2×R)+Z÷R)×180÷π P=L÷2-L÷(240×R)+R×sinW
Q=L÷(24×R)- L÷(2688×R)+R×(1-cosW)
2
4
3
3
2
3
7
3
3
11
5
5
5
2
2
9
4
4
2
-5-
《CASI@ fx-4850P线路坐标放样》程序设计
说 明:
一、ZBFY程序
N、E-测站点坐标 X、Y-后视点坐标 Deg-方位角 SP-两点间距离 K-桩号
1、PJ(偏角)为前进方向的路中线与斜交线(左、右侧)之夹角(只有正值,不存在负值)。 2、图-1中,法向线PJ(偏角)值为:左侧90°,右侧90°。 3、图-1中,斜交线PJ(偏角)值为:左侧150°,右侧30°。
二、〔A〕程序
1、PJ(偏角)为路中线的法向线(左、右侧)与斜交线(左、右侧)之夹角(顺时针为正值,逆时针为负值)。
2、图-2中,法向线PJ(偏角)值为:左侧0°,右侧0°。 3、图-2中,斜交线PJ(偏角)值为:–60°,右侧–60°。
-6-