欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

多單位尋路方法及裝置與流程

文檔序號(hào):11269525閱讀:483來源:國知局
多單位尋路方法及裝置與流程

本發(fā)明實(shí)施例涉及計(jì)算機(jī)技術(shù)領(lǐng)域,特別涉及一種多單位尋路方法及裝置。



背景技術(shù):

在角色互動(dòng)類應(yīng)用程序中,應(yīng)用程序中通常會(huì)包括多個(gè)在地圖中可以移動(dòng)的單位。比如,游戲地圖中可以包括多個(gè)可以移動(dòng)的士兵等等。

相關(guān)方案中,為了使得各個(gè)單位能夠到達(dá)指定的位置,終端會(huì)對(duì)每個(gè)單位分別進(jìn)行自動(dòng)尋路,并控制各個(gè)單位沿著自動(dòng)尋路得到的路徑移動(dòng)。

在單位的數(shù)量較多時(shí),上述方案中終端的尋路效率較低。



技術(shù)實(shí)現(xiàn)要素:

為了解決現(xiàn)有技術(shù)中存在的問題,本發(fā)明實(shí)施例提供了一種多單位尋路方法及裝置。技術(shù)方案如下:

根據(jù)本發(fā)明實(shí)施例的第一方面,提供一種多單位尋路方法,該方法包括:

對(duì)單位群組進(jìn)行自動(dòng)尋路,生成沿著地圖中的目標(biāo)路徑移動(dòng)的尋路向?qū)?;所述單位群組中包括n個(gè)單位,n為大于1的整數(shù),所述尋路向?qū)в糜诖_定地圖中從起始點(diǎn)至結(jié)束點(diǎn)之間的移動(dòng)路徑;

控制所述單位群組中的單位跟隨所述尋路向?qū)б苿?dòng);

在所述單位群組中的單位與所述地圖中的障礙物之間的距離小于預(yù)設(shè)距離時(shí),生成避讓向?qū)?,控制所述單位群組中的單位跟隨所述避讓向?qū)Ю@過所述障礙物移動(dòng)。

根據(jù)本發(fā)明實(shí)施例的第二方面,提供一種多單位尋路裝置,該裝置包括:

生成模塊,用于對(duì)單位群組進(jìn)行自動(dòng)尋路,生成沿著地圖中的目標(biāo)路徑移動(dòng)的尋路向?qū)?;所述單位群組中包括n個(gè)單位,n為大于1的整數(shù),所述尋路向?qū)в糜诖_定地圖中從起始點(diǎn)至結(jié)束點(diǎn)之間的移動(dòng)路徑;

控制模塊,用于控制所述單位群組中的單位跟隨所述尋路向?qū)б苿?dòng);

移動(dòng)模塊,用于在所述單位群組中的單位與所述地圖中的障礙物之間的距離小于預(yù)設(shè)距離時(shí),生成避讓向?qū)?,控制所述單位群組中的單位跟隨所述避讓向?qū)Ю@過所述障礙物移動(dòng)。

本發(fā)明實(shí)施例提供的技術(shù)方案帶來的有益效果是:

通過將n個(gè)單位作為一個(gè)單位群組,生成該單位群組的尋路向?qū)?,控制單位群組中的單位跟隨尋路向?qū)б苿?dòng),并在單位群組中的單位與地圖中的障礙物之間的距離小于預(yù)設(shè)距離時(shí),生成避讓向?qū)?,控制單位群組中的單位跟隨避讓向?qū)Ю@過障礙物移動(dòng);也即通過將多個(gè)單位作為一個(gè)整體進(jìn)行自動(dòng)尋路,進(jìn)而只有在與障礙物之間的距離較小時(shí)生成避讓向?qū)?,解決了相關(guān)技術(shù)中分別對(duì)每個(gè)單位進(jìn)行尋路時(shí),尋路效率較低的問題;達(dá)到了可以提高尋路效率的效果。

附圖說明

為了更清楚地說明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對(duì)實(shí)施例描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。

圖1是本發(fā)明一個(gè)實(shí)施例提供的多單位尋路方法的流程圖;

圖2是本發(fā)明一個(gè)實(shí)施例提供的多單位尋路方法中確定的尋路向?qū)У奈恢玫氖疽鈭D;

圖3是本發(fā)明一個(gè)實(shí)施例提供的多單位尋路方法中與障礙物碰撞之后的移動(dòng)方向的示意圖;

圖4是本發(fā)明一個(gè)實(shí)施例提供的多單位尋路方法中與障礙物碰撞后的各種可能的場景的示意圖;

圖5是本發(fā)明一個(gè)實(shí)施例提供的多單位尋路方法中與障礙物碰撞后的各種可能的場景的再一種示意圖;

圖6是本發(fā)明一個(gè)實(shí)施例提供的多單位尋路方法中確定的分散向?qū)У奈恢玫氖疽鈭D;

圖7是本發(fā)明一個(gè)實(shí)施例提供的多單位尋路方法中分散向?qū)б苿?dòng)的一種可能的示意圖;

圖8是本發(fā)明一個(gè)實(shí)施例提供的多單位尋路方法中j個(gè)單位的各個(gè)單位的移動(dòng)軌跡的示意圖;

圖9是本發(fā)明一個(gè)實(shí)施例提供的多單位尋路裝置的示意圖;

圖10是本發(fā)明一個(gè)實(shí)施例提供的終端的示意圖。

具體實(shí)施方式

為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合附圖對(duì)本發(fā)明實(shí)施方式作進(jìn)一步地詳細(xì)描述。

為了便于理解,首先對(duì)各個(gè)實(shí)施例中所涉及的術(shù)語做簡單介紹。

單位:在界面的地圖中可以移動(dòng)的對(duì)象。比如,在游戲地圖中,單位是指可以移動(dòng)的怪獸或者人物等等。

