一種文字紋理管理方法及設(shè)備的制造方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及電子地圖技術(shù)領(lǐng)域,尤其涉及一種可適用于電子地圖的文字紋理管理 方法及設(shè)備。
【背景技術(shù)】
[0002] 目前,電子地圖中常會(huì)涉及到POI(PointOfInterest,興趣點(diǎn))名稱、道路名稱 等文字信息的顯示,在對(duì)文字信息進(jìn)行顯示之前,通常需對(duì)涉及到的文字進(jìn)行相應(yīng)地渲染, 艮P,將涉及到的各文字生成對(duì)應(yīng)的文字紋理。
[0003] 具體地,由于將文字生成相應(yīng)的文字紋理是比較耗時(shí)的操作,因而,在 OPENGL(OpenGraphicsLibrary,一 種專業(yè)的圖形程序接口)或DIRECTX(Direct EXTENSION,簡稱DX,一種多媒體編程接口)等硬件渲染的引擎中,一般情況下,均需將生成 的文字紋理進(jìn)行相應(yīng)的保存,以供下次渲染時(shí)直接使用、提高渲染的速率。但是,由于中文 文字的字庫較為龐大并且由于電子地圖的P0I以及道路信息量較為豐富,使得電子地圖渲 染過程中保存下來的文字紋理的數(shù)量也較為龐大,導(dǎo)致文字紋理在設(shè)備中占用的存儲(chǔ)空間 不斷攀升;另外,由于設(shè)備的可用存儲(chǔ)空間通常是有限的,因此,在對(duì)渲染過程中產(chǎn)生的文 字紋理進(jìn)行保存時(shí),需要采用一定的方式對(duì)其進(jìn)行相應(yīng)管理。
[0004] 具體地,目前,業(yè)界通常采用如下方式對(duì)設(shè)備中保存的文字紋理進(jìn)行相應(yīng)管理:對(duì) 電子地圖渲染過程中涉及到的文字的字號(hào)總數(shù)設(shè)置一上限值,并且,對(duì)每種字號(hào)下所存儲(chǔ) 的文字紋理的數(shù)量也設(shè)置一相應(yīng)的上限值;當(dāng)涉及到的字號(hào)超出其對(duì)應(yīng)的上限值時(shí),刪除 設(shè)備中的不常用的字號(hào)所對(duì)應(yīng)的所有文字紋理;那么,在字號(hào)上限確定以及每種字號(hào)對(duì)應(yīng) 的文字紋理上限也確定的情況下,設(shè)備中的總的文字紋理所占用的存儲(chǔ)空間上限也能夠相 應(yīng)的確定下來。
[0005] 例如,假設(shè)字號(hào)總數(shù)上限為4,每種字號(hào)下可存儲(chǔ)上限為200張的文字紋理,則設(shè) 備中的文字紋理所占用的最大存儲(chǔ)空間為800張紋理;進(jìn)一步地,假設(shè)當(dāng)前設(shè)備中存儲(chǔ)了 16、18、22以及24共4種字號(hào)的文字,當(dāng)電子地圖渲染過程中出現(xiàn)了新的字號(hào)26時(shí),可刪除 設(shè)備中的較不常用的字號(hào),如16號(hào)字對(duì)應(yīng)的所有文字紋理,并將26號(hào)字對(duì)應(yīng)的文字紋理存 儲(chǔ)起來,以在不超過字號(hào)總數(shù)上限的前提下,實(shí)現(xiàn)文字紋理的相應(yīng)管理。
[0006] 但是,由于不同電子地圖設(shè)備的存儲(chǔ)空間通常并不一樣,因此,在根據(jù)設(shè)定的字號(hào) 總數(shù)上限進(jìn)行文字紋理的管理時(shí),并不能合理地利用各設(shè)備的存儲(chǔ)空間;并且,當(dāng)電子地圖 中涉及的字號(hào)較多、超過字號(hào)的總數(shù)上限時(shí),由于需要經(jīng)常刪除某個(gè)字號(hào)下的所有文字紋 理并生成新字號(hào)對(duì)應(yīng)的文字紋理,因此,使得文字紋理的增刪操作較多,還會(huì)進(jìn)一步降低電 子地圖的渲染效率。
【發(fā)明內(nèi)容】
[0007] 本發(fā)明實(shí)施例提供了一種文字紋理管理方法及設(shè)備,用以解決目前存在的對(duì)文字 紋理進(jìn)行管理時(shí)、無法合理地利用各設(shè)備的存儲(chǔ)空間以及紋理增刪操作過多導(dǎo)致渲染效率 較低的問題。
[0008] 本發(fā)明實(shí)施例提供了一種文字紋理管理方法,包括:
[0009] 針對(duì)電子地圖渲染過程中產(chǎn)生的任一待存儲(chǔ)文字紋理,根據(jù)所述待存儲(chǔ)文字紋理 的紋理尺寸以及預(yù)先配置的紋理尺寸與紋理類型的對(duì)應(yīng)關(guān)系,確定所述待存儲(chǔ)文字紋理對(duì) 應(yīng)的紋理類型;并
[0010] 在根據(jù)預(yù)先配置的紋理類型與紋理個(gè)數(shù)上限值的對(duì)應(yīng)關(guān)系,確定所述對(duì)應(yīng)的紋理 類型下存儲(chǔ)的文字紋理的個(gè)數(shù)小于所述對(duì)應(yīng)的紋理類型所對(duì)應(yīng)的紋理個(gè)數(shù)上限值時(shí),將所 述待存儲(chǔ)文字紋理存儲(chǔ)至所述對(duì)應(yīng)的紋理類型下;
[0011] 其中,各紋理類型對(duì)應(yīng)的紋理個(gè)數(shù)上限值是根據(jù)用于存儲(chǔ)各文字紋理的設(shè)備的硬 件資源預(yù)先配置的;并且,所述設(shè)備的硬件資源越多,對(duì)應(yīng)的紋理尺寸越大的紋理類型所對(duì) 應(yīng)的紋理個(gè)數(shù)上限值越高。
[0012] 進(jìn)一步地,所述設(shè)備的硬件資源至少包括所述設(shè)備的像素取值和/或所述設(shè)備的 顯存取值;
[0013] 其中,所述設(shè)備的像素取值或所述設(shè)備的顯存取值越大,對(duì)應(yīng)的紋理尺寸越大的 紋理類型所對(duì)應(yīng)的紋理個(gè)數(shù)上限值越高。
[0014] 進(jìn)一步地,所述方法還包括:
[0015] 若確定所述對(duì)應(yīng)的紋理類型下存儲(chǔ)的文字紋理的個(gè)數(shù)等于所述對(duì)應(yīng)的紋理類型 所對(duì)應(yīng)的紋理個(gè)數(shù)上限值,則在將所述對(duì)應(yīng)的紋理類型下的一使用頻率低于設(shè)定閾值的已 存儲(chǔ)文字紋理刪除后,將所述待存儲(chǔ)文字紋理存儲(chǔ)至所述對(duì)應(yīng)的紋理類型下。
[0016] 進(jìn)一步地,針對(duì)任一紋理類型,采用紋理列表的形式對(duì)存儲(chǔ)至所述紋理類型下的 各文字紋理進(jìn)行存儲(chǔ);并且,
[0017] 針對(duì)任一紋理列表,所述紋理列表中的文字紋理的使用頻率越高,所述文字紋理 在所述紋理列表中的位置排序越靠前。
[0018] 進(jìn)一步地,在將所述對(duì)應(yīng)的紋理類型下的一使用頻率低于設(shè)定閾值的已存儲(chǔ)文字 紋理刪除后,將所述待存儲(chǔ)文字紋理存儲(chǔ)至所述對(duì)應(yīng)的紋理類型下,包括 :
[0019] 在將所述對(duì)應(yīng)的紋理類型的紋理列表中排序最后的一已存儲(chǔ)文字紋理刪除后,將 所述待存儲(chǔ)文字紋理存儲(chǔ)至所述對(duì)應(yīng)的紋理類型的紋理列表中。
[0020] 進(jìn)一步地,在將所述待存儲(chǔ)文字紋理存儲(chǔ)至所述對(duì)應(yīng)的紋理類型下的同時(shí)或之 后,所述方法還包括:
[0021] 將所述待存儲(chǔ)文字紋理對(duì)應(yīng)的文字的文字信息存儲(chǔ)至與所述待存儲(chǔ)文字紋理對(duì) 應(yīng)的文字的字號(hào)相匹配的文字信息列表中。
[0022] 進(jìn)一步地,在確定所述對(duì)應(yīng)的紋理類型下存儲(chǔ)的文字紋理的個(gè)數(shù)等于所述對(duì)應(yīng)的 紋理類型所對(duì)應(yīng)的紋理個(gè)數(shù)上限值,且在將所述對(duì)應(yīng)的紋理類型下的一已存儲(chǔ)文字紋理刪 除的同時(shí)或之后,所述方法還包括:
[0023] 從與所述已存儲(chǔ)文字紋理對(duì)應(yīng)的文字的字號(hào)相匹配的文字信息列表中,將所述已 存儲(chǔ)文字紋理對(duì)應(yīng)的文字的文字信息進(jìn)行刪除。
[0024] 進(jìn)一步地,針對(duì)任一紋理類型,所述紋理類型對(duì)應(yīng)至少一個(gè)字號(hào);且
[0025] 與所述紋理類型對(duì)應(yīng)的各字號(hào)相匹配的各文字信息列表的文字信息個(gè)數(shù)上限值 之和不大于所述紋理類型對(duì)應(yīng)的紋理個(gè)數(shù)上限值。
[0026] 進(jìn)一步地,本發(fā)明實(shí)施例還提供了一種文字紋理管理設(shè)備,包括:
[0027] 關(guān)系配置單元,用于預(yù)先配置紋理尺寸與紋理類型的對(duì)應(yīng)關(guān)系,以及,紋理類型與 紋理個(gè)數(shù)上限值的對(duì)應(yīng)關(guān)系,其中,各紋理類型對(duì)應(yīng)的紋理個(gè)數(shù)上限值是根據(jù)用于存儲(chǔ)各 文字紋理的設(shè)備的硬件資源預(yù)先配置的,并且,所述設(shè)備的硬件資源越多,對(duì)應(yīng)的紋理尺寸 越大的紋理類型所對(duì)應(yīng)的紋理個(gè)數(shù)上限值越高;
[0028] 類型確定單元,用于針對(duì)電子地圖渲染過程中產(chǎn)生的任一待存儲(chǔ)文字紋理,根據(jù) 所述待存儲(chǔ)文字紋理的紋理尺寸以及所述關(guān)系配置單元預(yù)先配置的紋理尺寸與紋理類型 的對(duì)應(yīng)關(guān)系,確定所述待存儲(chǔ)文字紋理對(duì)應(yīng)的紋理類型;
[0029] 紋理存儲(chǔ)單元,用于在根據(jù)所述關(guān)系配置單元預(yù)先配置的紋理類型與紋理個(gè)數(shù)上 限值的對(duì)應(yīng)關(guān)系,確定所述對(duì)應(yīng)的紋理類型下存儲(chǔ)的文字紋理的個(gè)數(shù)小于所述對(duì)應(yīng)的紋理 類型所對(duì)應(yīng)的紋理個(gè)數(shù)上限值時(shí),將所述待存儲(chǔ)文字紋理存儲(chǔ)至所述對(duì)應(yīng)的紋理類型下。
[0030] 進(jìn)一步地,所述設(shè)備的硬件資源至少包括所述設(shè)備的像素取值和/或所述設(shè)備的 顯存取值;
[0031] 其中,所述設(shè)備的像素取值或所述設(shè)備的顯存取值越大,對(duì)應(yīng)的紋理尺寸越大的 紋理類型所對(duì)應(yīng)的紋理個(gè)數(shù)上限值越高。
[0032] 進(jìn)一步地,所述紋理存儲(chǔ)單元,還用于若確定所述對(duì)應(yīng)的紋理類型下存儲(chǔ)的文字 紋理的個(gè)數(shù)等于所述對(duì)應(yīng)的紋理類型所對(duì)應(yīng)的紋理個(gè)數(shù)上限值,則在將所述對(duì)應(yīng)的紋理類 型下的一使用頻率低于設(shè)定閾值的已存儲(chǔ)文字紋理刪除后,將所述待存儲(chǔ)文字紋理存儲(chǔ)至 所述對(duì)應(yīng)的紋理類型下。
[0033] 進(jìn)一步地,所述紋理存儲(chǔ)單元,具體用于針對(duì)任一紋理類型,采用紋理列表的形式 對(duì)存儲(chǔ)至所述紋理類型下的各文字紋理進(jìn)行存儲(chǔ);并且,
[0034] 針對(duì)任一紋理列表,所述紋理列表中的文字紋理的使用頻率越高,所述文字紋理 在所述紋理列表中的位置排序越靠前。
[0035] 進(jìn)一步地,所述紋理存儲(chǔ)單元,具體用于若確定所述對(duì)應(yīng)的紋理類型下存儲(chǔ)的文 字紋理的個(gè)數(shù)等于所述對(duì)應(yīng)的紋理類型所對(duì)應(yīng)的紋理個(gè)數(shù)上限值,則在將所述對(duì)應(yīng)的紋理 類型的紋理列表中排序最后的一已存儲(chǔ)文字紋理刪除后,將所述待存儲(chǔ)文字紋理存儲(chǔ)至所 述對(duì)應(yīng)的紋理類型的紋理列表中。
[0036] 進(jìn)一步地,所述文字紋理管理設(shè)備還包括信息存儲(chǔ)單元:
[0037] 所述信息存儲(chǔ)單元,用于在將所述待存儲(chǔ)文字紋理存儲(chǔ)至所述對(duì)應(yīng)的紋理類型下 的同時(shí)或之后,將所述待存儲(chǔ)文字紋理對(duì)應(yīng)的文字的文字信息存儲(chǔ)至與所述待存儲(chǔ)文字紋 理對(duì)應(yīng)的文字的字號(hào)相匹配的文字信息列表中。
[0038] 進(jìn)一步地,所述文字紋理管理設(shè)備還包括信息刪除單元:
[0039] 所述信息刪除單元,用于在確定所述對(duì)應(yīng)的紋理類型下存儲(chǔ)的文字紋理的個(gè)數(shù)等 于所述對(duì)應(yīng)的紋理類型所對(duì)應(yīng)的紋理個(gè)數(shù)上限值,且在將所述對(duì)應(yīng)的紋理類型下的一已存 儲(chǔ)文字紋理刪除的同時(shí)或之后,從與所述已存儲(chǔ)文字紋理對(duì)應(yīng)的文字的字號(hào)相匹配的文字 信息列表中,將所述已存儲(chǔ)文字紋理對(duì)應(yīng)的文字的文字信息進(jìn)行刪除。
[0040] 進(jìn)一步地,針對(duì)任一紋理類型,所述紋理類型對(duì)應(yīng)至少一個(gè)字號(hào);且
[0041] 與所述紋理類型對(duì)應(yīng)的各字號(hào)相匹配的各文字信息列表的文字信息個(gè)數(shù)上限值 之和不大于所述紋理類型對(duì)應(yīng)的紋理個(gè)數(shù)上限值。
[0042] 本發(fā)明有益效果如下:
[0043] 本發(fā)明實(shí)