新四季網

一種控制電子地圖縮放的裝置及對應方法與流程

2023-06-14 20:51:41


技術領域

本發明涉及電子地圖技術領域,具體涉及一種控制電子地圖縮放的裝置和控制電子地圖縮放的方法。



背景技術:

目前電子地圖客戶端,在根據使用者的縮小地圖的指令縮小地圖(參閱百度地圖、騰訊地圖等電子地圖網絡客戶端,點擊縮小按鈕即「-」按鈕,可知電子地圖技術領域中縮小地圖表示在相同的電子地圖顯示範圍內顯示的地圖範圍大,地理細節更粗略)時,需要加載與當前顯示級別不同的較高級別的瓦片,由於需要向伺服器請求瓦片以及對瓦片進行圖像渲染等處理,所以在縮小電子地圖時,因為需要較多的時間所以不能及時顯示一些瓦片,電子地圖窗口中會存在空白;網絡性能不佳時,電子地圖的空白更明顯。而且在電子地圖級別之間的切換非常明顯。



技術實現要素:

鑑於上述問題,提出了本發明以便提供一種克服上述問題或者至少部分地解決上述問題的一種控制電子地圖縮放的裝置和相應的控制電子地圖縮放的方法。

依據本發明的一個方面,提供了一種控制電子地圖縮放的裝置,該裝置包括:

目標瓦片運算單元,適於在接收到縮小地圖的指令時,確定縮小到的目標顯示級別,查找出目標顯示級別中需顯示的多個目標瓦片;其中,目標顯示級別比當前顯示級別高;第一加載單元,適於按照當前顯示級別和目標顯示級別之間的級別差加載並縮小顯示當前顯示的瓦片;預加載瓦片運算單元,適於選擇預加載顯示級別,查找出預加載顯示級別中邊緣區域需加載的預加載瓦片;第二加載單元,適於按照優先順序獲取預加載瓦片和目標瓦片,按照預加載顯示級別和目標顯示級別之間的級別差加載並放大顯示預加載瓦片;當獲取到目標瓦片後,加載並顯示所述目標瓦片以替換對應位置的縮小的當前顯示的瓦片和放大的預加載瓦片。

可選地,所述預加載瓦片運算單元,適於選擇比目標顯示級別高的預加載顯示級別,所述預加載瓦片所表示的地圖範圍包括除了當前顯示的瓦片所表示的地圖範圍之外由所述多個目標瓦片所表示的地圖範圍,且各預加載瓦片所對應的地理面積為各目標瓦片所對應的地理面積的n倍,n=4k,k為自然數,表示預加載顯示級別和目標顯示級別之間的級別差。

可選地,所述第一加載單元,適於將當前顯示的瓦片的橫向寬度和縱向高度均縮小為1/p顯示,其中,p=2q,q為自然數,表示目標顯示級別和當前顯示級別之間的級別差;所述第二加載單元,適於將各個預加載瓦片的橫向寬度和縱向高度均放大m倍顯示,其中,m=2k,k為自然數,表示預加載顯示級別和目標顯示級別之間的級別差。

可選地,該裝置還包括:緩存單元,適於設置本地緩存,以及將已顯示的瓦片保存在本地緩存中。

可選地,在所述緩存單元將已顯示的瓦片保存在本地緩存中時,若本地緩存的容量不足,則所述緩存單元從本地緩存中移除最近最少使用的瓦片。

可選地,所述第二加載單元,適於判斷所述預加載瓦片和目標瓦片是否在本地緩存中,若判斷為是,則從本地緩存中讀取預加載瓦片和目標瓦片,若判斷為否,則從伺服器下載預加載瓦片和目標瓦片。

可選地,所述第二加載單元,在加載目標瓦片的同時,增加縮小的當前顯示的瓦片和放大的預加載瓦片的透明度;當加載目標瓦片的操作完成時,移除縮小的當前顯示的瓦片和放大的預加載瓦片以及顯示目標瓦片。

可選地,所述目標瓦片運算單元,適於根據地圖可視區域的縮小中心點的地理位置坐標及地圖的目標顯示級別,換算得到縮小中心點的像素坐標;根據地圖的目標顯示級別,得到需顯示的單個目標瓦片的像素尺寸;根據地圖可視區域的像素尺寸和縮小中心點的像素坐標,得到地圖可視區域的兩個相對的頂點的像素坐標;根據地圖可視區域的兩個相對的頂點的像素坐標和需顯示的單個目標瓦片的像素尺寸得到可視區域內的目標瓦片。