向?qū)В河糜谝龑?dǎo)至少一個(gè)單位移動(dòng)的對(duì)象。通常情況下,向?qū)樘摂M的,地圖中并不會(huì)展示該向?qū)А?/p>

在下述各個(gè)實(shí)施例中,將地圖中的n個(gè)單位看作為一個(gè)整體(也即單位群組),對(duì)單位群組進(jìn)行尋路,生成沿著目標(biāo)路徑移動(dòng)的尋路向?qū)В缓罂刂茊挝蝗航M中的n個(gè)單位跟隨尋路向?qū)б苿?dòng),n為大于等于2的整數(shù),目標(biāo)路徑為從地圖中的起始點(diǎn)移動(dòng)至結(jié)束點(diǎn)之間的路徑,起始點(diǎn)為根據(jù)單位群組中的各個(gè)單位的位置確定的位置,結(jié)束點(diǎn)為地圖中預(yù)設(shè)的位置。由于尋路向?qū)б呀?jīng)經(jīng)過一次尋路,因此尋路向?qū)г谝苿?dòng)過程中并不會(huì)碰到障礙物,然而由于n個(gè)單位之間以及n個(gè)單位與尋路向?qū)еg會(huì)存在一定距離,因此,在n個(gè)單位跟隨尋路向?qū)б苿?dòng)的過程中,n個(gè)單位中的某個(gè)或者某幾個(gè)單位可能會(huì)碰到障礙物。此時(shí),為了使得單位可以繞過障礙物,終端可以生成避讓向?qū)?,并控制單位群組中的單位跟隨避讓向?qū)Ю@過障礙物移動(dòng)。

上述所說的n個(gè)單位為地圖中移動(dòng)規(guī)律一致的各個(gè)單位??蛇x地,該n個(gè)單位可以為地圖中的所有單位,也可以為地圖中按照某一規(guī)律分布的部分單位,比如,n個(gè)單位為地圖中陣列分布并陣列移動(dòng)的單位,本實(shí)施例對(duì)此并不做限定。

請(qǐng)參考圖1,其示出了本發(fā)明一個(gè)實(shí)施例提供的多單位尋路方法的方法流程圖,如圖1所示,該多單位尋路方法可以包括:

步驟101,對(duì)單位群組進(jìn)行自動(dòng)尋路,生成沿著地圖中的目標(biāo)路徑移動(dòng)的尋路向?qū)?;,單位群組中包括n個(gè)單位,n為大于1的整數(shù)。

各個(gè)單位在地圖中都有一個(gè)對(duì)應(yīng)的位置,終端可以根據(jù)單位群組中的各個(gè)單位的位置來確定尋路向?qū)У某跏嘉恢茫蓮钠鹗键c(diǎn)至結(jié)束點(diǎn)之間的目標(biāo)路徑,進(jìn)而得到從初始位置開始、以預(yù)設(shè)速度沿著生成的目標(biāo)路徑移動(dòng)的尋路向?qū)АF渲?,起始點(diǎn)為生成的初始位置,結(jié)束點(diǎn)為系統(tǒng)中預(yù)設(shè)的位置或者用戶在地圖中自定義的位置,對(duì)此并不做限定;預(yù)設(shè)速度為默認(rèn)的速度或者用戶自定義的速度,本實(shí)施例對(duì)此也并不做限定。

終端根據(jù)各個(gè)單位的位置確定尋路向?qū)У某跏嘉恢玫牟襟E包括:計(jì)算各個(gè)單位的位置的加權(quán)平均,將得到的加權(quán)平均后的位置作為該尋路向?qū)У某跏嘉恢谩1热?,?qǐng)參考圖2,假設(shè)n個(gè)單位的位置如圖所示,則終端確定得到的尋路向?qū)У奈恢每梢詾閳D中21所示的位置。當(dāng)然,實(shí)際實(shí)現(xiàn)時(shí),終端還可以將各個(gè)單位的位置的重心位置或者垂心位置作為該尋路向?qū)У某跏嘉恢?,本?shí)施例對(duì)其計(jì)算方式并不做限定。

終端生成從起始點(diǎn)至結(jié)束點(diǎn)之間的目標(biāo)路徑的步驟包括:終端在確定的初始位置的基礎(chǔ)上根據(jù)預(yù)設(shè)尋路算法得到該目標(biāo)路徑。其中,預(yù)設(shè)尋路算法為astar(a星)算法或者網(wǎng)格尋路算法,本實(shí)施例對(duì)此并不做限定。

步驟102,控制單位群組中的單位跟隨尋路向?qū)б苿?dòng)。

n個(gè)單位在跟隨尋路向?qū)б苿?dòng)的過程中,n個(gè)單位的移動(dòng)速度與尋路向?qū)У囊苿?dòng)速度相同,且n個(gè)單位與尋路向?qū)еg的相對(duì)位置保持不變。

步驟103,若單位群組中的單位與障礙物之間的距離小于所述預(yù)設(shè)距離時(shí)單位群組中的i個(gè)單位朝向障礙物的一側(cè)移動(dòng),則生成i個(gè)單位所對(duì)應(yīng)的分散向?qū)?,控制i個(gè)單位保持與分散向?qū)У南鄬?duì)距離不變移動(dòng),i為小于等于n的整數(shù)。

分散向?qū)侵赣糜谝龑?dǎo)i個(gè)單位繞過碰撞的障礙物的向?qū)А?/p>

障礙物是指設(shè)置在地圖中的用于阻礙單位的移動(dòng)的對(duì)象。實(shí)際實(shí)現(xiàn)時(shí),該障礙物可以是位置靜態(tài)不動(dòng)的對(duì)象,比如,障礙物可以為山、河流、建筑物或者其它任何位置靜態(tài)不動(dòng)的對(duì)象;也可以是位置可以動(dòng)態(tài)變化的對(duì)象,比如,障礙物可以為單位前進(jìn)圖中的怪獸、敵軍等等。并且,地圖中的障礙物可以有一個(gè),也可以有至少兩個(gè),本實(shí)施例對(duì)此并不做限定。

本實(shí)施例中,單位群組中的單位與障礙物之間的距離小于預(yù)設(shè)距離是指單位群組中的任一單位與障礙物之間的距離小于預(yù)設(shè)距離。其中,預(yù)設(shè)距離可以為系統(tǒng)中預(yù)先設(shè)定的距離,也可以為用戶自定義的數(shù)值,并且通常情況下,該預(yù)設(shè)距離為數(shù)值較小的數(shù)值,比如可以為0。下述除特殊說明外,均以預(yù)設(shè)距離為0也即發(fā)生碰撞來舉例說明。

單位群組中的單位在與障礙物碰撞之后的移動(dòng)方向,與單位與障礙物碰撞的角度有關(guān)??蛇x地,單位與障礙物碰撞之后,朝向單位與障礙物的切線方向移動(dòng)。比如,請(qǐng)參考圖3,假設(shè)單位群組中與障礙物碰撞的兩個(gè)單位與障礙物的碰撞位置如圖所示,則其中單位31朝向障礙物32的上側(cè)34移動(dòng),而單位33朝向障礙物32的下側(cè)35移動(dòng)。

障礙物的一側(cè)是指單位群組碰撞的所有障礙物的一側(cè)。比如,若單位群組碰撞的障礙物為一個(gè),則障礙物的一側(cè)即為該一個(gè)障礙物的某一側(cè);而若單位群組碰撞的障礙物為至少兩個(gè),則障礙物的一側(cè)即為該至少兩個(gè)障礙物的一側(cè),也即將該至少兩個(gè)障礙物作為一個(gè)整體,障礙物的一側(cè)為該整體的一側(cè)。

實(shí)際實(shí)現(xiàn)時(shí),根據(jù)實(shí)際的碰撞場景,可能會(huì)包括如下幾種情況。

第一種,只包括朝向障礙物一側(cè)移動(dòng)的單位。比如,請(qǐng)參考圖4,其示出了一種可能的碰撞示意圖。如圖4中的(1)圖所示,在單位群組中的單位與障礙物碰撞之后,單位群組中的所有單位朝向障礙物的上側(cè)移動(dòng)。其中,圖4中的各圖均以填充的為障礙物,未填充的為單位為例。

第二種,同時(shí)包括朝向障礙物兩側(cè)移動(dòng)的單位。其中,朝向障礙物兩側(cè)移動(dòng)的單位的個(gè)數(shù)可以相同或者不同,本實(shí)施例對(duì)此并不做限定。比如,請(qǐng)參考圖6,其示出了另一種可能的碰撞示意圖。如圖4中的(2)圖所示,假設(shè)單位群組中的單位有4個(gè),則在與障礙物碰撞之后,其中2個(gè)單位向障礙物的上側(cè)移動(dòng),3個(gè)單位向障礙物的下側(cè)移動(dòng)。

第三種,只包括朝向兩個(gè)障礙物中間移動(dòng)的單位。比如,請(qǐng)參考圖4中的(3)圖,其示出了一種可能的碰撞示意圖。

第四種,同時(shí)包括朝向障礙物一側(cè)移動(dòng)的單位以及朝向障礙物中間移動(dòng)的單位。請(qǐng)參考圖4中的(4)圖,其示出了此時(shí)的一種可能的碰撞示意圖。

第五種,同時(shí)包括朝向障礙物兩側(cè)移動(dòng)的單位以及朝向障礙物中間移動(dòng)的單位。請(qǐng)參考圖4中的(5)圖,其示出了此時(shí)的一種可能的碰撞示意圖。

當(dāng)然實(shí)際實(shí)現(xiàn)時(shí),依據(jù)障礙物的分布,朝向障礙物中間移動(dòng)的單位中,可以包括朝向兩個(gè)單位的中間移動(dòng)的單位,也可以同時(shí)包括朝向3個(gè)障礙物中每兩個(gè)障礙物中間移動(dòng)的單位,比如,請(qǐng)參考圖5,其示出了一種可能的碰撞示意圖。

基于上述碰撞場景,分散向?qū)Э梢杂幸粋€(gè),也可以有兩個(gè)。比如,在上述第一種和第四種場景中,分散向?qū)в幸粋€(gè),而在第二種和第五種場景中,分散向?qū)в袃蓚€(gè),本實(shí)施例對(duì)分散向?qū)У膫€(gè)數(shù)并不做限定。

i個(gè)單位在跟隨分散向?qū)б苿?dòng)的過程中,保持與分散向?qū)У南鄬?duì)位置不變。

步驟104,若單位群組中的單位與障礙物之間的距離小于預(yù)設(shè)距離時(shí)單位群組中的j個(gè)單位朝向障礙物中的兩個(gè)障礙物的中間移動(dòng),則生成j個(gè)單位所對(duì)應(yīng)的聚攏向?qū)?,控制j個(gè)單位跟隨聚攏向?qū)騼蓚€(gè)障礙物的中間聚攏,j為小于等于n的正整數(shù)。

聚攏向?qū)侵赣糜谝龑?dǎo)j個(gè)單位朝向碰撞的兩個(gè)障礙物的中間聚攏的向?qū)?,該聚攏向?qū)ЦS尋路移動(dòng)。

