图1
路线上一段曲线NM及边上一点K ,已知K坐标求其对应中桩桩号
1、 在NM内任意取一桩号S(称为初值)
计算S的坐标(Xs,Ys)和方位角A
2、 计算点K到切线SE的垂足 E的X坐标:
Xe = (Xk*tan(A+90)一 Xs*tan(A)一Yk+Ys)/(tan(A+90)一tan(A))
3、 计算SE长度 b=(Xe一Xs)/cos(A)
4、 把S+b后 得到新的桩号S’
5、 计算S’坐标和方位角 ……
重复1~4,直到b<0.0001 则此时的S’’’ 就是K在曲线上对应中桩的桩号(0.0001可自定,是对计算结果精度的设定,b越小则S’’’ 越精确)
6、 B=(Xe’’’一Xk)/sin(A’’’);B为K的偏中距离B>0偏右, B<0偏左 ,B=0则K在中线上
这就是切线迭代法,适用各类型的缓曲及圆曲、直线
5800程序
“S”?S:”x”?x:”y”?y
Do
(此处输入或调用NM相应坐标计算公式计算S的Xs,Ys坐标及A)
Xe= (Xk*tan(A+90)一 Xs*tan(A)一Yk+Ys)/(tan(A+90)一tan(A))
b=(Xe一Xs)/cos(A)
S=S+b
Lpwhile Abs(b)>0.0001
L=(Xe一x)/sin(A)
“zhuanghao=”:S◢
“pianzhong=”:L◢
注:程序中Xk 、Xe、Xs、等自己改一下用一个字母表示
图2
采用切线迭代法时如初值选择不在K相应的路段内,迭代可能进入死循环或结果不准确故宜先估算K点大概桩号
K(X,Y)为全线上坐标已知任意点,L、N、M…分别是直线LN、缓曲NM、圆曲MP…各要素的起点。
分别计算KL、KN、KM、KP、…的长度,假如KM的长度最短侧K点对应的中桩桩号在NM路段内S’或MP路段内S’,此时初值可选M桩号,经第一次迭代后可知K对应中桩在NM或MP。如你的计算器有全线坐标计算程序则会自动识别调用相应坐标计算公式并计算最后S’
图1
路线上一段曲线NM及边上一点K ,已知K坐标求其对应中桩桩号
1、
在NM内任意取一桩号S(称为初值)
计算S的坐标(Xs,Ys)和方位角A
2、
计算点K到切线SE的垂足 E的X坐标:
Xe = (Xk*tan(A+90)一 Xs*tan(A)一Yk+Ys)/(tan(A+90)一tan(A))
3、
计算SE长度 b=(Xe一Xs)/cos(A)
4、
把S+b后 得到新的桩号S’
5、
计算S’坐标和方位角 ……
重复1~4,直到b<0.0001 则此时的S’’’ 就是K在曲线上对应中桩的桩号(0.0001可自定,是对计算结果精度的设定,b越小则S’’’ 越精确)
6、
B=(Xe’’’一Xk)/sin(A’’’);B为K的偏中距离B>0偏右, B<0偏左 ,B=0则K在中线上
这就是切线迭代法,适用各类型的缓曲及圆曲、直线
5800程序
“S”?S:”x”?x:”y”?y
Do
(此处输入或调用NM相应坐标计算公式计算S的Xs,Ys坐标及A)
Xe= (Xk*tan(A+90)一 Xs*tan(A)一Yk+Ys)/(tan(A+90)一tan(A))
b=(Xe一Xs)/cos(A)
S=S+b
Lpwhile Abs(b)>0.0001
L=(Xe一x)/sin(A)
“zhuanghao=”:S◢
“pianzhong=”:L◢
注:程序中Xk 、Xe、Xs、等自己改一下用一个字母表示
图2
采用切线迭代法时如初值选择不在K相应的路段内,迭代可能进入死循环或结果不准确故宜先估算K点大概桩号
K(X,Y)为全线上坐标已知任意点,L、N、M…分别是直线LN、缓曲NM、圆曲MP…各要素的起点。
分别计算KL、KN、KM、KP、…的长度,假如KM的长度最短侧K点对应的中桩桩号在NM路段内S’或MP路段内S’,此时初值可选M桩号,经第一次迭代后可知K对应中桩在NM或MP。如你的计算器有全线坐标计算程序则会自动识别调用相应坐标计算公式并计算最后S’