根据网上EXCEL表格给出的关系,生成的C语言代码。计算结果和软件【万能坐标转换980】计算出的结果很接近。
 double B = 39.3926;
double L = 117.4514;
//double B = 0;
//double L = 117;
double L0 = ; /*
************************************************************************************************************************
* Description: This function convert longitude/latitude(xx度xx分xxxxxx秒) to longitude/latitude(xx.xxxxxxxx度).
*
* Arguments : gps_x_y
longitude/latitude(xx度mm分ssssss秒) 输入形式为: xx.mmssssss
*
* Note(s) : none
************************************************************************************************************************
*/
double CALC_GPS_angle(float gps_x_y)
{
/*
double min,sec;
min = (floor(gps_x_y*100)-floor(gps_x_y)*100)/60;
sec = (gps_x_y*10000-floor(gps_x_y*100)*100)/3600;
printf("min = %.6lf\r\n",min);
printf("sec = %.6lf\r\n",sec);
*/
return (floor(gps_x_y)+(floor(gps_x_y*)-floor(gps_x_y)*)/+(gps_x_y*-floor(gps_x_y*)*)/);
} /*
************************************************************************************************************************
* Description: 角度转换为弧度.
*
* Arguments : angle
输入形式(xx.xxxxxxxx度)
*
* Note(s) : none
************************************************************************************************************************
*/
double Angle2RAD(double angle)
{
return (angle*3.1415926/);
} /*
************************************************************************************************************************
* Description: 该函数调用以上2个函数完成计算功能.
*
* Arguments : input L : 经度longitude -> (xx度mm分ssssss秒) 输入形式为: xx.mmssssss
input B : 纬度latitude -> (xx度mm分ssssss秒) 输入形式为: xx.mmssssss
input L0: 中央子午线Central meridian -> (xx度mm分ssssss秒) 输入形式为: xx.mmssssss
output X: 坐标系的y轴
output Y 坐标系的x轴
*
* Note(s) : none
************************************************************************************************************************
*/
void GpsGrid2GaussGrid(double L0, double B, double L, double* X, double* Y)
{
double E2,F2,G2,H2,I2,J2,K2,L2,M2,N2,O2,P2,Q2,R2; E2 = CALC_GPS_angle(B);
#ifdef PRINT_DEG
printf("E2 = %.9lf\r\n",E2);
#endif
F2 = CALC_GPS_angle(L);
#ifdef PRINT_DEG
printf("F2 = %.9lf\r\n",F2);
#endif
G2 = F2 - CALC_GPS_angle(L0);
#ifdef PRINT_DEG
printf("2G = %.9lf\r\n",G2);
#endif
H2 = 0.01744444444*G2;
#ifdef PRINT_DEG
printf("H2 = %.9lf\r\n",H2);
#endif
I2 = tan(Angle2RAD(fabs(E2)));
#ifdef PRINT_DEG
printf("I2 = %.9lf\r\n",I2);
#endif
J2 = cos(Angle2RAD(fabs(E2)));
#ifdef PRINT_DEG
printf("J2 = %.9lf\r\n",J2);
#endif
K2 = 0.006738525415*J2*J2;
#ifdef PRINT_DEG
printf("K2 = %.9lf\r\n",K2);
#endif
L2 = I2*I2;
#ifdef PRINT_DEG
printf("L2 = %.9lf\r\n",L2);
#endif
M2 = + K2;
#ifdef PRINT_DEG
printf("M2 = %.9lf\r\n",M2);
#endif
N2 = 6399698.9018/sqrt(M2);
#ifdef PRINT_DEG
printf("N2 = %.9lf\r\n",N2);
#endif
O2 = H2*H2*J2*J2;
#ifdef PRINT_DEG
printf("O2 = %.9lf\r\n",O2);
#endif
P2 = I2*J2;
#ifdef PRINT_DEG
printf("P2 = %.9lf\r\n",P2);
#endif
Q2 = P2*P2;
#ifdef PRINT_DEG
printf("Q2 = %.9lf\r\n",Q2);
#endif
R2 = (32005.78006+Q2*(133.92133+Q2*0.7031));
#ifdef PRINT_DEG
printf("R2 = %.9lf\r\n",R2);
#endif *X = 6367558.49686*E2/57.29577951308-P2*J2*R2+((((L2-)*L2+)* O2/+(*K2+)*M2-L2)*O2/+)*N2*I2*O2/;
*Y = ((((L2-)*L2-(*L2-)*K2+)*O2/+M2-L2)*O2/+)*N2*(H2*J2)+; }

