def run(self): while not self.stop.is_set(): try: map_info = self.queue.get(False, 1) except Queue.Empty: pass else: map_obj = Map(*map_info) renderer = self.renderer(map_obj, quiet=True) renderer.run() map_obj.write() self.queue.task_done() print 'Built %s' % str(map_obj.fobj)
def render(): left = request.GET['left'] top = request.GET['top'] right = request.GET['right'] bottom = request.GET['bottom'] scale = request.GET['scale'] width = request.GET['width'] height = request.GET['height'] fobj = StringIO.StringIO() bbox = ( float(left), float(bottom), float(right), float(top) ) map_obj = Map(fobj, bbox, max(int(width), int(height))) Renderer(map_obj, quiet=True, stylesheet=STYLESHEET).run() map_obj.write() response.content_type = 'image/png' return fobj.getvalue()
# coding: utf-8 import os os.environ['MAPYTHON_DB_URL'] = 'postgresql://*****:*****@localhost/database' from mapython.render import Renderer from mapython.draw import Map from mapython.projection import mercator from mapython.style import StyleSheet, Style bbox = (11.4, 48.3, 11.9, 48.6) mapobj = Map('map.png', bbox, max_size=900) renderer = Renderer(mapobj) renderer.run() mapobj.write() sty = StyleSheet('path-to-style-or-None') sty.add(Style('line', 3, {'highway': 'motorway'}, {'color': (1, 1, 1, 0.3)} )) mapobj = Map('map.pdf', bbox, max_size=300, surface_type='pdf') renderer = Renderer(mapobj, sty) renderer.run() mapobj.write()