WebGL

הכיתה 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.
getMap
getMap()
פרמטרים:  ללא
ערך המוחזר:  Map|null|undefined
onAdd
onAdd()
פרמטרים:  ללא
ערך המוחזר:  None
מטמיעים את השיטה הזו כדי לאחזר או ליצור מבני נתונים ביניים לפני ששכבת-העל נמשכת, בלי צורך בגישה מיידית להקשר העיבוד של WebGL. כדי לבצע רינדור, צריך להטמיע את השיטה הזו.
onContextLost
onContextLost()
פרמטרים:  ללא
ערך המוחזר:  None
השיטה הזו נקראת כשהקשר של העיבוד אובד מסיבה כלשהי, וזוהי המקום שבו צריך לנקות כל מצב GL קיים, כי אין בו יותר צורך.
onContextRestored
onContextRestored(options)
פרמטרים: 
  • optionsWebGLStateOptions שמאפשרים למפתחים לשחזר את ההקשר של GL.
ערך המוחזר:  None
המערכת קוראת לשיטה הזו ברגע שההקשר של הרינדור זמין. אפשר להשתמש בו כדי לאתחל או לקשר כל מצב של WebGL, כמו שידורים או אובייקטים של מאגרים.
onDraw
onDraw(options)
פרמטרים: 
  • optionsWebGLDrawOptions שמאפשרים למפתחים להציג תוכן במפה בסיסית משויכת של Google.
ערך המוחזר:  None
מטמיעים את השיטה הזו כדי לצייר תוכן WebGL ישירות במפה. שימו לב: אם צריך לצייר פריים חדש של שכבת-העל, צריך לבצע קריאה ל-WebGLOverlayView.requestRedraw.
onRemove
onRemove()
פרמטרים:  ללא
ערך המוחזר:  None
המערכת קוראת לשיטה הזו כשהשכבה העליונה מוסרת מהמפה באמצעות WebGLOverlayView.setMap(null), וזו המקום שבו צריך להסיר את כל האובייקטים הביניים. כדי לבצע רינדור, צריך להטמיע את השיטה הזו.
onStateUpdate
onStateUpdate(options)
פרמטרים: 
  • optionsWebGLStateOptions שמאפשרים למפתחים לשחזר את ההקשר של GL.
ערך המוחזר:  None
מטמיעים את השיטה הזו כדי לטפל בכל עדכוני המצב של GL מחוץ למסגרת האנימציה של הרינדור.
requestRedraw
requestRedraw()
פרמטרים:  ללא
ערך המוחזר:  None
מפעיל את המפה כדי לצייר מחדש את המסגרת.
requestStateUpdate
requestStateUpdate()
פרמטרים:  ללא
ערך המוחזר:  None
מפעיל את המפה לעדכון מצב GL.
setMap
setMap([map])
פרמטרים: 
  • mapMap optional המפה לגישה ל-div, לדגם ולמצב התצוגה.
ערך המוחזר:  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 שעוטפת אותו.

fromLatLngAltitude
fromLatLngAltitude(latLngAltitude[, rotations, scale])
פרמטרים: 
  • latLngAltitudeLatLngAltitude|LatLngAltitudeLiteral קו רוחב, קו אורך וגובה.
  • rotationsFloat32Array optional מערך שמכיל זווית סיבוב של אוילר במדידה בפריסה XYZ.
  • scaleFloat32Array optional מערך שמכיל מערך סקלרי XYZ שרוצים להחיל על ציר המיקום.
ערך המוחזר:  Float64Array מטריצת MVP לשימוש עם WebGL.
getCameraParams
getCameraParams()
פרמטרים:  ללא
ערך המשוב:  CameraParams פרמטרים של מצלמה

הממשק CameraParams

ממשק google.maps.CameraParams

משמש לאחזור פרמטרים של מצלמה, כמו פרמטר של מצלמת GL ששימשה ל-WebGLOverlayView.

הממשק הזה הוא תוספת ל-CameraOptions.

center
סוג:  LatLng
heading
סוג:  number
tilt
סוג:  number
zoom
סוג:  number