根據本發明的另一方面,提供了一種控制電子地圖縮放的方法,其中,該方法包括:在接收到縮小地圖的指令時,確定縮小到的目標顯示級別,查找出目標顯示級別中需顯示的多個目標瓦片;其中,目標顯示級別比當前顯示級別高;按照當前顯示級別和目標顯示級別之間的級別差加載並縮小顯示當前顯示的瓦片;選擇預加載顯示級別,查找出預加載顯示級別中邊緣區域需加載的預加載瓦片;按照優先順序獲取預加載瓦片和目標瓦片,按照預加載顯示級別和目標顯示級別之間的級別差加載並放大顯示預加載瓦片;當獲取到目標瓦片後,加載並顯示所述目標瓦片以替換對應位置的縮小的當前顯示的瓦片和放大的預加載瓦片。

可選地,所述預加載顯示級別比目標顯示級別高,所述預加載瓦片所表示的地圖範圍包括除了當前顯示的瓦片所表示的地圖範圍之外由所述多個目標瓦片所表示的地圖範圍,且各預加載瓦片所對應的地理面積為各目標瓦片所對應的地理面積的n倍,n=4k,k為自然數,表示預加載顯示級別和目標顯示級別之間的級別差。

可選地,所述按照當前顯示級別和目標顯示級別之間的級別差加載並縮小顯示當前顯示的瓦片,包括:將當前顯示的瓦片的橫向寬度和縱向高度均縮小為1/p顯示,其中,p=2q,q為自然數,表示目標顯示級別和當前顯示級別之間的級別差;所述按照預加載顯示級別和目標顯示級別之間的級別差加載並放大顯示預加載瓦片,包括:將各個預加載瓦片的橫向寬度和縱向高度均放大m倍顯示,其中,m=2k,k為自然數,表示預加載顯示級別和目標顯示級別之間的級別差。

可選地,該方法還包括:設置本地緩存;將已顯示的瓦片保存在本地緩存中。

可選地,該方法還包括:在將已顯示的瓦片保存在本地緩存中時,若本地緩存的容量不足,則從本地緩存中移除最近最少使用的瓦片。

可選地,所述按照優先順序獲取預加載瓦片和目標瓦片具體包括:判斷所述預加載瓦片和目標瓦片是否在本地緩存中,若判斷為是,則從本地緩存中讀取預加載瓦片和目標瓦片,若判斷為否,則從伺服器下載預加載瓦片和目標瓦片。

可選地,所述加載並顯示所述目標瓦片以替換對應位置的縮小的當前顯示的瓦片和放大的預加載瓦片,具體包括:在加載目標瓦片的同時,增加縮小的當前顯示的瓦片和放大的預加載瓦片的透明度;當加載目標瓦片的操作完成時,移除縮小的當前顯示的瓦片和放大的預加載瓦片以及顯示目標瓦片。

可選地,所述查找出目標顯示級別中需顯示的多個目標瓦片,包括:根據地圖可視區域的縮小中心點的地理位置坐標及地圖的目標顯示級別,換算得到縮小中心點的像素坐標;根據地圖的目標顯示級別,得到需顯示的單個目標瓦片的像素尺寸;根據地圖可視區域的像素尺寸和縮小中心點的像素坐標,得到地圖可視區域的兩個相對的頂點的像素坐標;根據地圖可視區域的兩個相對的頂點的像素坐標和需顯示的單個目標瓦片的像素尺寸得到可視區域內的目標瓦片。

根據本發明的控制電子地圖縮放的裝置和控制電子地圖縮放的方法可以通過選擇預加載顯示級別和加載並放大顯示預加載瓦片,快速地顯示模糊的預加載瓦片,以及加載並縮小顯示當前顯示的瓦片,由此解決了現有技術在縮小電子地圖時,因為需要較多的時間所以不能及時顯示一些瓦片,電子地圖窗口中會存在較多空白的問題,達到降低縮小電子地圖時電子地圖窗口中存在空白的概率的效果。通過將預加載瓦片加載並放大顯示模糊的預加載瓦片,以及在獲取到目標瓦片後,加載並顯示目標瓦片以替換對應位置的縮小的當前顯示的瓦片和放大的預加載瓦片,使地圖級別之間的切換不明顯。

上述說明僅是本發明技術方案的概述,為了能夠更清楚了解本發明的技術手段,而可依照說明書的內容予以實施,並且為了讓本發明的上述和其它目的、特徵和優點能夠更明顯易懂,以下特舉本發明的具體實施方式。

附圖說明

