4800计算器求直线、缓和曲线、圆曲线上任一里程中桩坐标及左右任意角度、任意距离的点的坐标的程序
A“XA”:B“YA”:C“CA”“1/RA”:E“1/RB”:F“DKA”:G“DKB”:Z[3]=F:Z[4]=D: ←
Lb1 1:{HSOR}:H“DKI”:H>G=>Goto3:ΔH<Z[3]= >Goto0:ΔS“Jo”:
O“DL”:R“DR”=0=> Z[6]=0:≠=> Z[6]=1:ΔE=0=> Z[7]=0:≠=> Z[7]=2:ΔZ[8]=Z[6]+Z[7]:Z[8]=0=> Z[9]=G-Z[3]:ΔZ[8]=1=> Z[9]=Abs(0.2/Z[4]):ΔZ[8]=2=>Z[9]=Abs(0.2/E): ΔZ[8]=3=>Z[9]=Abs(0.2/E): ΔH=G=> H=H-0.0001: Δ←
Lb1 2=(E-D)/Abs(G-F)=H-F:Z[1]=Abs(H-F):Z[1]>Z[9]=> Q=
QZ[9]/Z[1]: ΔI=PQ:T=D+I:J=C+90Q(I+2D)/π:M=C+45Q
(I/4+2D)/(2π):N=C+135Q(3I/4+2D)/(2π):K=C+45Q
(I/2+2D)/ π:X=A+Q/12×(cosC+4(cosM+cosN)+2cosK+cosJ):
Y=B+Q/12×(sinC+4(sinM+sinN)+2sinK+sinJ): ←
Z[1]≤Z[9]=> J=J◢X=X◢Y=Y◢
U“XL”=X+Ocos(J-S) ◢V“YL”=Y+Osin(J-S) ◢
W“XR”=X+Rcos(J-S+180) ◢Z“YR”=Y+Rsin(J-S+180) ◢
A=X:B=Y:C=J=T:F=H:Goto 1: Δ←
A=X:B=Y:C=J=T:F=F+Q:Goto 2: Δ←
Lb1 3:A=X:B=Y:C=J=E:F=G:Z[3]=G:Z[4]=E:{EG}:E“1/RB”:
G“DKB”:Goto 1←
Lb1 0:{FABCD}:F“DKA”:A“XA”:B“YA”:C“CA”“1/RA”:
E=Z[4]:Z[4]=D:G=Z[3]:Z[3]=F:Goto 1
程序说明:
1、编程前先将存储区扩大9个(至35个);该程序适合任何线型,任何半径,误差均在毫米之内。
2、该程序可在该区内任意输入里程,若所输里程小于起点里程,则程序提示输入前一区间起点里程、坐标、方位角及曲率,完成过渡。若要转入下一区间,则必须输入该区间终点里程后,再输入下一区间的里程及终点里程、曲率、完成过渡。总之,该程序前进时为有意识,而后退时可在无意识时。(注意:如果前进时无意识,即未输终点里程,会出错)。
3、该程序可重复输入任一里程(包括起、终点),从而可达到求出某一里程不同距离(不同角度)点坐标。
4、符号注解:
输入数据含义:XA、YA、CA——起点坐标,起点切线方位角
DKA、DKB、DKI——起终点及待求点的里程
Jo——与线路切线斜交角度(左侧上方夹角)如为法线方向则Jo=90(见示意图)
圆:起±1/R,终±1/R 直线头或尾与缓和曲线头曲率输入0
(曲线左偏曲率为“-1/R”,右偏曲率为“+1/R”)
结果显示数据含义:X、Y、J——所求里程的中桩坐标及切线方位角
XL、YL、XR、YR——左右边桩的坐标
来自网络收集,不知道是谁编的 |