הרכיב KmlLayer
מעבד רכיבי KML ו-GeoRSS
לשכבת-על של משבצת API של JavaScript במפות Google.
סקירה
ממשק ה-API של JavaScript במפות Google תומך בפורמטים של נתוני KML ו-GeoRSS
להצגת מידע גיאוגרפי. הפורמטים האלה של הנתונים מוצגים במפה באמצעות אובייקט KmlLayer
, שהבנאי שלו משתמש בכתובת ה-URL של קובץ KML או GeoRSS שנגיש לכולם.
הערה: המחלקה KmlLayer
שיוצרת שכבות-על של KML ב-Maps JavaScript API משתמשת בשירות שמתארח ב-Google כדי לאחזר ולנתח קובצי KML לצורך עיבוד.
לכן אפשר להציג קובצי KML רק אם הם מתארחים
בכתובת URL נגישה לכולם שלא מחייבת אימות כדי לגשת אליהם.
אם נדרשת לכם גישה לקבצים פרטיים, שליטה פרטנית במטמון או שליחה של אזור התצוגה של הדפדפן לשרת נתונים גיאו-מרחבי כפרמטר של שאילתה, מומלץ להשתמש בשכבות נתונים במקום ב-KmlLayer
. הפעולה הזו תנחה את הדפדפנים של המשתמשים
לבקש משאבים ישירות משרת האינטרנט שלך.
API JavaScript של מפות Google ממיר את נתוני ה-XML הגיאוגרפיים שסופקו לייצוג KML שמוצג במפה באמצעות
שכבת-על של משבצת API של JavaScript של מפות Google. ה-KML הזה נראה
(ופועל במידה מסוימת) כמו רכיבי שכבת-על מוכרים של JavaScript API של מפות Google. רכיבי KML <Placemark>
ו-GeoRSS point
עוברים עיבוד כסמנים. לדוגמה, רכיבי <LineString>
מעובדים כקווים פוליגוניים ורכיבי <Polygon>
מעובדים
כפוליגונים. באופן דומה, רכיבי <GroundOverlay>
מעובדים כתמונות מלבניות במפה. עם זאת, חשוב לציין שאובייקטים אלה לא של Maps JavaScript API Markers
,
Polylines
, Polygons
או GroundOverlays
. במקום זאת, הם מעובדים לאובייקט יחיד במפה.
KmlLayer
אובייקטים מופיעים במפה אחרי שמגדירים את המאפיין map
. אפשר להסיר אותם מהמפה על ידי שליחת קריאה ל-setMap()
להעביר את null
. האובייקט KmlLayer
מנהל את הרינדור של רכיבי הצאצא האלה על ידי אחזור אוטומטי של התכונות שמתאימות לגבולות הנתונים של המפה. כשהגבולות משתנים, התכונות באזור התצוגה הנוכחי מעובדות באופן אוטומטי.
מכיוון שהרכיבים בתוך KmlLayer
מעובדים לפי דרישה, השכבה מאפשרת לכם לנהל בקלות את העיבוד של אלפי סמנים, קווים פוליגוניים ופוליגונים. חשוב לשים לב שאי אפשר לגשת ישירות לאובייקטים האלה, למרות שכל אחד מהם מספק אירועי קליק שמחזירים נתונים על האובייקטים הבודדים האלה.
אפשרויות שכבות KML
ה-constructor של KmlLayer()
מעביר באופן אופציונלי כמה
KmlLayerOptions
:
map
מציין את ה-Map
שבו צריך לעבד אתKmlLayer
. אפשר להסתירKmlLayer
על ידי הגדרת הערך הזה כ-null
ב-methodsetMap()
.preserveViewport
מציין שאין להתאים את המפה לגבולות התוכן שלKmlLayer
כאשר מציגים את השכבה. כברירת מחדל, כשמציגיםKmlLayer
, מרחק התצוגה של המפה משתנה וממוקם כדי להציג את כל תוכן השכבה.suppressInfoWindows
מציין שתכונות קליקביליות בתוךKmlLayer
לא יפעילו הצגה של אובייקטים שלInfoWindow
.
בנוסף, אחרי עיבוד של KmlLayer
, הוא מכיל מאפיין metadata
שלא ניתן לשינוי, שמכיל את שם השכבה, התיאור, קטע הטקסט והמחבר שלה בליטרל של אובייקט KmlLayerMetadata
. אפשר לבדוק את המידע הזה באמצעות השיטה getMetadata()
. מכיוון שרינדור אובייקטים של KmlLayer
דורש תקשורת אסינכרונית עם שרת חיצוני, כדאי להאזין לאירוע metadata_changed
שיציין שהנכס מאוכלס.
הדוגמה הבאה יוצרת KmlLayer
מהפיד הגיאוגרפי של 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>
כדאי לנסות דוגמה
הדוגמה הבאה יוצרת KmlLayer
מפיד ה-KML הנתון:
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>
כדאי לנסות דוגמה
פרטי התכונה KML
מכיוון ש-KML עשוי לכלול מספר גדול של תכונות, אין גישה לנתוני התכונות מהאובייקט KmlLayer
. במקום זאת, בזמן שהתכונות מוצגות, הן מעובדות באופן שנראה כמו שכבות-על של JavaScript API של מפות Google שאפשר ללחוץ עליהן.
כברירת מחדל, לחיצה על תכונות מסוימות תוביל להצגת
InfoWindow
שמכיל <title>
של KML ומידע על <description>
על התכונה הנתונה.
בנוסף, לחיצה על תכונה של KML יוצרת KmlMouseEvent
,
שמעביר את המידע הבא:
position
מציין את הקואורדינטות של קו הרוחב/קו האורך שבהן צריך לעגן את ה-InfoWindow
של תכונת ה-KML הזו. המיקום הזה הוא בדרך כלל המיקום שעליו לוחצים עבור פוליגונים, קווים פוליגוניים ושכבות-על של קרקע, אבל המקור האמיתי של הסמנים.pixelOffset
מציין את ההיסט מ-position
שלמעלה כדי לעגן את ה"זנב"InfoWindow
. באובייקטים פוליגונים, ההיסט הזה הוא בדרך כלל0,0
אבל עבור סמנים הוא כולל את גובה הסמן.featureData
מכיל מבנה JSON שלKmlFeatureData
.
זוהי דוגמה לאובייקט KmlFeatureData
:
{ author: { email: "nobody@google.com", name: "Mr Nobody", uri: "http://example.com" }, description: "description", id: "id", infoWindowHtml: "html", name: "name", snippet: "snippet" }
הדוגמה הבאה מציגה טקסט של תכונת KML <Description>
בתוך <div>
כשמשתמשים לוחצים על התכונה:
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>
כדאי לנסות דוגמה
הגבלות גודל ומורכבות לעיבוד KML
ל-JavaScript API של מפות Google יש מגבלות על הגודל והמורכבות של קובצי KML שנטענו. לפניכם סיכום של המגבלות הנוכחיות.
הערה: המגבלות האלה עשויות להשתנות בכל שלב.
- גודל הקובץ המרבי שאותו ניתן לטעון (KML גולמי, GeoRSS גולמי או KMZ דחוס)
- 3MB
- הגודל המרבי של קובץ KML לא דחוס
- 10MB
- הגודל המקסימלי של קובץ תמונה לא דחוס בקובצי KMZ
- 500KB לכל קובץ
- המספר המקסימלי של קישורי רשת
- 10
- המספר המרבי של פריטים במסמך
- 1,000
- מספר שכבות KML
- יש הגבלה על מספר שכבות ה-KML שאפשר להציג במפה אחת של Google. אם תחרגו מהמגבלה, אף אחת מהשכבות לא תופיע במפה, ותדווח שגיאה במסוף JavaScript של דפדפן האינטרנט. המגבלה מבוססת על שילוב בין מספר המחלקות של
KmlLayer
שנוצרו והאורך הכולל של כל כתובות ה-URL ששימשו ליצירת השכבות האלה. כל קובץKmlLayer
חדש שיוצרים יתפוס חלק מהמגבלה של השכבה וחלק נוסף מהמגבלה, בהתאם לאורך כתובת ה-URL שבה קובץ ה-KML נטען. כתוצאה מכך, מספר השכבות שאפשר להוסיף ישתנה בהתאם לאפליקציה. בממוצע, תוכלו לטעון בין 10 ל-20 שכבות בלי להגיע למגבלה. אם עדיין הגעת למגבלה, אפשר להשתמש בכלי לקיצור כתובות URL כדי לקצר את כתובות ה-URL של ה-KML. לחלופין, אפשר ליצור קובץ KML אחד שמורכב מ-NetworkLinks לכתובות ה-URL הנפרדות של KML.
שיקולים לגבי ביצועים ושמירה במטמון
שרתי Google ישמרו באופן זמני קובצי KML במטמון כדי להפחית את העומס על השרתים שלך. כך ישפר גם את הביצועים של המשתמשים שלך על ידי הצגת ייצוג יעיל מבחינת השטח של הקטעים המתאימים בקובץ ה-KML, בזמן שהמשתמשים ילחצו על המפה, יזיז אותה או תשנה את מרחק התצוגה שלה.
כדי ליהנות מהביצועים הטובים ביותר, מומלץ:
- צריך להשתמש בתג
<expires>
מתאים ב-KML.
KmlLayer
לא ישתמש בכותרות HTTP כדי להחליט איך לשמור קובצי KML במטמון. - אין ליצור קבצים באופן דינמי בזמן הבקשה.
במקום זאת, אפשר ליצור את הקבצים לפני שיהיה צורך בהם, ולשלוח אותם באופן סטטי. אם עובר הרבה זמן עד שהשרת משדר את קובץ ה-KML, יכול להיות שה-KmlLayer
לא יוצג. - אין לנסות לעקוף מטמון, אלא אם כן ידוע לך בוודאות שהקובץ עודכן.
עקיפה תמידית של מטמון (לדוגמה, על ידי הוספה של מספר אקראי או זמן השעון של המשתמש כפרמטר של שאילתה) יכולה לגרום בקלות לעומס על השרתים של אם האתר שלכם פופולרי פתאום ואתם מציגים קובצי KML גדולים.
היא יכולה גם לגרום למטמון להציג למשתמשים נתונים לא פעילים אם שעון של משתמש כלשהו שגוי והתג<expires>
לא הוגדר נכון.
במקום זאת, צריך לפרסם קבצים סטטיים מעודכנים עם מספר גרסה חדש ונפרד, ולהשתמש בקוד בצד השרת כדי לעדכן באופן דינמי את כתובת ה-URL שמועברת אלKmlLayer
בגרסה הנוכחית. - אפשר להגביל את השינויים בקובצי ה-KML לפעם אחת בדקה.
אם הגודל הכולל של כל הקבצים עולה על 1MB (לא דחוס), צריך להגביל את האפשרות הזו פעם אחת ב-5 דקות. - כשמשתמשים בשרת נתונים גיאו-מרחבי, מומלץ להימנע משימוש בפרמטרים של שאילתה כדי להגביל את אזור התצוגה של השכבות.
במקום זאת, אפשר להגביל את אזור התצוגה של המפה באמצעות האירועbounds_changed
. למשתמשים יישלחו רק תכונות שניתן להציג באופן אוטומטי.
אם יש כמות גדולה של נתונים בשרת הנתונים הגיאו-מרחביים שלכם, כדאי להשתמש במקום זאת בשכבות נתונים. - כשמשתמשים בשרת נתונים גיאו-מרחבי, צריך להשתמש במספר רכיבי
KmlLayer
לכל קבוצת תכונות שרוצים לאפשר למשתמשים להפעיל או להשבית אותה, במקום ב-KmlLayer
אחד עם פרמטרים שונים של שאילתה. - כדי להקטין את גודל הקובץ, צריך להשתמש בקובצי KMZ דחוסים.
- אם אתם משתמשים ב-Google Cloud Storage או בפתרון אחר לאחסון בענן, כדאי להימנע משימוש בתכונות כמו כתובות URL חתומות או אסימונים זמניים כדי לאכוף בקרת גישה. הקבצים האלה עלולים למנוע שמירה במטמון בלי כוונה.
- מפחיתים את הדיוק של כל הנקודות לדיוק מתאים.
- אפשר למזג ולפשט את הגיאומטריה של ישויות דומות, כמו פוליגונים וקווים פוליגוניים.
- מסירים רכיבים או משאבי תמונות שלא נמצאים בשימוש.
- מסירים רכיבים שאינם נתמכים.
אם צריך לגשת למידע פרטי, למנוע שמירה במטמון או לשלוח את אזור התצוגה של הדפדפן לשרת נתונים גיאו-מרחביים כפרמטר של שאילתה, מומלץ להשתמש בשכבות נתונים במקום ב-KmlLayer
. הפעולה הזו תנחה את הדפדפנים של המשתמשים
לבקש משאבים ישירות משרת האינטרנט שלך.
רכיבי KML נתמכים
ממשק ה-API של JavaScript של מפות Google תומך ברכיבי KML הבאים. המנתח של KML מתעלם בדרך כלל מתגי XML שהוא לא מבין, ואינו מציג על כך הודעה.
- סמנים
- סמלים
- תיקיות
- HTML תיאורי – החלפת ישות דרך <BallownStyle> ו-<text>
- KMZ (compressed KML, כולל תמונות מצורפות)
- קווים שבורים ומצולעים
- סגנונות עבור קווים שבורים ומצולעים, כולל צבע, מילוי ושקיפות
- קישורי רשת לייבוא נתונים באופן דינמי
- שכבות על של קרקע ושכבות על להצגה על המסך
בטבלה הבאה מוצגים הפרטים המלאים של רכיבי ה-KML הנתמכים.
רכיב KML | יש תמיכה ב-API? | תגובה |
---|---|---|
<address> | no | |
<AddressDetails> | no | |
<Alias> | לא רלוונטי | אין תמיכה ב-<Model> |
<altitude> | no | |
<altitudeMode> | no | |
<atom:author> | כן | |
<atom:link> | כן | |
<atom:name> | כן | |
<BalloonStyle> | באופן חלקי | יש תמיכה רק ב-<text> |
<begin> | לא רלוונטי | אין תמיכה ב-<TimeSpan> |
<bgColor> | no | |
<bottomFov> | לא רלוונטי | אין תמיכה ב-<PhotoOverlay> |
<Camera> | no | |
<שינוי> | באופן חלקי | יש תמיכה רק בשינויי סגנון |
<color> | באופן חלקי | כולל #AABBGGRR ו- #BBGGRR; לא נתמך ב: <IconStyle> <ScreenOverlay> ו-<GroundOverlay> |
<colorMode> | no | |
<cookie> | no | |
<coordinates> | כן | |
<יצירה> | no | |
<Data> | כן | |
<מחיקה> | no | |
<description> | כן | מותר להשתמש בתוכן HTML, אבל הוא עובר ניקוי כדי להגן מפני מתקפות בדפדפנים שונים. אין תמיכה בהחלפות של ישויות בטופס $[dataName] . |
<displayMode> | no | |
<displayName> | no | |
<Document> | באופן חלקי | במרומז, יש תמיכה בילדים; אין השפעה כצאצא של תכונות אחרות |
<drawOrder> | no | |
<east> | כן | |
<end> | לא רלוונטי | אין תמיכה ב-<TimeSpan> |
<expires> | כן | פרטים נוספים זמינים בקטע 'סיכום' |
<ExtendedData> | באופן חלקי | אין תמיכה ב-untyped <Data> בלבד, ב-<SimpleData> או ב-<Schema>, ובהחלפות של ישויות בצורה $[dataName] .
|
<extrude> | no | |
<fill> | כן | |
<flyToView> | no | |
<תיקייה> | כן | |
<geomColor> | no | הוצא משימוש |
<GeometryCollection> | no | הוצא משימוש |
<geomScale> | no | הוצא משימוש |
<gridOrigin> | לא רלוונטי | אין תמיכה ב-<PhotoOverlay> |
<GroundOverlay> | כן | לא ניתן לבצע רוטציה |
<h> | כן | הוצא משימוש |
<heading> | כן | |
רמז | כן | תמיכה ב-target=... |
<hotSpot> | כן | |
<href> | כן | |
<httpQuery> | no | |
<Icon> | כן | לא ניתן לבצע רוטציה |
<IconStyle> | כן | |
<ImagePyramid> | לא רלוונטי | אין תמיכה ב-<PhotoOverlay> |
<innerBoundaryIs> | כן | באופן מרומז מהסדר <LinearRing> |
<ItemIcon> | לא רלוונטי | אין תמיכה ב-<ListStyle> |
<key> | לא רלוונטי | אין תמיכה ב-<StyleMap> |
<kml> | כן | |
<labelColor> | no | הוצא משימוש |
<LabelStyle> | no | |
<latitude> | כן | |
<LatLonAltBox> | כן | |
<LatLonBox> | כן | |
<leftFov> | לא רלוונטי | אין תמיכה ב-<PhotoOverlay> |
<LinearRing> | כן | |
<LineString> | כן | |
<LineStyle> | כן | |
<Link> | כן | |
<linkDescription> | no | |
<linkName> | no | |
<linkSnippet> | no | |
<listItemType> | לא רלוונטי | אין תמיכה ב-<ListStyle> |
<ListStyle> | no | |
<מיקום> | לא רלוונטי | אין תמיכה ב-<Model> |
<Lod> | כן | |
<longitude> | כן | |
<LookAt> | no | |
<maxAltitude> | כן | |
<maxFadeExtent> | כן | |
<maxHeight> | לא רלוונטי | אין תמיכה ב-<PhotoOverlay> |
<maxLodPixels> | כן | |
<maxSessionLength> | no | |
<maxWidth> | לא רלוונטי | אין תמיכה ב-<PhotoOverlay> |
<message> | no | |
<Metadata> | no | הוצא משימוש |
<minAltitude> | כן | |
<minFadeExtent> | כן | |
<minLodPixels> | כן | |
<minRefreshPeriod> | no | <NetworkLink> |
<Model> | no | |
<MultiGeometry> | באופן חלקי | מעובדות אבל מוצגות כתכונות נפרדות בחלונית השמאלית |
<name> | כן | |
<near> (בקרבת מקום) | לא רלוונטי | אין תמיכה ב-<PhotoOverlay> |
<NetworkLink> | כן | |
<NetworkLinkControl> | באופן חלקי | קיימת תמיכה חלקית ב-<Update> וב-<expires>. ה-API מתעלם מהגדרות תפוגה בכותרות ה-HTTP, אבל כן משתמש בהגדרות התפוגה שצוינו ב-KML. בהיעדר הגדרות תפוגה, או במסגרת פרק הזמן החוקי, יכול להיות שאפליקציית מפות Google תשמור במטמון נתונים שנשלפו מהאינטרנט, לפרקי זמן שלא צוינו. אפשר לאלץ אחזור מחדש של הנתונים מהאינטרנט על ידי שינוי שם המסמך ואחזור שלו בכתובת URL אחרת, או על ידי בדיקה שהמסמך מכיל הגדרות תפוגה מתאימות. |
<north> | כן | |
<open> | כן | |
<Orientation> | לא רלוונטי | אין תמיכה ב-<Model> |
<outerBoundaryIs> | כן | באופן מרומז מהסדר <LinearRing> |
<outline> | כן | |
<overlayXY> | no | |
<Pair> | לא רלוונטי | אין תמיכה ב-<StyleMap> |
<phoneNumber> | no | |
<PhotoOverlay> | no | |
<Placemark> | כן | |
<Point> | כן | |
<Polygon> | כן | |
<PolyStyle> | כן | |
<range> | כן | |
<refreshInterval> | באופן חלקי | <Link> בלבד; לא ב <סמל> |
<refreshMode> | כן | אין תמיכה בכותרות HTTP במצב 'onExpire'. אפשר לעיין בהערות לגבי <Update> ו-<expires> שלמעלה. |
<refreshVisibility> | no | |
<Region> | כן | |
<ResourceMap> | לא רלוונטי | אין תמיכה ב-<Model> |
<rightFov> | לא רלוונטי | אין תמיכה ב-<PhotoOverlay> |
<roll> | לא רלוונטי | אין תמיכה בתכונות <מצלמה> ו-<Model> |
<rotation> | no | |
<rotationXY> | no | |
<קנה מידה> | לא רלוונטי | אין תמיכה ב-<Model> |
<scale> | no | |
<Schema> | no | |
<SchemaData> | no | |
<ScreenOverlay> | כן | לא ניתן לבצע רוטציה |
<screenXY> | no | |
<shape> | לא רלוונטי | אין תמיכה ב-<PhotoOverlay> |
<SimpleData> | לא רלוונטי | מאפייני <SchemaData> אינם נתמכים |
<SimpleField> | לא רלוונטי | מאפייני <Schema> אינם נתמכים |
<size> | כן | |
<Snippet> | כן | |
<south> | כן | |
<state> | לא רלוונטי | אין תמיכה ב-<ListStyle> |
<Style> | כן | |
<StyleMap> | no | אין תמיכה באפקטים של גלילה (הדגשה) |
<styleUrl> | לא רלוונטי | אין תמיכה ב-<StyleMap> |
<targetHref> | באופן חלקי | נתמך ב-<Update>, לא ב-<Alias> |
<tessellate> | no | |
<text> | כן | אין תמיכה בהחלפה של $[geDirections] |
<textColor> | no | |
<tileSize> | לא רלוונטי | אין תמיכה ב-<PhotoOverlay> |
<tilt> | no | |
<TimeSpan> | no | |
<TimeStamp> | no | |
<topFov> | לא רלוונטי | אין תמיכה ב-<PhotoOverlay> |
<עדכון> | באופן חלקי | רק שינויי סגנון, לא <Create> או <Delete> |
<Url> | כן | הוצא משימוש |
<value> | כן | |
<viewBoundScale> | no | |
<viewFormat> | no | |
<viewRefreshMode> | באופן חלקי | האפשרות "onStop" נתמכת |
<viewRefreshTime> | כן | |
<ViewVolume> | לא רלוונטי | אין תמיכה ב-<PhotoOverlay> |
<visibility> | באופן חלקי | כן ב <תיקייה> – סמנים צאצאים יורשים את הרשאות הגישה שלהם |
<w> | כן | הוצא משימוש |
<west> | כן | |
<when> | לא רלוונטי | אין תמיכה ב-<TimeStamp> |
<width> | כן | |
<x> | כן | הוצא משימוש |
<y> | כן | הוצא משימוש |