通過閱讀下文優選實施方式的詳細描述,各種其他的優點和益處對於本領域普通技術人員將變得清楚明了。附圖僅用於示出優選實施方式的目的,而並不認為是對本發明的限制。而且在整個附圖中,用相同的參考符號表示相同的部件。在附圖中:

圖1示出了根據本發明一個實施例的控制電子地圖縮放的方法的流程圖;

圖2示出了如圖1所示的步驟S100的詳細的流程圖;

圖3示出了如圖1所示的步驟S500的詳細的流程圖;

圖4示出了根據本發明第一實施例的控制電子地圖縮放的裝置的框圖;

圖5示出了根據本發明第二實施例的控制電子地圖縮放的裝置的框圖;以及

圖6示出了根據本發明而實現的電子地圖客戶端的示意圖。

具體實施方式

下面將參照附圖更詳細地描述本公開的示例性實施例。雖然附圖中顯示了本公開的示例性實施例,然而應當理解,可以以各種形式實現本公開而不應被這裡闡述的實施例所限制。相反,提供這些實施例是為了能夠更透徹地理解本公開,並且能夠將本公開的範圍完整的傳達給本領域的技術人員。

本發明的技術構思主要在於,在接收到縮小地圖的指令時,確定目標顯示級別和預加載顯示級別,查找出需顯示的目標瓦片以及預加載顯示級別中邊緣區域(當前顯示的瓦片周邊新增的地圖範圍)需加載的預加載瓦片。由於預加載瓦片的數目比相應的目標瓦片的數目少(例如一張預加載瓦片所表示的地圖範圍相當於較低級別的四張或十六張或更多張目標瓦片所表示的地圖範圍),所以由伺服器下載預加載瓦片和加載預加載瓦片所需要的時間比使用現有技術由伺服器下載目標瓦片和加載目標瓦片所需要的時間短,通過將預加載瓦片加載並放大顯示模糊的預加載瓦片,以及在獲取到目標瓦片後,加載並顯示目標瓦片以替換對應位置的放大預加載瓦片,降低縮小地圖時電子地圖窗口存在空白的概率。通過將預加載瓦片加載並放大顯示模糊的預加載瓦片、加載並縮小顯示當前顯示的瓦片,以及在獲取到目標瓦片後,加載並顯示目標瓦片以替換對應位置的縮小的當前顯示的瓦片和放大的預加載瓦片,電子地圖表現為由模糊到清楚的顯示過程,使地圖級別之間的切換不明顯。

需要說明的是,電子地圖瓦片,即柵格地圖中的圖片,這些圖片按一定規則,拼接成一個完整的電子地圖,將電子地圖縮小,會顯示較高級別的瓦片,本領域中較高級別的單個瓦片所表示的地圖範圍比較低級別的單個瓦片所表示的地圖範圍大,例如,相鄰級別中較高級別的一張瓦片相當於較低級別四張瓦片所表示的地圖範圍,級別差為二的兩個級別中,較高級別的一張瓦片相當於較低級別十六張瓦片所表示的地圖範圍。

圖1示出了根據本發明一個實施例的控制電子地圖縮放的方法的流程圖。該方法包括如下步驟S100至步驟S400:

S100、在接收到縮小地圖的指令時,確定縮小到的目標顯示級別,查找出目標顯示級別中需顯示的多個目標瓦片;其中,目標顯示級別比當前顯示級別高。其中,本領域技術人員能夠了解的是,目標顯示級別是根據使用者輸入的縮小地圖的指令而定的,換言之,目標顯示級別是操作完成之後電子地圖的顯示級別。本領域中將地圖縮小,會顯示較高級別的瓦片,較高級別的瓦片所表示的地圖範圍比較低級別瓦片所表示的地圖範圍大,因此目標顯示級別比當前的顯示級別高。查找目標瓦片的方法,可以是參照如圖2所示的方法,根據地圖可視區域的中心點的地理位置坐標及目標顯示級別計算目標瓦片。顯示所述目標瓦片能夠得到清晰的縮小後的電子地圖。

S200、按照當前顯示級別和目標顯示級別之間的級別差加載並縮小顯示當前顯示的瓦片。

具體地,按照當前顯示級別和目標顯示級別之間的級別差加載並縮小顯示當前顯示的瓦片,包括:將當前顯示的瓦片的橫向寬度和縱向高度均縮小為1/p顯示,其中,p=2q,q為自然數,表示目標顯示級別和當前顯示級別之間的級別差。若目標顯示級別和當前顯示級別之間的級別差為1,則將當前顯示的瓦片的橫向寬度和縱向高度均縮小為1/2顯示;若目標顯示級別和當前顯示級別之間的級別差為2,則將當前顯示的瓦片的橫向寬度和縱向高度均縮小為1/4顯示,依此類推。

