Exemple #1
0
def distinct_values():
	name = request.GET.get('name')
	layer_name = request.GET.get('layer')
	limit = request.GET.get('limit')
	m = Metadata(name)
	values = m.distinct_values(layer_name, limit)
	return vo.collection(values, len(values))
Exemple #2
0
def query():
	o = json.load(request.body)
	layer_name = o['layer']
	fields = o['fields']
	criteria = o['criteria']
	paging = o['paging']
	start = o['start']
	limit = o['limit']
	wkt = o['wkt']
	
	l = Layer(layer_name)
	results = l.query(fields, criteria, paging, start, limit,True, wkt)
	return vo.collection(results, l.query_count(criteria))
Exemple #3
0
def withinpoint():
	o = json.load(request.body)
	vo_layers = o['layers']
	fields = o['fields']
	x = o['point']['x']
	y = o['point']['y']
	dist = o['dist']

	layers = map(lambda l: Layer(l['name'],l['srid']), vo_layers)
	group = Group(layers)
	point = Point(x,y)
	geoms = group.within_point(fields,point, dist)
	
	out = map(lambda g: vo.geometry(g), geoms)
	return vo.collection(out, len(out))
Exemple #4
0
def withinbbox():
	o = json.load(request.body)
	vo_layers = o['layers']
	vo_bbox = o['bbox']
	
	point_min = Point(vo_bbox['xmin'],vo_bbox['ymin'])
	point_max = Point(vo_bbox['xmax'],vo_bbox['ymax'])
	
	bbox = Bbox(point_min, point_max)
	layers = map(lambda l: Layer(l['name'],l['srid']), vo_layers)
	group = Group(layers)
	
	layers_out = group.within_bbox(bbox)
	
	out = map(lambda l: vo.layer(l), layers_out)
	return vo.collection(out, len(out))
Exemple #5
0
def metadata():
	layer_name = request.GET.get('layerName')	
	l = Layer(layer_name)
	metadatas = map(lambda m: vo.metadata(m), l.metadata())
	return vo.collection(metadatas, len(metadatas))