- 3
- 0
- 约1.16万字
- 约 13页
- 2016-12-12 发布于贵州
- 举报
最后一次修技术支持,涂振宇285507730@,QQ285507730作号码长期号码)
帮助文件正在编写中。
最近一次修改080505
5800隧道专版。
本版本是道路版的升级版,程序只改变了SHELL程序,从SHELL中拆分出WORK-SET(工作设置程序),加入SDPY(隧道放样)。
FileName:RESET 初始化程序
Norm 1:50→C:12345→J
RESET PW?I:I=J=500→DimZ 为数据库增加额外变量500个,在SET、SETPFDYS程序根据实际再增减变量以保证不浪费内存
50→Z[C+22]:本程序设置变量个数目前50个刚刚够用。
PASSWORDS?I:I→Z[C+39] 重设要素保护密码
Cls:Stop
FileName:DATLOCK 要素保护密码确定认程序
Cls:Norm 1:50→C
PASSWORDS?J:Cls:J≠Z[C+39]=Stop
FileName:SHELL(外壳程序)
50→C ;在扩充变量预留前50个给别的程序用。如不够就适量加大。RESET,SHELL,SET,SETPFDYS,这几个程序中C值必需一致
Norm 1
Z[C+23]→N 当前分段要素N坐标
Z[C+24]→E 当前分段要素E坐标
Z[C+25]→M 当前分段要素起点桩号
Z[C+26]→H 当前分段要素起点方位角(正北)单位:弧度
Z[C+27]→A 当前分段要素起点曲率有左偏负右偏正(注意不是半径)
Z[C+28]→R 当前分段要素终点曲率有左偏负右偏正(注意不是半径)
Z[C+29]→L 当前分段要素长度
Z[C+3]→W 斜桩角度
Lbi S
ProgPROGMODE ;进入模式功能选择
Lbi A
Deg:Norm 1:Cls
Z[C+1]→G:ZH?G ;桩求桩号
If G=-1:Then ProgWORK-SET:Goto S:IfEnd 进入工作设置
G→Z[C+1]
Z[C+2]→B:JL?B:B→Z[C+2] ;B横向距离,左正右负
Lbi B
Prog ZBJS ;坐标正算
Fix 3:Cls ;设置三位小数
ZH=:Locate 4,1,G ;第一行显示桩号
X=:Locate 3,2,X ;第二行显示X(N)坐标
Y=:Locate 3,3,Y ;第三行显示Y(E)坐标
Prog GCJS ;高程计算
Z:Locate 2,4,Z+Z[C+41] ;第四行显示Z坐标
Locate 10,4,B ;第四行显示横向距离
0→I
Do:I+1→I:I=1000=Goto 1:LpWhile Not(Getkey=57 Or Getkey=27 Or Getkey=26) ;锁定键盘,并在几十秒后自动返回
Getkey=57= Goto 1
If Getkey=26= Prog SDFY:Goto B:EndIf
Pol(Z[C+35]-X,Z[C+36]-Y)
Cls:DL:Locate 3,1,I:Locate 12,1,Z[C+45]
→:Locate 3,2,B:Locate 12,2,Z[C+49]
FWJ
J0=J+360→J:J◤DMS◢
J→Z[C+46]
I→Z[C+47]
Goto 1
FileName:SDFY 隧道放样
Cls
Z[C+2]→V
Z[C+41]→D
Z[C+43]→I:DQD-Z?I:I→Z[C+43]
Z[C+42]→J:R?J:J→Z[C+42]
Z[C+40]→K:R-DL?K:K→Z[C+40]
Abs(V-K)→P
√(P2+(I-Z-D)2)→U 计算实际半径
Fix 3:Cls ;设置三位小数
ZH=:Locate 4,1,G
R:Locate 2,2,U
Locate 10,2,U-J
If I-Z-D-J0 :Then I-Z-D-√(J2-P2)→P:0→O
Else If P-J0:Then P-√(J2-(I-Z-D)2)→O:0→P
Else P-√(J2-(I-Z-D)2)→O:I-Z-D-√(J2-P2)→P
IfEnd:IfEnd
H:Locate 2,3,O
Locate 8,3,V
Locate 9,3,P
Locate 1,4,Z+D
Locate 9,4,I
0→T
Do:T+1→T:T=1000=Return:LpWhile Not(Getkey=57 Or Getkey=27)
原创力文档

文档评论(0)