TileStache.Mapnik | index

`Mapnik Providers.
ImageProvider is known as "mapnik" in TileStache config, GridProvider is
known as "mapnik grid". Both require Mapnik to be installed; Grid requires
Mapnik 2.0.0 and above.`

Modules

``

PIL.Image json | logging mapnik | os |

Classes

``

GridProvider
ImageProvider
SaveableResponse

class GridProvider

``

`Built-in UTF Grid provider. Renders JSON raster objects from Mapnik.
This provider is identified by the name "mapnik grid" in the
Tilestache config, and uses Mapnik 2.0 (and above) to generate
JSON UTF grid responses.
Sample configuration for a single grid layer:
"provider":
{
"name": "mapnik grid",
"mapfile": "world_merc.xml",
"fields": ["NAME", "POP2005"]
}
Sample configuration for multiple overlaid grid layers:
"provider":
{
"name": "mapnik grid",
"mapfile": "world_merc.xml",
"layers":
[
[1, ["NAME"]],
[0, ["NAME", "POP2005"]],
[0, null],
[0, []]
]
}
Arguments:
- mapfile (required)
Local file path to Mapnik XML file.
- fields (optional)
Array of field names to return in the response, defaults to all.
An empty list will return no field names, while a value of null is
equivalent to all.
- layer index (optional)
Which layer from the mapfile to render, defaults to 0 (first layer).
- layers (optional)
Ordered list of (layer index, fields) to combine; if provided
layers overrides both layer index and fields arguments.
An empty fields list will return no field names, while a value of null
is equivalent to all fields.
- scale (optional)
Scale factor of output raster, defaults to 4 (64x64).
- layer id key (optional)
If set, each item in the 'data' property will have its source mapnik
layer name added, keyed by this value. Useful for distingushing
between data items.
Information and examples for UTF Grid:
- https://github.com/mapbox/utfgrid-spec/blob/master/1.2/utfgrid.md
- http://mapbox.github.com/wax/interaction-leaf.html
`

Methods defined here:

__init__(self, layer, mapfile, fields=None, layers=None, layer_index=0, scale=4, layer_id_key=None)
  `Initialize Mapnik grid provider with layer and mapfile.
  XML mapfile keyword arg comes from TileStache config,
  and is an absolute path by the time it gets here.`

getTypeByExtension(self, extension)
  `Get mime-type and format by file extension.
  This only accepts "json".`

renderArea(self, width, height, srs, xmin, ymin, xmax, ymax, zoom)

Static methods defined here:

prepareKeywordArgs(config_dict)
  `Convert configured parameters to keyword args for __init__().`

class ImageProvider

``

`Built-in Mapnik provider. Renders map images from Mapnik XML files.
This provider is identified by the name "mapnik" in the TileStache config.
Arguments:
- mapfile (required)
Local file path to Mapnik XML file.
- fonts (optional)
Local directory path to *.ttf font files.
More information on Mapnik and Mapnik XML:
- http://mapnik.org
- http://trac.mapnik.org/wiki/XMLGettingStarted
- http://trac.mapnik.org/wiki/XMLConfigReference
`

Methods defined here:

__init__(self, layer, mapfile, fonts=None)
  `Initialize Mapnik provider with layer and mapfile.
  XML mapfile keyword arg comes from TileStache config,
  and is an absolute path by the time it gets here.`

renderArea(self, width, height, srs, xmin, ymin, xmax, ymax, zoom)

Static methods defined here:

prepareKeywordArgs(config_dict)
  `Convert configured parameters to keyword args for __init__().`

class SaveableResponse
`` | `Wrapper class for JSON response that makes it behave like a PIL.Image object. TileStache.getTile() expects to be able to save one of these to a buffer.`

Methods defined here:

__init__(self, content, scale)

crop(self, bbox)
  `Return a cropped grid response.`

save(self, out, format)

Functions

``

allocate_lock(...)
  `allocate_lock() -> lock object
  (allocate() is an obsolete synonym)
  Create a new lock object. See LockType.__doc__ for information about locks.`

decode_char(char)

encode_id(id)

get_mapnikMap(mapfile)
  `Get a new mapnik.Map instance for a mapfile`

merge_grids(grid1, grid2)
  `Merge two UTF Grid objects.`

time(...)
  `time() -> floating point number
  Return the current time in seconds since the Epoch.
  Fractions of a second may be present if the system clock provides them.`

Data
`` |  | global_mapnik_lock = <thread.lock object at 0x1004b3228>