一種地圖生成方法和計算設(shè)備的制作方法
【專利摘要】本發(fā)明公開了一種地圖生成方法和計算設(shè)備。該方法包括:生成與地圖大小相對應(yīng)的N×M節(jié)點陣列,N和M為大于3的整數(shù);將陣列中的L個節(jié)點設(shè)置為路點,其中每個路點具有表明可行進方向的方向?qū)傩?;根?jù)各路點的方向?qū)傩詫個路點相連形成路徑;顯示與路徑對應(yīng)的第一圖案。
【專利說明】一種地圖生成方法和計算設(shè)備
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及地圖生成方法和計算設(shè)備。
【背景技術(shù)】
[0002]目前,越來越多的軟件和應(yīng)用需要生成并向用戶呈現(xiàn)地圖或者類似的圖案以便實現(xiàn)某種功能。例如,在游戲軟件應(yīng)用中,計算設(shè)備(如臺式計算機、筆記本計算機、智能終端等)生成游戲場景地圖,該地圖中包括玩家控制的角色可以行走、通過的路線以及不能通過的障礙物。此外,在其他一些應(yīng)用中也可以用到這種地圖或者圖案。這里,將包含有特定路徑的地圖和圖案統(tǒng)稱為地圖。路徑是指在該地圖中用戶操作的對象(如角色、光標、手指觸點)所能經(jīng)過并被判定為有效操作的區(qū)域集合。那些用戶操作對象不能經(jīng)過或者雖能經(jīng)過但被判定為無效操作的區(qū)域統(tǒng)稱為障礙。
[0003]目前常見的地圖生成算法是障礙生成法。在地圖中,首先確定障礙的位置,然后在沒有障礙的區(qū)域形成路徑。然而,這種形成路徑的方式需要在操作對象行過程中進行判斷,影響應(yīng)用的運行速度。這對于尤其是像智能手機這樣計算能力有限的計算設(shè)備來說會造成地圖生成的延遲,導致用戶體驗的下降。
【發(fā)明內(nèi)容】
[0004]為此,本發(fā)明提供一種地圖生成方法和計算設(shè)備,以力圖解決或者至少緩解上面存在的冋題。
[0005]根據(jù)本發(fā)明的一個方面,提供一種地圖生成方法。該方法包括:生成與地圖大小相對應(yīng)的NXM節(jié)點陣列,N和M為大于3的整數(shù);將陣列中的L個節(jié)點設(shè)置為路點,其中每個路點具有表明可行進方向的方向?qū)傩?;根?jù)各路點的方向?qū)傩詫個路點相連形成路徑;顯示與路徑對應(yīng)的第一圖案。
[0006]該方法還可以包括:將其余(NXM-L)個節(jié)點設(shè)置為障礙點;顯示與障礙點對應(yīng)的第二圖案。每個路點的方向?qū)傩钥梢园ㄏ蛏蠈傩浴⑾蛳聦傩?、向左屬性、向右屬性。每個路點的各方向?qū)傩灾械闹辽僖粋€指示可行進至相鄰路點。
[0007]根據(jù)本發(fā)明的另一個方面,提供一種計算設(shè)備。該計算設(shè)備包括地圖生成裝置和顯示裝置。地圖生成裝置被配置為:生成與地圖大小相對應(yīng)的NXM陣列,N和M為大于3的整數(shù);將陣列中的L個節(jié)點設(shè)置為路點,其中每個路點具有表明可行進方向的方向?qū)傩?;根?jù)各路點的方向?qū)傩詫個路點相連形成路徑。顯示裝置被配置為顯示與路徑對應(yīng)的第一圖案。
[0008]地圖生成裝置還可以被配置為將其余(NXM-L)個節(jié)點設(shè)置為障礙點。顯示裝置還可以被配置為顯示與障礙點對應(yīng)的第二圖案。
【專利附圖】
【附圖說明】
[0009]為了實現(xiàn)上述以及相關(guān)目的,本文結(jié)合下面的描述和附圖來描述某些說明性方面,這些方面指示了可以實踐本文所公開的原理的各種方式,并且所有方面及其等效方面旨在落入所要求保護的主題的范圍內(nèi)。通過結(jié)合附圖閱讀下面的詳細描述,本公開的上述以及其它目的、特征和優(yōu)勢將變得更加明顯。遍及本公開,相同的附圖標記通常指代相同的部件或元素。
[0010]圖1示出了一個移動終端100的結(jié)構(gòu)框圖;
[0011]圖2示出了根據(jù)本發(fā)明的示例性實施例的地圖陣列示意圖;
[0012]圖3示出了根據(jù)本發(fā)明一個示例性實施例的地圖生成方法300的流程圖;以及
[0013]圖4示出了根據(jù)本發(fā)明的一個示例性實施例的計算設(shè)備400的示意圖。
【具體實施方式】
[0014]下面將參照附圖更詳細地描述本公開的示例性實施例。雖然附圖中顯示了本公開的示例性實施例,然而應(yīng)當理解,可以以各種形式實現(xiàn)本公開而不應(yīng)被這里闡述的實施例所限制。相反,提供這些實施例是為了能夠更透徹地理解本公開,并且能夠?qū)⒈竟_的范圍完整的傳達給本領(lǐng)域的技術(shù)人員。
[0015]圖1是移動終端100的結(jié)構(gòu)框圖。具有多點觸摸能力的移動終端100可以包括存儲器接口 102、一個或多個數(shù)據(jù)處理器、圖像處理器和/或中央處理單元104,以及外圍接口106。
[0016]存儲器接口 102、一個或多個處理器104和/或外圍接口 106既可以是分立元件,也可以集成在一個或多個集成電路中。在移動終端100中,各種元件可以通過一條或多條通信總線或信號線來耦合。傳感器、設(shè)備和子系統(tǒng)可以耦合到外圍接口 106,以便幫助實現(xiàn)多種功能。例如,運動傳感器110、光傳感器112和距離傳感器114可以耦合到外圍接口106,以方便定向、照明和測距等功能。其他傳感器116同樣可以與外圍接口 106相連,例如定位系統(tǒng)(例如GPS接收機)、溫度傳感器、生物測定傳感器或其他感測設(shè)備,由此可以幫助實施相關(guān)的功能。
[0017]相機子系統(tǒng)120和光學傳感器122可以用于方便諸如記錄照片和視頻剪輯的相機功能的實現(xiàn),其中相機子系統(tǒng)和光學傳感器例如可以是電荷耦合器件(CCD)或互補金屬氧化物半導體(CMOS)光學傳感器。
[0018]可以通過一個或多個無線通信子系統(tǒng)124來幫助實現(xiàn)通信功能,其中無線通信子系統(tǒng)可以包括射頻接收機和發(fā)射機和/或光(例如紅外)接收機和發(fā)射機。無線通信子系統(tǒng)124的特定設(shè)計和實施方式可以取決于移動終端100所支持的一個或多個通信網(wǎng)絡(luò)。例如,移動終端100可以包括被設(shè)計成支持GSM網(wǎng)絡(luò)、GPRS網(wǎng)絡(luò)、EDGE網(wǎng)絡(luò)、W1-Fi或WiMax網(wǎng)絡(luò)以及Bluebooth?網(wǎng)絡(luò)的通信子系統(tǒng)124。
[0019]音頻子系統(tǒng)126可以與揚聲器128以及麥克風130相耦合,以便幫助實施啟用語音的功能,例如語音識別、語音復制、數(shù)字記錄和電話功能。
[0020]I/O子系統(tǒng)140可以包括觸摸屏控制器142和/或一個或多個其他輸入控制器144。
[0021]觸摸屏控制器142可以耦合到觸摸屏146。舉例來說,該觸摸屏146和觸摸屏控制器142可以使用多種觸摸感測技術(shù)中的任何一種來檢測與之進行的接觸和移動或是暫停,其中感測技術(shù)包括但不局限于電容性、電阻性、紅外和表面聲波技術(shù)。
[0022]一個或多個其他輸入控制器144可以耦合到其他輸入/控制設(shè)備148,例如一個或多個按鈕、搖桿開關(guān)、拇指旋輪、紅外端口、USB端口、和/或指示筆之類的指點設(shè)備。一個或多個按鈕(未顯示)可以包括用于控制揚聲器128和/或麥克風130音量的向上/向下按鈕。
[0023]存儲器接口 102可以與存儲器150相耦合。該存儲器150可以包括高速隨機存取存儲器和/或非易失性存儲器,例如一個或多個磁盤存儲設(shè)備,一個或多個光學存儲設(shè)備,和/或閃存存儲器(例如NAND,NOR)。
[0024]存儲器150可以存儲操作系統(tǒng)152,例如Android、1S或是Windows Phone之類的操作系統(tǒng)。該操作系統(tǒng)152可以包括用于處理基本系統(tǒng)服務(wù)以及執(zhí)行依賴于硬件的任務(wù)的指令。存儲器150還可以存儲各種應(yīng)用154。在移動設(shè)備運行時,會從存儲器150中加載操作系統(tǒng)152,并且由處理器104執(zhí)行。應(yīng)用154在運行時,也會從存儲器150中加載,并由處理器104執(zhí)行。應(yīng)用154運行在操作系統(tǒng)之上,利用操作系統(tǒng)以及底層硬件提供的接口實現(xiàn)各種用戶期望的功能,如即時通信、網(wǎng)頁瀏覽、圖片管理等。應(yīng)用可以是獨立于操作系統(tǒng)提供的,也可以是操作系統(tǒng)自帶的。
[0025]在一些應(yīng)用154中,例如游戲應(yīng)用中,需要快速生成地圖從而用戶可以操控對象在地圖上移動。為此,本發(fā)明提出了一種快速生成地圖的方案。
[0026]圖2示出了根據(jù)本發(fā)明的示例性實施例的地圖陣列示意圖。
[0027]地圖可以對應(yīng)于一個NXM節(jié)點陣列,N和M為大于3的整數(shù)。在圖2中,該陣列為5 X 7陣列。為了便于描述,分別用數(shù)字1-7表示行,字母A-E表示列,并用字母和數(shù)字的組合(例如BI)表示節(jié)點。
[0028]在該陣列中,將其中的L個節(jié)點設(shè)置為路點。在圖2的示例中,L = 19。每個路點具有表明可行進方向的方向?qū)傩?。例如,每個路點具有四個方向?qū)傩裕謩e表明是否允許向上、向下、向左、向右行進。如圖所示,路點BI允許向上、向右行進,也就是說,操作對象可以從路點BI向上行進至路點B2,向右行進至路點Cl。路點Cl允許向左、向右行進,也就是說,操作對象可以從路點Cl向左行進至路點BI,向右行進至路點D1。路點的數(shù)據(jù)結(jié)構(gòu)可以用數(shù)組表示,例如路點BI可以表示為(1,0,0,I),數(shù)組的各元素分別表示在相應(yīng)方向上是否允許行進到相鄰路點,數(shù)值I表示允許行進,數(shù)值O表示不允許行進。一個路點至少具有一個方向?qū)傩灾甘究梢孕羞M,即至少有一個元素值為I。根據(jù)各路點的方向?qū)傩詫個路點相連形成路徑。在圖2中,路徑由路點B1、C1、D1、A2、B2、D2、A3、D3、A4、B4、C4、D4、B5、D5、B6、D6、B7、C7、D7形成。其余(5X7-19)個路點設(shè)置為障礙點。根據(jù)該陣列生成地圖,其中對應(yīng)于路徑顯示第一圖案,對應(yīng)于障礙點顯示第二圖案。用戶操控的對象可以在路徑上按照路點的方向?qū)傩砸苿?,但無法移動進入障礙點。
[0029]這種地圖生成方法的節(jié)點數(shù)據(jù)結(jié)構(gòu)簡單明確,在行進過程中,計算設(shè)備可以根據(jù)用戶的操作指令從當前路點獲取下一步的行進方向,不需要循環(huán)查找判斷,因此處理速度更快,特別是地圖較復雜的情況下。
[0030]圖3示出了根據(jù)本發(fā)明一個示例性實施例的地圖生成方法300的流程圖。
[0031]該方法可以在計算設(shè)備上執(zhí)行。在步驟S310,生成與地圖大小相對應(yīng)的NXM節(jié)點陣列,N和M為大于3的整數(shù)。在步驟S320,將陣列中的L個節(jié)點設(shè)置為路點,其中每個路點具有表明可行進方向的方向?qū)傩?。在步驟S330,根據(jù)各路點的方向?qū)傩詫個路點相連形成路徑。在步驟S340,顯示與路徑對應(yīng)的第一圖案。每個路點的方向?qū)傩园ㄏ蛏蠈傩?、向下屬性、向左屬性、向右屬性。每個路點的各方向?qū)傩灾械闹辽僖粋€指示可行進至相鄰路點。該方法還可以包括將其余(NXM-L)個節(jié)點設(shè)置為障礙點,以及顯示與障礙點對應(yīng)的第二圖案。
[0032]圖4示出根據(jù)本發(fā)明示例性實施例的計算設(shè)備400。
[0033]如圖4所示,計算設(shè)備400包括地圖生成裝置410和顯示裝置420。地圖生成裝置410被配置為生成與地圖大小相對應(yīng)的NXM陣列,N和M為大于3的整數(shù),將陣列中的L個節(jié)點設(shè)置為路點,其中每個路點具有表明可行進方向的方向?qū)傩?,以及根?jù)各路點的方向?qū)傩詫個路點相連形成路徑。顯示裝置420被配置為顯示與路徑對應(yīng)的第一圖案。
[0034]地圖生成裝置410還可以被配置為將其余(NXM-L)個節(jié)點設(shè)置為障礙點。顯示裝置420還可以被配置為顯示與障礙點對應(yīng)的第二圖案。
[0035]應(yīng)當理解,為了精簡本公開并幫助理解各個發(fā)明方面中的一個或多個,在上面對本發(fā)明的示例性實施例的描述中,本發(fā)明的各個特征有時被一起分組到單個實施例、圖、或者對其的描述中。然而,并不應(yīng)將該公開的方法解釋成反映如下意圖:即所要求保護的本發(fā)明要求比在每個權(quán)利要求中所明確記載的特征更多特征。更確切地說,如下面的權(quán)利要求書所反映的那樣,發(fā)明方面在于少于前面公開的單個實施例的所有特征。因此,遵循【具體實施方式】的權(quán)利要求書由此明確地并入該【具體實施方式】,其中每個權(quán)利要求本身都作為本發(fā)明的單獨實施例。
[0036]本領(lǐng)域那些技術(shù)人員應(yīng)當理解在本文所公開的示例中的設(shè)備的模塊或單元或組件可以布置在如該實施例中所描述的設(shè)備中,或者可替換地可以定位在與該示例中的設(shè)備不同的一個或多個設(shè)備中。前述示例中的模塊可以組合為一個模塊或者此外可以分成多個子模塊。
[0037]本領(lǐng)域那些技術(shù)人員可以理解,可以對實施例中的設(shè)備中的模塊進行自適應(yīng)性地改變并且把它們設(shè)置在與該實施例不同的一個或多個設(shè)備中??梢园褜嵤├械哪K或單元或組件組合成一個模塊或單元或組件,以及此外可以把它們分成多個子模塊或子單元或子組件。除了這樣的特征和/或過程或者單元中的至少一些是相互排斥之外,可以采用任何組合對本說明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的所有特征以及如此公開的任何方法或者設(shè)備的所有過程或單元進行組合。除非另外明確陳述,本說明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的每個特征可以由提供相同、等同或相似目的的替代特征來代替。
[0038]此外,本領(lǐng)域的技術(shù)人員能夠理解,盡管在此所述的一些實施例包括其它實施例中所包括的某些特征而不是其它特征,但是不同實施例的特征的組合意味著處于本發(fā)明的范圍之內(nèi)并且形成不同的實施例。例如,在下面的權(quán)利要求書中,所要求保護的實施例的任意之一都可以以任意的組合方式來使用。
[0039]此外,所述實施例中的一些在此被描述成可以由計算機系統(tǒng)的處理器或者由執(zhí)行所述功能的其它裝置實施的方法或方法元素的組合。因此,具有用于實施所述方法或方法元素的必要指令的處理器形成用于實施該方法或方法元素的裝置。此外,裝置實施例的在此所述的元素是如下裝置的例子:該裝置用于實施由為了實施該發(fā)明的目的的元素所執(zhí)行的功能。
[0040]如在此所使用的那樣,除非另行規(guī)定,使用序數(shù)詞“第一”、“第二”、“第三”等等來描述普通對象僅僅表示涉及類似對象的不同實例,并且并不意圖暗示這樣被描述的對象必須具有事件上、空間上、排序方面或者以任意其它方式的給定順序。
[0041]盡管根據(jù)有限數(shù)量的實施例描述了本發(fā)明,但是受益于上面的描述,本【技術(shù)領(lǐng)域】內(nèi)的技術(shù)人員明白,在由此描述的本發(fā)明的范圍內(nèi),可以設(shè)想其它實施例。此外,應(yīng)當注意,本說明書中使用的語言主要是為了可讀性和教導的目的而選擇的,而不是為了解釋或者限定本發(fā)明的主題而選擇的。因此,在不偏離所附權(quán)利要求書的范圍和精神的情況下,對于本【技術(shù)領(lǐng)域】的普通技術(shù)人員來說許多修改和變更都是顯而易見的。對于本發(fā)明的范圍,對本發(fā)明所做的公開是說明性的,而非限制性的,本發(fā)明的范圍由所附權(quán)利要求書限定。
【權(quán)利要求】
1.一種地圖生成方法,包括: 生成與地圖大小相對應(yīng)的NXM節(jié)點陣列,N和M為大于3的整數(shù); 將陣列中的L個節(jié)點設(shè)置為路點,其中每個路點具有表明可行進方向的方向?qū)傩裕? 根據(jù)各路點的方向?qū)傩詫個路點相連形成路徑; 顯示與路徑對應(yīng)的第一圖案。
2.如權(quán)利要求1所述的方法,還包括: 將其余(NXM-L)個節(jié)點設(shè)置為障礙點; 顯示與障礙點對應(yīng)的第二圖案。
3.如權(quán)利要求1所述的方法,其中每個路點的方向?qū)傩园ㄏ蛏蠈傩?、向下屬性、向左屬性、向右屬性?br>
4.如權(quán)利要求3所述的方法,其中每個路點的各方向?qū)傩灾械闹辽僖粋€指示可行進至相鄰路點。
5.一種計算設(shè)備,包括: 地圖生成裝置,被配置為 生成與地圖大小相對應(yīng)的NXM陣列,N和M為大于3的整數(shù); 將陣列中的L個節(jié)點設(shè)置為路點,其中每個路點具有表明可行進方向的方向?qū)傩裕? 根據(jù)各路點的方向?qū)傩詫個路點相連形成路徑,和 顯示裝置,被配置為顯示與路徑對應(yīng)的第一圖案。
6.如權(quán)利要求5所述的計算設(shè)備,其中所述地圖生成裝置還被配置為將其余(NXM-L)個節(jié)點設(shè)置為障礙點,所述顯示裝置還被配置為顯示與障礙點對應(yīng)的第二圖案。
7.如權(quán)利要求5所述的計算設(shè)備,其中每個路點的方向?qū)傩园ㄏ蛏蠈傩?、向下屬性、向左屬性、向右屬性?br>
8.如權(quán)利要求7所述的計算設(shè)備,其中每個路點的各方向?qū)傩灾械闹辽僖粋€指示可行進至相鄰節(jié)點。
【文檔編號】G06F17/50GK104484513SQ201410720918
【公開日】2015年4月1日 申請日期:2014年12月2日 優(yōu)先權(quán)日:2014年12月2日
【發(fā)明者】柯軍 申請人:廈門飛游信息科技有限公司