終端可以將j個(gè)單位進(jìn)行部分交疊,進(jìn)而使得交疊后的j個(gè)單位可以向兩個(gè)障礙物的中間聚攏??蛇x地,若j個(gè)單位中相鄰兩個(gè)單位之間存在間隙,則終端還可以去除間隙,進(jìn)而使得j個(gè)單位向兩個(gè)障礙物的中間聚攏,實(shí)際實(shí)現(xiàn)時(shí),若去除間隙之后,j個(gè)單位仍然無法從兩個(gè)障礙物的中間聚攏,則終端可以對(duì)j個(gè)單位進(jìn)行部分交疊,本實(shí)施例對(duì)此并不做限定。本實(shí)施例采用交疊的方式來使得j個(gè)單位向兩個(gè)障礙物的中間聚攏,保證了各個(gè)單位的正常顯示。實(shí)際實(shí)現(xiàn)時(shí),終端還可以對(duì)j個(gè)單位進(jìn)行等比縮小,本實(shí)施例對(duì)此并不做限定。

綜上所述,本實(shí)施例提供的多單位尋路方法,通過將n個(gè)單位作為一個(gè)單位群組,生成該單位群組的尋路向?qū)В刂茊挝蝗航M中的單位跟隨尋路向?qū)б苿?dòng),并在單位群組中的單位與地圖中的障礙物之間的距離小于預(yù)設(shè)距離時(shí),生成避讓向?qū)В刂茊挝蝗航M中的單位跟隨避讓向?qū)Ю@過障礙物移動(dòng);也即通過將多個(gè)單位作為一個(gè)整體進(jìn)行自動(dòng)尋路,進(jìn)而只有在與障礙物之間的距離較小時(shí)生成避讓向?qū)?,解決了相關(guān)技術(shù)中分別對(duì)每個(gè)單位進(jìn)行尋路時(shí),尋路效率較低的問題;達(dá)到了可以提高尋路效率的效果

在步驟103中,生成i個(gè)單位所對(duì)應(yīng)的分散向?qū)У牟襟E可以包括:

第一,根據(jù)i個(gè)單位的位置確定分散向?qū)У牡谝晃恢谩?/p>

比如,結(jié)合圖6圖,終端可以根據(jù)朝向障礙物的上側(cè)移動(dòng)的單位61和62的位置確定得到分散向?qū)?6的第一位置,根據(jù)朝向障礙物的下側(cè)移動(dòng)的單位63、64和65的位置確定得到分散向?qū)?7的第一位置。

本步驟中確定第一位置的確定方式與上述實(shí)施例中步驟101中確定尋路向?qū)У奈恢玫拇_定方式類似,在此不再贅述。

第二,生成初始位置為第一位置且按照預(yù)設(shè)移動(dòng)方式移動(dòng)的分散向?qū)?,預(yù)設(shè)移動(dòng)方式包括以障礙物為中心、目標(biāo)數(shù)值為半徑且單位時(shí)間段內(nèi)在預(yù)設(shè)方向上移動(dòng)的距離為預(yù)設(shè)距離,目標(biāo)數(shù)值為第一位置與碰撞的障礙物之間的距離,預(yù)設(shè)方向?yàn)閷ぢ废驅(qū)У囊苿?dòng)方向,預(yù)設(shè)距離為尋路向?qū)г趩挝粫r(shí)間段內(nèi)在預(yù)設(shè)方向上移動(dòng)的距離。

終端確定得到分散向?qū)У牡谝晃恢弥?,終端可以計(jì)算該第一位置與該分散向?qū)鶎?duì)應(yīng)的i個(gè)單位所碰撞的障礙物之間的距離,將該距離作為目標(biāo)數(shù)值r。

為了保證各個(gè)單位可以與尋路向?qū)较蚯耙苿?dòng),分散向?qū)г谠趩挝粫r(shí)間段內(nèi)在尋路向?qū)У囊苿?dòng)方向上移動(dòng)的距離s與尋路向?qū)г谝苿?dòng)方向上移動(dòng)的距離s相同,也即分散向?qū)г趯ぢ废驅(qū)У囊苿?dòng)方向上的移動(dòng)速度與尋路向?qū)У囊苿?dòng)速度相同。比如,請(qǐng)參考圖7,分散向?qū)Э梢园凑請(qǐng)D中所示的移動(dòng)方式移動(dòng)。

由于分散向?qū)г趩挝粫r(shí)間段內(nèi)在預(yù)設(shè)方向上移動(dòng)的距離與尋路向?qū)г陬A(yù)設(shè)方向上移動(dòng)的距離相同,因此,單位群組中的各個(gè)單位可以同時(shí)到達(dá)結(jié)束點(diǎn)。

在步驟104中,生成j個(gè)單位所對(duì)應(yīng)的聚攏向?qū)У牟襟E可以包括:

第一,根據(jù)j個(gè)單位的位置確定聚攏向?qū)У牡诙恢谩?/p>

本步驟與上述實(shí)施例中確定尋路向?qū)У奈恢玫牟襟E類似,在此不再贅述。并且,在本實(shí)施例中,若j=n,也即單位群組中的所有單位均向兩個(gè)障礙物中間移動(dòng),則此時(shí),確定得到的第二位置與單位群組中的單位與障礙物碰撞時(shí)尋路向?qū)幍奈恢弥睾?,本?shí)施例在此不再贅述。

第二,生成初始位置為第二位置且跟隨尋路向?qū)б苿?dòng)的聚攏向?qū)А?/p>

聚攏向?qū)У囊苿?dòng)速度與尋路向?qū)У囊苿?dòng)速度一致,對(duì)此并不做限定。

相應(yīng)的,步驟104中,控制j個(gè)單位跟隨聚攏向?qū)騼蓚€(gè)障礙物的中間聚攏的步驟可以包括:

第一,對(duì)于j個(gè)單位中的每個(gè)單位,根據(jù)單位的位置以及單位在目標(biāo)連線上的投影位置確定單位的移動(dòng)軌跡,目標(biāo)連線為兩個(gè)障礙物的連線。

