- 什麼是 KML?
- 哪些人會使用 KML?
- 如何建立 KML 檔案?
- 如何開啟 KMZ 檔案?
- 如何為天文資料建立 KML?
- Google 地球支援哪些 KML 標記?
- 哪裡可以找到開發人員指南?
- 為什麼線條會消失?
- 我可以在 KML 中繪製圓形嗎?
- 我可以將 LineString 變更為虛線或加上箭頭嗎?
- 如何隱藏地標的標籤?
- 為什麼會出現剖析錯誤?
- 如何判斷我編寫的 KML 檔案是否有效?
- 是否可以控制螢幕上顯示的內容,讓使用者靠近地球表面時顯示更多詳細資料?
- 在 MultiGeometry 元素中,我可以為不同的幾何圖形指派不同的顏色/樣式嗎?
- 開啟 KML 檔案時,可以讓資訊視窗開啟嗎?
- 網路連結重新整理時,我可以讓氣球保持開啟狀態嗎?
- 我可以查看使用者建立的 KML 嗎?
- 可以透過 KML 控制時間滑桿嗎?
- 如何為 KML 檔案加入互動功能?Can I put Forms into the HTML in KML description balloons?
- 我可以從試算表自動建立 KML 嗎?
- 為什麼我的 KML 檔案無法從網路伺服器正確下載?
- 如何將網路攝影機放入 KML?
- 為什麼氣球內容顯示圖片網址格式可能不正確?
- 哪些內容會受到新的相對路徑規則影響?
- 如何修正 KMZ 中的相對路徑?
- Google 地球「我的地點」中的 KML 會傳送到 Google 伺服器嗎?
開始使用
KML 幾何圖形
KML 進階功能
網路上的 KML
KMZ 檔案中的相對路徑
其他
- 什麼是 KML?
-
KML 是一種檔案格式,用於在 Google 地球等地球瀏覽器中顯示地理資料。您可以建立 KML 檔案來標示地點、新增圖片疊加層,以及以新方式呈現豐富的資料。KML 是由開放地理空間協會 (OGC) 維護的國際標準。
- KML 有哪些使用者?
-
KML 社群廣大且多元,只要造訪 Google 地球社群論壇,即可一覽無遺。一般使用者會建立 KML 檔案,標示住家位置、記錄旅程,以及規劃跨國健行和自行車旅行。科學家會使用 KML 提供資源、模型和趨勢的詳細地圖,例如火山爆發、天氣型態、地震活動和礦藏。房地產專業人士、建築師和城市開發機構會使用 KML 提案建構和視覺化計畫。學生和老師則會使用 KML 探索歷史和當代的人物、地點和事件。國家地理雜誌、聯合國教科文組織和史密森尼學會等機構都使用 KML 顯示豐富的全球資料集。
- 如何建立 KML 檔案?
-
建立 KML 檔案的主要工具有三種。
- Google 地球。這是建立 KML 檔案最重要的工具。使用 Google 地球,您可以建立
- 地標
- 路徑
- 多邊形
- 圖片重疊
- 網路連結
- 放置模型
- 上述所有項目的資料夾
- PhotoOverlays
- 文字編輯器。在 Google 地球中建立物件後,將其貼到文字編輯器中,然後開始編輯。
- XML 編輯器。KML 是用來描述地理內容的 XML 語言。XML 編輯器是功能強大的文字編輯器,提供許多建立 XML 文件的工具,例如標記完成功能,可確保您使用適當的結尾標記關閉 KML 元素。
建立其中一個物件後,在「地點」窗格中按一下滑鼠右鍵,然後選取「複製」。然後貼到文字編輯器或 XML 編輯器,即可開始編輯。
Google 地球社群使用者也製作了許多工具。查看 KML 開發人員支援 Google 群組。
- Google 地球。這是建立 KML 檔案最重要的工具。使用 Google 地球,您可以建立
- 如何開啟 KMZ 檔案?
-
KMZ 檔案是經過壓縮的一或多個檔案集合,可在 Google 地球中檢視。這些檔案會以 ZIP 格式壓縮,並可使用任何常見的 ZIP 工具開啟,例如 Windows 的「WinZip」、「7-Zip」或預設的 Windows XP 壓縮資料夾工具,Mac OS 的「Stuffit」,或是 Mac OS 或 Linux 的「zip」。您可能需要將副檔名從 .kmz 改為 .zip,壓縮工具才能辨識檔案。請記得在再次使用檔案前,將檔案改回 .kmz 格式。
- 如何為天文資料建立 KML?
-
KML 可用於呈現天文資料,並載入 Google Sky 或 Microsoft 的 WorldWide Telescope。詳情請參閱「KML 中的天空資料」一文。
- Google 地球支援哪些 KML 標記?
-
Google 地球支援所有 KML 標記。如需所有標記的清單,請參閱 KML 規格。
- 哪裡可以找到《開發人員指南》?
-
如要查看開發人員指南,請前往 https://developers.google.com/kml/documentation/topicsinkml.html。
- 為什麼線條會消失?
-
如果 LineString 具有 clampToGround,則會順利沿著地球的曲線移動。不過,如果是「relativeToGround」,您可能需要新增更多點,否則系統會在地球或地形上繪製較長的直線路徑。
舉例來說,這條 LineString 會穿過地球,因此實際上會消失:
<kml xmlns="http://www.opengis.net/kml/2.2"> <Placemark> <name>Untitled Path</name> <LineString> <tessellate>0</tessellate> <altitudeMode>absolute</altitudeMode> <coordinates>-115.415105,40.669016 -37.752364,34.879979</coordinates> </LineString> </Placemark> </kml>
新增更多點可減少位於地下的線段。<tessellate> 也應為「1」,確保線條貼合地形。
<Placemark> <name>Untitled Path</name> <LineString> <tessellate>1</tessellate> <altitudeMode>relativeToGround</altitudeMode> <coordinates> -134.148103,37.752967 -128.917074,38.803008 -125.166954,39.583592 -122.137625,39.656880 -120.421783,40.036311 -118.298157,40.235316 -114.348386,40.631532 -112.670431,40.761033 -111.916045,40.681939 -110.177711,40.653055 -109.544331,40.619327 -107.155697,40.642007 -105.410526,40.421505 -103.192299,40.430138 -102.853712,40.427904 -98.168302,40.363524 -97.093391,40.308754 -94.831304,40.479175 -93.760070,40.395392 -84.913828,39.466651 -84.414888,39.387332 -81.380660,39.188551 -80.276261,38.977744 -77.811560,38.872542 -75.062267,38.521146 -72.006956,38.101733 -66.67819,37.664687 </coordinates> </LineString> </Placemark>
- 我可以在 KML 中繪製圓形嗎?
KML 中沒有圓形幾何圖形,但您可以使用 LineString 建立非常接近圓形的圖形,方法是使用許多緊密相連的座標。請參閱這個範例。
- 我可以將 LineString 變更為虛線或加上箭頭嗎?
-
<LineStyle> 可讓您變更線條的顏色、不透明度和大小。不過,KML 目前不支援變更 KML 中的線條類型。
- 如何隱藏地標的標籤?
Google 地球中地標旁邊顯示的標籤,是以 <name> 元素為依據。將 LabelStyle 中的比例元素設為 0,即可隱藏標籤。
<Style id="hideLabel"> <LabelStyle> <scale>0</scale> </LabelStyle> </Style>
- 為什麼會出現剖析錯誤?
-
剖析錯誤主要有兩個原因:
- 大小寫:KML 與所有 XML 語言一樣,會區分大小寫。所有元素名稱都必須使用正確的大小寫。例如: <Placemark> not <PLACEMARK> <href> not <Href> <Link> not <lInk>
- 標記不完整:所有元素的開頭和結尾必須是相同標記。有時使用者會忘記關閉標記,或省略角括號 (「<」或「>」)
舉例來說:
<name>Atlanta</name> is correct
<name>Atlanta is not correct
<nameAtlanta</name> is not correct
<nameAtlanta<name> is not correct
- 如何判斷我編寫的 KML 檔案是否有效?
KML 是 XML 標記語言,你可以透過下列任一方式驗證:
- 是否可以控制畫面上顯示的內容,讓使用者靠近地球表面時顯示更多詳細資料?
-
「地區」標記可用來控管要向使用者顯示哪些功能。如要進一步瞭解區域,請參閱下列最佳資源:
- 在 MultiGeometry 元素中,我可以為不同幾何圖形指派不同顏色/樣式嗎?
-
MultiGeometry 元素會將幾何圖形歸類在同一個 Placemark 元素中。這樣一來,幾何圖形就能共用相同的樣式,並在清單中顯示為一個項目,例如 Google 地球的「我的地點」窗格。
樣式是在地標層級設定,可使用 styleUrl 元素或 Style 元素。因此,該地標中的個別幾何圖形無法採用不同樣式。
常見的解決方法是為每個幾何圖形建立個別的地標,讓每個地標都有不同的樣式。為避免清單中的項目過多,請將項目放在具有 ListStyle 的 Folder 中,並使用 checkHideChildren 建立 listItemType。舉例來說,在 Google 地球中,這會將所有地標放在「我的地點」的同一個資料夾元素中,避免使用者開啟大量元素。
- 開啟 KML 檔案時,可以讓氣球開啟嗎?
目前 KML 不支援在開啟 KML 檔案時開啟資訊視窗。不過,如果您使用功能錨點,可以在說明框中建立連結,開啟第二個 KML 檔案或其他說明框。
- 當 NetworkLink 重新整理時,我可以讓氣球保持開啟狀態嗎?
-
目前 KML 不支援在 NetworkLink 重新整理時保留資訊視窗狀態。
- 我可以查看使用者建立的 KML 嗎?
-
目前無法使用 NetworkLink 擷取使用者在 Google 地球或地圖中建立的 KML。不過,您可以使用 Google Maps JavaScript API 做為 KML 建立工具,並將該資訊擷取回伺服器。如需範例,請參閱 GeoDataStore。
- 我可以透過 KML 控制時間滑桿嗎?
-
只要開啟含有 TimeStamp 或 TimeSpan 元素的 KML 檔案,KML 中的時間滑桿就會隨即開啟。時間滑桿會找出所有目前選取的 TimeStamp 和 TimeSpan 元素,並調整以配合所有代表的日期。KML 目前不允許進一步控制時間滑桿,例如設定所選的目前時間,或選取所代表的時間範圍寬度。 如要進一步瞭解如何使用 Time,請參閱「時間和動畫」一文。
- 如何為 KML 檔案加入互動功能?我可以在 KML 說明氣球的 HTML 中加入表單嗎?
-
目前 Google 地球中的 KML 僅支援描述簡報的 HTML 子集,不支援互動。
不過,您可以將 Flash 表單建構到 Google 地球使用的 KML 中。如要這麼做,請將 Flash 應用程式嵌入 KML 說明氣球中的 HTML。
- 我可以從試算表自動建立 KML 嗎?
-
基本方法有幾種,
- 您可以使用自己的應用程式剖析 CSV 檔案,並從中建立 KML,以程式輔助方式自行完成這項作業。如需範例,請參閱「將 CSV 檔案轉換為 KML」。
- 使用線上試算表。舉例來說,Google Earth Outreach 團隊以 Google 試算表為基礎,建立了 Spreadsheet Mapper。
- 使用 Excel 轉 KML 建立工具,例如 [link to tek's thread]這個工具
- 使用 Google 地球 Plus 或專業版載入檔案,然後儲存為 KML 或 KMZ 檔案
- 為什麼我的 KML 檔案無法從網路伺服器正確下載?
- 為什麼氣球內容顯示可能使用格式錯誤的圖片網址?
-
Google 地球最近進行了變更,會以新的方式處理特徵氣球內內容的連結,讓先前未指定的行為更加明確。因此,如果 KMZ 檔案中的連結結構無效,使用者點選連結後會前往「您可能點選了格式錯誤的連結,點選下方連結,試用舊版模式。 如果看到這則訊息,請變更 KML/KMZ 內容的結構,確保與日後的 Google 地球版本完全相容。
詳情請參閱 這篇文章,包括如何適當重組 KMZ 內容。
- 哪些內容會受到新的相對路徑規則影響?
目前只有功能氣球內容中的連結 (網址) 會受到這項變更影響。包括 <BallonStyles> 內的 <description> 和 <text> 標記。不過,日後的 Google 地球版本可能會進一步提升一致性,因此請務必避免使用父項目錄做為 KMZ 內容中相對連結的基本網址。
- Google 地球「我的地點」中的 KML 會傳送至 Google 伺服器嗎?
-
不會。使用者在 Google 地球中建立或載入的 KML 不會傳送給 Google。所有資料處理和儲存作業都會在本機電腦上進行。
網頁伺服器必須知道要提供的檔案類型。部分瀏覽器 (例如 Firefox) 會猜測檔案類型。其他瀏覽器 (例如 Internet Explorer) 則會依據網路伺服器的 MIME 類型設定。
如果是 Apache 伺服器,請在 httpd.conf 中加入這兩行:
AddType application/vnd.google-earth.kml+xml .kml
AddType application/vnd.google-earth.kmz .kmz
如果是 Microsoft 的網際網路資訊服務,請按照下列指示操作:
IIS 6.0 版:
http://support.microsoft.com/kb/326965IIS 4.0 和 5.0:
http://www.microsoft.com/technet/prodtechnol/windows2000serv/technologies/iis/maintain/featusability/mimeiis.mspx如果您自行管理網路伺服器,就必須自行變更設定。否則,請聯絡網站代管服務,要求他們進行這些變更。