KmlLayer
kết xuất các phần tử KML và GeoRSS thành một
Lớp phủ ô API Maps JavaScript.
Tổng quan
API JavaScript của Maps hỗ trợ các định dạng dữ liệu KML và GeoRSS
để hiển thị thông tin địa lý. Những định dạng dữ liệu này được hiển thị trên
ánh xạ bằng cách sử dụng đối tượng KmlLayer
, trong đó hàm khởi tạo lấy URL của
tệp KML hoặc GeoRSS có thể truy cập công khai.
Lưu ý: Lớp KmlLayer
mà
tạo lớp phủ KML trong Maps JavaScript API sử dụng
dịch vụ được lưu trữ trên Google để truy xuất và phân tích cú pháp các tệp KML để kết xuất.
Do đó, chỉ có thể hiển thị các tệp KML nếu chúng được lưu trữ tại
URL có thể truy cập công khai mà không yêu cầu xác thực để truy cập.
Nếu bạn cần quyền truy cập vào các tệp riêng tư, quyền kiểm soát chi tiết đối với bộ nhớ đệm, hoặc
gửi khung nhìn của trình duyệt đến máy chủ dữ liệu không gian địa lý dưới dạng tham số truy vấn,
bạn nên dùng dữ liệu
Layer thay vì KmlLayer
. Việc này sẽ chuyển hướng người dùng của bạn
để trực tiếp yêu cầu tài nguyên từ máy chủ web của bạn.
API JavaScript của Maps chuyển đổi vị trí địa lý được cung cấp
Dữ liệu XML vào bản trình bày KML được hiển thị trên bản đồ bằng cách sử dụng
Lớp phủ ô API Maps JavaScript. KML này có giao diện
(và có phần hoạt động) như API Maps JavaScript quen thuộc
phần tử lớp phủ. KML <Placemark>
và GeoRSS point
các phần tử được kết xuất dưới dạng điểm đánh dấu, ví dụ: các phần tử <LineString>
là
kết xuất dưới dạng hình nhiều đường và phần tử <Polygon>
được kết xuất
dưới dạng đa giác. Tương tự, các phần tử <GroundOverlay>
được kết xuất dưới dạng hình ảnh hình chữ nhật trên bản đồ. Tuy nhiên, điều quan trọng là các đối tượng này
không phải là API Maps JavaScript Markers
,
Polylines
, Polygons
hoặc GroundOverlays
;
thay vào đó, chúng sẽ được kết xuất thành một đối tượng duy nhất trên bản đồ.
KmlLayer
đối tượng sẽ xuất hiện trên bản đồ sau map
của chúng
đã được đặt. Bạn có thể xoá chúng khỏi bản đồ bằng cách gọi
setMap()
truyền null
. KmlLayer
đối tượng quản lý quá trình kết xuất các phần tử con này bằng cách tự động
truy xuất các đối tượng thích hợp cho ranh giới đã cho của bản đồ. Là
giới hạn thay đổi, các tính năng trong khung nhìn hiện tại sẽ tự động
kết xuất.
Vì các thành phần trong KmlLayer
được kết xuất theo yêu cầu,
lớp này cho phép bạn dễ dàng quản lý việc kết xuất hàng nghìn điểm đánh dấu,
hình nhiều đường và đa giác. Lưu ý rằng bạn không thể truy cập vào các thành phần này
các đối tượng trực tiếp, mặc dù mỗi đối tượng đều cung cấp các sự kiện nhấp chuột trả về dữ liệu
các đối tượng riêng lẻ đó.
Tùy chọn lớp KML
Hàm khởi tạo KmlLayer()
có thể tuỳ ý truyền một số
KmlLayerOptions
:
map
chỉ địnhMap
để kết xuấtKmlLayer
. Bạn có thể ẩnKmlLayer
bằng cách đặt tuỳ chọn này thànhnull
trong phương thứcsetMap()
.preserveViewport
chỉ định rằng bản đồ không được được điều chỉnh theo giới hạn nội dung củaKmlLayer
khi hiển thị lớp. Theo mặc định, khi hiển thịKmlLayer
, bản đồ được thu phóng và định vị để hiển thị toàn bộ .suppressInfoWindows
cho biết rằng các tính năng có thể nhấp trongKmlLayer
không được kích hoạt màn hình Đối tượngInfoWindow
.
Ngoài ra, sau khi KmlLayer
được kết xuất, lớp này sẽ chứa
thuộc tính metadata
không thể thay đổi có chứa tên của lớp,
đoạn mô tả, đoạn trích và tác giả trong đối tượng KmlLayerMetadata
chi tiết. Bạn có thể kiểm tra thông tin này bằng cách sử dụng getMetadata()
. Vì việc kết xuất đối tượng KmlLayer
cần có
giao tiếp không đồng bộ với máy chủ bên ngoài, bạn sẽ cần theo dõi
sự kiện metadata_changed
để cho biết rằng thuộc tính
đã được điền sẵn.
Ví dụ sau đây tạo KmlLayer
từ phương thức đã cho
Nguồn cấp dữ liệu GeoRSS:
TypeScript
function initMap(): void { const map = new google.maps.Map( document.getElementById("map") as HTMLElement, { zoom: 4, center: { lat: 49.496675, lng: -102.65625 }, } ); const georssLayer = new google.maps.KmlLayer({ url: "http://api.flickr.com/services/feeds/geo/?g=322338@N20&lang=en-us&format=feed-georss", }); georssLayer.setMap(map); } declare global { interface Window { initMap: () => void; } } window.initMap = initMap;
JavaScript
function initMap() { const map = new google.maps.Map(document.getElementById("map"), { zoom: 4, center: { lat: 49.496675, lng: -102.65625 }, }); const georssLayer = new google.maps.KmlLayer({ url: "http://api.flickr.com/services/feeds/geo/?g=322338@N20&lang=en-us&format=feed-georss", }); georssLayer.setMap(map); } window.initMap = initMap;
CSS
/* * Always set the map height explicitly to define the size of the div element * that contains the map. */ #map { height: 100%; } /* * Optional: Makes the sample page fill the window. */ html, body { height: 100%; margin: 0; padding: 0; }
HTML
<html> <head> <title>GeoRSS Layers</title> <link rel="stylesheet" type="text/css" href="./style.css" /> <script type="module" src="./index.js"></script> </head> <body> <div id="map"></div> <!-- The `defer` attribute causes the script to execute after the full HTML document has been parsed. For non-blocking uses, avoiding race conditions, and consistent behavior across browsers, consider loading using Promises. See https://developers.google.com/maps/documentation/javascript/load-maps-js-api for more information. --> <script src="https://maps.googleapis.com/maps/api/js?key=AIzaSyB41DRUbKWJHPxaFjMAwdrzWzbVKartNGg&callback=initMap&v=weekly" defer ></script> </body> </html>
Dùng thử mẫu
Ví dụ sau đây tạo KmlLayer
từ KML đã cho
nguồn cấp dữ liệu:
TypeScript
function initMap(): void { const map = new google.maps.Map( document.getElementById("map") as HTMLElement, { zoom: 11, center: { lat: 41.876, lng: -87.624 }, } ); const ctaLayer = new google.maps.KmlLayer({ url: "https://googlearchive.github.io/js-v2-samples/ggeoxml/cta.kml", map: map, }); } declare global { interface Window { initMap: () => void; } } window.initMap = initMap;
JavaScript
function initMap() { const map = new google.maps.Map(document.getElementById("map"), { zoom: 11, center: { lat: 41.876, lng: -87.624 }, }); const ctaLayer = new google.maps.KmlLayer({ url: "https://googlearchive.github.io/js-v2-samples/ggeoxml/cta.kml", map: map, }); } window.initMap = initMap;
CSS
/* * Always set the map height explicitly to define the size of the div element * that contains the map. */ #map { height: 100%; } /* * Optional: Makes the sample page fill the window. */ html, body { height: 100%; margin: 0; padding: 0; }
HTML
<html> <head> <title>KML Layers</title> <link rel="stylesheet" type="text/css" href="./style.css" /> <script type="module" src="./index.js"></script> </head> <body> <div id="map"></div> <!-- The `defer` attribute causes the script to execute after the full HTML document has been parsed. For non-blocking uses, avoiding race conditions, and consistent behavior across browsers, consider loading using Promises. See https://developers.google.com/maps/documentation/javascript/load-maps-js-api for more information. --> <script src="https://maps.googleapis.com/maps/api/js?key=AIzaSyB41DRUbKWJHPxaFjMAwdrzWzbVKartNGg&callback=initMap&v=weekly" defer ></script> </body> </html>
Dùng thử mẫu
Thông tin chi tiết về tính năng KML
Do KML có thể bao gồm một số lượng lớn các đối tượng, bạn có thể không truy cập được
dữ liệu tính năng trực tiếp từ đối tượng KmlLayer
. Thay vào đó, dưới dạng
các tính năng được hiển thị, chúng được kết xuất để trông giống như có thể nhấp vào
Lớp phủ API JavaScript cho Maps.
Khi bạn nhấp vào từng tính năng riêng lẻ, theo mặc định, bạn sẽ thấy một
InfoWindow
chứa KML <title>
và
<description>
thông tin về đối tượng được cung cấp.
Ngoài ra, một lượt nhấp vào một đối tượng KML cũng tạo ra một KmlMouseEvent
,
truyền những thông tin sau:
position
cho biết vĩ độ/kinh độ tại để neoInfoWindow
cho đối tượng KML này. Chiến dịch này vị trí thường là vị trí được nhấp vào cho đa giác, hình nhiều đường và GroundOverlays, nhưng là nguồn gốc thực sự của các điểm đánh dấu.pixelOffset
cho biết giá trị chênh lệch so với giá trị trênposition
để cố địnhInfoWindow
“đuôi”. Đối với đối tượng đa giác, độ lệch này thường là0,0
nhưng đối với điểm đánh dấu, sẽ bao gồm chiều cao của điểm đánh dấu.featureData
chứa cấu trúc JSON củaKmlFeatureData
.
Dưới đây là đối tượng KmlFeatureData
mẫu:
{ author: { email: "nobody@google.com", name: "Mr Nobody", uri: "http://example.com" }, description: "description", id: "id", infoWindowHtml: "html", name: "name", snippet: "snippet" }
Ví dụ sau đây minh hoạ đối tượng KML <Description>
văn bản trong một bên <div>
khi đối tượng được nhấp vào:
TypeScript
function initMap(): void { const map = new google.maps.Map( document.getElementById("map") as HTMLElement, { zoom: 12, center: { lat: 37.06, lng: -95.68 }, } ); const kmlLayer = new google.maps.KmlLayer({ url: "https://raw.githubusercontent.com/googlearchive/kml-samples/gh-pages/kml/Placemark/placemark.kml", suppressInfoWindows: true, map: map, }); kmlLayer.addListener("click", (kmlEvent) => { const text = kmlEvent.featureData.description; showInContentWindow(text); }); function showInContentWindow(text: string) { const sidebar = document.getElementById("sidebar") as HTMLElement; sidebar.innerHTML = text; } } declare global { interface Window { initMap: () => void; } } window.initMap = initMap;
JavaScript
function initMap() { const map = new google.maps.Map(document.getElementById("map"), { zoom: 12, center: { lat: 37.06, lng: -95.68 }, }); const kmlLayer = new google.maps.KmlLayer({ url: "https://raw.githubusercontent.com/googlearchive/kml-samples/gh-pages/kml/Placemark/placemark.kml", suppressInfoWindows: true, map: map, }); kmlLayer.addListener("click", (kmlEvent) => { const text = kmlEvent.featureData.description; showInContentWindow(text); }); function showInContentWindow(text) { const sidebar = document.getElementById("sidebar"); sidebar.innerHTML = text; } } window.initMap = initMap;
CSS
/* Optional: Makes the sample page fill the window. */ html, body { height: 100%; margin: 0; padding: 0; } #container { height: 100%; display: flex; } #sidebar { flex-basis: 15rem; flex-grow: 1; padding: 1rem; max-width: 30rem; height: 100%; box-sizing: border-box; overflow: auto; } #map { flex-basis: 0; flex-grow: 4; height: 100%; }
HTML
<html> <head> <title>KML Feature Details</title> <link rel="stylesheet" type="text/css" href="./style.css" /> <script type="module" src="./index.js"></script> </head> <body> <div id="container"> <div id="map"></div> <div id="sidebar"></div> </div> <!-- The `defer` attribute causes the script to execute after the full HTML document has been parsed. For non-blocking uses, avoiding race conditions, and consistent behavior across browsers, consider loading using Promises. See https://developers.google.com/maps/documentation/javascript/load-maps-js-api for more information. --> <script src="https://maps.googleapis.com/maps/api/js?key=AIzaSyB41DRUbKWJHPxaFjMAwdrzWzbVKartNGg&callback=initMap&v=weekly" defer ></script> </body> </html>
Dùng thử mẫu
Hạn chế về kích thước và độ phức tạp khi kết xuất KML
API JavaScript của Maps có những giới hạn về kích thước và độ phức tạp của các tệp KML được tải. Dưới đây là thông tin tóm tắt về các hạn mức hiện tại.
Lưu ý: Các giới hạn này có thể thay đổi bất kỳ lúc nào bất cứ lúc nào.
- Kích thước tối đa của tệp đã tìm nạp (KML thô, GeoRSS thô hoặc KMZ đã nén)
- 3MB
- Kích thước tối đa của tệp KML đã giải nén
- 10MB
- Kích thước tối đa của tệp hình ảnh không nén trong tệp KMZ
- 500KB mỗi tệp
- Số lượng đường liên kết mạng tối đa
- 10
- Tổng số lượng đối tượng địa lý tối đa trong toàn tài liệu
- 1.000
- Số lớp KML
- Có giới hạn về số lượng Lớp KML có thể
được hiển thị trên một Bản đồ Google. Nếu bạn vượt quá giới hạn này, không có
các lớp trên sẽ xuất hiện trên bản đồ và lỗi sẽ được báo cáo trong trang web của bạn
bảng điều khiển JavaScript của trình duyệt. Hạn mức này được tính dựa trên sự kết hợp giữa
số lượng lớp
KmlLayer
đã tạo và tổng thời lượng của tất cả URL được sử dụng để tạo các lớp đó. MỗiKmlLayer
mới bạn tạo sẽ chiếm một phần giới hạn cho lớp và là phần giới hạn bổ sung tùy thuộc vào độ dài của URL mà trong đó Tệp KML đã được tải từ. Do đó, số lượng lớp bạn có thể thêm sẽ khác nhau tuỳ theo ứng dụng; trung bình, bạn sẽ có thể tải giữa 10 và 20 lớp mà không đạt đến giới hạn. Nếu vẫn đạt tới giới hạn, sử dụng công cụ rút ngắn URL để rút ngắn URL KML. Ngoài ra, hãy tạo một một tệp KML chứa NetworkLinks cho các URL KML riêng lẻ.
Những điều cần cân nhắc về hiệu suất và việc lưu vào bộ nhớ đệm
Các máy chủ của Google sẽ tạm thời lưu các tệp KML vào bộ nhớ đệm để giảm tải cho bạn máy chủ. Điều này cũng sẽ cải thiện hiệu suất cho người dùng bằng cách phân phát biểu thị các phân đoạn thích hợp trong tệp KML theo cách tiết kiệm không gian, dưới dạng người dùng nhấp vào, xoay và thu phóng bản đồ.
Để đạt được hiệu suất tốt nhất, bạn nên:
- Sử dụng một thẻ
<expires>
thích hợp trong KML.
KmlLayer
sẽ không sử dụng tiêu đề HTTP khi quyết định cách thức để lưu các tệp KML vào bộ nhớ đệm. - Đừng tạo tệp một cách linh động tại thời điểm yêu cầu.
Thay vào đó, hãy tạo các tệp trước khi cần đến rồi phân phát chúng theo phương thức tĩnh. Nếu máy chủ của bạn mất nhiều thời gian để truyền tệp KML thìKmlLayer
có thể không hiển thị. - Đừng tìm cách bỏ qua bộ nhớ đệm trừ phi bạn biết rõ ràng rằng
tệp đã được cập nhật.
Luôn bỏ qua bộ nhớ đệm (ví dụ: bằng cách thêm một số ngẫu nhiên hoặc thời gian đồng hồ của người dùng làm tham số truy vấn) có thể dễ dàng khiến ứng dụng của bạn bị quá tải nếu trang web của bạn đột nhiên trở nên phổ biến và bạn phân phối các tệp KML lớn.
Điều này cũng có thể khiến bộ nhớ đệm phân phối dữ liệu cũ cho người dùng, nếu có đồng hồ không chính xác và thẻ<expires>
chưa được đặt chính xác.
Thay vào đó, hãy xuất bản các tệp tĩnh được cập nhật bằng số bản sửa đổi mới, riêng biệt, và sử dụng mã phía máy chủ để cập nhật động URL được chuyển đếnKmlLayer
cho phiên bản hiện tại. - Giới hạn các thay đổi đối với tệp KML thành một lần mỗi phút.
Nếu tất cả các tệp có tổng kích thước lớn hơn 1MB (không nén), hãy giới hạn thay đổi thành một lần/5 phút. - Khi sử dụng máy chủ dữ liệu không gian địa lý, hãy tránh sử dụng tham số truy vấn để
giới hạn khung nhìn của các lớp.
Thay vào đó, bạn có thể giới hạn chế độ xem bản đồ bằng Sự kiệnbounds_changed
. Người dùng sẽ chỉ nhận được các tính năng có thể tự động hiển thị.
Nếu có một lượng lớn dữ liệu trong máy chủ dữ liệu không gian địa lý, hãy xem xét bằng lớp dữ liệu thay thế. - Khi sử dụng máy chủ dữ liệu không gian địa lý, hãy dùng nhiều
KmlLayer
cho từng nhóm tính năng mà bạn muốn cho phép người dùng bật/tắt, thay vì so với mộtKmlLayer
với các tham số truy vấn khác nhau. - Sử dụng tệp KMZ được nén để giảm kích thước tệp.
- Nếu bạn đang sử dụng Google Cloud Storage hoặc một giải pháp bộ nhớ trên đám mây khác, tránh sử dụng các tính năng như URL đã ký hoặc mã thông báo tạm thời để thực thi các biện pháp kiểm soát quyền truy cập. Những URL này có thể vô tình ngăn việc lưu vào bộ nhớ đệm.
- Giảm độ chính xác của tất cả các điểm xuống một độ chính xác phù hợp.
- Hợp nhất và đơn giản hoá hình học của các đối tượng tương tự, chẳng hạn như đa giác và hình nhiều đường.
- Xoá mọi phần tử hoặc tài nguyên hình ảnh không dùng đến.
- Xoá mọi thành phần không được hỗ trợ.
Nếu bạn cần truy cập dữ liệu cá nhân, ngăn việc lưu vào bộ nhớ đệm hoặc gửi trình duyệt
khung nhìn đến máy chủ dữ liệu không gian địa lý làm tham số truy vấn, nên sử dụng
lớp dữ liệu thay vì
KmlLayer
. Việc này sẽ chuyển hướng người dùng của bạn để trực tiếp truy cập vào
yêu cầu tài nguyên từ máy chủ web của bạn.
Phần tử KML được hỗ trợ
API JavaScript của Maps hỗ trợ những phần tử KML sau đây. Trình phân tích cú pháp KML thường bỏ qua trong im lặng những thẻ XML mà trình này không hiểu.
- Dấu vị trí
- Biểu tượng
- Thư mục
- HTML mô tả—Thay thế thực thể qua <BalloonStyle> và <text>
- KMZ (KML đã nén, bao gồm cả hình ảnh đính kèm)
- Hình nhiều đường và đa giác
- Kiểu hình nhiều đường và đa giác, bao gồm màu, phủ màu và độ mờ
- Liên kết mạng để nhập dữ liệu động
- Lớp phủ mặt đất và lớp phủ màn hình
Bảng sau đây cung cấp đầy đủ thông tin chi tiết về các phần tử KML được hỗ trợ.
Phần tử KML | Có được hỗ trợ trong API? | Bình luận |
---|---|---|
<address> | không | |
<AddressDetails> | không | |
<Alias> | Không áp dụng | <Model> không được hỗ trợ |
<altitude> | không | |
<altitudeMode> | không | |
<atom:author> | có | |
<atom:link> | có | |
<atom:name> | có | |
<BalloonStyle> | một phần | chỉ <text> được hỗ trợ |
<begin> | Không áp dụng | <TimeSpan> không được hỗ trợ |
<bgColor> | không | |
<bottomFov> | Không áp dụng | <PhotoOverlay> không được hỗ trợ |
<Camera> | không | |
<Change> | một phần | chỉ hỗ trợ thay đổi kiểu |
<color> | một phần | bao gồm #AABBGGRR và #BBGGRR; không được hỗ trợ trong <IconStyle>, <ScreenOverlay> và <GroundOverlay> |
<colorMode> | không | |
<cookie> | không | |
<coordinates> | có | |
<Create> | không | |
<Data> | có | |
<Delete> | không | |
<description> | có | Nội dung HTML được phép nhưng đã được dọn dẹp để bảo vệ khỏi nhiều trình duyệt
cuộc tấn công. Thay thế thực thể cho biểu mẫu $[dataName]
không được hỗ trợ. |
<displayMode> | không | |
<displayName> | không | |
<Document> | một phần | một cách rõ ràng sẽ không hỗ trợ thành phần con; không có ảnh hưởng nào là phần tử con của Đặc điểm |
<drawOrder> | không | |
<east> | có | |
<end> | Không áp dụng | <TimeSpan> không được hỗ trợ |
<expires> | có | hãy xem phần Tóm tắt để biết chi tiết |
<ExtendedData> | một phần | <Dữ liệu> chưa được nhập chỉ, không có <SimpleData> hoặc <Schema>> và
thay thế thực thể của biểu mẫu $[dataName] không
được hỗ trợ.
|
<extrude> | không | |
<fill> | có | |
<flyToView> | không | |
<Folder> | có | |
<geomColor> | không | không dùng nữa |
<GeometryCollection> | không | không dùng nữa |
<geomScale> | không | không dùng nữa |
<gridOrigin> | Không áp dụng | <PhotoOverlay> không được hỗ trợ |
<GroundOverlay> | có | không thể xoay |
<h> | có | không dùng nữa |
<heading> | có | |
gợi ý | có | Có hỗ trợ target=... |
<hotSpot> | có | |
<href> | có | |
<httpQuery> | không | |
<Icon> | có | không thể xoay |
<IconStyle> | có | |
<ImagePyramid> | Không áp dụng | <PhotoOverlay> không được hỗ trợ |
<innerBoundaryIs> | có | hoàn toàn từ <LinearRing> đơn đặt hàng |
<ItemIcon> | Không áp dụng | <ListStyle> không được hỗ trợ |
<key> | Không áp dụng | <StyleMap> không được hỗ trợ |
<kml> | có | |
<labelColor> | không | không dùng nữa |
<LabelStyle> | không | |
<vĩ độ> | có | |
<LatLonAltBox> | có | |
<LatLonBox> | có | |
<leftFov> | Không áp dụng | <PhotoOverlay> không được hỗ trợ |
<LinearRing> | có | |
<LineString> | có | |
<LineStyle> | có | |
<Đường liên kết> | có | |
<linkDescription> | không | |
<linkName> | không | |
<linkSnippet> | không | |
<listItemType> | Không áp dụng | <ListStyle> không được hỗ trợ |
<ListStyle> | không | |
<Location> | Không áp dụng | <Model> không được hỗ trợ |
<Lod> | có | |
<kinh độ> | có | |
<LookAt> | không | |
<maxAltitude> | có | |
<maxFadeExtent> | có | |
<maxHeight> | Không áp dụng | <PhotoOverlay> không được hỗ trợ |
<maxLodPixels> | có | |
<maxSessionLength> | không | |
<maxWidth> | Không áp dụng | <PhotoOverlay> không được hỗ trợ |
<message> | không | |
<Metadata> | không | không dùng nữa |
<minAltitude> | có | |
<minFadeExtent> | có | |
<minLodPixels> | có | |
<minRefreshPeriod> | không | <NetworkLink> |
<Model> | không | |
<MultiGeometry> | một phần | hiển thị nhưng hiển thị dưới dạng các đối tượng riêng biệt ở bên trái bảng điều khiển |
<name> | có | |
<near> | Không áp dụng | <PhotoOverlay> không được hỗ trợ |
<NetworkLink> | có | |
<NetworkLinkControl> | một phần | <Cập nhật> và <expires> được hỗ trợ một phần. API bỏ qua cài đặt hết hạn trong tiêu đề HTTP nhưng sử dụng ngày hết hạn cài đặt được chỉ định trong KML. Trong trường hợp không có chế độ cài đặt ngày hết hạn, hoặc trong khoảng thời gian hợp lệ, Google Maps có thể lưu dữ liệu đã tìm nạp từ Internet trong một khoảng thời gian không xác định. Tìm nạp lại dữ liệu từ Bạn có thể buộc phải sử dụng Internet bằng cách đổi tên tài liệu và tìm nạp tài liệu trong URL khác hoặc bằng cách đảm bảo rằng tài liệu chứa các URL thích hợp cài đặt ngày hết hạn. |
<north> | có | |
<open> | có | |
<Hướng> | Không áp dụng | <Model> không được hỗ trợ |
<outerBoundaryIs> | có | hoàn toàn từ <LinearRing> đơn đặt hàng |
<outline> | có | |
<overlayXY> | không | |
<Pair> | Không áp dụng | <StyleMap> không được hỗ trợ |
<phoneNumber> | không | |
<PhotoOverlay> | không | |
<Dấu vị trí> | có | |
<Point> | có | |
<Polygon> | có | |
<PolyStyle> | có | |
<range> | có | |
<refreshInterval> | một phần | <Đường liên kết> chỉ; không có trong <Icon> |
<refreshMode> | có | Không hỗ trợ tiêu đề HTTP cho "onExpire" . Xem ghi chú trên <Cập nhật> và <expires> ở trên. |
<refreshVisibility> | không | |
<Region> | có | |
<ResourceMap> | Không áp dụng | <Model> không được hỗ trợ |
<rightFov> | Không áp dụng | <PhotoOverlay> không được hỗ trợ |
<roll> | Không áp dụng | <Camera> và <Model> không được hỗ trợ |
<rotation> | không | |
<rotationXY> | không | |
<Scale> | Không áp dụng | <Model> không được hỗ trợ |
<scale> | không | |
<Schema> | không | |
<SchemaData> | không | |
<ScreenOverlay> | có | không thể xoay |
<screenXY> | không | |
<shape> | Không áp dụng | <PhotoOverlay> không được hỗ trợ |
<SimpleData> | Không áp dụng | <SchemaData> không được hỗ trợ |
<SimpleField> | Không áp dụng | <Schema> không được hỗ trợ |
<size> | có | |
<Snippet> | có | |
<south> | có | |
<state> | Không áp dụng | <ListStyle> không được hỗ trợ |
<Style> | có | |
<StyleMap> | không | Không hỗ trợ hiệu ứng di chuột qua (đánh dấu) |
<styleUrl> | Không áp dụng | <StyleMap> không được hỗ trợ |
<targetHref> | một phần | được hỗ trợ trong <Update>, không phải trong <Alias> |
<tessellate> | không | |
<text> | có | không hỗ trợ thay thế $[geDirections] |
<textColor> | không | |
<tileSize> | Không áp dụng | <PhotoOverlay> không được hỗ trợ |
<tilt> | không | |
<TimeSpan> | không | |
<TimeStamp> | không | |
<topFov> | Không áp dụng | <PhotoOverlay> không được hỗ trợ |
<Cập nhật> | một phần | chỉ thay đổi kiểu chứ không phải <Tạo> hoặc <Delete> |
<Url> | có | không dùng nữa |
<value> | có | |
<viewBoundScale> | không | |
<viewFormat> | không | |
<viewRefreshMode> | một phần | "onStop" được hỗ trợ |
<viewRefreshTime> | có | |
<ViewVolume> | Không áp dụng | <PhotoOverlay> không được hỗ trợ |
<visibility> | một phần | có trên <Thư mục> – dấu vị trí con kế thừa khả năng hiển thị |
<w> | có | không dùng nữa |
<west> | có | |
<when> | Không áp dụng | <TimeStamp> không được hỗ trợ |
<width> | có | |
<x> | có | không dùng nữa |
<y> | có | không dùng nữa |