wangjh
论坛版主
论坛版主
  • 注册日期2003-08-22
  • 发帖数994
  • QQ55359982
  • 铜币2579枚
  • 威望0点
  • 贡献值0点
  • 银元0个
阅读:4055回复:7

经纬度BL换算到高斯平面直角坐标XY(高斯投影正算)

楼主#
更多 发布于:2004-03-25 00:46
在 gis 的帖子"用EXCEL完成GPS坐标转换的简易方法 " 基础上,
我给出对应的VB程序段,我在 eVB 开发的GPS定位功能中,用它实现坐标换算(具体的参数请参考gis 的帖子)。
感觉速度比较快,效果比较好。所以帖上来,希望与名位交流:
=====================================
'经纬度BL换算到高斯平面直角坐标XY(高斯投影正算)
Private Function BL2XY(ByRef A2 As Double, ByRef F2 As Double, ByRef E2 As Double, _
                ByRef s2 As Double, ByRef T2 As Double) As Boolean
                'A2 输入中央子午线,以度.分形式输入,如115度30分则输入115.30; 起算数据L0
                'F2 以度小数形式输入经度值, L
                'E2 以度小数形式输入纬度值,B
                'S2 计算结果,横坐标Y
                'T2 计算结果,纵坐标X
                '投影带号计算 n=[L/6]+1   如:测得经度103.XXXX,故n=[103.X/6]+1=17+1=18
                '中央经线经度 L0 = n*6-3 = [L/6]*6+3
    Dim B2 As Double
    'Dim G2 As Double
    Dim H2 As Double
    Dim I2 As Double
    Dim J2 As Double
    Dim K2 As Double
    Dim L2 As Double
    Dim M2 As Double
    Dim N2 As Double
    Dim O2 As Double
    Dim P2 As Double
    Dim Q2 As Double
    Dim R2 As Double
    
    B2 = Int(A2) + (Int(A2 * 100) - Int(A2) * 100) / 60 + (A2 * 10000 - Int(A2 * 100) * 100) / 3600
    '把L0化成度(A2)
    'G2 = F2 - B2 ' L -L0
    'H2 = G2 / 57.2957795130823 '化作弧度
    H2 = (F2 - B2) / 57.2957795130823 '将经差的单位化为弧度
    I2 = Tan(E2 / 57.2957795130823) 'Tan (B)
    J2 = Cos(E2 / 57.2957795130823) ' Cos (B)
    K2 = 0.006738525415 * J2 * J2
    L2 = I2 * I2
    M2 = 1 + K2
    N2 = 6399698.9018 / Sqr(M2)
    O2 = H2 * H2 * J2 * J2
    P2 = I2 * J2
    Q2 = P2 * P2
    R2 = (32005.78006 + Q2 * (133.92133 + Q2 * 0.7031))
    s2 = ((((L2 - 18) * L2 - (58 * L2 - 14) * K2 + 5) * O2 / 20 + M2 - L2) * O2 / 6 + 1) * N2 * (H2 * J2)
    s2 = s2 + 18500000 '在计算的基础上加上了“带号”(18)和“东移”(500KM)
    '计算结果,横坐标Y
    T2 = 6367558.49686 * E2 / 57.29577951308 - P2 * J2 * R2 + ((((L2 - 58) * L2 + 61) * _
        O2 / 30 + (4 * K2 + 5) * M2 - L2) * O2 / 12 + 1) * N2 * I2 * O2 / 2
    '计算结果,纵坐标X
    'MsgBox "ptS2=" & S2 & "  pt T2=" & T2
    
    BL2XY = True
End Function

<img src="images/post/smile/dvbbs/em01.gif" /><img src="images/post/smile/dvbbs/em01.gif" /><img src="images/post/smile/dvbbs/em01.gif" /><img src="images/post/smile/dvbbs/em01.gif" /><img src="images/post/smile/dvbbs/em01.gif" /><img src="images/post/smile/dvbbs/em01.gif" /><img src="images/post/smile/dvbbs/em01.gif" />

