一、ZXZBJS (左线坐标计算) 主程序
Lb1 4: “1.SZ=>NE” : “2.NE=>SZ” :?Q: ?S:Prog“SJK” ↙
Lb1 0:Q=1 => Goto1:Q=2 => Goto2:↙
Lb1 1: ?Z:Prog“ZBZS”: “N=” :N◢“E=”:E◢“F=”:F◢ Goto4↙
Lb1 2: “N=”?B: “E=”?C:B→N:C→E:Prog“ZBFS”: “S=” :S◢“Z=” :Z◢ Goto4↙
二、SJK (左线数据库) 数据库子程序
Goto 1↙ (同时保存多个曲线时的指针)
Lb1 1↙
IF S<***(线元终点里程) :Then***(线元起点方位角)→A:***(线元起点里程)→O:***(线元起点X)→U:***(线元起点Y)→V:***(线元起点曲率半径)→P:***(线元终点曲率半径)→R:***(线元起点至终点长度)→L:Return:IfEnd↙
IF S<***:Then***→A:*** →O:*** →U:*** →V:*** →P:*** →R:*** →L:Return: IfEnd↙
………………为了便于解读,每增加一个线元增加一行IF语句,每增加一条曲线增加一个Lb1,每增加一个工程增加一个SJB文件。
三、ZBZS (左线坐标正算) 正算子程序
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↙
四、ZBFS (左线坐标反算) 反算子程序
Lb1 1:0→Z: 1→Q:Prog“SJK”:Prog“ZBZS” ↙
Pol(N-B+10^(-46),E-C+10^(-46)):Isin(F-90-J) →W:S+W→S↙
Abs(W)>0.0001=>Goto1↙
Lb1 2:0→Z:Prog“ZBZS”:(C-E) ÷sin(F+90) →Z↙
………………右线程序创建与左线程序相同,只需改动左线各程序中相对应的名称:
| 左线 | 右线 |
| SJK(左线数据库) | YSJK(右线数据库) |
| ZBZS(左线坐标正算) | YZBZS(右线坐标正算) |
| ZBFS(左线坐标反算) | YZBFS(右线坐标反算) |
| ZXZBJS(左线坐标计算) | YXZBJS(右线坐标计算) |
一、创建、执行、编辑、删除程序:
按MODE→5:PROG 进入程序功能
1:创建程序 2:执行程序 3:编辑程序 4:删除程序
(执行程序亦可按FILE进入程序菜单选项)
二、 数据库编辑:
1.当路线为左转角时,曲率半径输入为负值;当路线为右转角时,曲率半径输入为正值。
2.当线元起点(终点)为ZH(HZ)点时,曲率半径为无穷大,其代码为10^(46)
3.当平曲线为“圆曲线直接连接圆曲线带有不等长缓和曲线”的复曲线时,圆曲线带有不等长缓和曲线段的主点坐标方位角由HZ点向HY点反向推算,ZH至HY线元段起点曲率半径应输入前段圆曲线曲率半径值。
4.线元起点、终点坐标方位角的计算:
缓和曲线: