WebGLOverlayView
Classe
google.maps.WebGLOverlayView
A visualização de sobreposição do WebGL oferece acesso direto ao mesmo contexto de renderização WebGL que a Plataforma Google Maps usa para renderizar o mapa básico vetorial. O uso de um contexto de renderização compartilhada oferece benefícios como a oclusão de profundidade com geometria de construções em 3D e a capacidade de sincronizar conteúdo 2D/3D com a renderização de mapa básico.
Com a WebGL Overlay View, é possível adicionar conteúdo diretamente aos mapas usando o WebGL ou bibliotecas gráficas conhecidas, como three.js ou deck.gl. Para usar a sobreposição, estenda google.maps.WebGLOverlayView
e forneça uma implementação para cada um dos seguintes hooks de ciclo de vida: WebGLOverlayView.onAdd
, WebGLOverlayView.onContextRestored
, WebGLOverlayView.onDraw
, WebGLOverlayView.onContextLost
e WebGLOverlayView.onRemove
.
Você precisa chamar WebGLOverlayView.setMap
com um objeto Map
válido para acionar a chamada para o método onAdd()
e setMap(null)
para acionar o método onRemove()
. O método setMap()
pode ser chamado no momento da construção ou a qualquer momento depois que a sobreposição for exibida novamente após a remoção. O método onDraw()
será chamado sempre que uma propriedade de mapa mudar, o que pode mudar a posição do elemento, como zoom, centro ou tipo de mapa. WebGLOverlayView só pode ser adicionado a um mapa vetorial com MapOptions.mapId
.
Essa classe estende
MVCObject
.
Construtor | |
---|---|
WebGLOverlayView |
WebGLOverlayView() Parâmetros:nenhum
Cria uma WebGLOverlayView . |
Métodos | |
---|---|
getMap |
getMap() Parâmetros:nenhum
Valor de retorno:
Map|null|undefined |
onAdd |
onAdd() Parâmetros:nenhum
Valor de retorno: nenhum
Implemente esse método para buscar ou criar estruturas de dados intermediárias antes da sobreposição da sobreposição que não exigem acesso imediato ao contexto de renderização WebGL. |
onContextLost |
onContextLost() Parâmetros:nenhum
Valor de retorno: nenhum
Esse método é chamado quando o contexto de renderização é perdido por qualquer motivo e é o local em que você precisa limpar qualquer estado GL preexistente, já que ele não é mais necessário. |
onContextRestored |
onContextRestored(options) Parâmetros:
Valor de retorno: nenhum
Esse método é chamado quando o contexto de renderização está disponível. Use-o para inicializar ou vincular qualquer estado WebGL, como sombreadores ou objetos de buffer. |
onDraw |
onDraw(options) Parâmetros:
Valor de retorno: nenhum
Implemente esse método para desenhar conteúdo WebGL diretamente no mapa. Se a sobreposição precisar de um novo frame desenhado, chame WebGLOverlayView.requestRedraw . |
onRemove |
onRemove() Parâmetros: nenhum
Valor de retorno: nenhum
Esse método é chamado quando a sobreposição é removida do mapa com WebGLOverlayView.setMap(null) e é onde você precisa remover todos os objetos intermediários. |
onStateUpdate |
onStateUpdate(options) Parâmetros:
Valor de retorno: nenhum
Implemente esse método para processar qualquer atualização de estado do GL fora do frame da animação de renderização. |
requestRedraw |
requestRedraw() Parâmetros: nenhum
Valor de retorno: nenhum
Aciona o mapa para redesenhar um frame. |
requestStateUpdate |
requestStateUpdate() Parâmetros:nenhum
Valor de retorno: nenhum
Aciona o mapa para atualizar o estado do GL. |
setMap |
setMap([map]) Parâmetros:
Valor de retorno: nenhum
Adiciona a sobreposição ao mapa. |
Herdadas:
addListener ,
bindTo ,
get ,
notify ,
set ,
setValues ,
unbind ,
unbindAll
|
Interface WebGLDrawOptions
Interface google.maps.WebGLDrawOptions
Opções de desenho.
Propriedades | |
---|---|
gl |
Tipo:
WebGLRenderingContext O WebGLRenderContext em que a WebGLOverlayView será renderizada. |
transformer |
Tipo:
CoordinateTransformer A transformação de matriz do espaço da câmera para coordenadas de latitude/longitude. |
Interface WebGLStateOptions
Interface google.maps.WebGLStateOptions
Opções de estado GL.
Propriedades | |
---|---|
gl |
Tipo:
WebGLRenderingContext O WebGLRenderContext em que a WebGLOverlayView será renderizada. |
Interface CoordinateTransformer
Interface google.maps.CoordinateTransformer
Essa interface fornece métodos convenientes para gerar matrizes a serem usadas para renderizar cenas WebGL no mapa básico do Google.
Observação: uma referência a esse objeto não deve ser mantida fora do escopo da chamada WebGLOverlayView.onDraw
de encapsulamento.
Métodos | |
---|---|
fromLatLngAltitude |
fromLatLngAltitude(latLngAltitude[, rotations, scale]) Parâmetros:
Valor de retorno:matriz de MVP
Float64Array a ser usada com o WebGL. |
getCameraParams |
getCameraParams() Parâmetros:nenhum
Valor de retorno:
CameraParams parâmetros da câmera |
CameraParams.
Interface google.maps.CameraParams
Usado para recuperar parâmetros da câmera, como o da câmera GL usada para WebGLOverlayView
.
Essa interface estende
CameraOptions
.
Propriedades | |
---|---|
center |
Tipo:
LatLng |
heading |
Tipo:
number |
tilt |
Tipo:
number |
zoom |
Tipo:
number |