线路中边桩任意里程坐标正反算程序
CASIO 4800
(含数据库、测站放样计算)
1、运行程序(数据库):
文件名 :自定义
{N,S}:N:S"ZHUANG HAO"←┘
S≤本线元终点里程=>U=本线元起点X坐标:V=本线元起点Y坐标:G=本线元起点正切线方位角:P=本线元起点曲率半径:R=本线元终点曲率半径:O=本线元起点里程:H=本线元终点里程:Q=本线元偏向(直线输0、左偏输-1、右偏输1) ::prog"S":Goto0Δ←┘
S≤下一线元终点里程=>U=。。。。。。。。。。。。。。。。::prog"S": Goto0Δ←┘
LB1 0←┘ 备注:如为直线半径输10^45,一段线元内如为缓和曲线以其中起点或终点的偏向为准。
2、计算主程序:
文件名 :S
Deg:S>H=>Goto AΔD=(P-R)÷2PR(H-O):N=1=>Goto 1:≠>Goto 2Δ←┘
Lbl 1:{Z}:Z"KUAN DU":W=Abs(S-O):Prog "SUB1":X "X"=◢
Y "Y"=◢
F "QX-FWJ"=F-90◢
I=0:J=0:Pol(X-C"XC",Y-E"YC"):J<0=>J=J+360:ΔJ“FWJ=”◢
I “JU LI” =◢
Goto A←┘
Lbl 2:{XY}:I=X:J=Y:Prog "SUB2":S "ZHUANG HAO" =O+W◢
Z "KUAN DU"=:◢
Lbl A
3、坐标正算子程序
文件名 : SUB1
A=0.1739274226:B=0.3260725774:K=0.0694318442:L=0.3300094782:X=U+W(Acos(G+180QKW(1÷P+KWD)÷π)+Bcos(G+180QLW(1÷P+LWD)÷π)+Bcos(G+180(1-L)QW(1÷P+(1-L)WD)÷π)+Acos(G+180(1-K)QW(1÷P+(1-K)WD)÷π)):Y=V+W(Asin(G+180QKW(1÷P+KWD)÷π)+Bsin(G+180QLW(1÷P+LWD)÷π)+Bsin(G+180(1-L)QW(1÷P+(1-L)WD)÷π)+Asin(G+180(1-K)QW(1÷P+(1-K)WD)÷π)):F=G+180QW(1÷P+WD)÷π+90:X=X+ZcosF:Y=Y+ZsinF←┘
4、坐标反算子程序
文件名 : SUB2
T=G-90:W=Abs((Y-V)cosT-(X-U)sinT):Z=0:Lbl 0:Prog "SUB1":L=T+180QW(1÷P+WD)÷π:Z=(J-Y)cosL-(I-X)sinL:AbsZ<1÷10^6=>Goto1:≠>W=W+Z:Goto 0Δ←┘
Lbl 1:Z=0:Prog "SUB1":Z=(J-Y)÷sinF
使用说明(打开运行1(数据库))
坐标正算
N? 输入1
ZHUANG HAO? 输入求算点桩号
KUAN DU?输入求算点距中桩宽度数,左宽为-,右宽直接输入,计算中桩输0
X= 计算出坐标X
Y= 计算出坐标Y
QX-FWJ= 计算出点在中线上的切线方位角
XC? 输入测站点坐标X
YC? 输入测站点坐标Y
FWJ= 计算出测站点至计算点的坐标方位角
JU LI=计算出测站点至计算点的距离
运行到 N?…………………
坐标反算
N? 输入2
ZHUANG HAO? 输入求算点近似桩号,一般控制在相差100米以内,当然相差越小越好
X? 输入求算点坐标X
Y? 输入求算点坐标Y
ZHUANG HAO= 计算出求算点精确桩号
KUAN DU= 计算出求算点距中桩宽度,如在中桩左侧为负数,在中桩右侧为正数,在中桩上为0
运行到 N?…………………