WebGLRenderer interface
Gränssnitt för att återge WebGL-grafik i en WebGLLayer.
Egenskaper
| rendering |
Antingen "2d" eller "3d". Standardvärdet är "2d". |
Metoder
| on |
Valfri metod som anropas när lagret har lagts till på kartan. Detta ger lagret en chans att initiera gl-resurser och registrera händelselyssnare. |
| on |
Valfri metod som anropas när lagret har tagits bort från kartan. Detta ger lagret en chans att rensa gl-resurser och händelselyssnare. |
| prerender(Web |
Valfri metod som anropas under en återgivningsram så att ett lager kan förbereda resurser eller rendera till en struktur. Lagret kan inte göra några antaganden om det aktuella GL-tillståndet och måste binda en framebuffer innan återgivningen. |
| render(Web |
Anropas under en återgivningsram så att lagret kan ritas in i GL-kontexten. Lagret kan förutsätta att blandnings- och djuptillstånd har angetts så att lagret kan blanda och klippa ut andra lager på rätt sätt. Lagret kan inte göra några andra antaganden om det aktuella GL-tillståndet. Om lagret behöver renderas till en struktur bör det implementera prerender-metoden för att göra detta och endast använda återgivningsmetoden för att rita direkt till huvudrambuffer. Blend-funktionen är inställd på gl.blendFunc(gl. EN, gl. ONE_MINUS_SRC_ALPHA). Detta förväntar sig att färger anges i premultiplied alfaform där värdena r, g och b redan multipliceras med ett värde. Om du inte kan ange färger i premultiplied kan du ändra blend-funktionen till gl.blendFuncSeparate(gl. SRC_ALPHA, gl. ONE_MINUS_SRC_ALPHA, gl. EN, gl. ONE_MINUS_SRC_ALPHA). |
Egenskapsinformation
renderingMode
Antingen "2d" eller "3d". Standardvärdet är "2d".
renderingMode?: "2d" | "3d"
Egenskapsvärde
"2d" | "3d"
Metodinformation
onAdd(Map, WebGLRenderingContext)
Valfri metod som anropas när lagret har lagts till på kartan. Detta ger lagret en chans att initiera gl-resurser och registrera händelselyssnare.
function onAdd(map: Map, gl: WebGLRenderingContext)
Parametrar
- map
- Map
Mappa det här WebGL-lagret har just lagts till.
- gl
-
WebGLRenderingContext
Gl-kontexten för kartan.
onRemove(Map, WebGLRenderingContext)
Valfri metod som anropas när lagret har tagits bort från kartan. Detta ger lagret en chans att rensa gl-resurser och händelselyssnare.
function onRemove(map: Map, gl: WebGLRenderingContext)
Parametrar
- map
- Map
Mappa det här WebGL-lagret har just lagts till.
- gl
-
WebGLRenderingContext
Gl-kontexten för kartan.
prerender(WebGLRenderingContext, number[])
Valfri metod som anropas under en återgivningsram så att ett lager kan förbereda resurser eller rendera till en struktur. Lagret kan inte göra några antaganden om det aktuella GL-tillståndet och måste binda en framebuffer innan återgivningen.
function prerender(gl: WebGLRenderingContext, matrix: number[])
Parametrar
- gl
-
WebGLRenderingContext
Kartans gl-kontext.
- matrix
-
number[]
Kartans kameramatris. Den projicerar sfäriska mercatorkoordinater till gl-koordinater. Mercatorkoordinaten [0, 0] representerar det övre vänstra hörnet i mercatorvärlden och [1, 1] representerar det nedre högra hörnet. När renderingMode är "3d" är z-koordinaten överensstämmande. En ruta med identiska x-, y- och z-längder i mercatorenheter återges som en kub. MercatorCoordinate .fromLatLng kan användas för att projicera en LngLat till en mercatorkoordinat.
render(WebGLRenderingContext, number[])
Anropas under en återgivningsram så att lagret kan ritas in i GL-kontexten. Lagret kan förutsätta att blandnings- och djuptillstånd har angetts så att lagret kan blanda och klippa ut andra lager på rätt sätt. Lagret kan inte göra några andra antaganden om det aktuella GL-tillståndet.
Om lagret behöver renderas till en struktur bör det implementera prerender-metoden för att göra detta och endast använda återgivningsmetoden för att rita direkt till huvudrambuffer.
Blend-funktionen är inställd på gl.blendFunc(gl. EN, gl. ONE_MINUS_SRC_ALPHA). Detta förväntar sig att färger anges i premultiplied alfaform där värdena r, g och b redan multipliceras med ett värde. Om du inte kan ange färger i premultiplied kan du ändra blend-funktionen till gl.blendFuncSeparate(gl. SRC_ALPHA, gl. ONE_MINUS_SRC_ALPHA, gl. EN, gl. ONE_MINUS_SRC_ALPHA).
function render(gl: WebGLRenderingContext, matrix: number[])
Parametrar
- gl
-
WebGLRenderingContext
Kartans gl-kontext.
- matrix
-
number[]
Kartans kameramatris. Den projicerar sfäriska mercatorkoordinater till gl-koordinater. Mercatorkoordinaten [0, 0] representerar det övre vänstra hörnet i mercatorvärlden och [1, 1] representerar det nedre högra hörnet. När renderingMode är "3d" är z-koordinaten överensstämmande. En ruta med identiska x-, y- och z-längder i mercatorenheter återges som en kub. MercatorCoordinate .fromLatLng kan användas för att projicera en LngLat till en mercatorkoordinat.