WebGLRenderer interface
Interface para renderizar gráficos WebGL em um WebGLLayer.
Propriedades
rendering |
"2d" ou "3d". O padrão é "2d". |
Métodos
on |
Método opcional chamado quando a camada foi adicionada ao Mapa. Isso dá à camada a chance de inicializar recursos gl e registrar ouvintes de eventos. |
on |
Método opcional chamado quando a camada foi removida do Mapa. Isso dá à camada a chance de limpar recursos gl e ouvintes de eventos. |
prerender(Web |
Método opcional chamado durante um quadro de renderização para permitir que uma camada prepare recursos ou renderize em uma textura. A camada não pode fazer nenhuma suposição sobre o estado gl atual e deve associar um quadro-cofre antes de renderizar. |
render(Web |
Chamado durante um quadro de renderização, permitindo que a camada seja desenhada no contexto GL. A camada pode assumir que a combinação e o estado de profundidade estão definidos para permitir que a camada misture e corte corretamente outras camadas. A camada não pode fazer outras suposições sobre o estado GL atual. Se a camada precisar ser renderizada em uma textura, ela deverá implementar o método prerender para fazer isso e usar apenas o método de renderização para desenhar diretamente no quadro principal. A função blend é definida como gl.blendFunc(gl. UM, gl. ONE_MINUS_SRC_ALPHA). Isso espera que as cores sejam fornecidas na forma alfa pré-multiplicada, em que os valores r, g e b já são multiplicados pelo valor a. Se não for possível fornecer cores na forma pré-adulterada, talvez você queira alterar a função de combinação para gl.blendFuncSeparate(gl. SRC_ALPHA, gl. ONE_MINUS_SRC_ALPHA, gl. UM, gl. ONE_MINUS_SRC_ALPHA). |
Detalhes da propriedade
renderingMode
"2d" ou "3d". O padrão é "2d".
renderingMode?: "2d" | "3d"
Valor da propriedade
"2d" | "3d"
Detalhes do método
onAdd(Map, WebGLRenderingContext)
Método opcional chamado quando a camada foi adicionada ao Mapa. Isso dá à camada a chance de inicializar recursos gl e registrar ouvintes de eventos.
function onAdd(map: Map, gl: WebGLRenderingContext)
Parâmetros
- map
- Map
O mapa ao qual essa camada WebGL foi adicionada.
- gl
-
WebGLRenderingContext
O contexto gl para o mapa.
onRemove(Map, WebGLRenderingContext)
Método opcional chamado quando a camada foi removida do Mapa. Isso dá à camada a chance de limpar recursos gl e ouvintes de eventos.
function onRemove(map: Map, gl: WebGLRenderingContext)
Parâmetros
- map
- Map
O mapa ao qual essa camada WebGL foi adicionada.
- gl
-
WebGLRenderingContext
O contexto gl para o mapa.
prerender(WebGLRenderingContext, number[])
Método opcional chamado durante um quadro de renderização para permitir que uma camada prepare recursos ou renderize em uma textura. A camada não pode fazer nenhuma suposição sobre o estado gl atual e deve associar um quadro-cofre antes de renderizar.
function prerender(gl: WebGLRenderingContext, matrix: number[])
Parâmetros
- gl
-
WebGLRenderingContext
O contexto gl do mapa.
- matrix
-
number[]
A matriz da câmera do mapa. Ele projeta coordenadas de mercador esférico para coordenadas gl. A coordenada do mercator [0, 0] representa o canto superior esquerdo do mundo mercator e [1, 1] representa o canto inferior direito. Quando o renderingMode é "3d", a coordenada z está em conformidade. Uma caixa com comprimentos x, y e z idênticos em unidades de mercator seria renderizada como um cubo. MercatorCoordinate .fromLatLng pode ser usado para projetar um LngLat em uma coordenada de mercator.
render(WebGLRenderingContext, number[])
Chamado durante um quadro de renderização, permitindo que a camada seja desenhada no contexto GL. A camada pode assumir que a combinação e o estado de profundidade estão definidos para permitir que a camada misture e corte corretamente outras camadas. A camada não pode fazer outras suposições sobre o estado GL atual.
Se a camada precisar ser renderizada em uma textura, ela deverá implementar o método prerender para fazer isso e usar apenas o método de renderização para desenhar diretamente no quadro principal.
A função blend é definida como gl.blendFunc(gl. UM, gl. ONE_MINUS_SRC_ALPHA). Isso espera que as cores sejam fornecidas na forma alfa pré-multiplicada, em que os valores r, g e b já são multiplicados pelo valor a. Se não for possível fornecer cores na forma pré-adulterada, talvez você queira alterar a função de combinação para gl.blendFuncSeparate(gl. SRC_ALPHA, gl. ONE_MINUS_SRC_ALPHA, gl. UM, gl. ONE_MINUS_SRC_ALPHA).
function render(gl: WebGLRenderingContext, matrix: number[])
Parâmetros
- gl
-
WebGLRenderingContext
O contexto gl do mapa.
- matrix
-
number[]
A matriz da câmera do mapa. Ele projeta coordenadas de mercador esférico para coordenadas gl. A coordenada do mercator [0, 0] representa o canto superior esquerdo do mundo mercator e [1, 1] representa o canto inferior direito. Quando o renderingMode é "3d", a coordenada z está em conformidade. Uma caixa com comprimentos x, y e z idênticos em unidades de mercator seria renderizada como um cubo. MercatorCoordinate .fromLatLng pode ser usado para projetar um LngLat em uma coordenada de mercator.