單位在目標(biāo)連線上的投影位置是指j個(gè)單位在交疊且移動(dòng)至目標(biāo)連線后在目標(biāo)連線中的位置。在本實(shí)施例中,j個(gè)單位同時(shí)移動(dòng)至目標(biāo)連線處。

可選地,終端確定單位在目標(biāo)連線上的投影位置的步驟包括:終端計(jì)算目標(biāo)連線的總長度,根據(jù)總長度、j個(gè)單位中每個(gè)單位的大小以及相鄰兩個(gè)單位之間的距離計(jì)算j個(gè)單位同時(shí)分布在目標(biāo)連線中時(shí)每個(gè)單位的位置。比如,j=4假設(shè)總長度為10、單位的直徑為5且相鄰兩個(gè)單位之間的距離為0,則4個(gè)單位在到達(dá)目標(biāo)連線后,其兩兩交疊2/3,比如,請(qǐng)參考圖8,其示出了一種可能的分布方式。

在確定得到各個(gè)單位在目標(biāo)連線中的位置之后,終端可以將單位的位置以及確定得到的該單位在目標(biāo)連線上的投影位置的連線作為移動(dòng)軌跡,如圖8,其示出了確定得到的移動(dòng)軌跡的示意圖。

需要說明的是,上述僅以j個(gè)單位在到達(dá)目標(biāo)連線之后,分布在整個(gè)目標(biāo)連線上為例,可選地,j個(gè)單位還可以只占據(jù)目標(biāo)連線中的部分位置,本實(shí)施例對(duì)此并不做限定。

第二,控制單位沿著移動(dòng)軌跡移動(dòng)。

可選地,本步驟可以包括:

(1)、計(jì)算聚攏向?qū)б苿?dòng)至聚攏向?qū)г谀繕?biāo)連線上的投影位置時(shí)所需的時(shí)間。

可選地,聚攏向?qū)г谀繕?biāo)連線上的投影位置是指,聚攏向?qū)ЦS尋路向?qū)б苿?dòng)后在移動(dòng)至目標(biāo)連線時(shí)所處的位置。實(shí)際實(shí)現(xiàn)時(shí),該投影位置可以為目標(biāo)連線的中心位置,本實(shí)施例對(duì)此并不做限定。

可選地,終端可以計(jì)算第二位置與投影位置之間的距離,計(jì)算該距離與預(yù)設(shè)速度的比值,將計(jì)算得到的比值作為該時(shí)間。其中,預(yù)設(shè)速度是指尋路向?qū)б苿?dòng)的速度。

(2)、根據(jù)移動(dòng)軌跡的長度以及時(shí)間確定單位的移動(dòng)速度。

計(jì)算移動(dòng)軌跡的長度與確定的時(shí)間的比值,將該比值作為該單位的移動(dòng)速度。其中,由于不同單位所對(duì)應(yīng)的移動(dòng)軌跡的長度可能不同,而確定得到的時(shí)間相同,因此確定得到的不同單位的移動(dòng)速度可能不同。

(3)、控制單位以移動(dòng)速度沿著移動(dòng)軌跡移動(dòng)。

由于j個(gè)單位中的每個(gè)單位按照上述確定的速度跟隨聚攏向?qū)б苿?dòng),聚攏向?qū)ЦS尋路向?qū)б苿?dòng),因此,各個(gè)單位可以同時(shí)到達(dá)結(jié)束點(diǎn)。

在上述各個(gè)實(shí)施例中,在單位群組跟隨避讓向?qū)Ю@過障礙物之后,單位群組中的各個(gè)單位恢復(fù)至跟隨避讓向?qū)е暗姆植疾⒏S尋路向?qū)Ю^續(xù)移動(dòng)。

本實(shí)施例所說的單位群組跟隨避讓向?qū)Ю@過障礙物是指,單位群組中的單位繞過障礙物且避讓向?qū)У那斑M(jìn)方向與尋路向?qū)У那斑M(jìn)方向一致。比如,在分散向?qū)ьI(lǐng)i個(gè)單位繞過障礙物之后,i個(gè)單位可以繼續(xù)跟隨尋路向?qū)б苿?dòng)。又比如,在j個(gè)單位跟隨聚攏向?qū)У竭_(dá)目標(biāo)連線之后,j個(gè)單位可以恢復(fù)至聚攏前的陣形并繼續(xù)跟隨尋路向?qū)б苿?dòng)。

請(qǐng)參考圖9,其示出了本發(fā)明一個(gè)實(shí)施例提供的多單位尋路裝置的結(jié)構(gòu)示意圖,如圖9所示,該多單位尋路裝置可以包括:生成模塊910、控制模塊920和移動(dòng)模塊930。

生成模塊910,用于對(duì)單位群組進(jìn)行自動(dòng)尋路,生成沿著地圖中的目標(biāo)路徑移動(dòng)的尋路向?qū)?;所述單位群組中包括n個(gè)單位,n為大于1的整數(shù),所述尋路向?qū)в糜诖_定地圖中從起始點(diǎn)至結(jié)束點(diǎn)之間的移動(dòng)路徑;

控制模塊920,用于控制所述單位群組中的單位跟隨所述尋路向?qū)б苿?dòng);

移動(dòng)模塊930,用于在所述單位群組中的單位與所述地圖中的障礙物之間的距離小于預(yù)設(shè)距離時(shí),生成避讓向?qū)?,控制所述單位群組中的單位跟隨所述避讓向?qū)Ю@過所述障礙物移動(dòng)。

