Exemple #1
0
 def _create_barrier_obstacles(self, intersecting_lines, buffer_m):
     """ returns geometries for line obstacles, e.g. barriers"""
     tag_filter = self.config['tag-filter']['barrier']
     buffer_distance = utils.meters_to_degrees(buffer_m)
     barrier_obstacles = filter(
         lambda line: configuration.filter_tags(line['tags'], tag_filter),
         intersecting_lines)
     buffered_obstacles = map(
         lambda l: l['geometry'].buffer(buffer_distance,
                                        cap_style=CAP_STYLE.flat),
         barrier_obstacles)
     return buffered_obstacles
Exemple #2
0
 def _is_relevant_node(self, node):
     return node.tags.get("level", "0") == "0" and \
         node.tags.get("layer", "0") == "0" and \
         configuration.filter_tags(node.tags, self.tag_filters['point_obstacle'])
Exemple #3
0
 def _is_plaza(self, area):
     return configuration.filter_tags(area.tags, self.tag_filters['plaza'])
Exemple #4
0
 def _is_relevant_way(self, way):
     return not way.is_closed() and \
         "highway" in way.tags or \
         way.tags.get("railway") == "tram" or \
         configuration.filter_tags(way.tags, self.tag_filters['barrier'])