精品文档---下载后可任意编辑一、程序使用流程 本程序数据和主程序是分开的,编程时将不同的工程数据存放到不同的数据文件里,如 A 匝道,文件名为 A,将匝道 A 所有的曲线线元参数输入 A 文件里。运行时只要运行文件名 A 的程序就可以了,具体运行流程见下图:二、数据文件的编写(一)交点法数据文件编辑交点法编写数据文件必须是对称型的,即直线段→缓和曲线段→圆曲线段→缓和曲线段→直线段,(假如任意一端没有直线段,则把直线段长度看做是 0),另外圆曲线两侧缓和曲线的旋转常数必须相等,并且和直线段连接处的半径必须是无穷大。交点法数据文件编写一般是根据设计图纸提供的平面曲线参数一览表提供的参数来编写,每个弯道包括:弯道起点方位角(C),交点 X 坐标(D),交点 Y 坐标(E),缓和曲线长度(F,当没有设缓和曲线时,F=0),交点转交(G,向左转弯,G 为负值,向右转弯,G 取正值),交点桩号(H),弯道圆曲线半径(R)。下图是一段市政道路设计参数数据。根据上图提供的数据,可以编辑成如下的数据文件:文件名:CHLNR3→DimZ “X0”?A:”Y0”?B:“Ln”?L:Abs(L)-Int(Abs(1000L))/1000→Z[3]:Lbl 0:If Z[3]≠0.0001: Then ?L: Else “Xp”?X:”Yp”?Y:X→Z[1] : Y→Z[2] : IfEnd:Lbl 1: If L>0 :Then 98°39°°→→→E : 140→F : 31°17°23°→→H:600→R:IfEnd: If L>1060 Then 129°56°°→→→E : 70→F : -33°50°48°→→H:600→R:IfEnd: Prog”XLJS”:If Z[3]≠0.0001:Then Goto 0:Else (Z[1] - X)cos( O ) + (Z[2] - Y)sin( O )→N:L + N→L: - (Z[1] - X)sin(O)+(Z[2] - Y)cos ( O )→ K : If Abs ( N )≥ 0.001 : Then Goto 1 : Else “L=“:L ◢“K=”:K◢IfEnd:Goto 0: IfEnd在面程式中,有两个条件转移语句即 If L>0:Then 98°39°°→→→E:140→F:31°17°23°→→H:600→R:IfEndIf L>1060:Then 129°56°°→→→E:70→F:-33°50°48°→→H:600→R:IfEnd…… 假如还有其他弯道,可以继续完后加。在这些存放设计参数的语句前后的程序表达式是固定的。说明:编辑曲线参数时,每个曲线参数放在一个 If L>***.***(两个弯道中间直线段上的任意桩号) :Then ***°**°**.**°→C(弯道起点方位角):****.***→D(交点 X 坐标):****.****→E(交点 Y 坐标):***.***...