利用VB开发极坐标正反算小程序.docVIP

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

利用VB开发极坐标正反算小程序摘要:利用VB编程中的面向对象功能,开发方便实用的工程测量小程序:极坐标正反算。 关键词:极坐标正反算、方位角、角度制、弧度制、坐标增量 Abstract: using VB object oriented programming function, to facilitate the development of practical engineering surveying small program: polar coordinates is positive and negative. Keywords: polar coordinates is positive and negative, azimuth Angle, system, radian system, coordinate increment 中图分类号:[O244]文献标识码:A 文章编号: 全站仪放样测量在各种基建工程中利用非常广泛,如:大楼基桩放样、桥梁桥墩放样、公路放线等等。全站仪放样测量通常采用极坐标法。极坐标法工程坐标的正反算,是放样准确性的基础保障。通常极坐标法正反算是采用工程计算器计算取得,各种工程计算器的计算操作方法不尽相同,这就导致在不同的计算器使用时产生错误操作,反复的计算检核,给测绘工作带来不便。随着便携式微型电脑的普及,野外工程测量工作中随时随地的采用电脑计算绘图成为现实,不仅方便准确,而且效率大大提高。本文利用VB编程中的面向对象功能,开发方便实用的工程测量小程序:极坐标正反算。接下来简单介绍一下编程过程。 首先,计算原理如图例一: 图例一 极坐标正算时: 站点为O,前、后视点为P0、P1、P2、P3,分别在四个象限,如图例一。其坐标方位角a0、a1、a2、a3与夹角a(a=arctg(DY/DX))的关系为:a0=a,a1=a+180°,a2=a+180°,a3=a+360°,半径与坐标增量的关系:R2=DX2+DY2。 接下来在VB界面中创建工程,并建立窗口如图例二: 图例二 在创建窗口过程中,为了方便测试,记得为各个参数赋初值。 在“计算”按钮的单击事件中编程如下: Dim x1 As Double, y1 As Double, x2 As Double, y2 As Double Dim dx As Double, dy As Double, a As Double, r As Double Dim D As String Dim p As Double x1 = Val(Text1) y1 = Val(Text2) x2 = Val(Text3) y2 = Val(Text4) dx = x2 - x1 dy = y2 - y1 a = Atn(dy / dx) a = DEG(a) If dx 0 And dy 0 Then a = a ElseIf dx 0 Then a = a + 180 ElseIf dx 0 And dy 0 Then a = 90 ElseIf dx = 0 And dy 0 And dy = 0 Then a = 0 ElseIf dx = 2 * p Or r 0,0=a360!”) Else dx = r * Cos(a) dy = r * Sin(a) End If x = x + dx y = y + dy x = Format(x, “#.####”) y = Format(y, “#.####”) Text5 = x Text6 = y 在该程序中由于方位角a初始值为角度制,计算过程中三角函数的参数为弧度制,需要进一步转换,故引用了一个HuDu()转换函数,其函数编程如下: Dim pi As Double, H As Double pi = 3.14159265358979 H = pi / 180 HuDu = (Fix(angle) + (Fix((angle - Fix(angle)) * 100) * 60 + ((angle - Fix(angle)) * 100 - Fix((angle - Fix(angle)) * 100)) * 100) / 3600) * H 该程序只做了部分的出错检查,在使用过程中,输入的参数超位时不会提醒。本人初学VB,不当之处,欢迎批评雅正! 参考文献: 【1】刘星,吴斌主编

文档评论(0)

linsspace + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档