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