基于VB在EXCEL中程序开发对道路曲线测设应用.docVIP

基于VB在EXCEL中程序开发对道路曲线测设应用.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于VB在EXCEL中程序开发对道路曲线测设应用

基于VB在EXCEL中程序开发对道路曲线测设应用   摘要:文章详细叙述了曲线的要素及计算方法,现阶段我国采用的测设方法及计算要素,程序的设计与实现,软件的使用与功能。   关键词:道路曲线;计算要素;VB;EXCEL;程序设计   中图分类号:P208 文献标识码:A 文章编号:1009-2374(2013)09-0050-02   1 概述   随着科学技术的进步,全站仪和RTK技术在施工测量中的应用与普及,目前全站仪配合RTK在道路施工测量中已被广泛采用,替代了传统的曲线测设方法,此技术极大地提高了施工测量的精确度和工作效率。   2 问题的提出   曲线测设是工程建筑物放样的组成部分之一,尤其是在公路、铁路的放样中,曲线的测设更为重要,也更为频繁。在传统的曲线道路中线的测设较为常用的测设方法有弦线偏角法和切线支距法。这类方法最大的缺点是内外业工作量大;实地测设受现场地形条件影响大;测量误差容易积累,测设精度低。近年来,随着测量仪器设备的逐步更新,曲线测设在内业计算和现场测设方面都有了较大改进(如全站仪极坐标法和RTK技术测设曲线),这种测量误差不累计,测设的点位精度高。这样就对我们能否准确快速地计算曲线上每个里程的坐标提出了要求。   本文用Visual Basic 6.0在EXCEL中程序开发功能,基于现阶段的各种曲线,编写了曲线测设坐标的计算程序,下面以带有缓和曲线的圆曲线为例。   3 程序的设计与实现   3.1 程序设计原理   曲线的测设原理在工程测量学中有详细的介绍,在此不再详细描述,其主要步骤如下:曲线综合要素计算→第一缓和曲线单元设计坐标计算→带缓和曲线的圆曲线单元设计坐标计算→第二缓和曲线单元设计坐标的计算。   3.2 程序的设计与部分代码   3.2.1 本程序是基于VB在EXCEL中的程序开发,在EXCEL中“工具”菜单下的“宏”命令下编写相应的VB程序代码,后输入要求的参数,进行程序执行即可。此程序的实现只要输入相应的曲线要素ZH-JD的方位角,曲线半径R,缓和曲线长,转向角,曲线全长,直缓点里程,上一曲线缓直点里程,下一曲线直缓点里程,DJ的X、Y坐标,曲线偏向。按下设定的程序键,如CTRL+X键,EXCEL就自动计算出相应的计算要素;在计算里程栏下输入任意一个里程值,按下CTRL+X即可算出此里程在曲线上的坐标。注意的是输入的里程应该在上一曲线直缓点里程和下一曲线直缓点里程之内,如果输入的里程为上一曲线直缓点里程和下一曲线直缓点里程之外的,就会提示“里程溢出”。如果计算其他的里程,在输入已知栏的后面输入相应曲线段的要素,就可以计算自己需要的里程坐标了。   3.2.2 程序部分过程和函数的原代码如下:   ElseIf lc ZH And lc HY Then   li = lc - ZH   xi = li - li ^ 5 / 40 / R ^ 2 / L0 ^ 2   yi = li ^ 3 / 6 / R / L0   b = (li ^ 2) * pa / 2 / R / L0   X = X01 + xi * Cos(A03) - CC * yi * Sin(A03)   Y = Y01 + xi * Sin(A03) + CC * yi * Cos(A03)   Ai = Deg(A0) + CC * b   If Ai 360 Then   Ai = Ai - 360   End If   ElseIf lc = HY Then   li = lc - ZH   xi = li - li ^ 5 / 40 / R ^ 2 / L0 ^ 2   yi = li ^ 3 / 6 / R / L0   b = (li ^ 2) * pa / 2 / R / L0   X = X01 + xi * Cos(A03) - CC * yi * Sin(A03)   Y = Y01 + xi * Sin(A03) + CC * yi * Cos(A03)   Ai = Deg(A0) + CC * b   If Ai 360 Then   Ai = Ai - 360   End If   ElseIf lc HY And lc YH Then   li = lc - ZH   a12 = ((li - L0) * pa / R + B0) * pi / 180   xi = R * Sin(a12) + m   yi = R * (1 - Cos(a12)) + P   b = (li - 0.5 * L0) * pa / R   X = X01 + xi * Cos(A03) - CC

文档评论(0)

189****7685 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档