def _build_query(self, geohash, q_filter: str): """ Returns the URL to download the data, which is required to build the tile with the specified geohash. :param geohash: str :param q_filter: str """ bbox_str = "%s" % BoundingBox.from_geohash(geohash) query = '?data=[out:json];way%s%s->.ways;node(w.ways)->.nodes;.nodes out body; .ways out;' % ( bbox_str, q_filter) # adding this will also download the POIs in the region # TODO: make it configuration to download pois query += 'node%s["amenity"];out;' % (bbox_str) return query
def _build_query(self, geohash, q_filter: str): """ Returns the URL to download the data, which is required to build the tile with the specified geohash. The intersections of ways are determined on server-side. :param geohash: str :param q_filter: str """ bbox_str = "%s" % BoundingBox.from_geohash(geohash) query = '?data=[out:json];way%s%s->.ways;node(w.ways)->.nodes;relation.nodes->.intersections;foreach.ways->.w((' \ '.ways; - .w;)->.otherWays;node(w.w)->.currentWayNodes;node(' \ 'w.otherWays)->.otherWayNodes;node.currentWayNodes.otherWayNodes->.currentIntersections;(' \ '.intersections; .currentIntersections;)->.intersections;);.intersections out count;.intersections ' \ 'out ids;.nodes out body; .ways out geom;' % (bbox_str, q_filter) return query