GMap.NET开发技巧(四)-GPS百度地图坐标偏移及地图加偏和逆向纠偏解决方法和代码

2012年10月9日 分类: GPS系统, 百度地图

很多国内开发者使用GMap.NET开发地图应用程序,非常方便,可是在实际应用中傻眼了,因为GPS坐标的位置在谷歌和百度地图上出现了严重的便宜,这个是要了命的,地图应用就是要给别人一个精确的Location,解决不了偏差,前面的开发都是白费。但是GMap.NET只是一个对瓦片操作和客户端GDI输出的操作进行了较好的封装,对于有中国特色的国情,跟人家八竿子打不着。所以在有人给GMap.NET的作者提过,但是没有解决。

这和GMap.NET没有关系, 在中国商业地图数据提供和服务提供商,都必须要到国家测绘管理部门,进行评审通过后才能在大陆发布,谷歌地图也也一样。地图服务器商都需将真实坐标的电子地图,加密成火星地图和火星坐标。GPS导航设备生产制造商也需要这样做。所以就出现了GPS坐标在基于WGS84坐标系统的地图上显示出现坐标偏移,误差很大很严重,而且不是线性的,网上有人给出算法公式,都是胡说八道,根本不好用,更离谱的还要根据不同的城市,进行不同的加偏,还有的提供了一个加偏数据库,瞎扯淡。

所以偏移其实给地图一点关系都没有,管你是谷歌、百度还是搜狐地图,只要对GPS坐标进行加偏和纠偏处理就能够解决这个问题。

为了解决GMap.NET的谷歌和百度地图坐标偏移的问题,我就开发了一个纠偏和加偏的算法和动态库给开发者来使用,直接在.NET的工程项目中调用转换方法即可,绝对好用,在谷歌和百度地图上,车辆行驶的轨迹和地图的道路是严丝合缝的吻合的。百度地图、谷歌地图、高德地图、四维地图、GPS终端设备坐标直接可以灵活互转,再也不用受限于远程调用http接口的性能损失和网络中断的麻烦。

需要购买C# .netframework2.0 离线版 DLL 的300元 算法源码600元(Java或者C#语言可选),包含原始坐标加偏和逆向纠偏还原成原始坐标。提供火星坐标和百度坐标两种接口,不是数据库,提供的是算法源码,实时解析,需要的可以直接联系我(2379423771@qq.com)购买。

直接转换,不需要数据库,更不用拆半和二分查询等影响性能的东西。算法库描述参我的文章:地图服务算法库

GPS算法服务库DemoGPS算法服务库Demo 已下载 91 次

开发说明(开发环境是.NET 4 C#) 

   double latitude = 38.123;
   double longitude = 124.5;
  //单个坐标转换
  GpsPoint gp = MapFix.Fix(latitude, longitude);   
  //批量转换
  List<GpsPoint> needTransformGpsPoints;
  List<GpsPoint> gpsPoints = MapFix.Fix(needTransformGpsPoints);



运行效果图如下图所示,在GPS监控平台上,运行轨迹和谷歌地图道路非常吻合,精确度非常高。如需购买完整的交通部部标GPS车辆监控平台,可以联系我2379423771@qq.com。

Java平台,参见:基于Struts+Spring+Hibernate+Ibatis+Quartz+Mina框架构建部标监控平台

.NET平台,参见:基于Asp.NET MVC构建GPS部标平台

标签: , , ,

28 条评论 于 “GMap.NET开发技巧(四)-GPS百度地图坐标偏移及地图加偏和逆向纠偏解决方法和代码”

  1. 2012年10月26日20:32
    1

    提供的DLL文件是加偏还是纠偏的?我们是做GPS定位终端的,需要将GPS坐标加偏后能在google等地图上正确显示,希望有机会能合作。

    • admin
      2012年10月27日14:27
      2

      加偏

  2. 2012年10月27日20:03
    3

    请问一下

    double latitude = 38.123;

     
    double longitude = 124.5;

    这里的经纬度是把GPS的数据转换成度后的,还是直接是GPS的数据小数点左移两位得到的?这些日子为了这个偏移问题搞烦死了,求解
     

    • admin
      2012年10月28日14:10
      4

      输入的数据是你从GPS获得的数据转换成度得到的。

  3. 2012年10月28日19:01
    5

    OK终于可以搞定了,偏移没有了,非常感谢admin

  4. shu
    2012年11月8日14:17
    6

    很好,解决问题了t;

    • admin
      2012年11月8日16:25
      7

      我的可以保证没有问题的,我们已经商用到物流企业当中,如果偏了,客户不会认账的。

  5. 匿名
    2012年11月19日10:46
    8

    有没有纠偏接口?

  6. 匿名
    2012年11月26日11:36
    9

    转换速度不错呢?是什么原因呢

  7. 匿名
    2012年12月21日11:18
    10

    不联网也可以。

  8. tsinghao
    2013年1月2日17:12
    11

    您好,请问dll怎样嵌入c#中

    • admin
      2013年1月2日20:52
      12

      项目需要.net3.5支持,你的framework版本可能低了点.

  9. ke
    2013年2月25日11:57
    13

    请问可以给个.NET 4的么 非常感谢

    • admin
      2013年2月25日20:34
      14

      .NET4下也是可以调用的。

  10. ke
    2013年2月26日10:09
    15

    感谢啊 可以用了

    • 匿名
      2013年4月2日17:35
      16

      null

  11. woshishaoda07
    2013年3月28日09:50
    17

    请问你的离线版的文件有多大?

  12. 匿名
    2013年3月28日15:47
    18

    所以就出现了GPS坐标在基于WGS84坐标系统的地图上显示出现坐标偏移,误差很大很严重,而且不是线性的,网上有人给出算法公式,都是胡说八道,根本不好用,更离谱的还要根据不同的城市,进行不同的加偏,还有的提供了一个加偏数据库,瞎扯淡。
    以上都是瞎扯淡的,请问你这个加偏是基于什么原则呢?

    • admin
      2013年3月29日17:08
      19

      这个东西,提供了下载,能够使用,不偏就行。你们总是怀疑来怀疑去,干嘛不自己试用下,有必要糊弄你们吗,我得到什么了?

  13. 匿名
    2013年3月29日14:58
    20

    我调用DLL库执行方法怎么卡住了

    • admin
      2013年3月29日17:07
      21

      这个是在线版的,一般情况下是没有问题的。因为需要联网,所以个别网络不好的情况下,可能有点慢。第一次启动时候,需要联网,后面速度就快了。

  14. 清泠之清
    2013年4月8日15:23
    22

    很好用;应该是里面封装了个在线纠偏系统;

  15. GPS软件
    2013年4月9日08:37
    23

    买了用了,还可以。

  16. GPS软件
    2013年4月9日08:39
    24

    能不能提供在线地址解析?如根据经纬度坐标,解析出所在的区域(省,市,县,路,点)的格式?这样就方便多了。

  17. 峰行天下
    2013年9月29日10:06
    25

    楼主做的真好,如果地图数据能完全离线保存到本地,在本地上做路线分析就好了,不知道有没有方法实现啊?

  18. 小李理当道
    2013年10月11日09:26
    26

    我的是.net4 但是添加了你的dll进行测试,发现使用不了。为什么

  19. gisnews
    2013年10月28日16:14
    27

    楼主,能把地图瓦片的数据纠偏会wgs84的坐标吗?

  20. 匿名
    2013年12月16日15:42
    28

    上面那个包解压之后里面的GpsFix.dll文件里面提供了那些接口【是否有参数】,能说一下吗?

Leave a Comment