跳轉到內容

地圖製作!/舊版本

來自華夏公益教科書

該應用程式支援與 Google 地圖網格相容的地圖瓦片(有關獲取選項,請參見下文)。

提示和技巧

[編輯 | 編輯原始碼]

以下是一些原始README檔案中未提及的內容

  • 您可以使用某些服務生成具有負縮放值的圖,但請先檢視預覽以確保您的區域有可用資料。
  • 您可以透過刪除地圖資料夾內的Nx資料夾來刪除一些縮放級別以節省空間。但是,您不能刪除1x(基礎)縮放資料夾。
  • 負縮放有效(Google 地圖除外 - Google 地圖僅降至 0)。根據我的經驗,Google 衛星降至 -3(在拉斯維加斯降至 -4),所有 Local.Live 地圖降至 -2。
  • Google 地圖下載.exe 將獨立執行(圖示資源 資料夾以及 config.txt 應在同一目錄中)(只需編譯一個釋出版本,它將略微快一些,或者從 bin/Debug 中複製一個)。我不會發布“只有 exe”,因為我認為人們擁有原始碼而不是僅僅執行一些隨機應用程式很重要。


現成地圖

[編輯 | 編輯原始碼]

http://www.mediafire.com/?6nlknldk5lj 星圖 - 帶有經緯度

http://www.mediafire.com/?emnubmdmmyn 地鐵(紐約、倫敦、莫斯科和多倫多) - 沒有經緯度

http://unlockpsp.net/failai/mapViewer.rar - 立陶宛地圖(帶地圖檢視器程式)

http://www.in7ane.com/psp/maps_usgs_parks/ 美國公園的 USGS 地形圖

http://www.in7ane.com/psp/maps_various/ 使用 MapCruncher 對齊和渲染的各種地圖

http://www.in7ane.com/psp/maps_russian_topo/ topomaps.ru / topomaps.eu 地形圖使用 MapCruncher 對齊和渲染

http://www.in7ane.com/psp/maps_toporama_canadian_parks/ atlas.nrcan.gc.ca 加拿大公園地形圖使用 MapCruncher 渲染

現成POI檔案

[編輯 | 編輯原始碼]

http://www.dcemu.co.uk/vbulletin/showthread.php?t=33362 英國測速攝像頭(待重新託管)


這尚未最終確定或加入地圖製作!的釋出版本,因此僅供參考。

感謝 Juanito 建立了原始的 FS 草案。

#          __________
# 0-7     | GPSFSV01 |
# 	  |----------|
# 8	  |    X     |
# 	  |----------|
# 16      |    Y     |
# 	  |----------|
# 24      | basezoom |
# 	  |----------|
# 32      | filetype |
# 	  |----------|
# 40      | maxsize  |
# 	  |----------|
# 48      |   IDX0   |
# 	  |----------|
# 56      |   IDX1   |
# 	  |__________|
# 	       .
# 	       .
# 	       .
#          __________
# 	  | IDX N    | - points to GPSFSEOF 
# 	  |----------|
#         |   PNG0   |
# 	  |----------|
# ..      |   PNG1   |
# 	  |----------|
# 	       .
# 	       .
# 	       .
#          __________
# 	  | PNG N-1  | - last image
# 	  |----------|
#         | GPSFSEOF |
# 	  |__________|

48 位元組,所有 Int64 均為有符號

格式 描述
char[8] GPSFSV01
Int64 x 來自 coords.txt
Int64 y 來自 coords.txt
Int64 basezoom 來自 coords.txt
Int64 filetype 0 = png,1 = jpg
Int64 maxsize (N) 瓦片數量(包括缺失的瓦片)

注意: 如果 x 和/或 y 為負數,則解釋為 coords.txt 丟失

8 * (N + 1) 位元組,所有 Int64 均為有符號

格式 描述
Int64 IDX0 指向第一個影像(包括標頭位元組(48)偏移量)
Int64 IDX1 指向第二個影像(包括標頭位元組(48)偏移量)
... ... ...
Int64 IDXN-1 指向最後一個(第 N 個)影像(包括標頭位元組(48)偏移量)
Int64 IDXN 指向 GPSFSOEF 標記

來自 Pontomedon 的說明:在使用 in7ane 的 GMDL(全球地圖下載工具)(http://www.in7ane.com/psp/) 建立的地圖中,IDXN 實際上並不指向 GPSFSEOF 標記,而是包含最後一個影像的負大小(就像存在一個(缺失的)(N+1)個影像)

  • IDX 條目的數量始終固定,等於給定地圖大小的最大瓦片數量。
  • 這樣,任何 IDXn 條目都完全定義為從檔案開頭的偏移量。
  • IDX 部分首先覆蓋最遠的縮放瓦片。以下是一個示例


IDX0->4x000000

IDX1->4x000001

IDX.->4x015014

IDX.->4x015015 <此級別的最後一個瓦片>

...

IDX.->1x0000000

IDX.->1x0000001

...


來自 Pontomedon 的說明:這個示例有點令人困惑,因為 IDX0 實際上指向 1x000000,它是“最放大”縮放級別的左上角瓦片。

該示例應如下所示:具有 4 個級別(1x、2x、4x、8x)(340 個瓦片)的地圖

IDX0->1x000000

IDX1->1x000001

...

IDX16->1x001000

IDX17->1x001001

...

IDX254->1x015014

IDX255->1x015015 <級別 1x 的最後一個瓦片>

IDX256->2x000000 <級別 2x 的第一個瓦片>

...

IDX319->2x007007 <級別 2x 的最後一個瓦片>

IDX320->4x000000 <級別 4x 的第一個瓦片>

...

IDX335->4x003003 <級別 4x 的最後一個瓦片>

IDX336->8x000000 <級別 8x 的第一個瓦片>

...

IDX339->8x001001 <級別 8x 的最後一個瓦片>

IDX340->GPSFSEOF



  • IDX 偏移量相對於地圖檔案開頭:IDX0 = [00100000] 表示 PNG0 從檔案開頭開始 100000 位元組。
  • 如果省略一個瓦片,則相應的索引將包含一個負數。該條目的絕對值應等於上一個條目的檔案大小。示例


IDX0 00010000 非空 PNG 1K 大小

IDX1 00011000 非空 PNG 3K 大小

IDX2 -0003000 空檔案

IDX3 -0003000 空檔案 - 只要為負數,實際值並不重要

IDX4 00014000 非空檔案 - 大小由下一個索引條目確定

5檔案跨度更改

[編輯 | 編輯原始碼]

與先前格式的更改

現在有 5 個檔案(GPSFS、GPSFS1、GPSFS2、GPSFS3 和 GPSFS4) - 在此階段,對於 4 個瓦片地圖,後面的檔案將丟失(這可能會導致地圖製作!中的問題 - 測試)。

IDX 欄位已拆分為 IDXfile 和 IDXidx,兩者均為 int32(其他數字保持 int64),IDXfile 為 0 到 4,IDXidx 具有與以前相同的邏輯,但每個新檔案都會重置為 0 - 所以(1)如果下一個 IDX 為 0,則使用 file.length 代替(2)如果您使用 idx > 0 來標識現有的瓦片,則現在需要 >= 0(是的,我花了很長時間才在我自己的程式碼中找到)。

華夏公益教科書