Exemple #1
0
 def tile(self, z, x, y):
     """
     Render the specified tile with Mapnik
     """
     logger.debug(_("Render tile %s") % ((z, x, y), ))
     proj = GoogleProjection(self.tilesize, [z])
     return self.render(proj.tile_bbox((z, x, y)))
Exemple #2
0
 def tile(self, z, x, y):
     """
     Render the specified tile with Mapnik
     """
     logger.debug(_("Render tile %s") % ((z, x, y),))
     proj = GoogleProjection(self.tilesize, [z])
     return self.render(proj.tile_bbox((z, x, y)))
Exemple #3
0
 def grid(self, z, x, y, fields, layer):
     """
     Render the specified grid with Mapnik
     """
     logger.debug(_("Render grid %s") % ((z, x, y),))
     proj = GoogleProjection(self.tilesize, [z])
     return self.render_grid(proj.tile_bbox((z, x, y)), fields, layer)
Exemple #4
0
 def grid(self, z, x, y, fields, layer):
     """
     Render the specified grid with Mapnik
     """
     logger.debug(_("Render grid %s") % ((z, x, y), ))
     proj = GoogleProjection(self.tilesize, [z])
     return self.render_grid(proj.tile_bbox((z, x, y)), fields, layer)
Exemple #5
0
 def tile(self, z, x, y):
     logger.debug(_("Request WMS tile %s") % ((z, x, y),))
     proj = GoogleProjection(self.tilesize, [z])
     bbox = proj.tile_bbox((z, x, y))
     bbox = proj.project(bbox[:2]) + proj.project(bbox[2:])
     bbox = ','.join(map(str, bbox))
     # Build WMS request URL
     encodedparams = urllib.urlencode(self.wmsParams)
     url = "%s?%s" % (self.url, encodedparams)
     url += "&bbox=%s" % bbox   # commas are not encoded
     r = DOWNLOAD_RETRIES
     sleeptime = 1
     while r > 0:
         try:
             logger.debug(_("Download '%s'") % url)
             request = urllib2.Request(url)
             for header, value in self.headers.items():
                 request.add_header(header, value)
             f = urllib2.urlopen(request)
             header = f.info().typeheader
             assert header == self.wmsParams['format'], "Invalid WMS response type : %s" % header
             return f.read()
         except (AssertionError, IOError, httplib.HTTPException), e:
             logger.debug(_("Download error, retry (%s left). (%s)") % (r, e))
             r -= 1
             time.sleep(sleeptime)
             # progressivly sleep longer to wait for this tile
             if (sleeptime <= 10) and (r % 2 == 0):
                 sleeptime += 1  # increase wait
Exemple #6
0
 def tile(self, z, x, y):
     proj = GoogleProjection(self.tilesize, [z])
     bbox = proj.tile_bbox((z, x, y))
     bbox = proj.project(bbox[:2]) + proj.project(bbox[2:])
     bbox = ','.join(map(str, bbox))
     # Build WMS request URL 
     encodedparams = urllib.urlencode(self.wmsParams)
     url = "%s?%s" % (self.url, encodedparams)
     url += "&bbox=%s" % bbox   # commas are not encoded
     try:
         logger.debug(_("Download '%s'") % url)
         f = urllib.urlopen(url)
         header = f.info().typeheader
         assert header == self.wmsParams['format'], "Invalid WMS response type : %s" % header
         return f.read()
     except (AssertionError, IOError), e:
         raise ExtractionError
Exemple #7
0
 def tile(self, z, x, y):
     logger.debug(_("Request WMS tile %s") % ((z, x, y), ))
     proj = GoogleProjection(self.tilesize, [z])
     bbox = proj.tile_bbox((z, x, y))
     bbox = proj.project(bbox[:2]) + proj.project(bbox[2:])
     bbox = ','.join(map(str, bbox))
     # Build WMS request URL
     encodedparams = urllib.urlencode(self.wmsParams)
     url = "%s?%s" % (self.url, encodedparams)
     url += "&bbox=%s" % bbox  # commas are not encoded
     try:
         logger.debug(_("Download '%s'") % url)
         f = urllib2.urlopen(url)
         header = f.info().typeheader
         assert header == self.wmsParams[
             'format'], "Invalid WMS response type : %s" % header
         return f.read()
     except (AssertionError, IOError):
         raise ExtractionError