(1)GeoHash算法學(xué)習(xí)講解、解析及原理分析

一、認(rèn)識geohash

算法計算后,獲取到可比較字符串

緯度:1 1 0 1 0 0 1 0 1 1 0 0 0 1 0,經(jīng)度:1 0 1 1 1 0 0 0 1 1 0 0 0 1 1,合并:偶數(shù)位放經(jīng)度,奇數(shù)位放緯度:

首先將11100 11101 00100 01111 0000? 01101轉(zhuǎn)成十進(jìn)制,對應(yīng)著28、29、4、15,0,13 十進(jìn)制對應(yīng)的base32編碼就是wx4g0e

解碼算法相反


然戶將獲取到的經(jīng)緯度二進(jìn)制數(shù)以每5個數(shù)為一組,將每一組都進(jìn)行轉(zhuǎn)換成十進(jìn)制數(shù)字。

然后采用Base32對應(yīng)編碼進(jìn)行轉(zhuǎn)換可得到編碼?wx4g0e這樣的可比較的字符串,比如我們的經(jīng)緯度都分了10次,那么最后生成的字符串的長度就是4,范圍是20km,如果我們經(jīng)緯度都分20次,那么最后生成的字符串的長度就是8,范圍可以精確到19m。為什么是可比較字符串,后面會詳細(xì)講解到。

在此對Base32編碼進(jìn)行一番簡單介紹: Base32,是將數(shù)字 0~9 ,加上26個字母(去除a,i,l,o?四個)進(jìn)行組合而成的32個字符編碼形式。如代碼:

Base32對應(yīng)編碼參考圖:(上面二進(jìn)制轉(zhuǎn)換對應(yīng)的十進(jìn)制數(shù)值)

在線解析的GeoHash值(wx4gjk32kfrx)

二、geohash算法

Geohash中的每一個字母或者數(shù)字(如wx4g0e中的w)都是由5bits組成(2^5 = 32,base32),這5bits可以有32中不同的組合(0~31),這樣我將整個地圖區(qū)域分為32個區(qū)域,00000 ~ 11111標(biāo)識這32個區(qū)域。第一次劃分后:

第一次劃分(11100)5bits中有3bits是經(jīng)度(2^3 = 8), 2bits緯度4個區(qū)段(2^2 = 4),32個區(qū)域(對應(yīng)Base32)

GeoHash將每一個區(qū)域畫成一塊塊矩形塊,用字符串表示,查詢附近點,坐標(biāo)計算出字符串,定位到所在矩形塊,?wx4e就包含wx4e0e,也就是說wx4e0ewx4e范圍內(nèi)。

弊端如圖:不僅獲取當(dāng)前所在矩形區(qū)域,還獲取周圍8個矩形塊中的點:

三、GeoHash對應(yīng)地圖精度參考圖

Redis3.2之后支持Geo

(lat:39.9257460000,lng:116.5998310000)

geohash拆分規(guī)律拆分后:11100 11101 00100 01111 10001 10010 00011 00010 01110 10111 11101

轉(zhuǎn)成10進(jìn)制得到28 29 4 15 17 18 3 2 18 14 23 29

鏈接:https://www.cnblogs.com/LBSer/p/3310455.html

鏈接:https://zhuanlan.zhihu.com/p/27771446

鏈接:https://www.cnblogs.com/tgzhu/p/6204173.html

鏈接:https://www.cnblogs.com/zhenbianshu/p/6863405.html

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1. 引言 GeoHash本質(zhì)上是空間索引的一種方式,其基本原理是將地球理解為一個二維平面,將平面遞歸分解成更小的...
    renzehello閱讀 39,299評論 1 17
  • 1.場景 隨著智能手機和傳感器技術(shù)的發(fā)展,LBS(Location based service)類的應(yīng)用也逐漸多了...
    Daniel_adu閱讀 11,693評論 3 13
  • 文丨雪映窗 11月1日,《回到明朝當(dāng)王爺之楊凌傳》(以下簡稱《回明》)登陸視頻網(wǎng)站。《回明》改編自《回到明朝當(dāng)王爺...
    深壹閱讀 584評論 0 0
  • 秋風(fēng)咋起,整個村莊都淪陷了 籬笆不是籬笆 里面藏滿了綠色的回憶 桃樹脫光了酷夏的盛裝 準(zhǔn)備與這個秋天坦誠相待 多像...
    苦茶如歌閱讀 554評論 3 19
  • 堅持是向上的力量。
    品茶軒pcx閱讀 230評論 3 13

友情鏈接更多精彩內(nèi)容