Excel VBA在公路路线坐标计算中的应用 下载本文

内容发布更新时间 : 2024/5/17 10:46:38星期一 下面是文章的全部内容请认真阅读。

Excel VBA在公路路线坐标计算中的应用

摘要:通过分析公路路线坐标计算原理,创建Excel VBA的对象模型,可通俗易懂,方便准确地完成公路路线坐标计算,值得推广应用,文中以作者编写的“Excel公路坐标计算程序”为算例,说明介绍。

关键词:坐标计算,Excel VBA,坐标转换,数据读取传输

引言

作为公路测量工作者,公路路线坐标计算是一件最基础和最重要的工作之一。虽然目前有部分公路坐标计算软件,但往往价格不低,而且通常操作复杂。Microsoft 的常用办公软件Excel提供的VBA程序,功能强大,且与Excel工作表实现无缝接合,只要灵活应用,即可方便、快捷地解决测量中大量的、机械的数据处理过程。文中介绍道路曲线坐标计算三种基本形式—直线、圆曲线、缓和曲线的中边桩计算公式,分析利用Excel表格及其VBA程序计算公路坐标的一般方法和关键节点,同时以两个不同类型的路线为实例具体说明计算过程和精度分析。

1 公路路线坐标计算基本原理

1.1 中线坐标计算

一般公路的路线坐标计算普遍采用三种线型:直线、圆曲线和缓和曲线。其相应的中线坐标计算公式如下:

1) 直线(见图1)

x=x0+S0×cos(a0)

y=y0+S0×sin(a0)

2)圆曲线(见图2)

x=x0+S0×cos(a0+β)

y=y0+S0×sin(a0+β)

其中β为偏角,S0为弦长,其值为:

β=90×L0/(R×π)

S0=2×R×sin(β)

切线方位角:a= a0+2×β

3) 缓和曲线(见图3)

Xi’=L-L5/(40A2)+L9/(3456A8)

-L13/(599040A12)+……

Yi’=L3/(6A2)-L7/(336A6)

+L11/(42240A10)-……

L=|Li-L0| A=

上述直线段和圆曲线段可直接计算出中桩坐标,但缓和曲线由于采用切线正支距法,是以直缓或缓直为原点的直角坐标系,还必须用坐标平移和旋转计算出该点在大地平面直角坐标系XOY中的坐标(x,y),公式为:

x= x0+ Xi’cos(a0)- Yi’sin(a0)

y= y0+ Yi’sin(a0)+ Yi’cos(a0)

其转换后的切线方位角为:

a=a0+180±L2/(3A2)

1.2边桩坐标计算

边桩坐标计算利用计算出来的中线坐标及其切线方位角,按

az=a-90……左边桩方位角

ay=a+90……左边桩方位角

以及边桩至中桩距离Sb,推算边桩坐标:

Xz(y)=x中+Sb×cos(az(y))

Yz(y)=y中+Sb×sin(a z(y))

2Excel VBA与Excel工作表的关联

Office Excel工作簿中包含若干工作表,各工作表之间既相互独立,又相互关联,同时各工作表与Excel VBA又相互关联,因此只要在工作表上输入路线要素及计算桩号,通过VBA编程,就可通过VBA宏坐标计算将计算结果导入工作表。

由于Excel VBA编程为可视化及界面化的BASIC语言,简单易学,因而适合广大工程技术人员。借助本身功能强大的EXCEL工作表,利用EXCEL VBA能够提高工作效率,使用者容易接受。

2.1 Excel VBA与其工作表之间的关联用以下代码即可轻松实现:

b_1$ = “B” + Trim(Str(i))

JD = Range(b_1$)

上式b_1$字符串,可按需要命名,”B”表示工作表B列,“i”表示第几行,JD为读取工作表第B列i行数值,可按需要命名。

2.2 路线坐标计算工作流程