圖源是什麼
經常會聽到XX圖源這一說法,那麼圖源是什麼呢?圖源,並不是地圖本身,而是地圖的索引文件。具體來說,Web地圖以瓦片金字塔形式存放在服務器上,數據量很大。在地圖加載的時候,為了找到瀏覽區域對應的瓦片,就需要有一個索引地址,通過網頁鏈接來找尋這個瓦片。圖源就是這個對應的索引地址。簡單地來說,圖源就是瓦片的門牌號,信箱號,郵寄地址。有了這個地址(圖源),我們就可以找到需要的瓦片,進而在軟件內加載地圖。
我們知道,圖新地球電腦端(以下簡稱LSV)和手機端外業精靈app(各大手機應用市場可下載)是支持加載自定義地圖的,支持WEB墨卡托和經緯直投兩種投影格式。
LSV的圖源,是LRC文件,實際上LSV的圖源LRC文件,就是XML文件,只是後綴為LRC,因此我們可以用記事本等文本編輯軟件編輯。
網上有豐富的地圖資源,即可以通過此種方式接入圖新地球軟件和外業精靈app進行免費瀏覽、下載到本地使用。
LRC文件結構分析
要想自己製作一個LRC圖源,首先需要先了解LRC的文件結構,知道哪些可以改,哪些不能改。進而按照固定的格式,製作LRC圖源即可。
分析LRC文件,最好的方式是對LSV軟件內自帶的LRC文件進行分析。
首先在LSV主目錄下找到內置的LRC文件:LocaSpaceViewerResourceLayer。

這裏面都是不同歸類的圖源。分析LRC,最方便的以OSM為例。那麼我們打開OSM文件夾:

這些都是LRC文件,選擇其中任意一個,右鍵,打開方式:記事本。

這樣我們就可以看到LRC文件內的原始內容。通過編輯這些內容,即可製作屬於自己的特殊圖源。當前還不明確每一行內容的含義,不過沒事,接下來我們說明具體圖源的代碼的意義。
首先第一行:
<?xml version=」1.0″ encoding=」GB18030″?>
這裡說明了XML文檔的版本和編碼,不用修改,也可以不知道這是啥。
接下來,從<DataDefine>到</DataDefine>是圖源的主體。
<Version>0</Version>
<Name>img</Name>
Version標籤內,說明了圖源的版本;Name標籤內,是圖源的內部名稱。這兩條均可以不修改。
<GeoGridType>WebMercatorWGS84</GeoGridType>
GeoGridType標籤對內部比較重要,說明了當前圖源的投影格式,比如這裡WebMercatorWGS84,表示原始在線地圖為Web墨卡托,WGS84的圖。
而天地圖分省,多採用經緯直投,那麼這裡就需要填寫:TianDiTuLatLon
<GeoGridType>TianDiTuLatLon</GeoGridType>
註:天地圖分省版的LRC製作,將會在後期教程中更加詳細地展開。
<SampleSize>256</SampleSize>
SampleSize標籤對內填寫的值,是地圖瓦片的尺寸。常見地圖瓦片是256*256,少量地圖瓦片是512*512瓦片。這個要根據具體獲取到的瓦片值來填寫。
<FileExt>png</FileExt>
FileExt標籤對內填寫的是原始的瓦片格式,比較常見JPG、PNG類型。具體根據獲取到的瓦片來填寫。
<DataVersion></DataVersion>
<DataType>urlformat</DataType>
DataVersion和DataType是數據版本和數據類型,這兩條可以不用管。
<TileRowDir>NorthToSouth</TileRowDir>
TileRowDir表示原始在線地圖的瓦片組織形式。是從北到南編號,還是從南到北編號。多數都是從北到南編號,採用的谷歌編碼原則。但是有些圖,用的標準TMS切片,則是從南到北。
<LocalPath></LocalPath>本地瓦片路徑,如果對已經下載好的本地瓦片,則可以用該標籤調用。
<UrlParamOrder>Z,X,Y</UrlParamOrder>這個定義了下面標籤中%d的順序,Z是層級、X是行號、Y是列號。這裡如果定義為Z,X,Y,則下面的URL中的%d,%d,%d分別對應ZXY。即這裡控制了URL中%d的含義和順序。
<NetPath>http://s0.outdooractive.com/osm/OSMSummer/%d/%d/%d.png</NetPath>
這個裏面的內容表示瓦片的具體地址,也是圖源最核心的一部分。%d對應的是ZXY,按UrlParamOrder標籤對內的順序控制。
接下來是Range標籤對:
<Range>
<West>-160</West>
<East>160</East>
<South>-85</South>
<North>85</North>
<LevelBegin>1</LevelBegin>
<LevelEnd>18</LevelEnd>
</Range>
Range內部定義了這個圖源的區域,最大最小層級。
West、East、South、North定義了圖源的默認區域。如果製作一個全國範圍的圖源,就可以配置這裡,配置後,雙擊圖層,則只跳轉到全國視角而不是全球。省級範圍同理。
LevelBegin和LevelEnd控制了圖源的最小和最大層級,一般在圖源分析的時候,可以找到具體的值。
整體看主要修改的地方就三塊:

LRC圖源製作案例分享
在了解了圖源內容具體控制什麼後,就可以準備開始製作一個圖源。這裡以open Street Map地圖為例:
http://www.openstreetmap.org
先看圖源要編輯的內容,下面代碼中,要編輯修改的內容已經標紅處理。
原創文章,作者:投稿專員,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/214953.html