Klasa WebGLOverlayView
class
google.maps.WebGLOverlayView
extends MVCObject
library "maps"
Widok nakładki WebGL zapewnia bezpośredni dostęp do tego samego kontekstu renderowania WebGL, którego Google Maps Platform używa do renderowania wektorowej mapy podstawowej. Użycie wspólnego kontekstu renderowania zapewnia korzyści, takie jak okluzja głębi z geometrią budynku 3D oraz możliwość synchronizowania treści 2D/3D z renderowaniem mapy podstawowej.
Dzięki widokowi nakładki WebGL możesz dodawać treści do map, korzystając bezpośrednio z WebGL lub popularnych bibliotek graficznych, takich jak Three.js czy deck.gl. Aby użyć nakładki, możesz rozszerzyć google.maps.WebGLOverlayView i zapewnić implementację dla każdego z tych punktów zaczepienia cyklu życia: WebGLOverlayView.onAdd, WebGLOverlayView.onContextRestored, WebGLOverlayView.onDraw, WebGLOverlayView.onContextLost i WebGLOverlayView.onRemove.
Musisz wywołać metodę WebGLOverlayView.setMap z prawidłowym obiektem Map, aby wywołać metodę onAdd(), oraz metodę setMap(null), aby wywołać metodę onRemove(). Metodę setMap() można wywołać w momencie tworzenia lub w dowolnym momencie, gdy nakładka ma zostać ponownie wyświetlona po usunięciu. Metoda onDraw() będzie wywoływana za każdym razem, gdy zmieni się właściwość mapy, która może zmienić pozycję elementu, np. powiększenie, środek lub typ mapy. Obiekt WebGLOverlayView można dodać tylko do mapy wektorowej z MapOptions.mapId (w tym do map ustawionych na RenderingType.VECTOR MapOptions.renderingType i używających Map.DEMO_MAP_ID jako MapOptions.mapId).
const {WebGLOverlayView} = await google.maps.importLibrary("maps");
Zespół | |
|---|---|
WebGLOverlayView |
WebGLOverlayView()Parametry: brak
Tworzy WebGLOverlayView. |
Metody | |
|---|---|
getMap |
getMap()Parametry: brak
Wartość zwracana:
Map|null|undefined |
onAdd |
onAdd()Parametry: brak
Zwracana wartość: brak
Zaimplementuj tę metodę, aby pobrać lub utworzyć pośrednie struktury danych przed narysowaniem nakładki, które nie wymagają natychmiastowego dostępu do kontekstu renderowania WebGL. Aby renderować, musisz zaimplementować tę metodę. |
onContextLost |
onContextLost()Parametry: brak
Zwracana wartość: brak
Ta metoda jest wywoływana, gdy kontekst renderowania zostanie utracony z jakiegokolwiek powodu. W tym miejscu należy wyczyścić wszystkie istniejące wcześniej stany GL, ponieważ nie są już potrzebne. |
onContextRestored |
onContextRestored(options)Parametry:
Zwracana wartość: brak
Ta metoda jest wywoływana, gdy kontekst renderowania jest dostępny. Użyj go do zainicjowania lub powiązania dowolnego stanu WebGL, takiego jak shadery lub obiekty buforowe. |
onDraw |
onDraw(options)Parametry:
Zwracana wartość: brak
Zaimplementuj tę metodę, aby rysować treści WebGL bezpośrednio na mapie. Pamiętaj, że jeśli nakładka wymaga narysowania nowej klatki, musisz wywołać funkcję WebGLOverlayView.requestRedraw. |
onRemove |
onRemove()Parametry: brak
Zwracana wartość: brak
Ta metoda jest wywoływana, gdy nakładka jest usuwana z mapy za pomocą WebGLOverlayView.setMap(null). W tym miejscu należy usunąć wszystkie obiekty pośrednie. Aby renderować, musisz zaimplementować tę metodę. |
onStateUpdate |
onStateUpdate(options)Parametry:
Zwracana wartość: brak
Zaimplementuj tę metodę, aby obsługiwać aktualizacje stanu GL poza klatką animacji renderowania. |
requestRedraw |
requestRedraw()Parametry: brak
Zwracana wartość: brak
Powoduje ponowne narysowanie ramki przez mapę. |
requestStateUpdate |
requestStateUpdate()Parametry: brak
Zwracana wartość: brak
Powoduje, że mapa aktualizuje stan GL. |
setMap |
setMap([map])Parametry:
Zwracana wartość: brak
Dodaje nakładkę do mapy. |
Dziedziczone:
addListener,
bindTo,
get,
notify,
set,
setValues,
unbind,
unbindAll
| |
Interfejs WebGLDrawOptions
interfejs
google.maps.WebGLDrawOptions
Opcje rysowania.
Właściwości | |
|---|---|
gl |
Obiekt WebGLRenderingContext, na którym ma być renderowany ten obiekt WebGLOverlayView. |
transformer |
Przekształcenie macierzy z przestrzeni kamery na współrzędne szerokości i długości geograficznej. |
Interfejs WebGLStateOptions
interfejs
google.maps.WebGLStateOptions
Opcje stanu GL.
Właściwości | |
|---|---|
gl |
Obiekt WebGLRenderingContext, na którym ma być renderowany ten obiekt WebGLOverlayView. |
Interfejs CoordinateTransformer
interfejs
google.maps.CoordinateTransformer
Ten interfejs udostępnia wygodne metody generowania macierzy do renderowania scen WebGL na mapie podstawowej Google.
Uwaga: odwołanie do tego obiektu nie powinno być przechowywane poza zakresem wywołania WebGLOverlayView.onDraw.
Metody | |
|---|---|
fromLatLngAltitude |
fromLatLngAltitude(latLngAltitude[, rotations, scale])Parametry:
Zwracana wartość:
Float64Array macierz MVP do użycia z WebGL. |
getCameraParams |
getCameraParams()Parametry: brak
Zwracana wartość: parametry kamery
CameraParams |
CameraParams
interface
google.maps.CameraParams
extends CameraOptions
Służy do pobierania parametrów kamery, takich jak parametry kamery GL używanej w przypadku WebGLOverlayView.
Właściwości | |
|---|---|
center |
Typ:
LatLng |
heading |
Typ:
number |
tilt |
Typ:
number |
zoom |
Typ:
number |