2015-02-17 29 views
1

我在我的網站上有一個谷歌地圖頁面,我想加載一系列顯示土地塊的KMZ文件。我正在Google Earth中生成由圖像疊加層和一系列多邊形組成的KMZ。我首先加載圖像覆蓋圖,它是由黑色線條和透明背景組成的PNG圖像 - 它顯示了土地的邊界線。然後,我在這張圖上繪製多邊形來組合相關的圖。在從Google地球導出KMZ之前,我確保圖像顯示在多邊形上方的前景中。但是,在將KMZ導出並加載到我的網頁上的Google地圖後,圖像覆蓋圖的背面將加載多邊形,並遮住圖像中顯示的邊界線細節。在我的Google地圖中添加KMZ文件時,有沒有辦法將多邊形上方的圖像疊加層?

我曾嘗試在谷歌地球以下選項,以使圖像的頂部,其中沒有導致我的地圖正確的分層:

  • 設置高度爲「絕對」,提高到> 50米(將其顯示在Google地球的多邊形上方)。
  • 將繪製順序增加到高於多邊形的值。
  • 在文檔樹中,重新排列多邊形列表中的圖像(定位在多邊形上方,然後位於多邊形下方)。
  • 在文檔樹中,將圖像放置在樹中的自己的文件夾中(位於多邊形文件夾的上方和下方)。

然而,這些嘗試中的每一個仍然會導致在我的網頁顯示錯誤的KMZ - 圖像重疊在後面顯示:

Google Earth vs Google Maps rendering

我也試圖把將多邊形合併到一個KMZ中,並將圖像疊加到另一箇中,然後將每個單獨加載到我的地圖中,並使用較高的zIndex爲圖像添加KMZ,並且圖像疊加層仍然分層在多邊形下方。

在我的客戶端代碼添加KMZ文件(如果我做錯了那裏)方面,我得到每個KMZ的URL,並將其傳遞到下面的方法:

function addKMZFile(myMap, kmzUrl) { 
    var kmzLayer = new google.maps.KmlLayer({ 
     url: kmzUrl, 
     preserveViewport: true, 
     map: myMap, 
     clickable: true 
    }); 
} 

我上傳一個例子KMZ我的文件服務器,可用於測試目的(的KMZ添加到我的地圖通過上述的方法): http://bassmanjase.altervista.org/SO_Test.kmz

我似乎無法看到任何具體提及在Google地圖KML有關圖片疊加的文檔或KML中的分層是如何執行的。有沒有辦法配置KML,以便在Google地圖中顯示時,圖像疊加層位於多邊形上方?

+0

可能重複的問題:[加載KML標記上述多邊形](HTTP: //堆棧溢出。com/questions/27896861/loading-kml-markers-above-polygon /) – geocodezip 2015-02-18 00:20:48

+0

您是否有覆蓋它的圖片覆蓋或KML/KMZ的樣本? – geocodezip 2015-02-18 00:25:53

+0

我假設你的意思是當我試圖疊加兩層分開?這些在http://bassmanjase.altervista.org/Image.kmz和http://bassmanjase.altervista.org/Polygons.kmz。 – Bassmanjase 2015-02-18 00:56:08

回答

0

由於似乎沒有辦法在Google地圖中本地呈現多邊形上方的疊加層,因此我已經使用的解決方法是減少多邊形的不透明度,以便疊加層在其下方可見。

這也給出了額外的益處,所述基礎地圖圖像稍微可見(因爲我的覆蓋具有透明背景):

Semi-opaque polygons with image overlay below

相關問題