本實施例中,通過將當前顯示的瓦片縮小顯示,能夠快速地將縮小後的地圖的一部分區域快速地模糊顯示,周邊的地圖範圍通過下述的步驟S300和S400快速地以較低的清晰度進行顯示。

S300、選擇預加載顯示級別,查找出預加載顯示級別中邊緣區域需加載的預加載瓦片。

本實施例中,預加載顯示級別比目標顯示級別高,預加載瓦片所表示的地圖範圍包括除了當前顯示的瓦片所表示的地圖範圍之外由所述多個目標瓦片所表示的地圖範圍,即縮小後需要在顯示區域顯示的完整地圖範圍除去步驟S200中縮小的當前顯示瓦片所表示的地圖範圍,也就是上述的「邊緣區域」,且各預加載瓦片所對應的地理面積為各目標瓦片所對應的地理面積的n倍,n=4k,k為自然數,表示預加載顯示級別和目標顯示級別之間的級別差。

較佳地,本實施例中,為了更詳細全面地展現地圖上的信息,電子地圖的保存採用分級瓦片機制,將地圖分為多個層級來保存,每個層級下存放相應的柵格地圖瓦片,以兩相鄰顯示級別下的瓦片為例,顯示級別低的一顯示級別下的四個相鄰瓦片(即2×2的呈「田」字形的四個相鄰瓦片)對應於顯示級別高的一顯示級別下的一個瓦片;以級別差為二的兩層瓦片為例,顯示級別低的一顯示級別下的十六個相鄰瓦片(即4×4的十六個相鄰瓦片)對應於顯示級別高的一顯示級別下的一個瓦片。本實施例中,查找預加載瓦片的方法,可以是參照如圖2所示的方法,根據地圖可視區域的縮小中心點的地理位置坐標及預加載顯示級別計算預加載瓦片,也可以是利用與目標瓦片的對應關係根據目標瓦片的編號通過除法取整運算得到預加載瓦片的編號。本實施例中,由於每個預加載瓦片對應多個目標瓦片,所以所述預加載瓦片所表示的地圖範圍可能大於所述多個目標瓦片所表示的地圖範圍。

S400、按照優先順序獲取預加載瓦片和目標瓦片,按照預加載顯示級別和目標顯示級別之間的級別差加載並放大顯示預加載瓦片。通過首先顯示模糊的放大預加載瓦片,加載速度快,減小了在電子地圖上顯示空白瓦片的概率。

本實施例中,按照預加載顯示級別和目標顯示級別之間的級別差加載並放大顯示預加載瓦片,包括:將各個預加載瓦片的橫向寬度和縱向高度均放大m倍顯示,其中,m=2k,k為自然數,表示預加載顯示級別和目標顯示級別之間的級別差。即,如果預加載顯示級別和目標顯示級別之間的級別差為1則將各個預加載瓦片的橫向寬度和縱向高度均放大為2倍進行顯示;如果預加載顯示級別和目標顯示級別之間的級別差為2則將各個預加載瓦片的橫向寬度和縱向高度均放大為4倍進行顯示。

S500、當獲取到目標瓦片後,加載並顯示所述目標瓦片以替換對應位置的縮小的當前顯示的瓦片和放大的預加載瓦片。通過使用清晰的目標瓦片替換對應位置的縮小的當前顯示的瓦片和放大的預加載瓦片,實現清晰顯示地圖以及地圖顯示由模糊到清晰的顯示效果。

綜合上述步驟S100、S200、S300、S400和S500,本實施例通過加載並縮小顯示當前顯示的瓦片、選擇預加載顯示級別和加載並放大顯示預加載瓦片,快速地顯示模糊的清晰度較低的預加載瓦片,降低了電子地圖顯示空白瓦片的概率。

本實施例中通過執行步驟S300和步驟S400,能夠選擇一個比目標顯示級別高的預加載顯示級別以及顯示該預加載顯示級別中的放大預加載瓦片。通過重複地執行步驟S300和步驟S400,也能夠選擇多個比目標顯示級別高的預加載顯示級別以及顯示多個預加載顯示級別中的放大預加載瓦片,具體實施中,可以先顯示級別較高的預加載顯示級別中的放大預加載瓦片,再顯示級別較低的預加載顯示級別中的放大預加載瓦片,同樣實現地圖顯示由模糊到清晰的顯示效果。另外,本領域技術人員應了解,預加載顯示級別也可以是當前顯示級別。

