PC-E500公路中线BASIC程序
摘 要:公路的线形由路线的中桩坐标决定并体现,针对这一特点编写该中桩坐标计算程序,从而方便施工放样工作。
关键词:公路,程序,BASIC语言
一:说明
该程序运行前先建立数据库文件,运行时只需输入曲线交点号和桩号即可,程序自动判断所求桩号所在曲线类型并计算出其中桩坐标,之后询问是否需要计算其边桩坐标,如是输入宽度即可得边桩坐标,为方便还显示中桩的切线方位角。该程序在PC-E500袖珍电脑PRO状态下写入,在RUN状态下运行。如有条件还可与全站仪直接交换数据。
二:程序流程图
三:程序清单
JN-交点序号
JD—交点桩号
A —转角
R —交点半径
S1—第一缓和曲线长度
S2—第二缓和曲线长度
T1 —第一切线长度
T2 —第二切线长度
L —曲线总长度
P —转角符号,右转P=1,左转P= -1
F —交点方位角,按顺序方向
XJ—交点X坐标值
YJ—交点Y坐标值
主程序:
10:DEGREE
20:INPUT ″PN=?″;PN
21:OPEN″E:SJK″FOR INPUT AS#1
中国3S吧 3s8.cn
30:INPUT#1,JN,JD,A,R,S1,S2,T1,T2,L,P,F,XJ,YJ
40:IF PN=JN THEN 50 ELSE 30
50:CLOSE#1
60:ZH=JD-T1
70:HY=ZH+S1
80:QZ=HY+(L-S1-S2)/2
90:YH=ZH+(L-S2)
100:HZ=ZH+L
110:USING″######•###″
120:PRINT″ZH=″;MDF ZH,″HY=″;MDF HY,″QZ=″;MDF QZ,″YH=″;
MDF YH,″HZ=″;MDF HZ
130:INPUT ″zhuang hao=?″;Z:IF Z<0 INPUT″do you want to exit? ″;A$:IF A$=
″1″ THEN 190 ELSE IF A$=″0″ THEN 20
140:IF Z<=ZH GOSUB 200
150:IF Z>ZH AND Z<=HY GOSUB 400
160:IF Z>HY AND Z170:IF Z>=YH AND Z180:IF Z>=HZ GOSUB 300
190:END
前直线中桩坐标子程序
200:REM SUBROUTINE FOR CALCULATING QZXZB
210:X=XJ+(T1+ZH-Z)*COS(F+180)
220:Y=YJ+(T1+ZH-Z)*SIN(F+180)
230:GOSUB 1500
240:INPUT″calculating border coordinates?″;R$:IF R$=″0″THEN 130 ELSE IF R$=″1″GOSUB 700
中国3S吧 3s8.cn
250:RETURN
后直线中桩坐标子程序
300:REM SUBROUTINE FOR CALCULATING HZXZB
310:X=XJ+(T2+Z-HZ)*COS(F+P*A)
320:Y=YJ+(T2+Z-HZ)*SIN(F+P*A)
330:GOSUB 1500
340:INPUT″calculating border coordinates?″;R$:IF R$=″0″THEN 130 ELSE IF R$=″1″GOSUB 800
350:RETURN
第一缓和曲线中桩坐标子程序
400:REM SUBROUTINE FOR CALCULATING ZH-HY
410:N=Z-ZH
420:K=N-N^5/(40*R^2*S1^2)+N^9/(3456*R^4*S1^4)
430:XZH=AER1
440:YZH=AER2
450:X=XZH+K/COS(30*N^2/(PI*R*S1))*COS(F+P*30*N^2/(PI*R*S1))
460:Y=YZH+K/COS(30*N^2/(PI*R*S1))*SIN(F+P*30*N^2/(PI*R*S1))
470:GOSUB1500
480:INPUT″calculating border coordinates?″;R$:IF R$=″0″THEN 130 ELSE IF R$=″1″GOSUB 1100
490:RETURN
第二缓和曲线中桩坐标子程序
500:REM SUBROUTINE FOR CALCULATING YH-HZ
510:N=HZ-Z
520:K=N-N^5/(40*R^2*S2^2)+N^9/(3456*R^4*S2^4)
专业的3S站 3s8.cn
530:XHZ=AER3
540:YHZ=AER4
550:X=XHZ+K/COS(30*N^2/(PI*R*S2))*COS(F+P*A+180-P*30*N^2/(PI*R*S2))
560:Y=YHZ+K/COS(30*N^2/(PI*R*S2))*SIN(F+P*A+180-P*30*N^2/(PI*R*S2))
570:GOSUB1500
580:INPUT″calculating border coordinates?″;R$:IF R$=″0″THEN 130 ELSE IF R$=″1″GOSUB 1300
590:RETURN
圆曲线中桩坐标子程序
600:REM SUBROUTINE FOR CALCULATING HY-YH
610:K=LH-S1^3/(40*R^2)+S1^5/(3456*R^4)
620:XHY=AER1+K/COS(30*S1/(PI*R))*COS(F+P*30*S1/(PI*R))
630:YHY=AER2+K/COS(30*S1/(PI*R))*SIN(F+P*30*S1/(PI*R))
640:N=Z-HY 中国3S吧 3s8.cn
上一篇:多边形求面积公式 下一篇:解析:FX-4850P与FX-4800P的编程区别
