def __init__(self, title=None, geometry=None, zoom=None, geojson_url=None, author=None): self.title = title self.status = 1 self.geometry = geometry self.short_description = u'' self.description = u'' self.workflow = u'' self.zoom = zoom self.geojson_url = geojson_url self.author = author tiles = [] if geojson_url: def build_wkt(polygon): wkt = '' for c in polygon: if wkt != '': wkt = wkt + ',' wkt = wkt + str(c[0]) + " " + str(c[1]) return '(' + wkt + ')' jsonurl = urllib.urlopen(geojson_url) data = json.loads(jsonurl.read()) x = 0 for f in data['features']: wkt_string = [] try: import_url = f['properties']['import_url'] except KeyError: import_url = None for p in f['geometry']['coordinates']: if f['geometry']['type'] == "MultiPolygon": wkt_string = [] for subp in p: wkt_string.append(build_wkt(subp)) t = Tile(x, 0, 0, 'POLYGON(' + ','.join(wkt_string) + ')', import_url) x = x + 1 tiles.append(t) else: wkt_string.append(build_wkt(p)) if f['geometry']['type'] != "MultiPolygon": t = Tile(x, 0, 0, 'POLYGON(' + ','.join(wkt_string) + ')', import_url) x = x + 1 tiles.append(t) else: for i in get_tiles_in_geom(loads(geometry), int(zoom)): tiles.append(Tile(i[0], i[1], int(zoom))) self.tiles = tiles
def __init__(self, title=None, geometry=None, zoom=None, geojson_url=None, author=None): self.title = title self.status = 1 self.geometry = geometry self.short_description = u'' self.description = u'' self.workflow = u'' self.zoom = zoom self.geojson_url = geojson_url self.author = author tiles = [] if geojson_url: def build_wkt(polygon): wkt = '' for c in polygon: if wkt != '': wkt = wkt + ',' wkt = wkt + str(c[0]) + " " + str(c[1]) return '(' + wkt + ')' jsonurl = urllib.urlopen(geojson_url) data = json.loads(jsonurl.read()) x = 0 for f in data['features']: wkt_string = [] try: import_url = f['properties']['import_url'] except KeyError: import_url = None for p in f['geometry']['coordinates']: if f['geometry']['type'] == "MultiPolygon": wkt_string = [] for subp in p: wkt_string.append(build_wkt(subp)) t = Tile(x,0,0,'POLYGON(' + ','.join(wkt_string) + ')',import_url) x = x + 1 tiles.append(t) else: wkt_string.append(build_wkt(p)) if f['geometry']['type'] != "MultiPolygon": t = Tile(x,0,0,'POLYGON(' + ','.join(wkt_string) + ')',import_url) x = x + 1 tiles.append(t) else: for i in get_tiles_in_geom(loads(geometry), int(zoom)): tiles.append(Tile(i[0], i[1], int(zoom))) self.tiles = tiles
def __init__(self, title=None, geometry=None, zoom=None): self.title = title self.status = 1 self.geometry = geometry self.zoom = zoom self.short_description = u'' self.description = u'' self.workflow = u'' tiles = [] for i in get_tiles_in_geom(loads(geometry), int(zoom)): tiles.append(Tile(i[0], i[1])) self.tiles = tiles
def __init__(self, title=None, geometry=None, zoom=None, author=None): self.title = title self.status = 1 self.geometry = geometry self.short_description = u'' self.description = u'' self.workflow = u'' self.zoom = zoom self.author = author tiles = [] for i in get_tiles_in_geom(loads(geometry), int(zoom)): tiles.append(Tile(i[0], i[1], int(zoom))) self.tiles = tiles
def __init__(self, title=None, short_description='', description=None, workflow=None, geometry=None, zoom=None, is_private=False, imagery=None, requires_nextview=False, status=1): self.title = title self.status = status self.description = description self.short_description = short_description self.geometry = geometry self.workflow = workflow self.imagery = imagery self.zoom = zoom self.is_private = is_private self.requires_nextview = requires_nextview tiles = [] for i in get_tiles_in_geom(loads(geometry), int(zoom)): tiles.append(Tile(i[0], i[1])) self.tiles = tiles
def job_new(request): if "form.submitted" in request.params: session = DBSession() job = Job() job.title = request.params["title"] job.description = request.params["description"] job.geometry = request.params["geometry"] job.workflow = request.params["workflow"] job.imagery = request.params["imagery"] job.zoom = request.params["zoom"] job.is_private = request.params.get("is_private", 0) job.requires_nextview = request.params.get("requires_nextview", 0) tiles = [] for i in get_tiles_in_geom(loads(job.geometry), int(job.zoom)): tiles.append(Tile(i[0], i[1])) job.tiles = tiles session.add(job) session.flush() return HTTPFound(location=route_url("job", request, job=job.id)) return {}
def job_new(request): if 'form.submitted' in request.params: session = DBSession() job = Job() job.title = request.params['title'] job.description = request.params['description'] job.geometry = request.params['geometry'] job.workflow = request.params['workflow'] job.imagery = request.params['imagery'] job.zoom = request.params['zoom'] job.is_private = request.params.get('is_private', 0) job.requires_nextview = request.params.get('requires_nextview', 0) tiles = [] for i in get_tiles_in_geom(loads(job.geometry), int(job.zoom)): tiles.append(Tile(i[0], i[1])) job.tiles = tiles session.add(job) session.flush() return HTTPFound(location = route_url('job', request, job=job.id)) return {}