進一步地,該方法還包括:設置本地緩存;將已顯示的瓦片保存在本地緩存中。更具體地,本實施例通過創建本地緩存,控制瓦片的請求頻度。縮小地圖時,能夠優先顯示已經緩存過的瓦片,減少用戶看到空白的概率,並且利用緩存可以提高加載速度,在伺服器端沒有加緩存頭的情況下,也能避免重複請求瓦片。則本實施例的該方法還包括:在將已顯示的瓦片保存在本地緩存中時,若本地緩存的容量不足,則從本地緩存中移除最近最少使用的瓦片。換言之,緩存的實現採用LRU(Least Recently Used,最近最少使用)策略,緩存中的瓦片超過緩存設定的容量時,會優先淘汰最近最少使用的瓦片。

較佳地,上述步驟S300中的選擇預加載顯示級別的方法,是選擇比目標顯示級別高的數個級別,從所述各級別中選擇預加載顯示級別,具體是判斷所述各個級別中的預加載瓦片在緩存中或需要由伺服器下載,選擇需要由伺服器下載的瓦片數目最小的級別為預加載顯示級別從而加快從伺服器下載預加載瓦片的速度,進一步地如果需要由伺服器下載的瓦片數目相同,則優先選擇等級較高的級別為預加載顯示級別從而減少需處理的預加載瓦片的數目以進一步地加快處理速度。

本實施例中,上述步驟S400的按照優先順序獲取預加載瓦片和目標瓦片具體包括:判斷預加載瓦片和目標瓦片是否在本地緩存中,若判斷為是,則從本地緩存中讀取預加載瓦片和目標瓦片,若判斷為否,則從伺服器下載預加載瓦片和目標瓦片。通過優先獲取緩存中的瓦片,能夠提高加載速度。

圖2示出了如圖1所示的步驟S100的詳細的流程圖。步驟S100的查找出目標顯示級別中需顯示的多個目標瓦片,具體包括以下步驟:

S110、根據地圖可視區域的縮小中心點的地理位置坐標及地圖的目標顯示級別,換算得到縮小中心點的像素坐標。

根據投影原理,放大前後的兩地圖中有重疊的點表示相同的地理位置,所述縮小中心點為地圖縮小時所表示的地理位置不變的點。本實施例中的縮小中心點,在接收到使用者通過滑鼠滾輪輸入的縮小地圖指令時能夠是滑鼠的位置,或者在接收到使用者通過頁面按鈕(如「-」號按鈕)輸入的縮小地圖指令時能夠是地圖的中心。根據縮小中心點的地理位置坐標(即經緯度坐標)及目標顯示級別,能夠得到縮小中心點的像素坐標(例如,X-Y坐標)。

S120、根據地圖的目標顯示級別,得到需顯示的單個目標瓦片的像素尺寸。

由上所述可知,本實施例電子地圖的保存採用分級瓦片機制,根據目標顯示級別,能夠得到單個目標瓦片的像素尺寸。

S130、根據地圖可視區域的像素尺寸和縮小中心點的像素坐標,得到地圖可視區域的兩個相對的頂點的像素坐標。

本實施例中,縮小中心點和地圖可視區域的頂點的位置關係是可知的,根據目標顯示級別,能夠得到地圖縮小後可視區域的像素尺寸,因此可以得到地圖縮小後可視區域的兩個相對的頂點的像素坐標。

所述地圖可視區域的兩個相對的頂點,能夠是左上頂點和右下頂點,或是右上頂點和左下頂點,通過相對兩個頂點就能夠確定地圖縮小後可視區域的範圍。

S140、根據地圖可視區域的兩個相對的頂點的像素坐標和需顯示的單個目標瓦片的像素尺寸得到可視區域內的目標瓦片。

步驟S140具體包括:得到兩個相對的頂點所在的目標瓦片的橫向索引編號和縱向索引編號;選取橫向索引編號位於兩個相對的頂點所在的目標瓦片的橫向索引編號之間且縱向索引編號位於兩個相對的頂點所在的目標瓦片的縱向索引編號之間的目標瓦片,即得到地圖可視區域內的目標瓦片。其中,所述得到兩個相對的頂點所在的目標瓦片的橫向索引編號和縱向索引編號,具體包括:對所述頂點分別利用頂點的像素坐標減去地圖的原點的像素坐標得到橫坐標的差值和縱坐標的差值,利用橫坐標的差值除以單個目標瓦片的寬度得到橫向索引編號,利用縱坐標的差值除以單個目標瓦片的高度得到縱向索引編號。