GPS坐标转大地坐标的更多相关文章

  1. GPS坐标互转:WGS-84(GPS)、GCJ-02(Google地图)、BD-09(百度地图)(转载)

    WGS-84:是国际标准,GPS坐标(Google Earth使用.或者GPS模块)GCJ-02:中国坐标偏移标准,Google Map.高德.腾讯使用BD-09:百度坐标偏移标准,Baidu Map ...

  2. GPS坐标互转:WGS-84(GPS)、GCJ-02(Google地图)、BD-09(百度地图)

    WGS-84:是国际标准,GPS坐标(Google Earth使用.或者GPS模块)GCJ-02:中国坐标偏移标准,Google Map.高德.腾讯使用BD-09:百度坐标偏移标准,Baidu Map ...

  3. GPS坐标换算为百度坐标

    最近在做一个关于手机定位的小应用,需求是这样的,用户通过手机(Wp8)进行二维码扫描操作并且记录用户的当前位置,在PC上可以查看用户所在地图的位置,做法就是在用户扫描条码时,通过手机GPS获取当前在地 ...

  4. 地图坐标转换 -- 火星坐标与GPS坐标

    第一次处理地理位置的数据的人,没什么经验,往往掉入很多坑浪费不少时间.我也是刚刚从坑里爬出来.这篇博文主要是把入门GPS轨迹分析的经验总结一下,以方便大家少走些弯路. (1)可视化 GPS 路径 刚拿 ...

  5. GPS坐标互转:WGS-84(GPS)、GCJ-02(Google地图)、BD-09(百度地图)[转]

    WGS-84:是国际标准,GPS坐标(Google Earth使用.或者GPS模块)GCJ-02:中国坐标偏移标准,Google Map.高德.腾讯使用BD-09:百度坐标偏移标准,Baidu Map ...

  6. PHP+百度地图API+JAVASCRIPT实现GPS坐标与百度坐标转换的实例

    原文:PHP+百度地图API+JAVASCRIPT实现GPS坐标与百度坐标转换的实例 <!--小幅的坐标转换点位程序--> <!DOCTYPE html> <html&g ...

  7. GPS坐标转换为百度地图坐标

    /** * GPS坐标转换为百度地图坐标 * 需要引入javabase64.jar 和json的一些包 * */ public class Gps2BaiDu { public static void ...

  8. GPS坐标换算为百度坐标(转)

    最近在做一个关于手机定位的小应用,需求是这样的,用户通过手机(Wp8)进行二维码扫描操作并且记录用户的当前位置,在PC上可以查看用户所在地图的位置,做法就是在用户扫描条码时,通过手机GPS获取当前在地 ...

  9. BD09坐标(百度坐标) WGS84(GPS坐标) GCJ02(国测局坐标) 的相互转换

    BD09坐标(百度坐标) WGS84(GPS坐标) GCJ02(国测局坐标) 的相互转换 http://www.cnphp6.com/archives/24822 by root ⋅ Leave a ...

随机推荐

  1. Python3的编译安装

    Linux环境自带了Python 2.x版本,但是如果要更新到3.x的版本,可以在Python的官方网站下载Python的源代码并通过源代码构建安装的方式进行安装,具体的步骤如下所示. 1. 安装依赖 ...

  2. k8s local volume 和host path volume的区别

    k8s提供多种volume接口,其中local 和host path是容易混淆的两个接口.下面这篇文章解释了两者的区别: https://groups.google.com/forum/#!topic ...

  3. 加入域之后,【Internet 时间】选项没有了

    这是加入域之前的截图,这时可以看见[Internet 时间]选项. 这是加入域之后的截图,这时就看不到[Internet 时间]选项了. 那这到底是为什么呢?别急,结合概念一看就明白啦. NTP全称网 ...

  4. 关于kail的远程连接

    昨天开始学关于网络攻防的一下知识,虚拟机的镜像用的是kail,对自己造成了很多不适应的地方,有点自闭了. 最近会和大家分享一些关于kail的问题或者说网络攻防方面.这次就说一下kail的远程服务. k ...

  5. vue router 报错: Uncaught (in promise) NavigationDuplicated {_name:""NavigationDuplicated"... 的解决方法

    参考资料:https://blog.csdn.net/zy21131437/article/details/99548983

  6. 生成器的send方法、递推函数、匿名函数及常用内置函数

    生成器的send方法 在使用yield方法创建生成器时,不仅可以使用next方法进行取值,还可以通过send方法向生成器的内部传值 什么是send方法? send方法相当于高级的next方法,send ...

  7. PHP7 下安装 memcache 和 memcached 扩展

    转载自:https://www.jianshu.com/p/c06051207f6e Memcached 是高性能的分布式内存缓存服务器,而PHP memcache 和 memcached 都是 Me ...

  8. springcloud 心得记录

    1.nacos,模块启动无加载顺序 2.nacos,线上配置中心修改文件后,需重启模块

  9. Android性能专项分类

    性能专项分类:1.资源消耗2.启动耗时3.主要页面加载时间4.内存泄漏.抖动5.卡顿.页面渲染 一.资源消耗:CPU.内存.流量.功耗-----1.查看CPU占用率:adb shell dumpsys ...

  10. C# Excel 中设置文字对齐方式、方向和换行

    在Excel表格中输入文字时,我们常常需要调整文字对齐方式或者对文字进行换行.本文将介绍如何通过编程的方式设置文字对齐方式,改变文字方向以及对文字进行换行. //创建Workbook对象 Workbo ...