הרכיב KmlLayer
מעבד רכיבי KML ו-GeoRSS לשכבת-על של משבצת API של Maps JavaScript.
סקירה כללית
ממשק API של JavaScript במפות Google תומך בפורמטים של נתונים KML ו-GeoRSS להצגת מידע גיאוגרפי. הפורמטים של הנתונים האלה מוצגים במפה באמצעות אובייקט KmlLayer
, שהבנאי שלו לוקח את כתובת ה-URL של קובץ KML או GeoRSS שנגיש לציבור.
הערה: המחלקה KmlLayer
שיוצרת שכבות-על מסוג KML ב-מפות JavaScript API משתמשת בשירות באירוח Google כדי לאחזר ולנתח קובצי KML לעיבוד.
כתוצאה מכך, ניתן להציג קובצי KML רק אם הם מתארחים בכתובת URL נגישה לציבור שלא דורשת אימות כדי לגשת אליה.
אם אתם צריכים גישה לקבצים פרטיים, שליטה פרטנית במטמון או שליחת אזור התצוגה של הדפדפן לשרת נתונים גיאו-מרחביים כפרמטר של שאילתה, מומלץ להשתמש בשכבות נתונים במקום ב-KmlLayer
. הפעולה הזו תכוון את הדפדפנים של המשתמשים
לבקש משאבים ישירות משרת האינטרנט.
ה-API של JavaScript במפות Google ממיר את נתוני ה-XML
הגיאוגרפיים שסופקו לייצוג KML שמוצג במפה באמצעות שכבת-על של אריח Maps JavaScript API. ה-KML נראה (וגם מתנהג במידה מסוימת) כמו רכיבי שכבת-על מוכרים של Maps JavaScript API. רכיבי KML <Placemark>
ו-GeoRSS point
מעובדים כסמנים. לדוגמה, רכיבי <LineString>
מעובדים כקווים מרובים ורכיבי <Polygon>
מעובדים כפוליגונים. באופן דומה, רכיבי <GroundOverlay>
יוצגו כתמונות מלבניות במפה. חשוב לציין שהאובייקטים האלה הם לא Maps JavaScript API Markers
, Polylines
, Polygons
או GroundOverlays
. במקום זאת, הם מעובדים לאובייקט אחד במפה.
KmlLayer
אובייקטים מופיעים במפה אחרי שמגדירים את המאפיין map
שלהם. אפשר להסיר אותם מהמפה על ידי קריאות
ל-setMap()
ולמעבר אל null
. האובייקט KmlLayer
מנהל את הרינדור של רכיבי הצאצא האלה על ידי אחזור אוטומטי של התכונות המתאימות לגבולות הנתונים של המפה. כשהגבולות
משתנים, התכונות באזור התצוגה הנוכחי עוברות רינדור באופן אוטומטי.
מאחר שהרכיבים בתוך KmlLayer
מעובדים לפי דרישה, השכבה מאפשרת לך לנהל בקלות את הרינדור של אלפי סמנים, קווים פוליגונים ופוליגונים. חשוב לזכור שלא ניתן לגשת ישירות
לאובייקטים האלה, אבל כל אחד מהם מספק אירועי קליק שמחזירים נתונים
על האובייקטים האלה.
אפשרויות לשכבת KML
ה-builder של KmlLayer()
מעביר באופן אופציונלי מספר
KmlLayerOptions
:
map
מציין את ה-Map
שבו יש לעבד אתKmlLayer
. אפשר להסתירKmlLayer
על ידי הגדרת הערך הזה ל-null
בשיטהsetMap()
.- המדיניות
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> <script src="https://polyfill.io/v3/polyfill.min.js?features=default"></script> <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 callback 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> <script src="https://polyfill.io/v3/polyfill.min.js?features=default"></script> <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 callback 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
באופן ישיר. במקום זאת, התכונות מוצגות, והן נראות כמו שכבות-על ניתנות ללחיצה
של Maps JavaScript API.
כברירת מחדל, לחיצה על תכונות ספציפיות מעלה
InfoWindow
שמכיל מידע על KML <title>
ו-<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" }
הדוגמה הבאה מציגה טקסט <Description>
של תכונת KML בתוך <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> <script src="https://polyfill.io/v3/polyfill.min.js?features=default"></script> <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 callback 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 יש מגבלות לגודל ולמורכבות של קובצי 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 תיאורי - החלפת ישות דרך <BalloonStyle> ו-<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> | חלקית | אין תמיכה רק ב-<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> |
<דגם> | no | |
<MultiGeometry> | חלקית | מוצגות אבל מוצגות כתכונות נפרדות בחלונית הצדדית השמאלית |
<name> | כן | |
<ליד> | לא רלוונטי | אין תמיכה ב-<PhotoOverlay> |
<NetworkLink> | כן | |
<NetworkLinkControl> | חלקית | ב-<Update> וב-<expires> יש תמיכה חלקית. ממשק ה-API מתעלם מהגדרות התפוגה בכותרות ה-HTTP, אבל משתמש בהגדרות התפוגה שצוינו ב-KML. אם לא חלות הגדרות תפוגה, או במסגרת פרק הזמן של תוקף הזמן, ייתכן שלמפות Google יש קובץ שמור של נתונים שאוחזרו מהאינטרנט לפרקי זמן שלא צוינו. ניתן לאלץ שליפה מחדש של הנתונים מהאינטרנט על ידי שינוי שם המסמך ואחזור שלו תחת כתובת אתר אחרת, או על ידי בדיקה שהמסמך מכיל הגדרות תפוגה מתאימות. |
<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> | לא רלוונטי | אין תמיכה ב<מצלמה> וב <דגם> |
<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> |
<עדכון> | חלקית | רק שינויים בסגנון, ולא <יצירה> או <Delete> |
<Url> | כן | הוצא משימוש |
<value> | כן | |
<viewBoundScale> | no | |
<viewFormat> | no | |
<viewRefreshMode> | חלקית | "onStop" נתמך |
<viewRefreshTime> | כן | |
<ViewVolume> | לא רלוונטי | אין תמיכה ב-<PhotoOverlay> |
<visibility> | חלקית | yes on <Folder> – סמנים של צאצאים יורשים את הרשאות הגישה שלהם |
<w> | כן | הוצא משימוש |
<west> | כן | |
<when> | לא רלוונטי | אין תמיכה ב-<TimeStamp> |
<width> | כן | |
<x> | כן | הוצא משימוש |
<y> | כן | הוצא משימוש |