圖3示出了如圖1所示的步驟S500的詳細的流程圖。步驟S500的加載並顯示目標瓦片以替換對應位置的放大的預加載瓦片,具體包括以下步驟:

S510、在加載目標瓦片的同時,增加縮小的當前顯示的瓦片和放大的預加載瓦片的透明度。換言之,在加載目標瓦片時,將縮小的當前顯示的瓦片和放大的預加載瓦片逐漸變得透明。

S520、當加載目標瓦片的操作完成時,移除縮小的當前顯示的瓦片和放大的預加載瓦片以及顯示目標瓦片。具體地,對應於一個縮小的當前顯示的瓦片或一個放大的預加載瓦片的數個目標瓦片加載完成時,移除該縮小的當前顯示的瓦片或放大的預加載瓦片,顯示加載完成的數個目標瓦片,使電子地圖更清晰。

本實施例中,根據不同瀏覽器版本,提供不同的渲染機制,提高渲染瓦片性能,以保證步驟S400中的加載並放大顯示預加載瓦片操作和步驟S500中的加載並顯示目標瓦片操作的流暢性。例如,針對支持webgl接口的瀏覽器,提供WebglRenderer渲染機制;針對支持HTML5標籤Canvas的瀏覽器,提供CanvasRenderer渲染機制;針對支持CSS3的瀏覽器,提供CSSRenderer渲染機制;針對IE6、IE7、IE8等低版本瀏覽器,提供FlashRendere渲染機制;針對所有瀏覽器,提供DivRenderer渲染機制。

圖4示出了根據本發明第一實施例的控制電子地圖縮放的裝置的框圖。該裝置包括目標瓦片運算單元100、預加載瓦片運算單元200、第二加載單元300和第一加載單元400。

目標瓦片運算單元100,適於在接收到縮小地圖的指令時,確定縮小到的目標顯示級別,查找出目標顯示級別中需顯示的多個目標瓦片;其中,目標顯示級別比當前顯示級別高。其中,本領域技術人員能夠了解的是,目標顯示級別是根據使用者輸入的縮小地圖的指令而定的,換言之,目標顯示級別是操作完成之後電子地圖的顯示級別。具體地,本技術領域中將地圖縮小,會顯示較高級別的瓦片,較高級別的瓦片所表示的地圖範圍比較低級別瓦片所表示的地圖範圍大,因此目標顯示級別比當前的顯示級別高。查找目標瓦片的方法,可以是參照如圖2所示的方法,根據地圖可視區域的中心點的地理位置坐標及目標顯示級別計算目標瓦片。顯示所述目標瓦片能夠得到清晰的縮小後的電子地圖。

第一加載單元400,適於按照當前顯示級別和目標顯示級別之間的級別差加載並縮小顯示當前顯示的瓦片。具體地,第一加載單元400按照當前顯示級別和目標顯示級別之間的級別差加載並縮小顯示當前顯示的瓦片包括將當前顯示的瓦片的橫向寬度和縱向高度均縮小為1/p顯示,其中,p=2q,q為自然數,表示目標顯示級別和當前顯示級別之間的級別差。若目標顯示級別和當前顯示級別之間的級別差為1,則將當前顯示的瓦片的橫向寬度和縱向高度均縮小為1/2顯示;若目標顯示級別和當前顯示級別之間的級別差為2,則將當前顯示的瓦片的橫向寬度和縱向高度均縮小為1/4顯示,依此類推。本實施例中,通過將當前顯示的瓦片縮小顯示,能夠快速地將縮小後的地圖的一部分區域快速地模糊顯示,周邊的地圖範圍通過下述的預加載瓦片運算單元200和第二加載單元300快速地以較低的清晰度進行顯示。

預加載瓦片運算單元200,適於選擇預加載顯示級別,查找出預加載顯示級別中邊緣區域需加載的預加載瓦片。本實施例中,預加載瓦片運算單元200,適於選擇比目標顯示級別高的預加載顯示級別,預加載瓦片所表示的地圖範圍包括除了當前顯示的瓦片所表示的地圖範圍之外由所述多個目標瓦片所表示的地圖範圍,即縮小後需要在顯示區域顯示的完整地圖範圍除去步驟S200中縮小的當前顯示瓦片所表示的地圖範圍,也就是上述的「邊緣區域」,且各預加載瓦片所對應的地理面積為各目標瓦片所對應的地理面積的n倍,n=4k,k為自然數,表示預加載顯示級別和目標顯示級別之間的級別差。

