首页 > 编程知识 正文

百度坐标系转火星坐标系的公式,火星坐标转换经纬度

时间:2023-05-06 07:45:55 阅读:284686 作者:3529

由于XX机票的项目,要用到酒店坐标定位,但是呢,服务器提供的坐标是高德 坐标,但是考虑到百度地图用的比较熟悉了,所以考虑将高德坐标转换成百度坐标来做。


以下介绍部分的内容转载自:http://blog.csdn.net/yorling/article/details/9175913

但是,转换部分还是参考本文

总结:

WGS84坐标系:即地球坐标系,国际上通用的坐标系。

GCJ02坐标系:即火星坐标系,WGS84坐标系经加密后的坐标系。

BD09坐标系:即百度坐标系,GCJ02坐标系经加密后的坐标系。

搜狗坐标系、图吧坐标系等,估计也是在GCJ02基础上加密而成的。

 

二、各个地图API采用的坐标系

API坐标系百度地图API百度坐标腾讯搜搜地图API火星坐标搜狐搜狗地图API搜狗坐标*阿里云地图API火星坐标图吧MapBar地图API图吧坐标高德MapABC地图API火星坐标灵图51ditu地图API火星坐标
======================================================================================

代码如下:

import com.baidu.location.BDLocation;import com.baidu.location.BDLocationListener;import com.baidu.location.LocationClient;import com.baidu.location.LocationClientOption;import com.baidu.mapapi.map.LocationData;import com.baidu.mapapi.map.*;import com.baidu.mapapi.map.*;import com.baidu.mapapi.utils.*;import com.baidu.mapapi.*;import android.content.Context;import android.app.Activity;import android.content.Intent;import com.baidu.platform.comapi.basestruct.GeoPoint;



public static JWD point_GCJ_conversion_bd09(JWD gcj){JWD bd09 = new JWD();GeoPoint googlePoint = new GeoPoint((int) (gcj.latitude * 1E6), (int) (gcj.longitude * 1E6)); GeoPoint bdPoint = CoordinateConvert.fromGcjToBaidu(googlePoint);bd09.latitude = bdPoint.getLatitudeE6() / 1E6;bd09.longitude = bdPoint.getLongitudeE6() / 1E6;return bd09;}public static JWD point_GCJ_conversion_bd09(double lat, double lon){JWD gcj = new JWD();gcj.latitude = lat;gcj.longitude = lon;return point_GCJ_conversion_bd09(gcj);}class JWD{double latitude;double longitude;}

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。