百度地图坐标系和火星坐标系之间的互相转换
Posted 小维斯
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了百度地图坐标系和火星坐标系之间的互相转换相关的知识,希望对你有一定的参考价值。
// 百度转火星
-(CLLocationCoordinate2D)hhTrans_GCGPS:(CLLocationCoordinate2D)baiduGps
{
CLLocationCoordinate2D googleGps;
double bd_x=baiduGps.longitude - 0.0065;
double bd_y=baiduGps.latitude - 0.006;
double z = sqrt(bd_x * bd_x + bd_y * bd_y) - 0.00002 * sin(bd_y * M_PI);
double theta = atan2(bd_y, bd_x) - 0.000003 * cos(bd_x * M_PI);
googleGps.longitude = z * cos(theta);
googleGps.latitude = z * sin(theta);
return googleGps;
}
其他坐标转百度坐标系
CLLocationCoordinate2D test = CLLocationCoordinate2DMake(location.coordinate.latitude, location.coordinate.longitude);
//转换 google地图、soso地图、aliyun地图、mapabc地图和amap地图所用坐标至百度坐标
NSDictionary* testdic = BMKConvertBaiduCoorFrom(test,BMK_COORDTYPE_COMMON);
//转换GPS坐标至百度坐标
testdic = BMKConvertBaiduCoorFrom(test,BMK_COORDTYPE_GPS);
NSLog(@"x=%f,y=%f",location.coordinate.latitude,location.coordinate.longitude);
NSLog(@"x=%@,y=%@",[testdic objectForKey:@"x"],[testdic objectForKey:@"y"]);
NSString *lat = [MCEncryption base64FromBase64String:[testdic objectForKey:@"x"]] ;
NSString *lon = [MCEncryption base64FromBase64String:[testdic objectForKey:@"y"]] ;
以上是关于百度地图坐标系和火星坐标系之间的互相转换的主要内容,如果未能解决你的问题,请参考以下文章
WGS84(GPS)火星坐标系(GCJ02)百度地图(BD09)坐标系转换案例教程(附转换工具下载)
WGS84(GPS)火星坐标系(GCJ02)百度地图(BD09)坐标系转换案例教程(附转换工具下载)
WGS84(GPS)火星坐标系(GCJ02)百度地图(BD09)坐标系转换案例教程(附转换工具下载)
经纬度之间互相转换(高德转百度,高德转wgs84,百度转高德,百度转wgs84,wgs84转百度,wgs84转高德)