第二加載單元300,適於按照優先順序獲取預加載瓦片和目標瓦片,按照預加載顯示級別和目標顯示級別之間的級別差加載並放大顯示預加載瓦片;當獲取到目標瓦片後,加載並顯示所述目標瓦片以替換對應位置的縮小的當前顯示的瓦片和放大的預加載瓦片。通過首先顯示模糊的放大預加載瓦片,加載速度快,減小了在電子地圖上顯示空白瓦片的概率。通過使用清晰的目標瓦片替換對應位置的縮小的當前顯示的瓦片和放大的預加載瓦片,實現清晰顯示地圖以及地圖顯示由模糊到清晰的顯示效果。

本實施例中,第二加載單元300,適於將各個預加載瓦片的橫向寬度和縱向高度均放大m倍顯示,其中,m=2k,k為自然數,表示預加載顯示級別和目標顯示級別之間的級別差。即,如果預加載顯示級別和目標顯示級別之間的級別差為1則將各個預加載瓦片的橫向寬度和縱向高度均放大為2倍進行顯示;如果預加載顯示級別和目標顯示級別之間的級別差為2則將各個預加載瓦片的橫向寬度和縱向高度均放大為4倍進行顯示。

本實施例中,第二加載單元300,在加載目標瓦片的同時,增加縮小的當前顯示的瓦片和放大的預加載瓦片的透明度,換言之,第二加載單元300在加載目標瓦片時,將縮小的當前顯示的瓦片和放大的預加載瓦片逐漸變得透明。進一步地,當加載目標瓦片的操作完成時,第二加載單元300移除縮小的當前顯示的瓦片和放大的預加載瓦片以及顯示目標瓦片。具體地,對應於一個縮小的當前顯示的瓦片或一個放大的預加載瓦片的數個目標瓦片加載完成時,第二加載單元300移除該縮小的當前顯示的瓦片或放大的預加載瓦片,顯示加載完成的數個目標瓦片,使電子地圖更清晰。

本實施例中,目標瓦片運算單元100,適於根據地圖可視區域的縮小中心點的地理位置坐標及地圖的目標顯示級別,換算得到縮小中心點的像素坐標;根據地圖的目標顯示級別,得到需顯示的單個目標瓦片的像素尺寸;根據地圖可視區域的像素尺寸和縮小中心點的像素坐標,得到地圖可視區域的兩個相對的頂點的像素坐標;根據地圖可視區域的兩個相對的頂點的像素坐標和需顯示的單個目標瓦片的像素尺寸得到可視區域內的目標瓦片。

本實施例中,目標瓦片運算單元100根據地圖可視區域的兩個相對的頂點的像素坐標和需顯示的單個目標瓦片的像素尺寸得到可視區域內的目標瓦片的方法,具體是通過得到兩個相對的頂點所在的目標瓦片的橫向索引編號和縱向索引編號;以及選取橫向索引編號位於兩個相對的頂點所在的目標瓦片的橫向索引編號之間且縱向索引編號位於兩個相對的頂點所在的目標瓦片的縱向索引編號之間的目標瓦片,從而得到地圖可視區域內的目標瓦片。

其中,目標瓦片運算單元100,通過對所述頂點分別利用頂點的像素坐標減去地圖的原點的像素坐標得到橫坐標的差值和縱坐標的差值,利用橫坐標的差值除以單個目標瓦片的寬度得到橫向索引編號,利用縱坐標的差值除以單個目標瓦片的高度得到縱向索引編號。

圖5示出了根據本發明第二實施例的控制電子地圖縮放的裝置的框圖。本實施例中與如圖4所示的第一實施例相似,不同之處在於,該裝置還包括:緩存單元500。

緩存單元500,適於設置本地緩存,以及將已顯示的瓦片保存在本地緩存中。更具體地,本實施例通過緩存單元500創建本地緩存,控制瓦片的請求頻度。縮小地圖時,能夠優先顯示已經緩存過的瓦片,減少用戶看到空白的概率,並且利用緩存單元500可以提高加載速度,在伺服器端沒有加緩存頭的情況下,也能避免重複請求瓦片。

進一步地,在緩存單元500將已顯示的瓦片保存在本地緩存中時,若本地緩存的容量不足,則緩存單元500從本地緩存中移除最近最少使用的瓦片。具體地,緩存單元500採用LRU(Least Recently Used,最近最少使用)策略,在緩存中的瓦片超過緩存設定的容量時,會優先淘汰最近最少使用的瓦片。

