WebGL

WebGLOverlayView sınıfı

google.maps.WebGLOverlayView sınıf

WebGL Overlay View, Google Haritalar Platformu'nun vektör taban haritasını oluşturmak için kullandığı WebGL oluşturma bağlamına doğrudan erişim sağlar. Paylaşılan oluşturma bağlamının bu şekilde kullanılması, 3D bina geometrisiyle derinlik kapatma ve 2D/3D içeriği temel harita oluşturmayla senkronize etme gibi avantajlar sağlar.

WebGL Yer Paylaşımı Görünümü ile doğrudan WebGL'yi veya Three.js ya da deck.gl gibi popüler grafik kitaplıklarını kullanarak haritalarınıza içerik ekleyebilirsiniz. Yerleşimi kullanmak için google.maps.WebGLOverlayView öğesini genişletebilir ve aşağıdaki yaşam döngüsü kancalarının her biri için bir uygulama sağlayabilirsiniz: WebGLOverlayView.onAdd, WebGLOverlayView.onContextRestored, WebGLOverlayView.onDraw, WebGLOverlayView.onContextLost ve WebGLOverlayView.onRemove.

onAdd() yöntemine yapılan çağrıyı tetiklemek için WebGLOverlayView.setMap yöntemini geçerli bir Map nesnesiyle, onRemove() yöntemini tetiklemek için ise setMap(null) yöntemiyle çağırmanız gerekir. setMap() yöntemi, oluşturma sırasında veya yer paylaşımı kaldırıldıktan sonra yeniden gösterilmesi gerektiği herhangi bir zamanda çağrılabilir. Ardından, öğenin konumunu değiştirebilecek bir harita özelliği (ör. yakınlaştırma, merkez veya harita türü) her değiştiğinde onDraw() yöntemi çağrılır. WebGLOverlayView yalnızca MapOptions.mapId içeren bir vektör haritaya eklenebilir (RenderingType.VECTOR MapOptions.renderingType olarak ayarlanmış ve Map.DEMO_MAP_IDMapOptions.mapId olarak kullanan haritalar dahil).

Bu sınıfın süresi MVCObject tarihinde sona eriyor.

const {WebGLOverlayView} = await google.maps.importLibrary("maps") numaralı telefonu arayarak erişebilirsiniz.
Maps JavaScript API'deki kitaplıklar başlıklı makaleyi inceleyin.

WebGLOverlayView
WebGLOverlayView()
Parametreler: Yok
WebGLOverlayView oluşturur.
getMap
getMap()
Parametreler: Yok
İade Değeri:  Map|null|undefined
onAdd
onAdd()
Parametreler: Yok
Döndürülen Değer: Yok
Bu yöntemi, WebGL oluşturma bağlamına anında erişim gerektirmeyen ara veri yapılarını yer paylaşımı çizilmeden önce getirmek veya oluşturmak için uygulayın. Bu yöntem, oluşturma için uygulanmalıdır.
onContextLost
onContextLost()
Parametreler: Yok
Döndürülen Değer: Yok
Bu yöntem, oluşturma bağlamı herhangi bir nedenle kaybolduğunda çağrılır ve artık gerekli olmadığından önceden var olan GL durumunu temizlemeniz gereken yerdir.
onContextRestored
onContextRestored(options)
Parametreler: 
  • options:  Geliştiricilerin GL bağlamını geri yüklemesine olanak tanıyan WebGLStateOptions.
Döndürülen Değer: Yok
Bu yöntem, oluşturma bağlamı kullanılabilir olduğunda bir kez çağrılır. Shader'lar veya arabellek nesneleri gibi herhangi bir WebGL durumunu başlatmak veya bağlamak için kullanın.
onDraw
onDraw(options)
Parametreler: 
  • optionsWebGLDrawOptions, geliştiricilerin içerikleri ilişkili bir Google temel haritasında oluşturmasına olanak tanır.
Döndürülen Değer: Yok
WebGL içeriğini doğrudan haritada çizmek için bu yöntemi uygulayın. Yer paylaşımının yeni bir çerçeve çizilmesini gerektirmesi durumunda WebGLOverlayView.requestRedraw işlevini çağırmanız gerektiğini unutmayın.
onRemove
onRemove()
Parametreler: Yok
Döndürülen Değer: Yok
Bu yöntem, WebGLOverlayView.setMap(null) ile haritadan yer paylaşımı kaldırıldığında çağrılır ve tüm ara nesneleri kaldırmanız gereken yerdir. Bu yöntem, oluşturma için uygulanmalıdır.
onStateUpdate
onStateUpdate(options)
Parametreler: 
  • options:  Geliştiricilerin GL bağlamını geri yüklemesine olanak tanıyan WebGLStateOptions.
Döndürülen Değer: Yok
Bu yöntemi, oluşturma animasyon çerçevesi dışındaki tüm GL durumu güncellemelerini işlemek için uygulayın.
requestRedraw
requestRedraw()
Parametreler: Yok
Döndürülen Değer: Yok
Haritanın bir kareyi yeniden çizmesini tetikler.
requestStateUpdate
requestStateUpdate()
Parametreler: Yok
Döndürülen Değer: Yok
Haritanın GL durumunu güncellemesini tetikler.
setMap
setMap([map])
Parametreler: 
  • mapMap optional div, model ve görünüm durumuna erişmek için kullanılan harita.
Döndürülen Değer: Yok
Yer paylaşımını haritaya ekler.
Devralındı: addListener, bindTo, get, notify, set, setValues, unbind, unbindAll

WebGLDrawOptions arayüzü

google.maps.WebGLDrawOptions arayüz

Çizim seçenekleri.

gl
Bu WebGLOverlayView'in oluşturulacağı WebGLRenderingContext.
transformer
Kamera alanından enlem/boylam koordinatlarına dönüşüm matrisi.

WebGLStateOptions arayüz

google.maps.WebGLStateOptions arayüz

GL durumu seçenekleri.

gl
Bu WebGLOverlayView'in oluşturulacağı WebGLRenderingContext.

CoordinateTransformer arayüzü

google.maps.CoordinateTransformer arayüz

Bu arayüz, Google temel haritasının üzerinde WebGL sahnelerini oluşturmak için kullanılacak matrisler oluşturmaya yönelik kolaylık yöntemleri sağlar.

Not: Bu nesneye yapılan bir referans, kapsayan WebGLOverlayView.onDraw çağrısının kapsamı dışında tutulmamalıdır.

fromLatLngAltitude
fromLatLngAltitude(latLngAltitude[, rotations, scale])
Parametreler: 
Dönüş değeri:  Float64Array WebGL ile kullanılacak MVP matrisi.
getCameraParams
getCameraParams()
Parametreler: Yok
Döndürülen Değer:  CameraParams kamera parametreleri

CameraParams arayüzü

google.maps.CameraParams arayüz

WebGLOverlayView için kullanılan GL kamerası gibi kamera parametrelerini almak için kullanılır.

Bu arayüz, CameraOptions arayüzünü genişletir.

center
Tür:  LatLng
heading
Tür:  number
tilt
Tür:  number
zoom
Tür:  number