WebGL

WebGLOverlayView sınıfı

google.maps.WebGLOverlayView sınıf

WebGL yer paylaşımı görünümü, 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 bir oluşturma bağlamının kullanılması, 3D bina geometrisiyle derinlik gizleme ve 2D/3D içeriği ana harita oluşturma ile senkronize etme gibi avantajlar sağlar.

WebGL yer paylaşımlı görüntüleme özelliğiyle, doğrudan WebGL'yi veya Three.js ya da deck.gl gibi popüler grafik kitaplıklarını kullanarak haritalara içerik ekleyebilirsiniz. Yer paylaşımını kullanmak için google.maps.WebGLOverlayView'ü 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önteminin çağrısını tetiklemek için WebGLOverlayView.setMap'u geçerli bir Map nesnesi ile, onRemove() yönteminin çağrısını tetiklemek için ise setMap(null) ile çağırmanız gerekir. setMap() yöntemi, oluşturma sırasında veya daha sonra, yer paylaşımı kaldırıldıktan sonra yeniden gösterilmesi gerektiğinde herhangi bir noktada çağrılabilir. Ardından, yakınlaştırma, merkez veya harita türü gibi öğenin konumunu değiştirebilecek bir harita özelliği 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 ayarlanan ve Map.DEMO_MAP_ID olarak MapOptions.mapId kullanılan haritalar dahil).

Bu sınıf MVCObject sınıfını genişletir.

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
Bir WebGLOverlayView oluşturur.
getMap
getMap()
Parametreler: Yok
Döndürülen Değer:  Map|null|undefined
onAdd
onAdd()
Parametreler: Yok
Döndürülen Değer: Yok
Yer paylaşımı çizilmeden önce WebGL oluşturma bağlamına anında erişim gerektirmeyen ara veri yapılarını almak veya oluşturmak için bu yöntemi uygulayın. Oluşturmak için bu yöntem 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ığı için önceden var olan GL durumunu temizlemeniz gerekir.
onContextRestored
onContextRestored(options)
Parametreler: 
  • optionsWebGLStateOptions geliştiricilerin GL bağlamını geri yüklemelerine olanak tanır.
Döndürülen Değer: Yok
Bu yöntem, oluşturma bağlamı kullanılabilir hale geldiğinde çağrılır. Bu işlevi, gölgelendiriciler veya arabellek nesneleri gibi herhangi bir WebGL durumunu başlatmak veya bağlamak için kullanın.
onDraw
onDraw(options)
Parametreler: 
  • optionsWebGLDrawOptions, geliştiricilerin ilişkili bir Google ana haritasında içerik 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 çizmesi gerekiyorsa WebGLOverlayView.requestRedraw çağrıldığını unutmayın.
onRemove
onRemove()
Parametreler: Yok
Döndürülen Değer: Yok
Bu yöntem, yer paylaşımı WebGLOverlayView.setMap(null) ile haritadan kaldırıldığında çağrılır ve tüm ara nesneleri buradan kaldırmanız gerekir. Oluşturmak için bu yöntem uygulanmalıdır.
onStateUpdate
onStateUpdate(options)
Parametreler: 
  • optionsWebGLStateOptions geliştiricilerin GL bağlamını geri yüklemelerine olanak tanır.
Döndürülen Değer: Yok
Oluşturma animasyon çerçevesinin dışındaki tüm GL durum güncellemelerini işlemek için bu yöntemi uygulayın.
requestRedraw
requestRedraw()
Parametreler: Yok
Döndürülen Değer: Yok
Haritanın bir çerçeveyi yeniden çizmesini tetikler.
requestStateUpdate
requestStateUpdate()
Parametreler: Yok
Döndürülen Değer: Yok
Haritayı GL durumunu güncellemesi için tetikler.
setMap
setMap([map])
Parametreler: 
  • mapMap optional div, model ve görüntü 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'ın oluşturulacağı WebGLRenderingContext.
transformer
Kamera alanından enlem/boylam koordinatlarına matris dönüşümü.

WebGLStateOptions arayüzü

google.maps.WebGLStateOptions arayüz

GL durum seçenekleri.

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

CoordinateTransformer arayüzü

google.maps.CoordinateTransformer arayüz

Bu arayüz, Google ana haritasının üstünde WebGL sahnelerini oluşturmak için kullanılacak matrisleri oluşturmaya yönelik kolay yöntemler sunar.

Not: Bu nesneye ait bir referans, kapsayıcı WebGLOverlayView.onDraw çağrısının kapsamı dışında bulunmamalıdır.

fromLatLngAltitude
fromLatLngAltitude(latLngAltitude[, rotations, scale])
Parametreler: 
Döndürülen Değer:  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 kameranın kamera parametreleri gibi kamera parametrelerini almak için kullanılır.

Bu arayüz CameraOptions'ü genişletir.

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