綜上所述,本實(shí)施例提供的多單位尋路裝置,通過將n個(gè)單位作為一個(gè)單位群組,生成該單位群組的尋路向?qū)?,控制單位群組中的單位跟隨尋路向?qū)б苿?dòng),并在單位群組中的單位與地圖中的障礙物之間的距離小于預(yù)設(shè)距離時(shí),生成避讓向?qū)В刂茊挝蝗航M中的單位跟隨避讓向?qū)Ю@過障礙物移動(dòng);也即通過將多個(gè)單位作為一個(gè)整體進(jìn)行自動(dòng)尋路,進(jìn)而只有在與障礙物之間的距離較小時(shí)生成避讓向?qū)?,解決了相關(guān)技術(shù)中分別對(duì)每個(gè)單位進(jìn)行尋路時(shí),尋路效率較低的問題;達(dá)到了可以提高尋路效率的效果

基于上述實(shí)施例提供的多單位尋路裝置,可選的,所述移動(dòng)模塊930,還用于:

若所述單位群組中的單位與所述障礙物之間的距離小于所述預(yù)設(shè)距離時(shí)所述單位群組中的i個(gè)單位朝向所述障礙物的一側(cè)移動(dòng),則生成所述i個(gè)單位所對(duì)應(yīng)的分散向?qū)?,控制所述i個(gè)單位保持與所述分散向?qū)У南鄬?duì)距離不變移動(dòng),i為小于等于n的整數(shù);

若所述單位群組中的單位與所述障礙物之間的距離小于所述預(yù)設(shè)距離時(shí)所述單位群組中的j個(gè)單位朝向所述障礙物中的兩個(gè)障礙物的中間移動(dòng),則生成所述j個(gè)單位所對(duì)應(yīng)的聚攏向?qū)?,控制所述j個(gè)單位跟隨所述聚攏向?qū)蛩鰞蓚€(gè)障礙物的中間聚攏,j為小于等于n的正整數(shù)。

可選的,所述移動(dòng)模塊930,還用于:

根據(jù)所述i個(gè)單位的位置確定所述分散向?qū)У牡谝晃恢茫?/p>

生成初始位置為所述第一位置且按照預(yù)設(shè)移動(dòng)方式移動(dòng)的所述分散向?qū)?,所述預(yù)設(shè)移動(dòng)方式包括以所述障礙物為中心、目標(biāo)數(shù)值為半徑且單位時(shí)間段內(nèi)在預(yù)設(shè)方向上移動(dòng)的距離為預(yù)設(shè)距離,所述目標(biāo)數(shù)值為所述第一位置與碰撞的障礙物之間的距離,所述預(yù)設(shè)方向?yàn)樗鰧ぢ废驅(qū)У囊苿?dòng)方向,所述預(yù)設(shè)距離為所述尋路向?qū)г谒鰡挝粫r(shí)間段內(nèi)在所述預(yù)設(shè)方向上移動(dòng)的距離。

可選的,所述移動(dòng)模塊930,還用于:

根據(jù)所述j個(gè)單位的位置確定所述聚攏向?qū)У牡诙恢茫?/p>

生成初始位置為所述第二位置且跟隨所述尋路向?qū)б苿?dòng)的所述聚攏向?qū)А?/p>

可選的,所述移動(dòng)模塊930,還用于:

對(duì)于所述j個(gè)單位中的每個(gè)單位,根據(jù)所述單位的位置以及所述單位在目標(biāo)連線上的投影位置確定所述單位的移動(dòng)軌跡,所述目標(biāo)連線為所述兩個(gè)障礙物的連線;

控制所述單位沿著所述移動(dòng)軌跡移動(dòng)。

可選的,所述移動(dòng)模塊930,還用于:

計(jì)算所述聚攏向?qū)б苿?dòng)至所述聚攏向?qū)г谒瞿繕?biāo)連線上的投影位置時(shí)所需的時(shí)間;

根據(jù)所述移動(dòng)軌跡的長度以及所述時(shí)間確定所述單位的移動(dòng)速度;

控制所述單位以所述移動(dòng)速度沿著所述移動(dòng)軌跡移動(dòng)。

可選的,所述裝置還包括:

恢復(fù)模塊,用于在所述單位群組跟隨所述避讓向?qū)Ю@過所述障礙物之后,所述單位群組中的各個(gè)單位恢復(fù)至跟隨所述避讓向?qū)е暗姆植疾⒏S所述尋路向?qū)Ю^續(xù)移動(dòng)。

需要說明的是:上述實(shí)施例提供的多單位尋路裝置,僅以上述各功能模塊的劃分進(jìn)行舉例說明,實(shí)際應(yīng)用中,可以根據(jù)需要而將上述功能分配由不同的功能模塊完成,即將服務(wù)器的內(nèi)部結(jié)構(gòu)劃分成不同的功能模塊,以完成以上描述的全部或者部分功能。另外,上述實(shí)施例提供的多單位尋路裝置和多單位尋路方法實(shí)施例屬于同一構(gòu)思,其具體實(shí)現(xiàn)過程詳見方法實(shí)施例,這里不再贅述。

本發(fā)明實(shí)施例還提供了一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),該計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)可以是存儲(chǔ)器中所包含的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì);也可以是單獨(dú)存在,未裝配入終端中的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)。該計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)存儲(chǔ)有一個(gè)或者一個(gè)以上程序,該一個(gè)或者一個(gè)以上程序被一個(gè)或者一個(gè)以上的處理器用來執(zhí)行上述多單位尋路方法。

圖10其示出了本發(fā)明一個(gè)實(shí)施例提供的終端1000的框圖,該終端可以包括射頻(rf,radiofrequency)電路1001、包括有一個(gè)或一個(gè)以上計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)的存儲(chǔ)器1002、輸入單元1003、顯示單元1004、傳感器1005、音頻電路1006、無線保真(wifi,wirelessfidelity)模塊1007、包括有一個(gè)或者一個(gè)以上處理核心的處理器1008、以及電源1009等部件。本領(lǐng)域技術(shù)人員可以理解,圖10中示出的終端結(jié)構(gòu)并不構(gòu)成對(duì)終端的限定,可以包括比圖示更多或更少的部件,或者組合某些部件,或者不同的部件布置。其中:

