+(NSString *) EncodeLat:(double)lat lon:(double)lon {
lat = lat * 1000000;
lon = lon * 1000000;
NSString *k;
lon -= 70000000;
lat -= 5000000;
if (lat > 35000000){
if (lon <= 35000000) {
k = @"6";
} else {
k = @"5";
}
}else
if (lon <= 35000000) {
k = @"7";
}else {
k = @"8";
}
if (lon > 35000000) {
lon -= 35000000;
}
if (lat > 35000000) {
lat -= 35000000;
}
k = [k stringByAppendingString:[self encode:lon]];
k = [k stringByAppendingString:[self encode:lat]];
return k;
}
+(NSString *)encode:(double)v {
NSString *codes = @"0123456789abcdefghijkmnpqrstuvwxyz";
NSString *pch = @"";
v = v * 9 / 250;
for (int i = 0; i < 4; ++i) {
int location = abs((int)v%34);
NSString *str = [codes substringWithRange:NSMakeRange(location, 1)];
//NSString *str = [NSString stringWithFormat:@"%d",[codes characterAtIndex:(int)v%34]];
pch = [pch stringByAppendingString:str];
v /= 34;
}
return pch;
}
IOS 火星坐标转凯立德K码
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- #import<CoreLocation/CoreLocation.h> CLLocation类扩展 */ @in...
- 『导言』 今天,搜集到有关地图开发方面的坐标转化。 首先,我们来看CLLocationManager和MKMapV...
- 『导言』 iOS 开发使用苹果原生地图时候,需要将地球坐标转化为火星坐标。为啥呢?如何转换?分析如下: 既然是在国...
- 在实际开发过程中,由于各种地图坐标之间的偏差,混用导致结果不正确,但如果搞清楚他们采用何种坐标,问题就迎刃而解了;...
- 一、国内地图坐标系简介 1、 WGS84(地图坐标) 美国GPS使用的是WGS84的坐标系统。GPS系统获得的坐...