1、5800公路测量程序使用说明一、程序使用流程 本程序数据和主程序是分开的,编程时将不同的工程数据存放到不同的数据文件里,如A匝道,文件名为A,将匝道A所有的曲线线元参数输入A文件里。运行时只要运行文件名A的程序就可以了,具体运行流程见下图:二、数据文件的编写(一)交点法数据文件编辑交点法编写数据文件必须是对称型的,即直线段缓和曲线段圆曲线段缓和曲线段直线段,(如果任意一端没有直线段,则把直线段长度看做是0),另外圆曲线两侧缓和曲线的旋转常数必须相等,并且和直线段连接处的半径必须是无穷大。交点法数据文件编写一般是根据设计图纸提供的平面曲线参数一览表提供的参数来编写,每个弯道包括:弯道起点方位角(
2、C),交点X坐标(D),交点Y坐标(E),缓和曲线长度(F,当没有设缓和曲线时,F=0),交点转交(G,向左转弯,G为负值,向右转弯,G取正值),交点桩号(H),弯道圆曲线半径(R)。下图是一段市政道路设计参数数据。根据上图提供的数据,可以编辑成如下的数据文件:文件名:CHLNR3DimZ “X0”?A:”Y0”?B:“Ln”?L:Abs(L)-Int(Abs(1000L)/1000Z3:Lbl 0:If Z30.0001: Then ?L: Else “Xp”?X:”Yp”?Y:XZ1:YZ2:IfEnd:Lbl 1:If L0 :Then 983935.12C:4474.384D:2415
3、.861E:140F:311723G:410.007H:600R:IfEnd: If L1060 Then 1295658.19C:4206.421D:3093.946E:70F:-335048G:1285.437H:600R:IfEnd:Prog”XLJS”:If Z30.0001:Then Goto 0:Else (Z1X)cos()(Z2Y)sin()N:LNL:(Z1X)sin(O)+(Z2Y)cos(O)K:If Abs(N)0.001:Then Goto 1:Else “L=“:L“K=”:KIfEnd:Goto 0: IfEnd在面程式中,有两个条件转移语句即If L0:Then
4、 983935.12C:4774.384D: 2415.861E:140F:311723G:410.007H:600R:IfEndIf L1060:Then 1295658.19C:4206.421D: 3093.946E:70F:-335048G:1285.437H:600R:IfEnd 如果还有其他弯道,可以继续完后加。在这些存放设计参数的语句前后的程序表达式是固定的。说明:编辑曲线参数时,每个曲线参数放在一个If L*.*(两个弯道中间直线段上的任意桩号) :Then *.*C(弯道起点方位角):*.*D(交点X坐标):*.*E(交点Y坐标):*.*F(缓和曲线长度:*G(转角,向左转为
5、负值,向右转为正值):*.*H(交点里程桩号):*R(圆曲线半径):IfEnd 条件式语句里,如果有多个弯道,一直按上述形式编下去,变量说明:1、 L*.*弯道参数的起点范围,可以是弯道起点,也可以是弯道前直线段里的任意点桩号2、 *.*C 弯道起点方位角3、*.*D、*.*E交点X坐标、Y坐标4、*.*F缓和曲线长度,如果没设置缓和曲线,则缓和曲线长度看做05、*G 转角,向左转为负值,向右转为正值6、*.*H、交点里程桩号7、*R 圆曲线半径注意,运行程序时,第一部是输入测站坐标X0,Y0,然后输入近似桩号,主要是为了加快收敛,输入时注意当根据桩号和距中距离计算所求点坐标时,请不要把小数点第四位输入0.0001,如K21+369.0921,请把桩号输入21369.092即可,相反,当根据坐标反算桩号和距中距离时,请在输入时把第四位小数数位0.0001,如K21+200,输入时请输入21200.0001。(二)线元法数据文件编辑线元法数据文件编辑适合于各种各样的线型组合,特别是在大型立交区