rf電路1001可用于收發(fā)信息或通話過程中,信號(hào)的接收和發(fā)送,特別地,將基站的下行信息接收后,交由一個(gè)或者一個(gè)以上處理器1008處理;另外,將涉及上行的數(shù)據(jù)發(fā)送給基站。通常,rf電路1001包括但不限于天線、至少一個(gè)放大器、調(diào)諧器、一個(gè)或多個(gè)振蕩器、用戶身份模塊(sim,subscriberidentitymodule)卡、收發(fā)信機(jī)、耦合器、低噪聲放大器(lna,lownoiseamplifier)、雙工器等。此外,rf電路1001還可以通過無線通信與網(wǎng)絡(luò)和其他設(shè)備通信。所述無線通信可以使用任一通信標(biāo)準(zhǔn)或協(xié)議,包括但不限于全球移動(dòng)通訊系統(tǒng)(gsm,globalsystemofmobilecommunication)、通用分組無線服務(wù)(gprs,generalpacketradioservice)、碼分多址(cdma,codedivisionmultipleaccess)、寬帶碼分多址(wcdma,widebandcodedivisionmultipleaccess)、長期演進(jìn)(lte,longtermevolution)、電子郵件、短消息服務(wù)(sms,shortmessagingservice)等。

存儲(chǔ)器1002可用于存儲(chǔ)軟件程序以及模塊,處理器1008通過運(yùn)行存儲(chǔ)在存儲(chǔ)器1002的軟件程序以及模塊,從而執(zhí)行各種功能應(yīng)用以及數(shù)據(jù)處理。存儲(chǔ)器1002可主要包括存儲(chǔ)程序區(qū)和存儲(chǔ)數(shù)據(jù)區(qū),其中,存儲(chǔ)程序區(qū)可存儲(chǔ)操作系統(tǒng)、至少一個(gè)功能所需的應(yīng)用程序(比如聲音播放功能、圖像播放功能等)等;存儲(chǔ)數(shù)據(jù)區(qū)可存儲(chǔ)根據(jù)終端的使用所創(chuàng)建的數(shù)據(jù)(比如音頻數(shù)據(jù)、電話本等)等。此外,存儲(chǔ)器1002可以包括高速隨機(jī)存取存儲(chǔ)器,還可以包括非易失性存儲(chǔ)器,例如至少一個(gè)磁盤存儲(chǔ)器件、閃存器件、或其他易失性固態(tài)存儲(chǔ)器件。相應(yīng)地,存儲(chǔ)器1002還可以包括存儲(chǔ)器控制器,以提供處理器1008和輸入單元1003對(duì)存儲(chǔ)器1002的訪問。

輸入單元1003可用于接收輸入的數(shù)字或字符信息,以及產(chǎn)生與用戶設(shè)置以及功能控制有關(guān)的鍵盤、鼠標(biāo)、操作桿、光學(xué)或者軌跡球信號(hào)輸入。具體地,在一個(gè)具體的實(shí)施例中,輸入單元1003可包括觸敏表面以及其他輸入設(shè)備。觸敏表面,也稱為觸摸顯示屏或者觸控板,可收集用戶在其上或附近的觸摸操作(比如用戶使用手指、觸筆等任何適合的物體或附件在觸敏表面上或在觸敏表面附近的操作),并根據(jù)預(yù)先設(shè)定的程式驅(qū)動(dòng)相應(yīng)的連接裝置??蛇x的,觸敏表面可包括觸摸檢測裝置和觸摸控制器兩個(gè)部分。其中,觸摸檢測裝置檢測用戶的觸摸方位,并檢測觸摸操作帶來的信號(hào),將信號(hào)傳送給觸摸控制器;觸摸控制器從觸摸檢測裝置上接收觸摸信息,并將它轉(zhuǎn)換成觸點(diǎn)坐標(biāo),再送給處理器1008,并能接收處理器1008發(fā)來的命令并加以執(zhí)行。此外,可以采用電阻式、電容式、紅外線以及表面聲波等多種類型實(shí)現(xiàn)觸敏表面。除了觸敏表面,輸入單元1003還可以包括其他輸入設(shè)備。具體地,其他輸入設(shè)備可以包括但不限于物理鍵盤、功能鍵(比如音量控制按鍵、開關(guān)按鍵等)、軌跡球、鼠標(biāo)、操作桿等中的一種或多種。

顯示單元1004可用于顯示由用戶輸入的信息或提供給用戶的信息以及終端的各種圖形用戶接口,這些圖形用戶接口可以由圖形、文本、圖標(biāo)、視頻和其任意組合來構(gòu)成。顯示單元1004可包括顯示面板,可選的,可以采用液晶顯示器(lcd,liquidcrystaldisplay)、有機(jī)發(fā)光二極管(oled,organiclight-emittingdiode)等形式來配置顯示面板。進(jìn)一步的,觸敏表面可覆蓋顯示面板,當(dāng)觸敏表面檢測到在其上或附近的觸摸操作后,傳送給處理器1008以確定觸摸事件的類型,隨后處理器1008根據(jù)觸摸事件的類型在顯示面板上提供相應(yīng)的視覺輸出。雖然在圖10中,觸敏表面與顯示面板是作為兩個(gè)獨(dú)立的部件來實(shí)現(xiàn)輸入和輸入功能,但是在某些實(shí)施例中,可以將觸敏表面與顯示面板集成而實(shí)現(xiàn)輸入和輸出功能。

