资源描述:
《《程序隧道专》word版》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、5800程序隧道专版FileName:RESET 初始化程序Norm1:50→C:12345→J"RESETPW"?I:I=J=>500→DimZ 为数据库增加额外变量500个,在SET、SETPFDYS程序根据实际再增减变量以保证不浪费内存50→Z[C+22]:本程序设置变量个数目前50个刚刚够用。"PASSWORDS"?I:I→Z[C+39] 重设要素保护密码Cls:StopFileName:DATLOCK 要素保护密码确定认程序Cls:Norm1:50→C"PASSWORDS
2、"?J:Cls:J≠Z[C+39]=>StopFileName:SHELL(外壳程序)50→C ;在扩充变量预留前50个给别的程序用。如不够就适量加大。RESET,SHELL,SET,SETPFDYS,这几个程序中C值必需一致Norm1Z[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 当前分
3、段要素终点曲率有左偏负右偏正(注意不是半径)Z[C+29]→L 当前分段要素长度Z[C+3]→W 斜桩角度LbiSProg"PROGMODE";进入模式功能选择LbiADeg:Norm1:ClsZ[C+1]→G:"ZH"?G ;桩求桩号IfG=-1:ThenProg"WORK-SET":GotoS:IfEnd 进入工作设置G→Z[C+1] Z[C+2]→B:"JL"?B:B→Z[C+2] ;B横向距离,左正右负LbiBProg"ZBJS" ;坐标正算Fix3:Cls
4、 ;设置三位小数"ZH=":Locate4,1,G ;第一行显示桩号"X=":Locate3,2,X;第二行显示X(N)坐标"Y=":Locate3,3,Y ;第三行显示Y(E)坐标Prog"GCJS" ;高程计算"Z":Locate2,4,Z+Z[C+41] ;第四行显示Z坐标Locate10,4,B ;第四行显示横向距离0→IDo:I+1→I:I=1000=>Goto1:LpWhileNot(Getkey=57OrGetkey=27OrGetkey=26);锁定键盘,
5、并在几十秒后自动返回Getkey=57=>Goto1IfGetkey=26=>Prog"SDFY":GotoB:EndIfPol(Z[C+35]-X,Z[C+36]-Y)Cls:"DL":Locate3,1,I:Locate12,1,Z[C+45]"→":Locate3,2,B:Locate12,2,Z[C+49]"FWJ"J<0=>J+360→J:J◤DMS◢J→Z[C+46]I→Z[C+47]Goto1FileName:SDFY隧道放样ClsZ[C+2]→VZ[C+41]→DZ[C+43]→I:"DQD-
6、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 计算实际半径Fix3:Cls ;设置三位小数"ZH=":Locate4,1,G"R":Locate2,2,U Locate10,2,U-JIfI-Z-D-J>0:ThenI-Z-D-√(J2-P2)→P:0→OElseIfP-J>0:ThenP-√(J2-(I-Z-D)2)→O:0→PElseP-
7、√(J2-(I-Z-D)2)→O:I-Z-D-√(J2-P2)→PIfEnd:IfEnd"H":Locate2,3,O Locate8,3,"V"Locate9,3,PLocate1,4,Z+DLocate9,4,I0→TDo:T+1→T:T=1000=>Return:LpWhileNot(Getkey=57OrGetkey=27);锁定键盘,并在几十秒后自动返回Getkey=57=>ReturnIfV-K>0:ThenV-O→B:ElseV+O→B:IfEndFileName:ZBJS 坐标计算程序P
8、rog"READDAT"RadG-M→QIFAR=0:ThenIfA=R:Then1→J:Else3→J:IfEnd:ElseIfA=R:Then2→J:Else3→J:IfEnd:IfEnd判断线元类型IfJ=1:ThenH→F:N+QCos(H)→X:E+QSin(H)→Y:IfEnd 直线段直接计算IfJ=2:ThenH+QR→F:Rec(Abs(2Sin(Abs(0.5QR))÷R),H+