def _get_bbox_by_tiles(tiles): numRows = len(tiles) numCols = len(tiles[0]) first = tiles[0][0] last = tiles[numRows -1][numCols -1] bbox = Bbox.from_leftdown_rightup(first.bbox.node_leftdown(), last.bbox.node_rightup()) return bbox
def test_instantiate_from_bltr(self): bottom = 47.0 left = 8.0 top = 48.0 right = 9.0 bbox = Bbox.from_bltr(bottom, left, top, right) self.assertTrue(bbox.bottom == bottom) self.assertTrue(bbox.left == left) self.assertTrue(bbox.top == top) self.assertTrue(bbox.right == right)
def test_instantiate_from_bltr_string(self): bottom = '47.0' left = '8.0' top = '48.0' right = '9.0' bbox = Bbox.from_bltr(bottom, left, top, right) self.assertTrue(bbox.bottom == bottom) self.assertTrue(bbox.left == left) self.assertTrue(bbox.top == top) self.assertTrue(bbox.right == right)
def _generate_small_bboxes(self): mminx, mminy = self.mercator.LatLonToMeters(self.big_bbox.bottom, self.big_bbox.left) rows = self._calc_rows() columns = self._calc_columns() side = Constants.SMALL_BBOX_SIDE_LENGHT for x in range(0, columns): for y in range(0, rows): bottom, left = self.mercator.MetersToLatLon(mminx + (side * x), mminy + (side * y)) top, right = self.mercator.MetersToLatLon(mminx + (side * (x + 1)), mminy + (side * (y + 1))) small_bbox = Bbox.from_lbrt(left, bottom, right, top) self.small_bboxes.append(small_bbox)
def getTile_byNode(self, centreNode, side_length): centrePixel = self.get_pixel(centreNode) x1 = centrePixel[0] - side_length/2 x2 = centrePixel[0] + side_length/2 y1 = centrePixel[1] - side_length/2 y2 = centrePixel[1] + side_length/2 img = self.image.crop((x1, y1, x2, y2)) leftDown = self.getNode((x1,y1)) rightUp = self.getNode((x2,y2)) bbox = Bbox.from_leftdown_rightup(leftDown,rightUp) return Tile.from_tile(img,bbox)
def BernKoeniz(self): return Bbox.from_lbrt(7.406960, 46.920077, 7.415008, 46.924285)
def Zurich2(self): #Trainset return Bbox.from_lbrt(8.530470, 47.366188, 8.537807, 47.372053)
def ChurBhfAltstadt(self): #TrainSet return Bbox.from_lbrt(9.528281, 46.850342, 9.532599, 46.853980)
def BernAltStadt(self): #TrainSet return Bbox.from_lbrt(7.444389, 46.947913, 7.448316, 46.949693)
def zh_quartier2(self): return Bbox.from_lbrt(8.520495, 47.369944, 8.523971, 47.372846)
def zh_hardbrucke_test(self): return Bbox.from_lbrt(8.517822, 47.386440, 8.520540, 47.388008)
def zh1(self): return Bbox.from_lbrt(8.522537, 47.375915, 8.526331, 47.376639)
def zh_kilchberg(self): return Bbox.from_bltr(47.320074, 8.547435, 47.323934, 8.550514)
def zh_zollikon_test_gross(self): return Bbox.from_bltr(47.355633, 8.543026, 47.372811, 8.570957)
def Zug_sz(self): return Bbox.from_bltr(47.171100, 8.511467, 47.173771, 8.519041)
def ZurichUhuereGross3(self): return Bbox.from_bltr(47.372759, 8.473965, 47.399972, 8.510429)
def ZurichUhuereGross2(self): return Bbox.from_lbrt(8.523379, 47.368823, 8.573379, 47.390823)
def ZurichUhuereGrossHalb(self): return Bbox.from_lbrt(8.523379, 47.368823, 8.543379, 47.380823)
def RappiUhuereGross(self): return Bbox.from_lbrt(8.804742, 47.215446, 8.850833, 47.237799)
def Lausanne(self): return Bbox.from_lbrt(6.555186, 46.508591, 6.563499, 46.516437)
def Lyss(self): #Trainset return Bbox.from_lbrt(7.304337, 47.072818, 7.308200, 47.075229)
Usage("ERROR: You have to specify the whole boundingbox.") left = _get_float(argv[i]) i += 1 bottom = _get_float(argv[i]) i += 1 right = _get_float(argv[i]) i += 1 top = _get_float(argv[i]) if left is None or bottom is None or right is None or top is None: Usage("ERROR: You have to specify left, bottom, right and top .") if top < bottom: Usage("ERROR: 'top' must be bigger then 'bottom'") if right < left: Usage("ERROR: 'right' must be bigger then 'left'") big_bbox = Bbox.from_lbrt(left, bottom, right, top) print 'Manger is running!' Manager.from_big_bbox(big_bbox, redis) print 'Manger is finished!' elif role == 'jobworker': print 'JobWorker is running!' jobWorker = Worker.from_worker([Constants.QUEUE_JOBS]) jobWorker.run(redis) elif role == 'resultworker': print 'ResultWorker is running!' resultWorker = Worker.from_worker([Constants.QUEUE_RESULTS]) resultWorker.run(redis) else: Usage("ERROR: Sorry, given role is not implemented yet.")
def zh_schlieren_test(self): return Bbox.from_lbrt(8.441207, 47.394649, 8.449643, 47.399710)
from src.data.TileLoader import TileLoader from src.base.Bbox import Bbox ''' Download all tiles in a specific BBox ''' zurich_bellevu = Bbox.from_lbrt(8.54279671719532, 47.366177501999516, 8.547088251618977, 47.36781249586627) tl = TileLoader.from_bbox(zurich_bellevu) tile = tl.load_tile() tile.show()
def smallTestBbox(self): return Bbox.from_lbrt(8.54279671719532, 47.366177501999516, 8.543088251618977, 47.36781249586627)
def zh_frauental_quartier(self): return Bbox.from_lbrt(8.507748, 47.355263, 8.510934, 47.358226)
def ZurichBellvue(self): return Bbox.from_lbrt(8.54279671719532, 47.366177501999516, 8.547088251618977, 47.36781249586627)
def Rappi(self): return Bbox.from_lbrt(8.814650, 47.222553, 8.820035, 47.225935)
def smallTestBbox(self): return Bbox.from_bltr(47.226327, 8.818031, 47.227014, 8.818868)
def Luzern(self): return Bbox.from_lbrt(8.301307, 47.046349, 8.305528, 47.051053)