发明名称 一种利用VBA模块在Excel中进行电力工程坐标联测计算的方法
摘要 本发明涉及一种利用VBA模块在Excel中进行电力工程坐标联测计算的方法,属于测绘学科中的电力工程测量领域,包含如下步骤:1.开发VBA模块;2.在Excel中设计软件界面及各功能区域,设置操作控件;3.触发控件,调用VBA模块,解算坐标联测参数;4.根据坐标联测参数,调用VBA模块,将建筑坐标联测至国家坐标;5.根据坐标联测参数,调用VBA模块,将国家坐标联测至建筑坐标。本发明运用Excel界面,软件化的运作,简洁直观,所见即所得,且能够便捷地实现多种坐标系统的两两联测,完成了电力工程坐标联测计算的自动化计算,使坐标联测计算效率大幅提高,减轻了测量人员的内业工作强度。
申请公布号 CN102542115A 申请公布日期 2012.07.04
申请号 CN201210002839.X 申请日期 2012.01.06
申请人 江苏省电力设计院 发明人 仲锋;徐君民;朱健
分类号 G06F17/50(2006.01)I 主分类号 G06F17/50(2006.01)I
代理机构 南京纵横知识产权代理有限公司 32224 代理人 董建林
主权项 一种利用VBA模块在Excel中进行电力工程坐标联测计算的方法,其特征在于包括以下步骤:(1)、开发VBA模块在Excel的Visual Basic编辑器中,建立“坐标联测常用函数模块”,在模块中编制坐标联测常用的几个子函数,其中包括求方位角子函数“Alfa()”、角度格式转换函数“DMS()”与“DEG()”;(2)、在Excel中设计软件界面及各功能区域,设置操作控件在Excel中设置下列功能区域及控件:坐标联测起算控制点的两套坐标区域,所述两套坐标为建筑坐标和国家坐标;“计算坐标联测参数”命令按钮控件;坐标联测参数区域,所述坐标联测参数包括长度比参数K、平移参数a和b、旋转参数α;长度比参数K值判断区域;目标点位建筑坐标联测至国家坐标区域;目标点位国家坐标联测至建筑坐标区域;(3)、触发控件,调用VBA模块,解算坐标联测参数触发步骤(2)所述的“计算坐标联测参数”命令按钮控件,调用步骤(1)所述的VBA模块,计算步骤(2)所述的坐标联测参数,根据《火力发电厂工程测量技术规程》,具体计算公式如下:计算长度比参数K: <mrow> <mi>K</mi> <mo>=</mo> <mn>1</mn> <mo>/</mo> <mo>|</mo> <mfrac> <msub> <mi>d</mi> <mn>1</mn> </msub> <mrow> <msub> <mi>d</mi> <mn>1</mn> </msub> <mo>-</mo> <msub> <mi>d</mi> <mn>2</mn> </msub> </mrow> </mfrac> <mo>|</mo> </mrow>计算平移参数a、b: <mfenced open='' close='}'> <mtable> <mtr> <mtd> <mi>a</mi> <mo>=</mo> <mi>X</mi> <mo>-</mo> <mi>A</mi> <mi>cos</mi> <mi>&alpha;</mi> <mo>+</mo> <mi>B</mi> <mi>sin</mi> <mi>&alpha;</mi> </mtd> </mtr> <mtr> <mtd> <mi>b</mi> <mo>=</mo> <mi>Y</mi> <mo>-</mo> <mi>A</mi> <mi>sin</mi> <mi>&alpha;</mi> <mo>-</mo> <mi>B</mi> <mi>cos</mi> <mi>&alpha;</mi> </mtd> </mtr> </mtable> </mfenced>计算旋转参数α: <mfenced open='' close='}'> <mtable> <mtr> <mtd> <mi>&alpha;</mi> <mo>=</mo> <msub> <mi>&alpha;</mi> <mn>12</mn> </msub> <mo>-</mo> <msubsup> <mi>&alpha;</mi> <mn>12</mn> <mo>&prime;</mo> </msubsup> </mtd> </mtr> <mtr> <mtd> <msub> <mi>&alpha;</mi> <mn>12</mn> </msub> <mo>=</mo> <mi>arctg</mi> <mfrac> <mrow> <msub> <mi>Y</mi> <mn>2</mn> </msub> <mo>-</mo> <msub> <mi>Y</mi> <mn>1</mn> </msub> </mrow> <mrow> <msub> <mi>X</mi> <mn>2</mn> </msub> <mo>-</mo> <msub> <mi>X</mi> <mn>1</mn> </msub> </mrow> </mfrac> </mtd> </mtr> <mtr> <mtd> <mrow> <msubsup> <mi>&alpha;</mi> <mn>12</mn> <mo>&prime;</mo> </msubsup> <mo>=</mo> <mi>arctg</mi> <mfrac> <mrow> <msub> <mi>B</mi> <mn>2</mn> </msub> <mo>-</mo> <msub> <mi>B</mi> <mn>1</mn> </msub> </mrow> <mrow> <msub> <mi>A</mi> <mn>2</mn> </msub> <mo>-</mo> <msub> <mi>A</mi> <mn>1</mn> </msub> </mrow> </mfrac> </mrow> </mtd> </mtr> </mtable> </mfenced>上述公式中的字母解释如下:A、B‑建筑坐标,单位m;X、Y‑国家坐标,单位m;a、b‑建筑坐标系原点在国家坐标系中的坐标;α‑两坐标系方位角之差;(4)、根据坐标联测参数,调用VBA模块,将建筑坐标联测至国家坐标根据步骤(3)解算得到的坐标联测参数,调用VBA控件,在已知目标点位的建筑坐标而求解国家坐标的情况下,根据《火力发电厂工程测量技术规程》中下述公式计算得到国家坐标: <mrow> <mfenced open='' close='}'> <mtable> <mtr> <mtd> <mi>X</mi> <mo>=</mo> <mi>a</mi> <mo>+</mo> <mi>KA</mi> <mi>cos</mi> <mi>&alpha;</mi> <mo>-</mo> <mi>KB</mi> <mi>sin</mi> <mi>&alpha;</mi> </mtd> </mtr> <mtr> <mtd> <mi>Y</mi> <mo>=</mo> <mi>b</mi> <mo>+</mo> <mi>KA</mi> <mi>sin</mi> <mi>&alpha;</mi> <mo>+</mo> <mi>KB</mi> <mi>cos</mi> <mi>&alpha;</mi> </mtd> </mtr> </mtable> </mfenced> <mo>;</mo> </mrow>(5)、根据坐标联测参数,调用VBA模块,将国家坐标联测至建筑坐标根据步骤(3)解算得到的坐标联测参数,调用VBA控件,在已知目标点位的国家坐标而求解建筑坐标的情况下,根据《火力发电厂工程测量技术规程》中下述公式计算得到建筑坐标: <mrow> <mfenced open='' close='}'> <mtable> <mtr> <mtd> <mi>A</mi> <mo>=</mo> <mfrac> <mn>1</mn> <mi>K</mi> </mfrac> <mrow> <mo>(</mo> <mi>X</mi> <mo>-</mo> <mi>a</mi> <mo>)</mo> </mrow> <mi>cos</mi> <mi>&alpha;</mi> <mo>+</mo> <mfrac> <mn>1</mn> <mi>K</mi> </mfrac> <mrow> <mo>(</mo> <mi>Y</mi> <mo>-</mo> <mi>b</mi> <mo>)</mo> </mrow> <mi>sin</mi> <mi>&alpha;</mi> </mtd> </mtr> <mtr> <mtd> <mi>B</mi> <mo>=</mo> <mfrac> <mn>1</mn> <mi>K</mi> </mfrac> <mrow> <mo>(</mo> <mi>Y</mi> <mo>-</mo> <mi>b</mi> <mo>)</mo> </mrow> <mi>cos</mi> <mi>&alpha;</mi> <mo>-</mo> <mfrac> <mn>1</mn> <mi>K</mi> </mfrac> <mrow> <mo>(</mo> <mi>X</mi> <mo>-</mo> <mi>a</mi> <mo>)</mo> </mrow> <mi>sin</mi> <mi>&alpha;</mi> </mtd> </mtr> </mtable> </mfenced> <mo>;</mo> </mrow>经过上述计算,《火力发电厂工程测量技术规程》中电力工程坐标联测的各项计算内容均已经完成。
地址 211102 江苏省南京市江宁开发区苏源大道58-3号