由于現(xiàn)在計算機普及,計算機功能日益強大,宜采用較簡單的積分公式,便于計算機處理。
單線元通用積分公式如下
M = (1.0/Re-1.0/Rs)/Ls;
x=∫ { cos(Ta + L/Rs + 0.5*M *L*L) , 0 , L } ;
y=∫ { sin(Ta +L/Rs + 0.5*M *L*L) , 0 , L } ;
a(i)= Ta +L/Rs + 0.5*M *L*L

Rs: 緩和曲線起點半徑
Re: 緩和曲線止點半徑
Rs , Re ( NE 坐標(biāo)系下,右偏為正,左偏為負(fù))
Ta: 緩和曲線起點的真北方位角
Ls: 不完整緩和曲線長度。
此公式為緩和曲線在坐標(biāo)系下任意位置的通用積分公式,能完全適應(yīng)緩和曲線左偏、右偏、 Rs >Re 、 Rs <Re 等各種情況,不必先湊成完整緩和曲線,降低算法的復(fù)雜程度。雖然此公式是由緩和曲線推導(dǎo)出來,也可和于直線與圓曲線,可降低計算機編程的復(fù)雜程度。

Fx-5800 計算機程序
QXJS-000 主程序
Lbl 4:“1.SZ=>NE”:“2.NE=>SZ”:?Q:?S:Prog“QXJS-SUB0”↙
Lbl 0:Q=1 => Goto1:Q=2 => Goto2:↙
Lbl 1:?Z:Prog“QXJS-SUB1”:“N=”:N◢:“E=”:E◢:“F=”:F◢: Goto4↙
Lbl 2: “N=”:?B: “E=”:?C:B→N: C→E:Prog“QXJS-SUB2”: “S=”:S◢: “Z=”:Z◢: Goto4↙
QXJS-SUB0 數(shù)據(jù)庫子程序
Goto1↙ 同時保存多個曲線時的指針
Lbl 1
IF S<*** (線元終點里程) :Then***→A (線元起點方位角) :***→O (線元起點里程) :***→U (線元起點 X ) :***→V (線元起點 Y ) :***→P (線元起點曲率半徑) :***→R (線元終點曲率半徑) : ***→L (線元起點至終點長度) : Return:IfEnd↙
IF S<***:Then***→A:***→O:***→U:***→V:***→P:***→R: ***→L: Return:IfEnd↙
……………………….. 為了便于解讀,每增加一個線元增加一行語句,每增加一條曲線增加一個 Lbl ,每增加一個工程增加一個文件。

QXJS-SUB1 正算子程序
0.5 ( 1÷R-1÷P ) ÷L→D:S-O→X↙
U+∫(cos(A+(X÷P+DX2)×180÷π,0,X)→N↙
V+∫(sin(A+(X÷P+DX2)×180÷π,0,X)→E↙
A+(X÷P+DX2)×180÷π→F↙
N+Zcos(F+90) →N:E+Zsin(F+90) →E
QXJS-SUB2 反算子程序
Lbl 1:0→Z : 1→Q : Prog“QXJS-SUB0”: Prog“QXJS-SUB1”↙
Pol(N-B+10^(-46), E-C+10^(-46)):Isin(F-90-J) →W:S+W→S↙
Abs(W)>0.0001 => Goto1↙
Lbl 2: 0→Z : Prog“QXJS-SUB1”:(C-E) ÷sin(F+90) →Z
三、使用說明
1 、規(guī)定
(1) 以道路中線的前進方向(即里程增大的方向)區(qū)分左右;當(dāng)曲線半徑在左時, P 、 R 取負(fù)值,當(dāng)曲線半徑在右時, P 、 R 取正值,當(dāng)曲線半徑為無窮大(即直線)時, P 、 R 以 10 的 45 次代替。
(2) 當(dāng)所求點位于中線時, Z=0 ;當(dāng)位于中線左鍘時, Z 取負(fù)值;當(dāng)位于中線中線右
側(cè)時, Z 取正值。
(3) 當(dāng)線元為圓曲線時,無論其起點、止點與什么線元相接,其曲率半徑均等于圓
弧的半徑。
(5) 當(dāng)線元為完整緩和曲線時,起點與直線相接時,曲率半徑為無窮大,以 10 的 45 次方代替;與圓曲線相接時,曲率半徑等于圓曲線的半徑。止點與直線相接時,曲率半徑為無窮大,以 10 的 45 次代替;與圓曲線相接時,曲率半徑等于圓曲線的半徑。
(6) 當(dāng)線元為非完整緩和曲線時,起點與直線相接時,曲率半徑等于設(shè)計規(guī)定的
值;與圓曲線相接時,曲率半徑等于圓曲線的半徑。止點與直線相接時,曲率半徑等
于設(shè)計規(guī)定的值;與圓曲線相接時,曲率半徑等于圓曲線的半徑。
2 、輸入與顯示說明
輸入部分:
1. SZ => XY
2. XY = > SZ
Q ? 選擇計算方式,輸入 1 表示進行由里程、邊距計算坐標(biāo) ;輸入 2 表示由坐標(biāo)反算里程和邊距。