《经纬度坐标与高斯坐标的转换代码》由会员分享,可在线阅读,更多相关《经纬度坐标与高斯坐标的转换代码(8页珍藏版)》请在人人文库网上搜索。

1、经纬度坐标与高斯坐标的转换代码/功能说明: 将绝对高斯坐标(y,x)转换成绝对的地理坐标(wd,jd)。 / double y; 输入参数: 高斯坐标的横坐标,以米为单位 / double x; 输入参数: 高斯坐标的纵坐标,以米为单位/ short DH; 输入参数: 带号,表示上述高斯坐标是哪个带的/ double *L; 输出参数: 指向经度坐标的指针,其中经度坐标以秒为单位/ double *B; 输出参数: 指向纬度坐标的指针,其中纬度坐标以秒为单位void GaussToGeo(double y, double x, short DH, double *L, double *B, 。

2、double LP)double l0; / 经差double tf; / tf = tg(Bf0),注意要将Bf转换成以弧度为单位double nf ; / n = y * sqrt( 1 + etf * 2) / c, 其中etf = e*2 * cos(Bf0) * 2double t_l0; / l0,经差,以度为单位double t_B0; / B0,纬度,以度为单位double Bf0; / Bf0double etf; / etf,其中etf = e*2 * cos(Bf0) * 2double X_3 ;double PI=3.14159265358979;double b_e。

3、2=0.0067385254147;double b_c=6399698.90178271;X_3 = x / 1000000.00 - 3 ; / 以兆米(1000000)为单位/ 对于克拉索夫斯基椭球,计算Bf0Bf0 = 27.11115372595 + 9.02468257083 * X_3 - 0.00579740442 * pow(X_3,2) - 0.00043532572 * pow(X_3,3) + 0.00004857285 * pow(X_3,4) + 0.00000215727 * pow(X_3,5) - 0.00000019399 * pow(X_3,6) ; tf。

