Interface ISKImagePyramidRenderer
Renders individual Deep Zoom tiles onto a drawing surface. Implement this interface to provide a custom rendering backend.
public interface ISKImagePyramidRenderer : IDisposable
- Inherited Members
Remarks
The rendering pipeline uses a two-pass approach:
- LOD fallback pass: DrawFallbackTile(SKRect, SKRect, SKImagePyramidTile) is called for tiles that are loading, using a lower-resolution ancestor.
- Hi-res pass: DrawTile(SKRect, SKImagePyramidTile) is called for each cached tile at the correct detail level.
Tile geometry (destination rects, fallback source rects) is pre-calculated by SKImagePyramidTileLayout and passed into the draw methods.
Properties
- Canvas
Gets or sets the canvas to render onto. Must be set before calling Render(ISKImagePyramidRenderer).
Methods
- BeginRender()
Called before any tile draw calls for a render frame. Use this to set up state (e.g., save canvas, clear background).
- DrawFallbackTile(SKRect, SKRect, SKImagePyramidTile)
Draws a lower-resolution fallback tile stretched to fill the destination rect. Only called when LOD blending is enabled and the hi-res tile is still loading.
- DrawTile(SKRect, SKImagePyramidTile)
Draws a hi-resolution tile at the exact detail level requested.
- EndRender()
Called after all tile draw calls for a render frame. Use this to flush state (e.g., restore canvas).