終端還可包括至少一種傳感器1005,比如光傳感器、運(yùn)動(dòng)傳感器以及其他傳感器。具體地,光傳感器可包括環(huán)境光傳感器及接近傳感器,其中,環(huán)境光傳感器可根據(jù)環(huán)境光線的明暗來調(diào)節(jié)顯示面板的亮度,接近傳感器可在終端移動(dòng)到耳邊時(shí),關(guān)閉顯示面板和/或背光。作為運(yùn)動(dòng)傳感器的一種,重力加速度傳感器可檢測各個(gè)方向上(一般為三軸)加速度的大小,靜止時(shí)可檢測出重力的大小及方向,可用于識(shí)別手機(jī)姿態(tài)的應(yīng)用(比如橫豎屏切換、相關(guān)游戲、磁力計(jì)姿態(tài)校準(zhǔn))、振動(dòng)識(shí)別相關(guān)功能(比如計(jì)步器、敲擊)等;至于終端還可配置的陀螺儀、氣壓計(jì)、濕度計(jì)、溫度計(jì)、紅外線傳感器等其他傳感器,在此不再贅述。

音頻電路1006、揚(yáng)聲器,傳聲器可提供用戶與終端之間的音頻接口。音頻電路1006可將接收到的音頻數(shù)據(jù)轉(zhuǎn)換后的電信號(hào),傳輸?shù)綋P(yáng)聲器,由揚(yáng)聲器轉(zhuǎn)換為聲音信號(hào)輸出;另一方面,傳聲器將收集的聲音信號(hào)轉(zhuǎn)換為電信號(hào),由音頻電路1006接收后轉(zhuǎn)換為音頻數(shù)據(jù),再將音頻數(shù)據(jù)輸出處理器1008處理后,經(jīng)rf電路1001以發(fā)送給比如另一終端,或者將音頻數(shù)據(jù)輸出至存儲(chǔ)器1002以便進(jìn)一步處理。音頻電路1006還可能包括耳塞插孔,以提供外設(shè)耳機(jī)與終端的通信。

wifi屬于短距離無線傳輸技術(shù),終端通過wifi模塊1007可以幫助用戶收發(fā)電子郵件、瀏覽網(wǎng)頁和訪問流式媒體等,它為用戶提供了無線的寬帶互聯(lián)網(wǎng)訪問。雖然圖10示出了wifi模塊1007,但是可以理解的是,其并不屬于終端的必須構(gòu)成,完全可以根據(jù)需要在不改變發(fā)明的本質(zhì)的范圍內(nèi)而省略。

處理器1008是終端的控制中心,利用各種接口和線路連接整個(gè)手機(jī)的各個(gè)部分,通過運(yùn)行或執(zhí)行存儲(chǔ)在存儲(chǔ)器1002內(nèi)的軟件程序和/或模塊,以及調(diào)用存儲(chǔ)在存儲(chǔ)器1002內(nèi)的數(shù)據(jù),執(zhí)行終端的各種功能和處理數(shù)據(jù),從而對(duì)手機(jī)進(jìn)行整體監(jiān)控??蛇x的,處理器1008可包括一個(gè)或多個(gè)處理核心;優(yōu)選的,處理器1008可集成應(yīng)用處理器和調(diào)制解調(diào)處理器,其中,應(yīng)用處理器主要處理操作系統(tǒng)、用戶界面和應(yīng)用程序等,調(diào)制解調(diào)處理器主要處理無線通信??梢岳斫獾氖?,上述調(diào)制解調(diào)處理器也可以不集成到處理器1008中。

終端還包括給各個(gè)部件供電的電源1010(比如電池),優(yōu)選的,電源可以通過電源管理系統(tǒng)與處理器1008邏輯相連,從而通過電源管理系統(tǒng)實(shí)現(xiàn)管理充電、放電、以及功耗管理等功能。電源1010還可以包括一個(gè)或一個(gè)以上的直流或交流電源、再充電系統(tǒng)、電源故障檢測電路、電源轉(zhuǎn)換器或者逆變器、電源狀態(tài)指示器等任意組件。

盡管未示出,終端還可以包括攝像頭、藍(lán)牙模塊等,在此不再贅述。具體在本實(shí)施例中,終端中的處理器1008會(huì)運(yùn)行存儲(chǔ)在存儲(chǔ)器1002中的一個(gè)或一個(gè)以上的程序指令,從而實(shí)現(xiàn)上述各個(gè)方法實(shí)施例中所提供的終端。

應(yīng)當(dāng)理解的是,在本文中使用的,除非上下文清楚地支持例外情況,單數(shù)形式“一個(gè)”(“a”、“an”、“the”)旨在也包括復(fù)數(shù)形式。還應(yīng)當(dāng)理解的是,在本文中使用的“和/或”是指包括一個(gè)或者一個(gè)以上相關(guān)聯(lián)地列出的項(xiàng)目的任意和所有可能組合。

上述本發(fā)明實(shí)施例序號(hào)僅僅為了描述,不代表實(shí)施例的優(yōu)劣。

本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例的全部或部分步驟可以通過硬件來完成,也可以通過程序來指令相關(guān)的硬件完成,所述的程序可以存儲(chǔ)于一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中,上述提到的存儲(chǔ)介質(zhì)可以是只讀存儲(chǔ)器,磁盤或光盤等。

以上所述僅為本發(fā)明的較佳實(shí)施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。

當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
普格县| 阿拉尔市| 望谟县| 南溪县| 长白| 沿河| 平阴县| 宁波市| 奎屯市| 林甸县| 崇州市| 礼泉县| 鄄城县| 青川县| 河北区| 涡阳县| 文化| 永年县| 大悟县| 阿勒泰市| 黑水县| 于田县| 柞水县| 江山市| 九寨沟县| 田东县| 丰城市| 兴文县| 漳州市| 辽宁省| 隆化县| 南投市| 陵水| 昌平区| 宾阳县| 茌平县| 天柱县| 临朐县| 小金县| 云南省| 屏东市|