WebGLOverlayView class
google.maps.WebGLOverlayView
class
התצוגה WebGL Overlay View מספקת גישה ישירה לאותו הקשר של רינדור WebGL שפלטפורמת מפות Google משתמשת בו כדי לעבד את מפת הבסיס הווקטורית. השימוש בהקשר משותף של רינדור מספק יתרונות כמו הסתרת עומק עם גיאומטריית בניין תלת-ממדית, והיכולת לסנכרן תוכן דו-ממדי ותלת-ממדי עם רינדור של מפת בסיס.
בעזרת WebGL Overlay View אפשר להוסיף תוכן למפות באמצעות WebGL ישירות, או באמצעות ספריות גרפיקה פופולריות כמו Three.js או deck.gl. כדי להשתמש בשכבת העל, אפשר להרחיב את google.maps.WebGLOverlayView
ולספק הטמעה לכל אחת מהנקודות הבאות במחזור החיים: WebGLOverlayView.onAdd
, WebGLOverlayView.onContextRestored
, WebGLOverlayView.onDraw
, WebGLOverlayView.onContextLost
ו-WebGLOverlayView.onRemove
.
כדי להפעיל את הקריאה ל-method onAdd()
ול-setMap(null)
, צריך להפעיל את WebGLOverlayView.setMap
עם אובייקט Map
תקין. כדי להפעיל את ה-method onRemove()
, צריך להפעיל את WebGLOverlayView.setMap
עם אובייקט Map
תקין. אפשר לקרוא לשיטה setMap()
בזמן הבנייה או בכל שלב לאחר מכן, כשצריך להציג מחדש את שכבת העל אחרי ההסרה. לאחר מכן, הפונקציה onDraw()
תופעל בכל פעם שמאפיין של המפה משתנה ויכול לשנות את המיקום של הרכיב, כמו זום, מרכז או סוג המפה. אפשר להוסיף WebGLOverlayView רק למפה וקטורית עם MapOptions.mapId
(כולל מפות שמוגדרות ל-RenderingType.VECTOR
MapOptions.renderingType
ומשתמשות ב-Map.DEMO_MAP_ID
כ-MapOptions.mapId
).
הכיתה הזו היא הרחבה של MVCObject
.
אפשר להתקשר אל const {WebGLOverlayView} = await google.maps.importLibrary("maps")
כדי לקבל גישה.
מידע נוסף זמין במאמר בנושא ספריות ב-Maps JavaScript API.
יצרן | |
---|---|
WebGLOverlayView |
WebGLOverlayView() פרמטרים: אין
יוצר WebGLOverlayView . |
Methods | |
---|---|
getMap |
getMap() פרמטרים: אין
ערך מוחזר:
Map|null|undefined |
onAdd |
onAdd() פרמטרים: אין
ערך מוחזר: אין
כדאי להטמיע את השיטה הזו כדי לאחזר או ליצור מבני נתונים ביניים לפני שהשכבה השקופה מצוירת, שלא דורשים גישה מיידית להקשר העיבוד של WebGL. חובה להטמיע את השיטה הזו כדי להציג את המודעה. |
onContextLost |
onContextLost() פרמטרים: אין
ערך מוחזר: אין
השיטה הזו נקראת כשהקשר העיבוד אבד מסיבה כלשהי, וכאן צריך לנקות את מצב ה-GL הקיים, כי הוא כבר לא נחוץ. |
onContextRestored |
onContextRestored(options) פרמטרים:
ערך מוחזר: אין
השיטה הזו מופעלת ברגע שהקשר העיבוד זמין. אפשר להשתמש בו כדי לאתחל או לקשור כל מצב WebGL, כמו shaders או אובייקטים של buffer. |
onDraw |
onDraw(options) פרמטרים:
ערך מוחזר: אין
מטמיעים את השיטה הזו כדי לשרטט תוכן WebGL ישירות במפה. שימו לב: אם צריך לצייר מסגרת חדשה לשכבת העל, צריך להפעיל את WebGLOverlayView.requestRedraw . |
onRemove |
onRemove() פרמטרים: אין
ערך מוחזר: אין
המערכת קוראת לשיטה הזו כשהשכבה השקופה מוסרת מהמפה באמצעות WebGLOverlayView.setMap(null) , וכאן צריך להסיר את כל האובייקטים שנוצרו במהלך. חובה להטמיע את השיטה הזו כדי להציג את המודעה. |
onStateUpdate |
onStateUpdate(options) פרמטרים:
ערך מוחזר: אין
מטמיעים את השיטה הזו כדי לטפל בעדכונים של מצב GL מחוץ למסגרת של אנימציית הרינדור. |
requestRedraw |
requestRedraw() פרמטרים: אין
ערך מוחזר: אין
הפעלת הטריגר גורמת למפה לצייר מחדש פריים. |
requestStateUpdate |
requestStateUpdate() פרמטרים: אין
ערך מוחזר: אין
הפעולה הזו גורמת לעדכון מצב ה-GL במפה. |
setMap |
setMap([map]) פרמטרים:
ערך מוחזר: אין
השכבה הנוספת מתווספת למפה. |
בירושה:
addListener ,
bindTo ,
get ,
notify ,
set ,
setValues ,
unbind ,
unbindAll
|
ממשק WebGLDrawOptions
google.maps.WebGLDrawOptions
ממשק
אפשרויות ציור.
מאפיינים | |
---|---|
gl |
ה-WebGLRenderingContext שבו יתבצע הרינדור של WebGLOverlayView. |
transformer |
טרנספורמציית המטריצה ממרחב המצלמה לקואורדינטות של קו רוחב/אורך. |
WebGLStateOptions interface
google.maps.WebGLStateOptions
ממשק
אפשרויות של מצב GL.
מאפיינים | |
---|---|
gl |
ה-WebGLRenderingContext שבו יתבצע הרינדור של WebGLOverlayView. |
ממשק CoordinateTransformer
google.maps.CoordinateTransformer
ממשק
הממשק הזה מספק שיטות נוחות ליצירת מטריצות לשימוש בעיבוד של סצנות WebGL מעל מפת הבסיס של Google.
הערה: אסור להחזיק הפניה לאובייקט הזה מחוץ להיקף של קריאת ה-API WebGLOverlayView.onDraw
המכילה.
Methods | |
---|---|
fromLatLngAltitude |
fromLatLngAltitude(latLngAltitude[, rotations, scale]) פרמטרים:
ערך מוחזר:
Float64Array מטריצת MVP לשימוש עם WebGL. |
getCameraParams |
getCameraParams() פרמטרים: אין
ערך החזרה: פרמטרים של המצלמה
CameraParams |
CameraParams interface
google.maps.CameraParams
ממשק
משמש לאחזור פרמטרים של המצלמה, כמו הפרמטרים של מצלמת ה-GL שמשמשת ל-WebGLOverlayView
.
הממשק הזה מרחיב את CameraOptions
.
מאפיינים | |
---|---|
center |
סוג:
LatLng |
heading |
סוג:
number |
tilt |
סוג:
number |
zoom |
סוג:
number |