5]在第一實施例中,上述步驟S101-S104的執(zhí)行主體可為安裝有導(dǎo)航軟件的手機、
汽車等終端。
[0046]通過本發(fā)明第一實施例的導(dǎo)航時識別偏航的方法,解決了稀疏路網(wǎng)下連續(xù)偏航的問題,避免了終端頻繁的請求服務(wù)器更新導(dǎo)航路線,并且保證了對真實偏航的識別效率。
[0047]在圖3中示出了本發(fā)明的第二實施例。在第二實施例中對終端的定位信息與所述路網(wǎng)進(jìn)行匹配的過程進(jìn)行詳細(xì)說明。
[0048]圖3是本發(fā)明第二實施例中的導(dǎo)航時識別偏航的方法的實現(xiàn)流程200,該實現(xiàn)流程200詳述如下:
[0049]在步驟S201中,接收用戶設(shè)定的起點信息、目的地信息以及導(dǎo)航策略;以及獲取終端當(dāng)前位置信息。
[0050]在第二實施例中,所述導(dǎo)航策略包括收費最少、時間最短、距離最短中的一種,可根據(jù)用戶偏好進(jìn)行設(shè)定。
[0051]在第二實施例中,終端的定位信息可通過無線電通訊網(wǎng)絡(luò)(如運營商的GSM網(wǎng)、⑶MA網(wǎng))或GPS、北斗衛(wèi)星導(dǎo)航系統(tǒng)、格洛納斯衛(wèi)星導(dǎo)航系統(tǒng)或伽利略定位系統(tǒng)等衛(wèi)星定位系統(tǒng)等獲得。
[0052]在步驟S202中,向服務(wù)器發(fā)送請求導(dǎo)航路線的消息。
[0053]第二實施例中,所述請求導(dǎo)航路線的消息中包含起點信息、目的地信息、以及導(dǎo)航策略,還包括終端當(dāng)前位置信息。
[0054]在步驟S203中,接收服務(wù)器下發(fā)的導(dǎo)航路線和終端當(dāng)前位置周圍的路網(wǎng)。
[0055]在第二實施例中,服務(wù)器根據(jù)起點信息、目的地信息以及導(dǎo)航策略確定出一條導(dǎo)航路線,同時根據(jù)終端當(dāng)前位置確定對應(yīng)的路網(wǎng)。終端所在的位置不同,對應(yīng)的路網(wǎng)的范圍可能相差很大。本實施例中所述路網(wǎng)需滿足條件:在路網(wǎng)區(qū)域內(nèi)保證有κ(κ為大于等于2的整數(shù))條道路;所述K條道路不包含所述導(dǎo)航路線。因此服務(wù)器根據(jù)終端當(dāng)前位置確定對應(yīng)路網(wǎng)范圍的計算算法可為:以終端當(dāng)前位置為中心確定一個包含K條道路的、面積最小的正方形,以該正方形的四條邊分別進(jìn)行平行延展能夠得到一個僅包含所述K條道路的、面積最大的矩形區(qū)域;優(yōu)選的,可將K取值為5。
[0056]本實施例中,用newLI表示終端當(dāng)前位置,先以newLI作為中心以一吸附半徑R進(jìn)行道路吸附,將滿足上述條件(包含有K條道路:道路1-道路k)時的吸附半徑RO確定出最小正方形Ml,在Ml基礎(chǔ)上,沿所述K條道路的延伸方向進(jìn)行正方形Ml的延展,能夠得到一個僅包含所述K條道路(道路1-道路k)的、面積最大的矩形區(qū)域作為最終矩形M2,最終矩形M2確定的區(qū)域即所述終端在newLI位置時對應(yīng)的路網(wǎng)的范圍。
[0057]在步驟S204中,獲取終端當(dāng)前的定位信息。
[0058]在第二實施例中,客戶端在檢測到終端當(dāng)前的定位信息更新時,獲取終端當(dāng)前的定位信息,用newLI來表示終端當(dāng)前的定位信息。
[0059]在步驟S205中,判斷所述定位信息是否與所述導(dǎo)航路線匹配?若是,執(zhí)行步驟S210,否則,執(zhí)行下一步驟。
[0060]第二實施例中,將newLI向所述導(dǎo)航路線進(jìn)行投影匹配,若newLI的投影落在所述導(dǎo)航路線上,則匹配成功,執(zhí)行步驟S210,否則匹配不成功,執(zhí)行下一步驟。
[0061]在步驟S206中,連續(xù)匹配不成功的次數(shù)是否達(dá)到設(shè)定次數(shù)?若是,執(zhí)行下一步驟,否則,執(zhí)行步驟S210。
[0062]在第二實施例中,將設(shè)定次數(shù)設(shè)定為3次,當(dāng)連續(xù)獲取的3個點的定位信息均不能匹配到所述導(dǎo)航路線時,執(zhí)行下一步驟,否則,執(zhí)行步驟S210。
[0063]在步驟S207中,確定終端當(dāng)前的定位信息是否超出所述路網(wǎng)的范圍?若是,執(zhí)行步驟S209,否則,執(zhí)行下一步驟。
[0064]在第二實施例中,將newLI向所述路網(wǎng)進(jìn)行投影,若newLI的投影落在所述路網(wǎng)的區(qū)域外,則表明終端當(dāng)前的位置超出了所述路網(wǎng)的范圍,否則,執(zhí)行下一步驟。
[0065]可見,在導(dǎo)航開始時確定出的路網(wǎng)范圍越大,在稀疏路網(wǎng)情況下發(fā)生偏航的頻率越低,但若路網(wǎng)范圍太大卻會帶來更多流量的耗費。因此本發(fā)明實施例中采用了上述折的衷路網(wǎng)范圍計算方法,既能減少發(fā)生偏航的頻率,又能節(jié)省流量的耗費。
[0066]在步驟S208中,判斷終端當(dāng)前的定位信息是否與所述路網(wǎng)中K條道路的任一道路匹配?若是,執(zhí)行步驟S209,否則,執(zhí)行步驟S210。
[0067]在第二實施例中,即將newLI分別向所述路網(wǎng)的所述K條道路進(jìn)行投影,若newLI可與其中任意一條道路匹配,則執(zhí)行步驟S209 ;否則執(zhí)行步驟S210。
[0068]在步驟S209中,確定為已偏航,返回執(zhí)行步驟S202以請求服務(wù)器更新導(dǎo)航路線和終端當(dāng)前位置周圍的路網(wǎng)。
[0069]在步驟S210中,檢測終端當(dāng)前的定位信息是否更新,若已更新,返回執(zhí)行步驟S204,以則重新將終端當(dāng)前的定位信息與所述導(dǎo)航路線進(jìn)行匹配。
[0070]在第二實施例中,底層應(yīng)用可按照預(yù)設(shè)頻率獲取終端最新的位置信息,可I秒中獲取一次。獲取的方式如第一實施例所述,其中的定位信息可包括時間點、經(jīng)緯度、朝向角度、速度、水平精度、海拔等信息。若底層應(yīng)用獲取的終端最新的位置信息與上一次獲取的位置信息不同時,則發(fā)出一個終端當(dāng)前的定位信息有更新的通知信息給客戶端軟件。
[0071]第二實施例中,上述步驟S201-S210的執(zhí)行主體可為導(dǎo)航客戶端軟件。
[0072]通過上述第二實施例,隨著終端位置的變化,當(dāng)終端離開服務(wù)器下發(fā)的路網(wǎng)區(qū)域之后,此時若終端的定位信息與所述導(dǎo)航路線匹配不成功,則確定為偏航,向服務(wù)器發(fā)送請求更新導(dǎo)航路線的請求以更新導(dǎo)航路線及終端當(dāng)前位置周圍的路網(wǎng)。在路網(wǎng)更新之后,確定終端是否偏航時則又重新考慮終端的定位信息是否與更新后的路網(wǎng)中道路匹配,若與路網(wǎng)中任一道路匹配成功,才確定為偏航,否則,確定為不偏航??梢姡?dāng)每次計算出的路網(wǎng)范圍越大,在稀疏路網(wǎng)情況下發(fā)生偏航的頻率越低,同時為了節(jié)省流量的耗費,采用了上述折衷的路網(wǎng)范圍計算方法,既能減少發(fā)生偏航的頻率,又能節(jié)省流量。
[0073]如圖4所示,在圖4中示出了本發(fā)明的第三實施例。
[0074]圖4是本發(fā)明第三實施例中的一種導(dǎo)航時下發(fā)路線的方法的實現(xiàn)流程,該實現(xiàn)流程詳述如下:
[0075]在步驟S301中,接收到請求導(dǎo)航路線的消息,所述消息包含終端當(dāng)前位置信息。
[0076]在第三實施例中,所述消息還包括起點信息、目的地信息以及導(dǎo)航策略;所述導(dǎo)航策略包括收費最少、時間最短、距離最短中的一種,可根據(jù)用戶偏好進(jìn)行設(shè)定。
[0077]在步驟S302中,計算與所述消息對應(yīng)的導(dǎo)航路線以及終端當(dāng)前位置周圍的路網(wǎng)。
[0078]在第三實施例中,根據(jù)所述起點信息、目的地信息以及導(dǎo)航策略確定出一條導(dǎo)航路線,同時根據(jù)終端當(dāng)前位置可確定出對應(yīng)的路網(wǎng)的范圍。終端所在的位置不同,對應(yīng)路網(wǎng)的范圍可能相差很大。本實施例中所述路網(wǎng)需滿足條件:在路網(wǎng)區(qū)域內(nèi)保證有κ(κ為大于等于2的整數(shù))條道路,所述K條道路不包含所述導(dǎo)航路線。因此根據(jù)終端當(dāng)前位置確定對應(yīng)路網(wǎng)范圍的方法可為:以終端當(dāng)前位置為中心確定一個包含K條道路的、面積最小的正方形Μ1,以該正方形Ml的四條邊分別進(jìn)行平行延展能夠得到一個僅包含所述K條道路的、面積最大的矩形區(qū)域M2。M2覆蓋的范圍即終端當(dāng)前位置對應(yīng)的路網(wǎng)。
[0079]在步驟S303中,向終端下發(fā)所述導(dǎo)航路線及路網(wǎng)。
[0080]在第三實施例中,當(dāng)接收到終端請求更新導(dǎo)航路線的消息時,需重新計算新的導(dǎo)航路線以及新的路網(wǎng)。當(dāng)然,所述重新請求導(dǎo)航路線的消息包含了終端當(dāng)前的位置信息;然后向終端下發(fā)新的導(dǎo)航路線和新的路網(wǎng)。
[0081]需要說明的是,上述步驟S301-S303的執(zhí)行主體可為導(dǎo)航終端對應(yīng)的服務(wù)器。
[0082]通過第三實施例,導(dǎo)航用的服務(wù)器接收終端的請求消息后,下發(fā)導(dǎo)航路線的同時還下發(fā)一個與終端當(dāng)前