热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

利用GPS获取坐标并分析其在Google地图上的偏差

通过手机获取的GPS坐标在手机地图上存在约100-200米的偏差,但在GoogleMaps中搜索同一坐标时,定位非常精确。这种偏差可能出于安全或隐私考虑而被有意引入。此外,不同设备和环境下的GPS信号强度和精度也会影响最终的定位结果。

用手机获取GPS坐标 显示在手机地图偏差大约在100-200米左右,我把坐标放在 Maps.google.com 搜索坐标定位则相当精确。

可能是.....为了安全吧故意加的偏差

不过可以计算偏差使位置精确

代码如下

public class EvilTransform {static double pi &#61; 3.14159265358979324;static double a &#61; 6378245.0;static double ee &#61; 0.00669342162296594323;public static double mgLat;public static double mgLon;public static void transform( double wgLat, double wgLon){if (outOfChina(wgLat, wgLon)){mgLat &#61; wgLat;mgLon &#61; wgLon;return;}double dLat &#61; transformLat(wgLon - 105.0, wgLat - 35.0);double dLon &#61; transformLon(wgLon - 105.0, wgLat - 35.0);double radLat &#61; wgLat / 180.0 * pi;double magic &#61; Math.sin(radLat);magic &#61; 1 - ee * magic * magic;double sqrtMagic &#61; Math. sqrt(magic);dLat &#61; (dLat * 180.0) / (( a * (1 - ee)) / (magic * sqrtMagic) * pi);dLon &#61; (dLon * 180.0) / ( a / sqrtMagic * Math.cos(radLat) * pi);mgLat &#61; wgLat &#43; dLat;mgLon &#61; wgLon &#43; dLon;}static Boolean outOfChina( double lat, double lon){if (lon <72.004 || lon > 137.8347)return true;if (lat <0.8293 || lat > 55.8271)return true;return false;}static double transformLat( double x, double y){double ret &#61; -100.0 &#43; 2.0 * x &#43; 3.0 * y &#43; 0.2 * y * y &#43; 0.1 * x * y &#43; 0.2 * Math.sqrt(Math.abs(x));ret &#43;&#61; (20.0 * Math. sin(6.0 * x * pi) &#43; 20.0 * Math.sin(2.0 * x * pi)) * 2.0 / 3.0;ret &#43;&#61; (20.0 * Math. sin(y * pi) &#43; 40.0 * Math.sin(y / 3.0 * pi)) * 2.0 / 3.0;ret &#43;&#61; (160.0 * Math. sin(y / 12.0 * pi) &#43; 320 * Math.sin(y * pi / 30.0)) * 2.0 / 3.0;return ret;}static double transformLon( double x, double y){double ret &#61; 300.0 &#43; x &#43; 2.0 * y &#43; 0.1 * x * x &#43; 0.1 * x * y &#43; 0.1 * Math.sqrt(Math.abs(x));ret &#43;&#61; (20.0 * Math. sin(6.0 * x * pi) &#43; 20.0 * Math.sin(2.0 * x * pi)) * 2.0 / 3.0;ret &#43;&#61; (20.0 * Math. sin(x * pi) &#43; 40.0 * Math.sin(x / 3.0 * pi)) * 2.0 / 3.0;ret &#43;&#61; (150.0 * Math. sin(x / 12.0 * pi) &#43; 300.0 * Math.sin(x / 30.0 * pi)) * 2.0 / 3.0;return ret;}
}

  

转:https://www.cnblogs.com/freexiaoyu/p/3558966.html



推荐阅读
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • 技术分享:从动态网站提取站点密钥的解决方案
    本文探讨了如何从动态网站中提取站点密钥,特别是针对验证码(reCAPTCHA)的处理方法。通过结合Selenium和requests库,提供了详细的代码示例和优化建议。 ... [详细]
  • DNN Community 和 Professional 版本的主要差异
    本文详细解析了 DotNetNuke (DNN) 的两种主要版本:Community 和 Professional。通过对比两者的功能和附加组件,帮助用户选择最适合其需求的版本。 ... [详细]
  • 360SRC安全应急响应:从漏洞提交到修复的全过程
    本文详细介绍了360SRC平台处理一起关键安全事件的过程,涵盖从漏洞提交、验证、排查到最终修复的各个环节。通过这一案例,展示了360在安全应急响应方面的专业能力和严谨态度。 ... [详细]
  • YB02 防水车载GPS追踪器
    YB02防水车载GPS追踪器由Yuebiz科技有限公司设计生产,适用于车辆防盗、车队管理和实时追踪等多种场合。 ... [详细]
  • golang常用库:配置文件解析库/管理工具viper使用
    golang常用库:配置文件解析库管理工具-viper使用-一、viper简介viper配置管理解析库,是由大神SteveFrancia开发,他在google领导着golang的 ... [详细]
  • Docker的安全基准
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • 优化ListView性能
    本文深入探讨了如何通过多种技术手段优化ListView的性能,包括视图复用、ViewHolder模式、分批加载数据、图片优化及内存管理等。这些方法能够显著提升应用的响应速度和用户体验。 ... [详细]
  • Explore how Matterverse is redefining the metaverse experience, creating immersive and meaningful virtual environments that foster genuine connections and economic opportunities. ... [详细]
  • 探讨如何高效使用FastJSON进行JSON数据解析,特别是从复杂嵌套结构中提取特定字段值的方法。 ... [详细]
  • 本文详细介绍了如何在Linux系统上安装和配置Smokeping,以实现对网络链路质量的实时监控。通过详细的步骤和必要的依赖包安装,确保用户能够顺利完成部署并优化其网络性能监控。 ... [详细]
  • 尽管某些细分市场如WAN优化表现不佳,但全球运营商路由器和交换机市场持续增长。根据最新研究,该市场预计在2023年达到202亿美元的规模。 ... [详细]
  • 离线环境下的Python及其第三方库安装指南
    在项目开发中,有时会遇到电脑只能连接内网或完全无法联网的情况。本文将详细介绍如何在这种环境下安装Python及其所需的第三方库,确保开发工作的顺利进行。 ... [详细]
  • 使用Vultr云服务器和Namesilo域名搭建个人网站
    本文详细介绍了如何通过Vultr云服务器和Namesilo域名搭建一个功能齐全的个人网站,包括购买、配置服务器以及绑定域名的具体步骤。文章还提供了详细的命令行操作指南,帮助读者顺利完成建站过程。 ... [详细]
  • Hadoop入门与核心组件详解
    本文详细介绍了Hadoop的基础知识及其核心组件,包括HDFS、MapReduce和YARN。通过本文,读者可以全面了解Hadoop的生态系统及应用场景。 ... [详细]
author-avatar
手机用户2502874905
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有