הכיתה WebGLOverlayView
google.maps.WebGLOverlayView
class
תצוגת שכבת-העל של WebGL מספקת גישה ישירה לאותו הקשר של עיבוד WebGL שבו פלטפורמת מפות Google משתמשת כדי לעבד את מפת הבסיס של הווקטור. השימוש בהקשר עיבוד משותף מספק יתרונות כמו חסימה של עומק באמצעות גיאומטריה של מבנים תלת-ממדיים, והיכולת לסנכרן תוכן דו-ממדי או תלת-ממדי עם עיבוד של מפת בסיס.
באמצעות תצוגת שכבת-העל של WebGL אפשר להוסיף תוכן למפות ישירות באמצעות WebGL, או באמצעות ספריות גרפיקה פופולריות כמו Three.js או deck.gl. כדי להשתמש בשכבת-העל, אפשר להרחיב את google.maps.WebGLOverlayView
ולספק הטמעה לכל אחד מההוקים הבאים של מחזור החיים: WebGLOverlayView.onAdd
, WebGLOverlayView.onContextRestored
, WebGLOverlayView.onDraw
, WebGLOverlayView.onContextLost
ו-WebGLOverlayView.onRemove
.
צריך לבצע קריאה ל-WebGLOverlayView.setMap
עם אובייקט Map
תקין כדי להפעיל את הקריאה ל-method onAdd()
ו-setMap(null)
כדי להפעיל את ה-method onRemove()
. אפשר להפעיל את השיטה 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() פרמטרים: ללא
ערך המוחזר: None
מטמיעים את השיטה הזו כדי לאחזר או ליצור מבני נתונים ביניים לפני ששכבת-העל נמשכת, בלי צורך בגישה מיידית להקשר העיבוד של WebGL. כדי לבצע רינדור, צריך להטמיע את השיטה הזו. |
onContextLost |
onContextLost() פרמטרים: ללא
ערך המוחזר: None
השיטה הזו נקראת כשהקשר של העיבוד אובד מסיבה כלשהי, וזוהי המקום שבו צריך לנקות כל מצב GL קיים, כי אין בו יותר צורך. |
onContextRestored |
onContextRestored(options) פרמטרים:
ערך המוחזר: None
המערכת קוראת לשיטה הזו ברגע שההקשר של הרינדור זמין. אפשר להשתמש בו כדי לאתחל או לקשר כל מצב של WebGL, כמו שידורים או אובייקטים של מאגרים. |
onDraw |
onDraw(options) פרמטרים:
ערך המוחזר: None
מטמיעים את השיטה הזו כדי לצייר תוכן WebGL ישירות במפה. שימו לב: אם צריך לצייר פריים חדש של שכבת-העל, צריך לבצע קריאה ל- WebGLOverlayView.requestRedraw . |
onRemove |
onRemove() פרמטרים: ללא
ערך המוחזר: None
המערכת קוראת לשיטה הזו כשהשכבה העליונה מוסרת מהמפה באמצעות WebGLOverlayView.setMap(null) , וזו המקום שבו צריך להסיר את כל האובייקטים הביניים. כדי לבצע רינדור, צריך להטמיע את השיטה הזו. |
onStateUpdate |
onStateUpdate(options) פרמטרים:
ערך המוחזר: None
מטמיעים את השיטה הזו כדי לטפל בכל עדכוני המצב של GL מחוץ למסגרת האנימציה של הרינדור. |
requestRedraw |
requestRedraw() פרמטרים: ללא
ערך המוחזר: None
מפעיל את המפה כדי לצייר מחדש את המסגרת. |
requestStateUpdate |
requestStateUpdate() פרמטרים: ללא
ערך המוחזר: None
מפעיל את המפה לעדכון מצב GL. |
setMap |
setMap([map]) פרמטרים:
ערך המוחזר: None
הוספת שכבת-העל למפה. |
עובר בירושה:
addListener ,
bindTo ,
get ,
notify ,
set ,
setValues ,
unbind ,
unbindAll
|
הממשק WebGLDrawOptions
ממשק google.maps.WebGLDrawOptions
אפשרויות ציור.
מאפיינים | |
---|---|
gl |
ה-WebGLRenderingContext שבו יתבצע העיבוד של WebGLOverlayView הזה. |
transformer |
טרנספורמציית המטריצה ממרחב המצלמה לקווי רוחב ואורך. |
הממשק WebGLStateOptions
ממשק google.maps.WebGLStateOptions
אפשרויות מצב GL.
מאפיינים | |
---|---|
gl |
ה-WebGLRenderingContext שבו יתבצע העיבוד של WebGLOverlayView הזה. |
הממשק CoordinateTransformer
ממשק google.maps.CoordinateTransformer
הממשק הזה מספק שיטות נוחות ליצירת מטריצות לשימוש ברינדור של סצנות WebGL מעל למפת הבסיס של Google.
הערה: אסור לשמור הפניה לאובייקט הזה מחוץ להיקף של קריאת ה-WebGLOverlayView.onDraw
שעוטפת אותו.
Methods | |
---|---|
fromLatLngAltitude |
fromLatLngAltitude(latLngAltitude[, rotations, scale]) פרמטרים:
ערך המוחזר:
Float64Array מטריצת MVP לשימוש עם WebGL. |
getCameraParams |
getCameraParams() פרמטרים: ללא
ערך המשוב:
CameraParams פרמטרים של מצלמה |
הממשק CameraParams
ממשק google.maps.CameraParams
משמש לאחזור פרמטרים של מצלמה, כמו פרמטר של מצלמת GL ששימשה ל-WebGLOverlayView
.
הממשק הזה הוא תוספת ל-CameraOptions
.
מאפיינים | |
---|---|
center |
סוג:
LatLng |
heading |
סוג:
number |
tilt |
סוג:
number |
zoom |
סוג:
number |