平面四参数法坐标转换在EXCELVBA中的实现.pdf_第1页
平面四参数法坐标转换在EXCELVBA中的实现.pdf_第2页
平面四参数法坐标转换在EXCELVBA中的实现.pdf_第3页
平面四参数法坐标转换在EXCELVBA中的实现.pdf_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第 1 期 2 0 1 4年 2月 矿 山 测 量 MI NE S URVEYI NG No 1 Fe b 2 01 4 d o i: 1 0 3 9 6 9 j is s n 1 0 0 13 5 8 X 2 0 1 4 0 1 2 7 平面 四参数法坐标 转换在 E X C E L V B A 中的实现 赵 淑 湘 ( 甘 肃林业 职 业技 术 学 院 , 甘 肃 天水7 4 1 0 2 0 ) 摘要 : 介绍了平面四参数法坐标转换的方法与步骤 , 并基 于 E X C E L V B A平 台编写 了参数 求解和 坐 标转换的 自定义函数。文 中基于 E x ce l V B A平 台编写的 自定义函数 简单实用, 可供同行参考。 关键词 :平面四参数法;坐标转换 ; E X E C L V B A实现 中图分类号 : P 2 0 9 文献标识码 : B 文章编号 : 1 0 0 1 3 5 8 X( 2 0 1 4 ) 0 1 0 0 8 l 一0 4 在 测 绘 工 程 中 , 往 往 会 遇 到 不 同 坐标 系统 之 间 的转换 问 题 , 常 见 的 有 WG S 8 4坐 标 与 国 家 坐 标 之 间、 不 同国家坐标系之 间以及 国家坐标与其它地方 坐标之间的转换等 。严格的转换方法为经典的七参 数法 , 一般使用 B u r s a 、 M o n d e n s k y等数 学模 型, 但这 些模型对公共点的坐标精度、 高程系统公共点的 图 形强度以及数量均有严格要求 ; 而事实上 , 在工程 中 的现有已知资料 或多或少地出现某 些缺陷, 而使用 平 面 四参 数法 相对 于经 典七 参 数 法 而言 , 条件 较 低 , 比较 容易 实现 。 微软 公 司推 出 的 Micr o s o f t O ffi ce E x ce l 是一 款测 绘技术人 员 比较熟 悉且经 常使用 的 自动化 办公软 件 , 其数值运算和数据管理功能均很强大 。因此 , 作 者基于 E x ce l V b a 平 台编写 了平 面四参数法坐标转 换 的 自定 义 函 数 。较 目前 常 用 的坐 标 转 换 软 件 而 言 , 操作简单 , 易于掌握 , 便于使用 , 还可 以很好 的进 行数据管理 , 在测绘工程中具有很好的实用性 。 1 平面 四参 数法 坐标 转换 的 方法 二维 坐标 转 换 是 通 过 平 移 、 旋 转 和 尺 度 变 化 四 个参 数进 行 的 , 其 转换 公式 为 : + 一 1 0 一 【 0 1 Y , i l , m COS m S l n 式中: A X、 A Y为平移参数 ; m和 O t 分别为尺度 和旋 转参 数 。 求解转换参数 的误差方程为 : 1 0 O l 1 O O l 1 0 0 1 如令 : V = B = M = l 0 0 1 1 0 0 1 1 0 0 1 y , n c osot , nSl n I l 2 Y 2 Y 一 y l l Y 2 2 一 y, l , m COS 0 V y z L = ( 2 ) 则误差 方 程式 可表 示为 : = 一 L ( 3 、 若观测值均为等权观 测, 即 P=E, 按最小二乘 原理 , 可推导出转换参数解算的公式为 : = ( ) 曰 L ( 4 ) 单位 权方 差 为 : 。 =4 - ( V ) ( 2 N一 4 ) ( 5 ) 2在 E X C E L中的实现 2 1 代码 实现 在 E x ce l 2 0 0 3界 面 下 , 点 击 菜单 栏 的 “ 工 具 ( T ) ” - “ 宏 ( M) ” 一 V is u a l B a s i c 编辑 器 ( V) A l t + 81 墨 一 1 1 2 2 n n 1 1 2 2 n n , , _ 第 1期 矿 山 测 量 2 0 1 4年 2月 F 1 1 ” , 打开 Mi cr o s o f t V i s u a l B a i e界面 , 并在该界面下 点击菜单栏 的“ 插入 ( I ) ” 一“ 模块 ( M) ” , 打开模块 代码窗 口, 编写参数求解 ( cs ( ) ) 和坐标转换 ( z h z h ( ) ) 两个 自定义函数的如下代码 : Op t i o n Ba s e 1 Pu b l i c Co n s t PI = 3 1 41 59 2 6 5 3 58 9 7 9 ,cs ( ) 为坐标转换参数求解的 自定义 函数 ( n ) F u n e t i o n cs q j ( z h q A s R a n g e ,z h h A s R a n g e )A s Va r i a n t D i m b ( ) ,b t ( ) ,l ( ) , cs ,b b t n , z h q i ,z h h i ,s c ( 4 , 2 ) D i m x l ! ,y 1 1 ,x 2 1 ,y 2 1 ,i , j ,k s c( 1 ,1 ) = ”X( 米 ) ”:s e ( 2 ,1 ) = ”Y ( 米 ) ” 8 ( 3 ( 3 ,1 )=” 旋转角 a ( 秒) ” : s e ( 4, 1 )=” 尺 度 m” 统 计公 共点 的个 数 i = 0 Fo r Ea ch z h q i I n z h q i = i + 1 Ne x t z h q i n= i 当 n=2时 , 只有 一个 已知 公共 点 I f n = 2 Th e n i = 0 Fo r Ea ch z h qi I n z hq i =i +1 I f i = l Th e n x l : z h q i Va l ue El s e yl = z h q i Va l u e En d I f Ne x t z h q i i = 0 F o r Ea c h z hh i I n z h h i = i + 1 I f i = 1 Th e n x 2 = z h h i Va l u e El s e y 2 : z h h i Va l u e En d I f Ne x t z h h i 82 s c( 1 , 2 ) = x 2 一 x l s c( 2 , 2 ) = y 2 一 y 1 s c( 3 , 2 ) =0 s c( 4 , 2 ) = 1 # El s e R e D i m b ( n , 4 ) :R e D i m b t ( 4 ,n ) :R e D i m 1 组成 B数组 i = 0 k = 1 Fo r Ea ch z h q i I n z h q i = i + 1 I f( i+ 2 )M o d 2 0 T h e n b ( k ,i+ 2 ) = z h q i V a l u e b ( k 4 -1 , 4 ) = z h q i V a l u e El s e b ( k , i+ 2 ) = 一z h q i V a l u e b ( k + 1 ,3 ) = z h q i V a l u e En d I f I f i Mo d 2 = 0 T h e n k = k 2 i = 0 En d I f Ne x t z h qi F o r i = 】TO n F o r j= 1 T o 4 I f j: 1 A n d i Mo d 2 0 T h e n b ( i , j ) = 1 E l s e I f J = 1 An d i Mo d 2 =0 T h e n b ( i , j ) = 0 El s e I f b ( i , j El s e I f b ( i , En d I f N e x t J Ne x t i = 2 And i Mo d 2 0 Th e n = 0 = 2 An d i Mo d 2 = 0 Th e n j ) = 1 组 成 B数 组 i = 0 Fo r Ea ch z h h i I n z h h i = i + 1 1 ( i ) = z h h i Va l u e 第 1期 赵淑湘 : 平面四参 数法坐标 转换 在 E X C E L V B A中的实现 2 0 1 4年 2月 Ne x t z h h i b t =App l ic a t io nW o r k s h e e t Fu n c t io nTr a n s p o s e ( b ) bb t n = App l ic a t i o n W o r k s h e e t F un c t io n MI n v e r se 一 ( A p p l ic a t io n Wo r k s h e e t F u n c t i o n MM u l t ( b t , b ) ) a s = Ap p l i c a t i o n W o r k s h e e t F u nc t io n MMu h 一 ( A p p l ic a t io n Wo r k s h e e t F u n c t io n MM u l t ( b b t n ,b t ) , 一 Ap p l ic a t io n W o r k s he e t F un c t io n Tr a n s p o s e ( 1 ) ) F o r i = l To 4 S C ( i, 2 ) = a s ( i, 1 ) Ne x t i S C ( 3 ,2 ) = A p p l i c a t io n Wo r k s h e e t F u n c t io n A t a n 2 ( S C ( 3 , 2 ) , S C ( 4 , 2 ) ) I f S C ( 3 , 2 ) 0 T h e n S C ( 3 , 2 ) = S C ( 3 , 2 ) + 2 P I En d I f S C ( 4 , 2 ) = S C ( 4, 2 )S in ( S C ( 3 , 2 ) ) S C ( 3 , 2 ) = S C ( 3 , 2 ) 1 8 0P I 3 6 0 0 End I f a s q J= S C End F u nc t io n z b z h ( ) 为坐标转换 自定义函数 F u n c t io n z b z h ( y z b A s R a n g e ,S C S A s R a n g e )A s Va r ia n t D i m b ( 2 , 4 ) ,a s ( 4 ) ,b b t n , y z b i,s c s i Di m a #,i ,k , 组 成 B数 组 i = 0 k = 1 Fo r Ea c h y z bi I n y z b i= i+ 1 I f f b b + 2) Mo d 2 0 Th e n k ,i + 2 ) = y z b i V a l u e k + 1 , 4 ) = y z b i V a l u e El s e b ( k ,i + 2 ) = 一y z b i V a l u e b ( k + 1 , 3 ) = y z b i V a l u e En d I f Ne x t y z b i b ( 1 , 1 ) = 1 : b ( 1 , 2 ) =0 b ( 2, 1 ) = 0 : b ( 2 , 2 ) = 1 i = 0 Fo r Ea c h s c s i I n S C S i= i+ 1 c s ( i、 = s c s i V a l u e Ne x t s c s i a = c s ( 3 )3 6 0 01 8 0 P I c s ( 3 ) : a s ( 4 ) C o s ( a ) a s ( 4 ) = a s ( 4 ) S in ( a ) z b z h = App l ic a t io n W o r ks he e t F u n c t io n MMu l t 一 ( b , A p p l i c a t io n Wo r k s h e e t F u n c t io n T r a n s p o s e ( C S ) ) z b z h=Ap p l ic a t io nW o r k s h e e t Fu n c t io nT r a n s - p o s e ( z b z h ) En d Fu n c t io n 2 2界 面运行 自定义 函数 的使用方法与 E X C E L内置函数相 同。对于四参数求解 : 首先在 任意空 白单元 格连续 选定 2行 2列的区域 , 比如 G 1 : H 4; 然后在编辑栏输 入公式“=c s q j (

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论