iOS OC的geohash實現方法

網上找的很多都是swift的實現,最終找到了一個oc的實現方法,是直接調用C的

#ios OC Geohash

2、geohash算法

  • 根據經緯度計算GeoHash二進制編碼

  • 組碼(將經緯度的兩個二進制編碼合成新串)

  • 使用用0-9、b-z(去掉a, i, l, o)這32個字母進行base32編碼

3、OC中的調用

在OC中調用C的方法

在需要轉geohash的類中直接聲明
#import “geohash.h”

----------------------------->直接在類中寫好方法,等待調用

/**
 *  將經緯度轉成 geohash
 *
 *  @param latitude 緯度
 *  @param longitude 經度
 *  @param length 生成的geohash字符串長度
 *
 *  @return NSString 返回geohash
 */
- (NSString *)getGeohash:(CGFloat)latitude andLon:(CGFloat)longitude andLength:(int)length{
    
    char *hash = GEOHASH_encode(latitude,longitude,length);    // 通過 geohash.h C文件 獲取 geohash 值
    
    NSString *string = [NSString stringWithFormat:@"%s",hash];  // 將char 轉成 string
    
    return string;
}

需要geohash.h的文件才能實現,資源下載鏈接
https://download.csdn.net/download/flyweak/11218159

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章