klasa WebGLOverlayView,
google.maps.WebGLOverlayView
class
Widok nakładki WebGL zapewnia bezpośredni dostęp do tego samego kontekstu renderowania WebGL, którego używa platforma Mapy Google do renderowania wektorowej mapy bazowej. Takie wykorzystanie wspólnego kontekstu renderowania zapewnia korzyści takie jak zaciemnianie głębi w geometrii 3D budynku oraz możliwość synchronizowania treści 2D/3D z renderowaniem mapy bazowej.
Za pomocą widoku 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ć klasę google.maps.WebGLOverlayView
i zaimplementować każdy z tych elementów cyklu życia: WebGLOverlayView.onAdd
, WebGLOverlayView.onContextRestored
, WebGLOverlayView.onDraw
, WebGLOverlayView.onContextLost
i WebGLOverlayView.onRemove
.
Aby wywołać metodę onAdd()
, musisz wywołać metodę WebGLOverlayView.setMap
z prawidłowym obiektem Map
, a aby wywołać metodę onRemove()
, musisz wywołać metodę setMap(null)
. Metodę setMap()
można wywołać w momencie tworzenia lub w dowolnym momencie później, gdy nakładka powinna zostać ponownie wyświetlona po usunięciu. Metoda onDraw()
zostanie wywołana, gdy zmieni się właściwość mapy, która może zmienić pozycję elementu, np. powiększenie, położenie środka lub typ mapy. Widok WebGLOverlay można dodać tylko do mapy wektorowej, która ma MapOptions.mapId
(w tym mapy ustawione na RenderingType.VECTOR
MapOptions.renderingType
i korzystające z Map.DEMO_MAP_ID
jako MapOptions.mapId
).
Te zajęcia trwają MVCObject
.
Dostęp przez połączenie telefoniczne const {WebGLOverlayView} = await google.maps.importLibrary("maps")
. Zobacz Biblioteki w Maps JavaScript API.
Zespół | |
---|---|
WebGLOverlayView |
WebGLOverlayView() Parametry: brak
Tworzy WebGLOverlayView . |
Metody | |
---|---|
getMap |
getMap() Parametry: brak
Wartość zwracana:
Map|null|undefined |
onAdd |
onAdd() Parametry: brak
Zwracana wartość: brak
Za pomocą tej metody możesz pobrać lub utworzyć pośrednie struktury danych przed narysowaniem nakładki, które nie wymagają bezpośredniego 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 dowolnego powodu. W tej metodzie należy wyczyścić stan GL, ponieważ nie jest on już potrzebny. |
onContextRestored |
onContextRestored(options) Parametry:
Zwracana wartość: brak
Ta metoda jest wywoływana, gdy kontekst renderowania jest dostępny. Używaj go do inicjowania lub wiązania dowolnego stanu WebGL, np. shaderów lub obiektów bufora. |
onDraw |
onDraw(options) Parametry:
Zwracana wartość: brak
Zaimplementuj tę metodę, aby rysować zawartość WebGL bezpośrednio na mapie. Pamiętaj, że jeśli nakładka wymaga narysowania nowego kadru, wywołaj 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
Zastosuj tę metodę, aby obsługiwać wszelkie aktualizacje stanu GL poza ramką renderowania animacji. |
requestRedraw |
requestRedraw() Parametry: brak
Zwracana wartość: brak
Spowoduje, że mapa ponownie narysuje ramkę. |
requestStateUpdate |
requestStateUpdate() Parametry: brak
Zwracana wartość: brak
Wyzwala aktualizację stanu GL. |
setMap |
setMap([map]) Parametry:
Zwracana wartość: brak
Dodaje na mapie nakładkę. |
Uzyskane:
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 obiekt WebGLOverlayView. |
transformer |
Transformacja macierzy z przestrzeni kamery 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 obiekt WebGLOverlayView. |
Interfejs CoordinateTransformer
google.maps.CoordinateTransformer
interfejs
Ten interfejs udostępnia wygodne metody generowania macierzy do stosowania podczas renderowania scen WebGL na mapie bazowej Google.
Uwaga: odwołania do tego obiektu nie powinny być przechowywane poza zakresem wywołania WebGLOverlayView.onDraw
.
Metody | |
---|---|
fromLatLngAltitude |
fromLatLngAltitude(latLngAltitude[, rotations, scale]) Parametry:
Wartość zwracana:
Float64Array tablica MVP do użycia z WebGL. |
getCameraParams |
getCameraParams() Parametry: brak
Zwracana wartość:
CameraParams parametry aparatu |
Interfejs CameraParams
google.maps.CameraParams
interfejs
Służy do pobierania parametrów aparatu, takich jak parametry aparatu GL używanego w przypadku WebGLOverlayView
.
Ten interfejs rozszerza CameraOptions
.
Właściwości | |
---|---|
center |
Typ:
LatLng |
heading |
Typ:
number |
tilt |
Typ:
number |
zoom |
Typ:
number |