Klasa WebGLOverlayView
google.maps.WebGLOverlayView
zajęcia
Widok nakładki WebGL umożliwia bezpośredni dostęp do tego samego kontekstu renderowania WebGL, który jest używany przez Google Maps Platform do renderowania wektorowej mapy bazowej. Użycie wspólnego kontekstu renderowania przynosi takie korzyści jak przesłonięcie głębi dzięki geometrii budynku 3D oraz możliwość synchronizowania treści 2D i 3D z renderowaniem mapy bazowej.
Dzięki widokowi nakładania WebGL możesz bezpośrednio dodawać treści do swoich map za pomocą WebGL lub popularnych bibliotek graficznych takich jak Three.js lub Tayl.gl. Aby korzystać z nakładki, możesz rozszerzyć google.maps.WebGLOverlayView
i udostępnić 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
, by wywołać metodę onAdd()
i setMap(null)
w celu aktywowania metody onRemove()
. Metoda setMap()
może zostać wywołana podczas tworzenia nakładki lub w dowolnym momencie po jej usunięciu, gdy trzeba będzie ponownie wyświetlić nakładkę. Metoda onDraw()
będzie wtedy wywoływana za każdym razem, gdy zmieni się właściwość mapy, która może zmienić pozycję elementu (np. powiększenie, wyśrodkowanie lub typ mapy). WebGLOverlayView można dodać tylko do mapy wektorowej z elementem MapOptions.mapId
(obejmuje to mapy ustawione na RenderingType.VECTOR
MapOptions.renderingType
i użycie Map.DEMO_MAP_ID
jako MapOptions.mapId
).
Te zajęcia są rozszerzone na MVCObject
.
Aby uzyskać dostęp, zadzwoń pod numer const {WebGLOverlayView} = await google.maps.importLibrary("maps")
. Zobacz Biblioteki w interfejsie Maps JavaScript API.
Zespół | |
---|---|
WebGLOverlayView |
WebGLOverlayView() Parametry: brak
Tworzy WebGLOverlayView . |
Metody | |
---|---|
getMap |
getMap() Parametry: brak
Wartość zwrotu:
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. Tę metodę należy zaimplementować, by renderować. |
onContextLost |
onContextLost() Parametry: brak
Zwracana wartość: brak
Ta metoda jest wywoływana, gdy kontekst renderowania zostanie z jakiegoś powodu utracony. Tutaj należy wyczyścić wcześniej istniejący stan GL, ponieważ nie jest już potrzebny. |
onContextRestored |
onContextRestored(options) Parametry:
Zwracana wartość: brak
Metoda ta jest wywoływana, gdy dostępny będzie kontekst renderowania. Służy on do zainicjowania lub powiązania dowolnego stanu WebGL, np. cieniowania lub obiektów bufora. |
onDraw |
onDraw(options) Parametry:
Zwracana wartość: brak
Użyj tej metody, aby rysować zawartość WebGL bezpośrednio na mapie. Pamiętaj, że jeśli nakładka wymaga narysowania nowej ramki, wywołaj metodę WebGLOverlayView.requestRedraw . |
onRemove |
onRemove() Parametry: brak
Zwracana wartość: brak
Ta metoda jest wywoływana, gdy nakładka zostanie usunięta z mapy za pomocą WebGLOverlayView.setMap(null) i to w niej należy usunąć wszystkie obiekty pośrednie. Tę metodę należy zaimplementować, by renderować. |
onStateUpdate |
onStateUpdate(options) Parametry:
Zwracana wartość: brak
Zaimplementuj tę metodę, aby obsługiwać wszelkie aktualizacje stanu GGL poza ramką animacji renderowania. |
requestRedraw |
requestRedraw() Parametry: brak
Zwracana wartość: brak
Wyzwala mapę, aby ponownie narysować ramkę. |
requestStateUpdate |
requestStateUpdate() Parametry: brak
Zwracana wartość: brak
Aktywuje mapę, aby zaktualizować 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
google.maps.WebGLDrawOptions
interfejs
Opcje rysowania.
Właściwości | |
---|---|
gl |
WebGLRenderingContext, w którym ma być renderowany ten WebGLOverlayView. |
transformer |
Transformacja macierzy z przestrzeni aparatu na współrzędne szerokości i długości geograficznej. |
Interfejs WebGLStateOptions
google.maps.WebGLStateOptions
interfejs
Opcje stanu GL.
Właściwości | |
---|---|
gl |
WebGLRenderingContext, w którym ma być renderowany ten WebGLOverlayView. |
Interfejs CoordinateTransformer
google.maps.CoordinateTransformer
interfejs
Ten interfejs udostępnia wygodne metody generowania macierzy do renderowania scen WebGL na bazie mapy podstawowej Google.
Uwaga: odwołanie do tego obiektu nie powinno wykraczać poza zakres wywołania WebGLOverlayView.onDraw
.
Metody | |
---|---|
fromLatLngAltitude |
fromLatLngAltitude(latLngAltitude[, rotations, scale]) Parametry:
Wartość zwracana:
Float64Array macierz MVP do użycia z WebGL. |
getCameraParams |
getCameraParams() Parametry: brak
Zwracana wartość:
CameraParams parametrów aparatu |
Interfejs CameraParams
google.maps.CameraParams
interfejs
Służy do pobierania parametrów kamery, takich jak kamera GL używana w interfejsie WebGLOverlayView
.
Ten interfejs rozszerza zakres CameraOptions
.
Właściwości | |
---|---|
center |
Typ:
LatLng |
heading |
Typ:
number |
tilt |
Typ:
number |
zoom |
Typ:
number |