進一步地,本實施例的第二加載單元300,適於判斷所述預加載瓦片和目標瓦片是否在本地緩存中,若判斷為是,則從本地緩存中讀取預加載瓦片和目標瓦片,若判斷為否,則從伺服器下載預加載瓦片和目標瓦片。通過優先獲取緩存中的瓦片,能夠提高加載速度。

圖6示出了根據本發明而實現的電子地圖客戶端的示意圖。通過控制電子地圖縮放的裝置和控制電子地圖縮放的方法,電子地圖客戶端在依據使用者的指示進行縮小操作時,電子地圖窗口存在空白的概率小,且電子地圖表現由模糊到清楚的顯示過程,使地圖級別之間的切換不明顯。

需要說明的是:

在此提供的算法和顯示不與任何特定計算機、虛擬系統或者其它設備固有相關。各種通用系統也可以與基於在此的示教一起使用。根據上面的描述,構造這類系統所要求的結構是顯而易見的。此外,本發明也不針對任何特定程式語言。應當明白,可以利用各種程式語言實現在此描述的本發明的內容,並且上面對特定語言所做的描述是為了披露本發明的最佳實施方式。

在此處所提供的說明書中,說明了大量具體細節。然而,能夠理解,本發明的實施例可以在沒有這些具體細節的情況下實踐。在一些實例中,並未詳細示出公知的方法、結構和技術,以便不模糊對本說明書的理解。

類似地,應當理解,為了精簡本公開並幫助理解各個發明方面中的一個或多個,在上面對本發明的示例性實施例的描述中,本發明的各個特徵有時被一起分組到單個實施例、圖、或者對其的描述中。然而,並不應將該公開的方法解釋成反映如下意圖:即所要求保護的本發明要求比在每個權利要求中所明確記載的特徵更多的特徵。更確切地說,如下面的權利要求書所反映的那樣,發明方面在於少於前面公開的單個實施例的所有特徵。因此,遵循具體實施方式的權利要求書由此明確地併入該具體實施方式,其中每個權利要求本身都作為本發明的單獨實施例。

本領域那些技術人員可以理解,可以對實施例中的設備中的模塊進行自適應性地改變並且把它們設置在與該實施例不同的一個或多個設備中。可以把實施例中的模塊或單元或組件組合成一個模塊或單元或組件,以及此外可以把它們分成多個子模塊或子單元或子組件。除了這樣的特徵和/或過程或者單元中的至少一些是相互排斥之外,可以採用任何組合對本說明書(包括伴隨的權利要求、摘要和附圖)中公開的所有特徵以及如此公開的任何方法或者設備的所有過程或單元進行組合。除非另外明確陳述,本說明書(包括伴隨的權利要求、摘要和附圖)中公開的每個特徵可以由提供相同、等同或相似目的的替代特徵來代替。

此外,本領域的技術人員能夠理解,儘管在此所述的一些實施例包括其它實施例中所包括的某些特徵而不是其它特徵,但是不同實施例的特徵的組合意味著處於本發明的範圍之內並且形成不同的實施例。例如,在下面的權利要求書中,所要求保護的實施例的任意之一都可以以任意的組合方式來使用。

本發明的各個部件實施例可以以硬體實現,或者以在一個或者多個處理器上運行的軟體模塊實現,或者以它們的組合實現。本領域的技術人員應當理解,可以在實踐中使用微處理器或者數位訊號處理器(DSP)來實現根據本發明實施例的控制電子地圖縮放的設備中的一些或者全部部件的一些或者全部功能。本發明還可以實現為用於執行這裡所描述的方法的一部分或者全部的設備或者裝置程序(例如,電腦程式和電腦程式產品)。這樣的實現本發明的程序可以存儲在計算機可讀介質上,或者可以具有一個或者多個信號的形式。這樣的信號可以從網際網路網站上下載得到,或者在載體信號上提供,或者以任何其他形式提供。

應該注意的是上述實施例對本發明進行說明而不是對本發明進行限制,並且本領域技術人員在不脫離所附權利要求的範圍的情況下可設計出替換實施例。在權利要求中,不應將位於括號之間的任何參考符號構造成對權利要求的限制。單詞「包含」不排除存在未列在權利要求中的元件或步驟。位於元件之前的單詞「一」或「一個」不排除存在多個這樣的元件。本發明可以藉助於包括有若干不同元件的硬體以及藉助於適當編程的計算機來實現。在列舉了若干裝置的單元權利要求中,這些裝置中的若干個可以是通過同一個硬體項來具體體現。單詞第一、第二、以及第三等的使用不表示任何順序。可將這些單詞解釋為名稱。

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