Draw object tile provider

From Maria GDK Wiki
Jump to navigation Jump to search

The draw object tile provider offers functionality for creating draw object tiles, which can be used to serve tiles from a Tile Map Service.

The DrawObjectTileProvider is instantiated with a draw object factory. If the draw object factory is the same as used for a draw object layer in an application, the draw objects rendered will be the same as in the application (including filters). The provider can also have its own draw object factory with its own draw objects and filters.

The draw object style used for rendering must be set using the SetDrawObjectStyle method before draw object tiles can be created. The draw object style must also be updated if the style changes.

To create a draw object tile use the GetDrawObjectTile method, with zoom level z, and the x and y coordinates. The raster compression of the tile is determined by "png" (lossless), or "jpg", "jpeg" (lossy).

Code example:

var tileProvider = new DrawObjectTileProvider(_drawObjectFactory);
tileProvider.SetDrawObjectStyle(drawObjectStyleXML);
var tileStream = tileProvider.GetDrawObjectTile(z, x, y, "png");

Note: Grid draw objects must have the field "ShowGridLabelsOnViewportEdge" set to false in ExtraFields to prevent labels from being rendered on each tile.