WebGL

המחלקה WebGLLayerView

מחלקה google.maps.WebGLOverlayView

תצוגת שכבת-העל של WebGL מספקת גישה ישירה לאותו הקשר לעיבוד WebGL שבו משתמשת פלטפורמת מפות Google כדי לעבד את מפת הבסיס הווקטורית. שימוש בהקשר זה של עיבוד משותף מספק יתרונות כגון חסימה של עומק עם גיאומטריית מבנים תלת-ממדיים, והיכולת לסנכרן תוכן דו-ממדי/תלת-ממדי עם עיבוד מפה בסיסית.

עם שכבת-על של WebGL אפשר להוסיף תוכן למפות באמצעות WebGL ישירות, או באמצעות ספריות גרפיקה פופולריות כמו Three.js או ודא ש-Cpe.gl. כדי להשתמש בשכבת-העל, אפשר להרחיב את google.maps.WebGLOverlayView ולספק הטמעה לכל אחד מסוגי הצפיות הבאים במחזור החיים: WebGLOverlayView.onAdd, WebGLOverlayView.onContextRestored, WebGLOverlayView.onDraw, WebGLOverlayView.onContextLost ו-WebGLOverlayView.onRemove.

כדי להפעיל את השיטה onRemove(), צריך להתקשר אל WebGLOverlayView.setMap עם אובייקט Map תקין כדי להפעיל את הקריאה בשיטה onAdd() ואת setMap(null). אפשר לקרוא לשיטת setMap() בזמן ההתקנה או בכל שלב לאחר מכן כאשר יש להציג מחדש את שכבת-העל לאחר ההסרה. תתבצע קריאה לשיטת onDraw() בכל פעם שמאפיין של מפה עשוי לשנות את מיקום הרכיב, כגון שינוי מרחק התצוגה, מרכז או סוג המפה. ניתן להוסיף WebGLLayerView רק למפת וקטור שיש בה MapOptions.mapId.

השיעור הזה נמשך MVCObject.

אפשר לקבל גישה על ידי התקשרות ל-const {WebGLOverlayView} = await google.maps.importLibrary("maps"). יש לעיין בספריות ב-API של מפות Google ל-JavaScript.

WebGLOverlayView
WebGLOverlayView()
פרמטרים: ללא
יצירת WebGLOverlayView.
getMap
getMap()
פרמטרים: ללא
ערך החזרה:  Map|null|undefined
onAdd
onAdd()
פרמטרים: ללא
ערך החזרה: ללא
מטמיעים את השיטה הזו כדי לאחזר או ליצור מבנים של נתוני ביניים לפני שהשכבת-העל נוצרת, ללא צורך בגישה מיידית להקשר העיבוד של WebGL. יש ליישם את השיטה הזו כדי לבצע עיבוד.
onContextLost
onContextLost()
פרמטרים: ללא
ערך החזרה: ללא
אפשר לקרוא לשיטה הזו כשמאבדים את הקשר העיבוד מכל סיבה שהיא, וזהו המקום שבו צריך לנקות את כל מצב GL שכבר קיים, כי הוא כבר לא נחוץ.
onContextRestored
onContextRestored(options)
פרמטרים: 
  • optionsWebGLStateOptions שמאפשרים למפתחים לשחזר את ההקשר של GL.
ערך החזרה: ללא
שיטה זו נקראת כאשר ההקשר של הרינדור זמין. השתמשו בו כדי להפעיל או לאלץ כל מצב של WebGL, כגון תוכנות הצללה או אובייקטים בתהליך אגירת נתונים.
onDraw
onDraw(options)
פרמטרים: 
  • optionsWebGLDrawOptions שמאפשרים למפתחים לעבד תוכן במפת בסיס משויכת של Google.
ערך החזרה: ללא
מטמיעים את השיטה הזו כדי לשרטט תוכן WebGL ישירות במפה. חשוב לשים לב שאם שכבת-העל זקוקה למסגרת חדשה, יש להתקשר ל-WebGLOverlayView.requestRedraw.
onRemove
onRemove()
פרמטרים: ללא
ערך החזרה: ללא
השיטה הזו נקראת בעת הסרת שכבת-העל מהמפה ב-WebGLOverlayView.setMap(null), ויש להסיר ממנה את כל אובייקטי הביניים. יש ליישם את השיטה הזו כדי לבצע עיבוד.
onStateUpdate
onStateUpdate(options)
פרמטרים: 
  • optionsWebGLStateOptions שמאפשרים למפתחים לשחזר את ההקשר של GL.
ערך החזרה: ללא
צריך ליישם את השיטה הזו כדי לטפל בכל עדכוני מצב של GL מחוץ למסגרת האנימציה המוצגת.
requestRedraw
requestRedraw()
פרמטרים: ללא
ערך החזרה: ללא
מפעיל את המפה לציור מחדש של מסגרת.
requestStateUpdate
requestStateUpdate()
פרמטרים: ללא
ערך החזרה: ללא
מפעיל את המפה לעדכון מצב GL.
setMap
setMap([map])
פרמטרים: 
  • mapMap optional המפה שבעזרתה ניתן לגשת למצב div, לדגם ולתצוגה.
ערך החזרה: ללא
מוסיף את שכבת-העל למפה.
עברו בירושה: addListener, bindTo, get, notify, set, setValues, unbind, unbindAll

הממשק של WebGLDrawOption

ממשק google.maps.WebGLDrawOptions

אפשרויות שרטוט.

gl
ה-WebGLRenderingContext שעליו יש לעבד את WebGLRenderView.
transformer
טרנספורמציית המטריצה ממרחב המצלמה לקואורדינטות של קווי אורך ורוחב.

הממשק של WebGLStateOption

ממשק google.maps.WebGLStateOptions

אפשרויות למצב GL.

gl
ה-WebGLRenderingContext שעליו יש לעבד את WebGLRenderView.

הממשק של 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 פרמטרים של המצלמה

ממשק מצלמות מצלמה

ממשק google.maps.CameraParams

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

הממשק הזה מתרחב CameraOptions.

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