高速公路平面坐标计算公式-定稿

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

标计算公式

A-回旋曲线参数”HXCS”

B-转角值”ZJZ”

C-判断是否继续计算?

D-直线段方位角”FWJ”

E-外矢距

F-缓圆点桩号”HY”

G-缓和曲线角

H-曲线段内点的切线角,如在缓和曲线段内β=(P-M)2/2A2

I-逐桩步长(即每多少米计算一个断面,用于逐桩计算。I=0表示单次计算)J-导线点N坐标”DXD-N”

K-导线点E坐标”DXD-E”

L-缓和曲线长

M-直缓点桩号”ZH”

N-缓直点桩号”HZ”

O-导线点桩号”DXD”

P-待求点桩号”DQD”

Q-曲线长

R-圆曲线半径”RAD”

S-切线加长

T-切线长

U-待求点边桩N坐标”BZ-N”

V-待求点边桩E坐标”BZ-E”

W-中边距”ZBJL”

X-待求点中桩N坐标”DQD-N”

Y-待求点中桩E坐标”DQD-E”

Z-圆曲线相对切线内移量

************************************************************ 计算方法:先根据桩号位置判断所在计算区间,然后调入相应区间的计算参数,进行计算。把各个区间的参数做成对应的子程序集,调入相应区间的计算参数其实就是调用相应的子程序,对计算参数进行初始化。注意:变量初始化和新的变量覆盖原变量的问题。(专用符号: )缓和曲线特征:ρl= RL=A 2

************************************************************ 计算过程:

一、第一直线段直接通过里程差和方位角计算待求点的中、边桩坐标。

二、第一缓和曲线段采用以ZH 点(直缓点)为原点,以通过该点的切线方向为Y

轴,法线为X 轴,建立直角坐标系,计算中桩坐标。边桩,以过待求点的切线方位角β=L 2/2A 2,(其中,L 为待求点到ZH 点的里程,A 为缓和曲线参数)可以计算出边桩的方位角和坐标,再转换成大地坐标系坐标。

三、圆曲线段采用以过HY 缓圆点的切线为Y 轴,以该点的法线为X 轴,建立直角

坐标系,计算圆曲线段内各点的中、边桩坐标,再转换成大地坐标系坐标。

四、第二缓和曲线段采用以HZ 点(缓直点)为原点,以通过该点的切线方向为Y

轴,法线为X 轴,建立直角坐标系,计算中桩坐标。边桩,以过待求点的切线方位角β=L 2/2A 2,(其中,L 为待求点到ZH 点的里程,A 为缓和曲线参数)可MAIN

CURVE HY-YH LINE

ZH-HY YH-HZ

PARAM-n

计算出边桩的方位角和坐标,(注意,Y坐标值的符号)再转换成大地坐标系坐标。

五、第二直线段以下一个导线点为基点,计算步骤同第一条,计算待求点坐标。

六、把各个ZH、HZ点坐标组合成数组,用于判断待求点位置和作为中间计算用。

七、曲线计算坐标与大地坐标转换公式:X=x o’+x p cosA-y p sinA Y=y o’+y p cosA+x p sinA

ZH-HY段:(注:A为以ZH点为原点的X轴方位角。向左转A为直线段方位角D-90°;向右转A为直线段方位角D+90°);HY-YH段:(注:A为以HY点为原点的X轴防卫角。向左转A为直线段方位角D-G-90°;向右转A为直线段方位角D+G+90°。);YH-HZ段:(注:A为以HZ点为原点的X轴方位角。向左转A为直线段方位角D+转角值B-90°;向右转A为直线段方位角D+转角值B+90°)

************************************************************

PARAM-n//初始化计算参数,每个程序存储一组参数。

LINE //待求点位置在直线段内的计算子程序,计算待求点的中桩、边桩坐标。CURVE //待求点位置在曲线段内的入口程序。判断在曲线的那部分,并调用相应的子程序进行计算。

ZH-HY //待求点位置在曲线段的直缓-缓圆内(第一缓和曲线段内),计算待求点的中桩、边桩坐标。

HY-YH//待求点位置在曲线段的圆曲线段内,计算待求点的中桩、边桩坐标。YH-HZ //待求点位置在曲线段的圆缓-缓直内(第二缓和曲线段内),计算待求点的中桩、边桩坐标。

************************************************************

Lbl 1: Defm 6 // 扩展6个字节的内存供数组变量使用即Z[1]~Z[6]用以存储ZH、HY、HZ点的坐标。

Z[1]=0:Z[2]=0:Z[3]=0:Z[4]=0:Z[5]=0:Z[6]=0:A=0:B=0:C=0:D=0:E=0: F=0:G=0:H=0:I=0:J=0:K=0:L=0:M=0:N=0:O=0:P=0:Q=0:R=0:S=0:T=0:U

=0:V=0:W=0:X=0:Y=0:Z=0//对所有变量初始化。

//以下为输入逐桩步长I、待求点P的桩号,并判断P点桩号是否小于0。

Lbl 2:{I,P}:I”ZZBC?”:P”DQD:”P<0=>Goto n+3≠=>Goto 3

Lbl 3:Prog “PARAMS-1”//调用子程序,初始化计算参数

Lbl 4:P≤N=>Goto n+1≠=>Prog “PARAMS-2”

Lbl 5:P≤N=>Goto n+1≠=>Prog “PARAMS-3”

Lbl 6:……

Lbl n:P≤N=>Goto n+1≠=>”ERROR”:Goto n+4 //n为第n个判断的行号,N为缓直点HZ桩号。调用相应的子程序对计算参数进行初始化,再与P点进行比对,确定P点的位置,主要是比较各个弯道的HZ点和P点的位置关系。

Lbl n+1:P≤M=>Prog “LINE”≠=>Prog “CURVE” //判断P点和ZH点的位置关系,并调用相应的子程序。

Lbl n+2:I=0=>Goto n+3≠=>Goto 2 //判断是否是逐桩计算。

Lbl n+3:{C}:C”CONTINUE? 1 YES / 0 NO:”:C=1=>Goto 2≠=>Goto n+4 Lbl n+4:Defm 0:”EXIT MAIN”//释放内存并退出程序

相关文档
最新文档