4、 = tan(Bf0*PI/180); / tf = tg(Bf),注意这里将Bf转换成以弧度为单位etf = b_e2 * pow(cos(Bf0*PI/180),2); / etf = e*2 * cos(Bf) * 2nf = y * sqrt( 1 + etf ) / b_c; / n = y * sqrt( 1 + etf * 2) / c/ 计算纬度,注意这里计算出来的结果是以度为单位的t_B0 = Bf0 - (1.0+etf) * tf / PI * (90.0 * pow(nf,2)- 7.5 * (5.0 + 3 * pow(tf,2) + etf - 9 * etf * 。

5、pow(tf,2) * pow(nf,4) + 0.25 * (61 + 90 * pow(tf,2) + 45 * pow(tf,4) * pow(nf,6) ;/ 计算经差,注意这里计算出来的结果是以度为单位的t_l0 = (180 * nf - 30 * ( 1 + 2 * pow(tf,2) + etf ) * pow(nf,3) + 1.5 * (5 + 28 * pow(tf,2) + 24 * pow(tf,4) * pow(nf,5) / ( PI * cos(Bf0*PI/180) ) ;l0 = (t_l0 * 3600.0); / 将经差转成秒if (LP = -1000。

6、)*L = (double)(DH * 6 - 3) * 3600.0 + l0); / 根据带号计算出以秒为单位的绝对经度,返回指针else*L = LP * 3600.0 + l0; / 根据带号计算出以秒为单位的绝对经度,返回指针/-*B = (double)(t_B0 * 3600.0) ; / 将纬差转成秒,并返回指针/ 功能说明: (1)将地理坐标(wd,jd)转换成绝对的高斯坐标(y,x)(2)本函数支持基于六度带(或三度带)、克拉索夫斯基椭球进行转换 / 适用范围: 本函数适用于将地球东半球中北半球(即东经0度到东经180度,北纬0度至90度)范围内所有地理坐标到高斯坐标的转换。

7、 / 使用说明: 调用本函数后返回的结果应在满足精度的条件下进行四舍五入 / double jd; 输入参数: 地理坐标的经度,以秒为单位/ double wd; 输入参数: 地理坐标的纬度,以秒为单位/ short DH; 输入参数: 三度带或六度带的带号/ 六度带(三度带)的带号是这样得到的:从东经0度到东经180度自西向东按每6度(3度)顺序编号(编号从1开始),这个顺序编号就称为六度带(三度带)的带号。因此,六度带的带号的范围是1-30,三度带的带号的范围是1-60。如果一个点在图号为TH的图幅中,那麽该点所处的六度带的带号就可以这样得到:将该图号的第3、4位组成的字符串先转换成数字,。

8、再减去30。例如某点在图幅06490701中,该点所在的带号就是49-30,即19。如果调用本函数去进行一般的从地理坐标到基于六度带高斯坐标的变换(非邻带转换),则参数DH的选取按前一段的方法去确定。 如果调用本函数去进行基于六度带邻带转换,则参数DH的选取先按上述方法去确定,然后看是往前一个带还是后一个带进行邻带转换再确定是加1还是减1。 /void GeoToGauss(double jd, double wd, short DH, short DH_width, double *y, double *x, double LP)double t; / t=tgBdouble L; / 中央。

9、经线的经度double l0; / 经差double jd_hd,wd_hd; / 将jd、wd转换成以弧度为单位double et2; / et2 = (e * 2) * (cosB * 2)double N; / N = C / sqrt(1 + et2)double X; / 克拉索夫斯基椭球中子午弧长double m; / m = cosB * PI/180 * l0 double tsin,tcos; / sinB,cosBdouble PI=3.14159265358979;double b_e2=0.0067385254147;double b_c=6399698.9017827。

10、1;jd_hd = jd / 3600.0 * PI / 180.0 ; / 将以秒为单位的经度转换成弧度wd_hd = wd / 3600.0 * PI / 180.0 ; / 将以秒为单位的纬度转换成弧度/ 如果不设中央经线(缺省参数: -1000),则计算中央经线,/ 否则,使用传入的中央经线,不再使用带号和带宽参数/L = (DH - 0.5) * DH_width ; / 计算中央经线的经度if (LP = -1000)L = (DH - 0.5) * DH_width ; / 计算中央经线的经度elseL = LP ;l0 = jd / 3600.0 - L ; / 计算经差tsi。

11、n = sin(wd_hd); / 计算sinBtcos = cos(wd_hd); / 计算cosB/ 计算克拉索夫斯基椭球中子午弧长XX = 111134.8611 / 3600.0 * wd - (32005.7799 * tsin + 133.9238 * pow(tsin,3) + 0.6976 * pow(tsin,5) + 0.0039 * pow(tsin,7) ) * tcos; et2 = b_e2 * pow(tcos,2) ; / et2 = (e * 2) * (cosB * 2)N = b_c / sqrt( 1 + et2 ) ; / N = C / sqrt(1。

12、 + et2)t = tan(wd_hd); / t=tgBm = PI/180 * l0 * tcos; / m = cosB * PI/180 * l0 *x = X + N * t * ( 0.5 * pow(m,2) + (5.0 - pow(t,2) + 9.0 * et2 + 4 * pow(et2,2) * pow(m,4)/24.0 + (61.0 - 58.0 * pow(t,2) + pow(t,4) * pow(m,6) / 720.0 ) ;*y = N * ( m + ( 1.0 - pow(t,2) + et2 ) * pow(m,3) / 6.0 + ( 5.0 。

13、- 18.0 * pow(t,2) + pow(t,4) + 14.0 * et2 - 58.0 * et2 * pow(t,2) ) * pow(m,5) / 120.0 );3度带与6度带 1我国采用6度分带和3度分带:12.5万及15万的地形图采用6度分带投影,即经差为6度,从零度子午线开始,自西向东每个经差6度为一投影带,全球共分60个带,用1,2,3,4,5,表示即东经06度为第一带,其中央经线的经度为东经3度,东经612度为第二带,其中央经线的经度为9度。11万的地形图采用3度分带,从东经1.5度的经线开始,每隔3度为一带,用1,2,3,表示,全球共划分120个投影带,即东经1.5。

14、 4.5度为第1带,其中央经线的经度为东经3度,东经4.57.5度为第2带,其中央经线的经度为东经6度我省位于东经113度东经120度之间,跨第38、39、40共计3个带,其中东经115.5度以西为第38带,其中央经线为东经114度;东经115.5118.5度为39带,其中央经线为东经117度;东经118.5度以东到山海关为40带,其中央经线为东经120度。地形图上公里网横坐标前2位就是带号,例如:15万地形图上的横坐标为20345486,其中20即为带号,345486为横坐标值。2当地中央经线经度的计算六度带中央经线经度的计算:当地中央经线经度6当地带号3,例如:地形图上的横坐标为20345。

15、,其所处的六度带的中央经线经度为:6203117(适用于125万和15万地形图)。三度带中央经线经度的计算:中央经线经度3当地带号(适用于11万地形图)。3、如何计算当地的中央子午线? 当地中央子午线决定于当地的直角坐标系统,首先确定您的直角坐标系统是3度带还是6度带投影公式推算:6度带中央子午线计算公式:当地经度/6=N;中央子午线L=6 * N (带号)当没有除尽,N有余数时,中央子午线L=6*N - 3 3度带中央子午线计算公式: 当地经度/3=N;中央子午线L=3 X N 我国的经度范围西起 73东至135,可分成六度带十一个(13号带23号带),各带中央经线依次为(75、81、123。

16、、129、135);三度带二十二 个(24号带45号带)。各带中央经线依次为(72、75、132、135);六度带可用于中小比例尺(如 1:250000)测图,三度带可用于大比例尺(如 1:10000)测图,城建坐标多采用三度带的高斯投影4、如何判断投影坐标是3度带坐标还是6度带坐标如(4231898,21655933)其中21即为带号,同样所定义的东伪偏移值也需要加上带号,如21带的东伪偏移值为21500000米。 假如你的工作区经度在120度至126度范围,则该坐标系为6度带坐标系,该带的中央经度为123度。如(2949320,36353822)其中36即为带号,已知该地点位于贵阳市附近,而从地图上我们看到贵阳大概的经度是东经108度左右,因此可以36*3=108,所以该坐标系为3度带坐标系,该带的中央经度为108度。而不可能为6度带:36*6=216。

c语言经纬度转高斯坐标系,经纬度坐标与高斯坐标的转换代码相关推荐

  1. android 地球坐标 火星坐标系,Android LBS地图开发:地球地理GPS坐标系经纬度偏移偏差...

    Android LBS地图开发基础知识之地球地理GPS坐标系经纬度偏移偏差 通常,我们所说的地球地理经纬度是WGS-84坐标系(World Geodetic System-1984 Coordinat ...

  2. 经纬度坐标与高斯坐标的转换代码

    经纬度坐标与高斯坐标的转换代码 /* 功能说明: 将绝对高斯坐标(y,x)转换成绝对的地理坐标(wd,jd).        */ // double y;     输入参数: 高斯坐标的横坐标,以米 ...

  3. C#语言平面坐标计算,平面坐标转化经纬度,求高手给C# 方法,将下列坐标转化成经纬度...

    平面坐标转化经纬度,求高手给C# 方法,将下列坐标转化成经纬度 平面坐标转化经纬度,求高手给C# 方法,将下列坐标转化成经纬度 53950.65966 98691.8174 53978.58712 9 ...

  4. cesium 经纬度绘制点_Cesium经纬度与坐标的问题

    ##数据预处理 1. 源数据坐标系通常为二维平面坐标系,通过设置投影坐标(通常为高斯克吕格投影,按实际位置选择正确分带)使其可进行后续操作. 2. 投影坐标是实际位置在平面上投影后的坐标,获得其正确位 ...

  5. 经纬度坐标转换为工程坐标

    1. 绪论 在施工和工程测量时,经常需要将GPS坐标转换为工程中所使用的坐标.在Bing上检索到的类似问题,基本描述为两个坐标系的转换,但实际上并非如此. 本文将详细解释转换过程和转换方法. 1.1 ...

  6. PHP 不同地图坐标系经纬度转换 GCj02 WGS84 BD-09

    PHP 不同地图坐标系经纬度转换 GCj02 WGS84 BD-09 在项目中需要根据坐标计算距离,结果发现地图坐标不一致需要转换一下,在网上找到大佬写的一篇文章,亲测有效,原文地址: https:/ ...

  7. 经纬度坐标转墨卡托坐标

    经纬度坐标转墨卡托坐标 /*** 经纬度坐标转墨卡托坐标* @param {经度(角度值)} longitude * @param {维度(角度值)} latitude*/ // 墨卡托坐标系:展开地 ...

  8. 标准坐标系经纬度转百度火星坐标系经纬度

    标准坐标系经纬度转百度火星坐标系经纬度,代码如下: package com.qwrt.fire.sensor.util;/*** Created by jack on 2018/4/27.* 火星坐标 ...

  9. Android LBS地图开发:地球地理GPS坐标系经纬度偏移偏差

    本文作者:ZhangPhil 欢迎各位转载!但请注明转载出处: http://blog.csdn.net/zhangphil/article/details/48024831 Android LB ...

  10. 经纬度坐标转换成px_经纬度坐标转像素坐标

    "```\n// 经纬度坐标转像素坐标\nfunction latlng2px(lat, lng) {\n var LatLng = (function(){\n function LatL ...

最新文章

  1. postfix+mysql 发件服务
  2. 漏洞payload 靶机_【CS学习笔记】5、如何建立Payload处理器
  3. 用c语言合并两个链表,合并两个链表.
  4. 排序算法 | 堆排序,算法的图解、实现、复杂度和稳定性分析
  5. 《吃土》全书笔记整理
  6. [学习之道] 修福不修慧,大象披璎珞; 修慧不修福,罗汉托空钵 (学习写程序,只靠补习上课吗?)...
  7. VMware上安装Linux镜像CentOS
  8. 2.5、调用后置处理器
  9. 一起来学Masonry (一)
  10. React 组件生命周期详解
  11. 通过和函数名相同的字符串调用函数 --浅谈loadstring函数
  12. QTP11的下载地址和破解教程
  13. python中如何显示特殊的单位符号
  14. HTML5期末大作业:抗疫主题网站设计(14页) HTML+CSS+JavaScript web课程设计网页规划与设计...
  15. 苹果中国全系降价:iphone最高降500元,用户可退差价
  16. 木纹标识lisp_lisp_clojure.org
  17. 启动mysql 数据库服务器_启动及关闭MySQL服务器的正确方式
  18. 2022-2027年中国汽油市场规模现状及投资规划建议报告
  19. obj-c中Autorelease、属相定义Property、对象的操作
  20. php仿淘票票,node+vue模仿淘票票的app源码分享

热门文章

  1. 繁体转简体 java_【Java】简体中文、繁体中文转换
  2. 如何给产品需求做“体检”
  3. C#创建,调用WebS'ervice
  4. 淘宝、天猫按关键词搜索商品API接口返回数据展示
  5. 微信卡券功能JAVA版(PS : 其实无关乎什么语言拉 :) )
  6. 远程桌面连接:使用lcx进行端口转发
  7. 简信CRM:手机CRM软件的应用好处有哪些?
  8. 机器学习与数据挖掘复习笔记
  9. 2018-2019-1 20165232 20165231 20165235实验二——固件程序设计
  10. MatConvNet安装问题