WebGL

کلاس WebGLOverlayView

google.maps . WebGLOverlayView کلاس google.maps . WebGLOverlayView

نمای همپوشانی WebGL دسترسی مستقیم به همان زمینه رندر WebGL را فراهم می کند که پلتفرم نقشه های گوگل از آن برای ارائه نقشه پایه برداری استفاده می کند. این استفاده از زمینه رندر مشترک مزایایی مانند انسداد عمق با هندسه ساختمان سه بعدی و توانایی همگام سازی محتوای 2 بعدی/3 بعدی با رندر بیس مپ را فراهم می کند.

با WebGL Overlay View می‌توانید با استفاده از WebGL یا کتابخانه‌های گرافیکی محبوب مانند Three.js یا deck.gl محتوا را به نقشه‌های خود اضافه کنید. برای استفاده از همپوشانی، می‌توانید google.maps.WebGLOverlayView را گسترش دهید و یک پیاده‌سازی برای هر یک از قلاب‌های چرخه حیات زیر ارائه دهید: WebGLOverlayView.onAdd ، WebGLOverlayView.onContextRestored ، WebGLOverlayView.onDraw ، WebGLOverlayView.onContextLost . و WebGLOverlayView.onRemove .

شما باید WebGLOverlayView.setMap با یک شی Map معتبر فراخوانی کنید تا فراخوانی متد onAdd() و setMap(null) برای راه اندازی متد onRemove() راه اندازی کنید. متد setMap() را می توان در زمان ساخت و یا در هر نقطه پس از آن فراخوانی کرد که همپوشانی پس از حذف مجدداً نشان داده شود. متد onDraw() سپس هر زمان که ویژگی نقشه تغییر کند که می تواند موقعیت عنصر را تغییر دهد، مانند بزرگنمایی، مرکز یا نوع نقشه، فراخوانی می شود. WebGLOverlayView را فقط می توان به نقشه برداری با MapOptions.mapId اضافه کرد.

این کلاس MVCObject را گسترش می دهد.

با فراخوانی const {WebGLOverlayView} = await google.maps.importLibrary("maps") دسترسی پیدا کنید. کتابخانه ها را در Maps JavaScript API ببینید.

WebGLOverlayView
WebGLOverlayView()
پارامترها: ندارد
یک WebGLOverlayView ایجاد می کند.
getMap
getMap()
پارامترها: ندارد
مقدار بازگشتی: Map |null|undefined
onAdd
onAdd()
پارامترها: ندارد
ارزش بازگشتی: ندارد
این روش را برای واکشی یا ایجاد ساختارهای داده میانی قبل از ترسیم همپوشانی که نیازی به دسترسی فوری به زمینه ارائه WebGL ندارند، اجرا کنید. این روش باید برای رندر اجرا شود.
onContextLost
onContextLost()
پارامترها: ندارد
ارزش بازگشتی: ندارد
این روش زمانی فراخوانی می شود که زمینه رندر به هر دلیلی از بین برود، و جایی است که باید وضعیت GL از قبل موجود را پاک کنید، زیرا دیگر به آن نیازی نیست.
onContextRestored
onContextRestored(options)
مولفه های:
  • options : WebGLStateOptions که به توسعه دهندگان اجازه می دهد تا زمینه GL را بازیابی کنند.
ارزش بازگشتی: ندارد
این روش زمانی فراخوانی می شود که زمینه رندرینگ در دسترس باشد. از آن برای مقداردهی اولیه یا اتصال هر حالت WebGL مانند شیدرها یا اشیاء بافر استفاده کنید.
onDraw
onDraw(options)
مولفه های:
  • options : WebGLDrawOptions که به توسعه‌دهندگان اجازه می‌دهد محتوا را به نقشه پایه Google ارائه دهند.
ارزش بازگشتی: ندارد
این روش را برای ترسیم محتوای WebGL به طور مستقیم روی نقشه پیاده کنید. توجه داشته باشید که اگر روکش نیاز به ترسیم قاب جدیدی دارد، WebGLOverlayView.requestRedraw را فراخوانی کنید.
onRemove
onRemove()
پارامترها: ندارد
ارزش بازگشتی: ندارد
این روش زمانی فراخوانی می شود که همپوشانی با WebGLOverlayView.setMap(null) از نقشه حذف شود و جایی است که باید همه اشیاء میانی را حذف کنید. این روش باید برای رندر اجرا شود.
onStateUpdate
onStateUpdate(options)
مولفه های:
  • options : WebGLStateOptions که به توسعه دهندگان اجازه می دهد تا زمینه GL را بازیابی کنند.
ارزش بازگشتی: ندارد
این روش را برای مدیریت هرگونه به روز رسانی وضعیت GL خارج از قاب انیمیشن رندر اجرا کنید.
requestRedraw
requestRedraw()
پارامترها: ندارد
ارزش بازگشتی: ندارد
نقشه را برای ترسیم مجدد یک قاب فعال می کند.
requestStateUpdate
requestStateUpdate()
پارامترها: ندارد
ارزش بازگشتی: ندارد
نقشه را برای به‌روزرسانی وضعیت GL فعال می‌کند.
setMap
setMap([map])
مولفه های:
  • map : Map optional نقشه برای دسترسی به حالت div، مدل و مشاهده.
ارزش بازگشتی: ندارد
پوشش را به نقشه اضافه می کند.
به ارث رسیده: addListener ، bindTo ، get ، notify ، set ، setValues ، unbind ، unbindAll

رابط WebGLDrawOptions

google.maps . WebGLDrawOptions رابط google.maps . WebGLDrawOptions

گزینه های طراحی

gl
WebGLRenderingContext که روی آن WebGLOverlayView رندر می شود.
transformer
تبدیل ماتریس از فضای دوربین به مختصات طول و عرض جغرافیایی.

رابط WebGLStateOptions

google.maps . WebGLStateOptions رابط google.maps . WebGLStateOptions

گزینه های حالت GL

gl
WebGLRenderingContext که روی آن WebGLOverlayView رندر می شود.

رابط CoordinateTransformer

google.maps . CoordinateTransformer رابط google.maps . CoordinateTransformer

این رابط روش‌های آسانی را برای تولید ماتریس‌ها برای استفاده برای رندر صحنه‌های WebGL در بالای نقشه پایه Google ارائه می‌کند.

توجه: ارجاع به این شی نباید خارج از محدوده فراخوانی WebGLOverlayView.onDraw کپسوله‌سازی شود.

fromLatLngAltitude
fromLatLngAltitude(latLngAltitude[, rotations, scale])
مولفه های:
  • latLngAltitude : LatLngAltitude | LatLngAltitudeLiteral عرض جغرافیایی، طول جغرافیایی و ارتفاع.
  • rotations : Float32Array optional آرایه ای که دارای زاویه چرخش اویلر بر حسب درجه است، طبق قرارداد XYZ.
  • scale : آرایه Float32Array optional که حاوی یک آرایه اسکالر XYZ برای اعمال به محور اصلی است.
مقدار بازگشتی: ماتریس Float64Array MVP برای استفاده با WebGL.
getCameraParams
getCameraParams()
پارامترها: ندارد
مقدار بازگشتی: پارامترهای دوربین CameraParams

رابط CameraParams

google.maps . CameraParams رابط google.maps . CameraParams

برای بازیابی پارامترهای دوربین، مانند پارامترهای دوربین GL که برای WebGLOverlayView استفاده می‌شود، استفاده می‌شود.

این رابط CameraOptions را گسترش می دهد.

center
نوع: LatLng
heading
نوع: number
tilt
نوع: number
zoom
نوع: number