Draw object tile provider: Difference between revisions

From Maria GDK Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
 
Line 13: Line 13:
var tileStream = tileProvider.GetDrawObjectTile(z, x, y, "png");
var tileStream = tileProvider.GetDrawObjectTile(z, x, y, "png");
</syntaxhighlight>
</syntaxhighlight>
'''Note:''' Grid draw objects must have the field "ShowGridLabelsOnViewportEdge" set to false in ExtraFields to prevent labels from being rendered on each tile.


[[Category:Draw objects]]
[[Category:Draw objects]]

Latest revision as of 17:01, 6 May 2021

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.