[此贴子已经被作者于2004-3-25 0:49:52编辑过]
喜欢0 评分0
网 站: www.52xoo.com (3S,信息融合,数字图像处理,模式识别与人工智能等专业电子书、学术文章及源代码共享) E-mail: Jianhong72@163.com QQ: 88128745 (55359982用了近10年,最近被盗了,郁闷!!!)
wangjh
论坛版主
论坛版主
  • 注册日期2003-08-22
  • 发帖数994
  • QQ55359982
  • 铜币2579枚
  • 威望0点
  • 贡献值0点
  • 银元0个
1楼#
发布于:2004-03-25 00:52
哈哈:
       帖子自动将大写字母转换成了小写
       该方法转换成“北京54”坐标
网 站: www.52xoo.com (3S,信息融合,数字图像处理,模式识别与人工智能等专业电子书、学术文章及源代码共享) E-mail: Jianhong72@163.com QQ: 88128745 (55359982用了近10年,最近被盗了,郁闷!!!)
举报 回复(0) 喜欢(0)     评分
cl991036
管理员
管理员
  • 注册日期2003-07-25
  • 发帖数5917
  • QQ14265545
  • 铜币29669枚
  • 威望217点
  • 贡献值0点
  • 银元0个
  • GIS帝国居民
  • GIS帝国铁杆
2楼#
发布于:2004-03-25 02:34
刚做斑竹就来发贴了
没钱又丑,农村户口。头可断,发型一定不能乱。 邮箱:gisempire@qq.com
举报 回复(0) 喜欢(0)     评分
工兵
路人甲
路人甲
  • 注册日期2003-07-28
  • 发帖数91
  • QQ
  • 铜币360枚
  • 威望0点
  • 贡献值0点
  • 银元0个
3楼#
发布于:2004-03-25 09:20
以下是引用wangjh在2004-3-25 0:52:42的发言:
哈哈:
        帖子自动将大写字母转换成了小写
        该方法转换成“北京54”坐标


转换的公式贴一下吧 :)
举报 回复(0) 喜欢(0)     评分
wangjh
论坛版主
论坛版主
  • 注册日期2003-08-22
  • 发帖数994
  • QQ55359982
  • 铜币2579枚
  • 威望0点
  • 贡献值0点
  • 银元0个
4楼#
发布于:2004-03-25 15:33
由于不能输入公式!
我只能将转换公式制成图片,单独上传了!

<img src="images/post/smile/dvbbs/em04.gif" />
[此贴子已经被作者于2004-3-25 15:50:34编辑过]
网 站: www.52xoo.com (3S,信息融合,数字图像处理,模式识别与人工智能等专业电子书、学术文章及源代码共享) E-mail: Jianhong72@163.com QQ: 88128745 (55359982用了近10年,最近被盗了,郁闷!!!)
举报 回复(0) 喜欢(0)     评分
zys
zys
路人甲
路人甲
  • 注册日期2004-01-07
  • 发帖数103
  • QQ
  • 铜币61枚
  • 威望0点
  • 贡献值0点
  • 银元0个
5楼#
发布于:2004-06-02 14:32
<img src="images/post/smile/dvbbs/em02.gif" />
举报 回复(0) 喜欢(0)     评分
射天狼
路人甲
路人甲
  • 注册日期2003-11-28
  • 发帖数45
  • QQ
  • 铜币187枚
  • 威望0点
  • 贡献值0点
  • 银元0个
6楼#
发布于:2004-07-26 13:46
我参考朱华统的书编了fortran程序,不知如何上传
举报 回复(0) 喜欢(0)     评分
zhuyunyouyou
路人甲
路人甲
  • 注册日期2006-04-11
  • 发帖数7
  • QQ
  • 铜币122枚
  • 威望0点
  • 贡献值0点
  • 银元0个
7楼#
发布于:2006-04-28 11:33
<img src="images/post/smile/dvbbs/em01.gif" />
举报 回复(0) 喜欢(0)     评分
游客

返回顶部