From edef3a69f20dd1b59c1731ee7fc57fa1567f9b19 Mon Sep 17 00:00:00 2001 From: Sergey Vartanov Date: Sun, 20 Dec 2015 17:08:23 +0300 Subject: [PATCH] User coloring. --- README.md | 17 +- data/tags.yml | 13 +- doc/grid.png | Bin 27728 -> 29244 bytes doc/map.png | Bin 83769 -> 94045 bytes doc/readme.moi | 7 +- engine/mapper.py | 571 +++++++++++++++++++++++-------------------- engine/osm_reader.py | 42 ++-- engine/ui.py | 72 +++--- icons/icons.svg | 70 +++++- 9 files changed, 465 insertions(+), 327 deletions(-) diff --git a/README.md b/README.md index c26b3e6..c4df0a5 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,7 @@ -Röntgen project focuses on displaying every [OpenStreetMap](http://openstreetmap.org) data tag on the map. + + +Röntgen project focuses on displaying every \[OpenStreetMap\](http://openstreetmap.org) data tag on the map. Why do we need yet another map style? ------------------------------------- @@ -8,7 +11,7 @@ It is actually not just another map style since it is **not** *a map for users* Map generation -------------- -![Sample map](doc/map.png) +!\[Sample map\](doc/map.png) **Requirements**: Python 2.7. @@ -28,13 +31,13 @@ There are simple Python renderer that generates SVG map from OpenStreetMap data. -bbox, --boundary-box -<longitude 1>,<longitude 2>,<latitude 1>,<latitude 2> (decimal float) +,,, (decimal float) Boundary box to draw -s, --size -<width>,<height> (pixels) +, (pixels) Result image size @@ -45,11 +48,13 @@ Icon set If tag is drawable it is displayed using icon combination and colors. -All icons are under [CC BY 4.0](http://creativecommons.org/licenses/by/4.0/) license. So, do whatever you want but give appropriate credit. +All icons are under \[CC BY 4.0\](http://creativecommons.org/licenses/by/4.0/) license. So, do whatever you want but give appropriate credit. Double size: -![Icons](doc/grid.png) +!\[Icons\](doc/grid.png) Feel free to request new icons via issues for whatever you want to see on the map. No matter how frequently the tag is used in OpenStreetMap since final goal is to cover all tags. However, common used tags have priority, other things being equal. + + diff --git a/data/tags.yml b/data/tags.yml index c398b91..898bd89 100644 --- a/data/tags.yml +++ b/data/tags.yml @@ -220,12 +220,21 @@ tags: color: deciduous - tags: {natural: tree, leaf_cycle: evergreen} color: evergreen + + # Tree genus + +- tags: {natural: tree, genus: Betula} + icon: [betula] + color: tree + + # Tree over icons + - tags: {natural: tree, denotation: urban} over_icon: [urban_tree_pot] - under_icon: [tree, broadleaved, needleleaved] + under_icon: [tree, broadleaved, needleleaved, betula] - tags: {natural: tree, denotation: avenue} over_icon: [avenue_tree] - under_icon: [tree, broadleaved, needleleaved] + under_icon: [tree, broadleaved, needleleaved, betula] # Entrance diff --git a/doc/grid.png b/doc/grid.png index 4df36889172232bc163a46d56d52d0c1781853ec..ed9327ce20e2f6a81b927225371a32a950252620 100644 GIT binary patch literal 29244 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 UT=%2!q({mD%|jZgdo6ta3lrLXX8-^I literal 27728 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 literal 83769 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%0ADpTzix)5DNJzc-R;ZP7#KgKndYI%uHG~b}y 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 LQst?#S>XQx^B!V$ diff --git a/doc/readme.moi b/doc/readme.moi index 0d0b21b..80338ee 100644 --- a/doc/readme.moi +++ b/doc/readme.moi @@ -1,6 +1,6 @@ Röntgen project focuses on displaying every \href {http://openstreetmap.org} {OpenStreetMap} data tag on the map. -\2 {Why do we need yet another map style?} +\2 {Why do we need yet another map style?} {map_style} It is actually not just another map style since it is \b {not} \i {a map for users} but \i {map for OpenStreetMap contributors}. Suppose, you spent time adding colors for building walls, benches and shelters for bus stops but they do not represented on the map. Röntgen helps to display all changes you made. @@ -15,7 +15,7 @@ There are simple Python renderer that generates SVG map from OpenStreetMap data. \code {python mapper.py -i -o } -\3 {Options} +\3 {Options} {options} \table { @@ -32,7 +32,7 @@ There are simple Python renderer that generates SVG map from OpenStreetMap data. } } -\2 {Icon set} +\2 {Icon set} {icons} If tag is drawable it is displayed using icon combination and colors. @@ -43,3 +43,4 @@ Double size: \image {doc/grid.png} {Icons} Feel free to request new icons via issues for whatever you want to see on the map. No matter how frequently the tag is used in OpenStreetMap since final goal is to cover all tags. However, common used tags have priority, other things being equal. + diff --git a/engine/mapper.py b/engine/mapper.py index 22e696d..108ba3a 100644 --- a/engine/mapper.py +++ b/engine/mapper.py @@ -27,7 +27,8 @@ sys.path.append('../lib') import svg from vector import Vector -background_color = 'DDDDDD' +background_color = 'DDDDDD' # 'DDDDDD' +outline_color = 'FFFFFF' beach_color = 'F0E0C0' building_color = 'EEEEEE' # 'D0D0C0' building_border_color = 'C4C4C4' # 'AAAAAA' @@ -86,8 +87,10 @@ prefix_to_write = set(['addr', 'contact', 'name', 'operator', 'wikipedia', # To draw 'species', 'taxon', 'genus']) -tags_to_skip = set(['note', 'layer', 'source', 'building:part', 'fixme', 'comment', - 'FIXME', 'source_ref', 'naptan:verified:note', 'building:levels']) +tags_to_skip = set(['note', 'layer', 'source', 'building:part', 'fixme', + 'comment', 'FIXME', 'source_ref', 'naptan:verified:note', + 'building:levels', 'ref:opendataparis:adresse', + 'ref:opendataparis:geo_point_2d', 'created_by']) prefix_to_skip = set(['source']) @@ -144,7 +147,6 @@ def draw_point_shape(name, x, y, fill): def draw_point_outline(shape, x, y, fill, size=16, xx=0, yy=0): x = int(float(x)) y = int(float(y)) - outline_fill = 'FFFFFF' opacity = 0.5 r = int(fill[0:2], 16) g = int(fill[2:4], 16) @@ -154,8 +156,8 @@ def draw_point_outline(shape, x, y, fill, size=16, xx=0, yy=0): outline_fill = '000000' opacity = 0.3 output_file.write('\n') @@ -181,7 +183,7 @@ def point(k, v, x, y, fill, text_y): text = text.encode('utf-8') draw_text(text, x, float(y) + text_y + 18, '734A08') -def construct_text(tags): +def construct_text(tags, processed): for key in tags: tags[key] = tags[key].replace('"', '"') texts = [] @@ -193,13 +195,13 @@ def construct_text(tags): tags.pop('name', None) if 'name:ru' in tags: if not name: - name = tags['name'] - tags.pop('name', None) + name = tags['name:ru'] + tags.pop('name:ru', None) tags.pop('name:ru', None) if 'name:en' in tags: if not name: - name = tags['name'] - tags.pop('name', None) + name = tags['name:en'] + tags.pop('name:en', None) tags.pop('name:en', None) if 'alt_name' in tags: if alt_name: @@ -239,8 +241,8 @@ def construct_text(tags): else: addr = '' street = tags['addr:street'] - if street[:6] == 'улица ': - street = 'ул. ' + street[6:] + if street.startswith('улица '): + street = 'ул. ' + street[len('улица '):] addr += street tags.pop('addr:street', None) if 'addr:housenumber' in tags: @@ -280,7 +282,7 @@ def construct_text(tags): texts.append({'text': tags[k], 'fill': '444444'}) tags.pop(k) for tag in tags: - if to_write(tag): + if to_write(tag) and not (tag in processed): #texts.append({'text': tag + ': ' + tags[tag]}) texts.append({'text': tags[tag]}) return texts @@ -298,6 +300,7 @@ def draw_raw_ways(): way = way_map[way_id] draw_path(way['nodes'], 'stroke:#FFFFFF;fill:none;stroke-width:0.2;') + def line_center(node_ids): ma = Vector() mi = Vector(10000, 10000) @@ -311,244 +314,276 @@ def line_center(node_ids): return Vector((ma.x + mi.x) / 2.0, (ma.y + mi.y) / 2.0) +def get_float(string): + try: + return float(string) + except ValueError: + return 0 + + +def get_user_color(user): + if user == '': + return '000000' + rgb = hex(abs(hash(options.seed + user)))[-6:] + r = int(rgb[0:2], 16) + g = int(rgb[2:4], 16) + b = int(rgb[4:6], 16) + c = (r + g + b) / 3. + cc = 0 + r = r * (1 - cc) + c * cc + g = g * (1 - cc) + c * cc + b = b * (1 - cc) + c * cc + h = hex(int(r))[2:] + hex(int(g))[2:] + hex(int(b))[2:] + return '0' * (6 - len(h)) + h + + def construct_ways(drawing): for way_id in way_map: way = way_map[way_id] - construct_way(drawing, way['nodes'], way['tags'], None) + user = way['user'] if 'user' in way else '' + construct_way(drawing, way['nodes'], way['tags'], None, user) -def construct_way(drawing, nodes, tags, path): - is_area = None + +def construct_way(drawing, nodes, tags, path, user): + is_area = None + if nodes: + is_area = nodes[0] == nodes[-1] + layer = 0 + if 'layer' in tags: + layer = get_float(tags['layer']) + if nodes: + c = line_center(nodes) + user_color = get_user_color(user) + if options.user_coloring: + drawing['ways'].append({'kind': 'way', 'nodes': nodes, 'path': path, + 'style': 'fill:none;stroke:#' + user_color + ';stroke-width:1.5;'}) + return + if 'natural' in tags: + v = tags['natural'] + style = 'stroke:none;' + if v == 'wood': + style += 'fill:#' + wood_color + ';' + layer += 0.2 + elif v == 'scrub': + style += 'fill:#' + wood_color + ';' + layer += 0.2 + elif v == 'sand': + style += 'fill:#' + sand_color + ';' + layer += 0.1 + elif v == 'beach': + style += 'fill:#' + beach_color + ';' + layer += 0.1 + elif v == 'desert': + style += 'fill:#' + desert_color + ';' + layer += 0.1 + elif v == 'forest': + style += 'fill:#' + wood_color + ';' + layer += 0.2 + elif v == 'tree_row': + style += 'fill:none;stroke:#' + wood_color + ';stroke-width:5;' + layer += 0.2 + elif v == 'water': + style = 'fill:#' + water_color + ';stroke:#' + \ + water_border_color + ';stroke-width:1.0;' + layer += 0.2 + drawing['ways'].append({'kind': 'way', 'nodes': nodes, 'layer': layer, + 'priority': 50, 'style': style, 'path': path}) + if 'landuse' in tags: + style = 'fill:none;stroke:none;' + if tags['landuse'] == 'grass': + style = 'fill:#' + grass_color + ';stroke:#' + grass_border_color + ';' + layer += 0.1 + elif tags['landuse'] == 'conservation': + style = 'fill:#' + grass_color + ';stroke:none;' + layer += 0.1 + elif tags['landuse'] == 'forest': + style = 'fill:#' + wood_color + ';stroke:none;' + layer += 0.2 + elif tags['landuse'] == 'garages': + style = 'fill:#' + parking_color + ';stroke:none;' + layer += 0.2 + shapes, fill, processed = \ + process.get_icon(tags, scheme, '444444') + if nodes: + drawing['nodes'].append({'shapes': shapes, 'tags': tags, + 'x': c.x, 'y': c.y, 'color': fill, 'path': path, + 'processed': processed}) + elif tags['landuse'] == 'construction': + layer += 0.1 + style = 'fill:#' + construction_color + ';stroke:none;' + elif tags['landuse'] in ['residential', 'commercial']: + return + drawing['ways'].append({'kind': 'way', 'nodes': nodes, 'layer': layer, + 'priority': 50, 'style': style, 'path': path}) + if 'building' in tags: + style = 'fill:none;stroke:none;' + text_y = 0 + layer += 0.6 + style = 'fill:#' + building_color + ';stroke:#' + \ + building_border_color + ';opacity:1.0;' + shapes, fill, processed = process.get_icon(tags, scheme, '444444') + if 'height' in tags: + layer += float(tags['height']) if nodes: - is_area = nodes[0] == nodes[-1] - layer = float(tags['layer']) if ('layer' in tags) else 0 - if nodes: - c = line_center(nodes) - if 'natural' in tags: - v = tags['natural'] - style = 'stroke:none;' - if v == 'wood': - style += 'fill:#' + wood_color + ';' - layer += 0.2 - elif v == 'scrub': - style += 'fill:#' + wood_color + ';' - layer += 0.2 - elif v == 'sand': - style += 'fill:#' + sand_color + ';' - layer += 0.1 - elif v == 'beach': - style += 'fill:#' + beach_color + ';' - layer += 0.1 - elif v == 'desert': - style += 'fill:#' + desert_color + ';' - layer += 0.1 - elif v == 'forest': - style += 'fill:#' + wood_color + ';' - layer += 0.2 - elif v == 'tree_row': - style += 'fill:none;stroke:#' + wood_color + ';stroke-width:5;' - layer += 0.2 - elif v == 'water': - style = 'fill:#' + water_color + ';stroke:#' + \ - water_border_color + ';stroke-width:1.0;' - layer += 0.2 - drawing['ways'].append({'kind': 'way', 'nodes': nodes, 'layer': layer, - 'priority': 50, 'style': style, 'path': path}) - if 'landuse' in tags: - style = 'fill:none;stroke:none;' - if tags['landuse'] == 'grass': - style = 'fill:#' + grass_color + ';stroke:#' + grass_border_color + ';' - layer += 0.1 - elif tags['landuse'] == 'conservation': - style = 'fill:#' + grass_color + ';stroke:none;' - layer += 0.1 - elif tags['landuse'] == 'forest': - style = 'fill:#' + wood_color + ';stroke:none;' - layer += 0.2 - elif tags['landuse'] == 'garages': - style = 'fill:#' + parking_color + ';stroke:none;' - layer += 0.2 - shapes, fill, processed = \ - process.get_icon(tags, scheme, '444444') - if nodes: - drawing['nodes'].append({'shapes': shapes, 'tags': tags, - 'x': c.x, 'y': c.y, 'color': fill, 'path': path, - 'processed': processed}) - elif tags['landuse'] == 'construction': - layer += 0.1 - style = 'fill:#' + construction_color + ';stroke:none;' - elif tags['landuse'] in ['residential', 'commercial']: - return - drawing['ways'].append({'kind': 'way', 'nodes': nodes, 'layer': layer, - 'priority': 50, 'style': style, 'path': path}) - if 'building' in tags: - style = 'fill:none;stroke:none;' - text_y = 0 - layer += 0.6 - style = 'fill:#' + building_color + ';stroke:#' + \ - building_border_color + ';opacity:1.0;' + drawing['nodes'].append({'shapes': shapes, 'x': c.x, 'y': c.y, + 'color': fill, 'priority': 1, 'processed': processed, + 'tags': tags, 'path': path}) + drawing['ways'].append({'kind': 'way', 'nodes': nodes, 'layer': layer, + 'priority': 50, 'style': style, 'path': path}) + if 'amenity' in tags: + style = 'fill:none;stroke:none;' + layer += 0.2 + if tags['amenity'] == 'parking': + style = 'fill:#' + parking_color + ';stroke:none;opacity:0.5;' shapes, fill, processed = process.get_icon(tags, scheme, '444444') - if 'height' in tags: - layer += float(tags['height']) if nodes: drawing['nodes'].append({'shapes': shapes, 'x': c.x, 'y': c.y, 'color': fill, 'priority': 1, 'processed': processed, 'tags': tags, 'path': path}) - drawing['ways'].append({'kind': 'way', 'nodes': nodes, 'layer': layer, - 'priority': 50, 'style': style, 'path': path}) - if 'amenity' in tags: - style = 'fill:none;stroke:none;' - layer += 0.2 - if tags['amenity'] == 'parking': - style = 'fill:#' + parking_color + ';stroke:none;opacity:0.5;' - shapes, fill, processed = process.get_icon(tags, scheme, '444444') - if nodes: - drawing['nodes'].append({'shapes': shapes, 'x': c.x, 'y': c.y, - 'color': fill, 'priority': 1, 'processed': processed, - 'tags': tags, 'path': path}) - drawing['ways'].append({'kind': 'way', 'nodes': nodes, 'layer': layer, - 'priority': 50, 'style': style, 'path': path}) - if 'waterway' in tags: - style = 'fill:none;stroke:none;' - layer += 0.2 - if tags['waterway'] == 'riverbank': - style = 'fill:#' + water_color + ';stroke:#' + \ - water_border_color + ';stroke-width:1.0;' - elif tags['waterway'] == 'river': - style = 'fill:none;stroke:#' + water_color + ';stroke-width:10.0;' - drawing['ways'].append({'kind': 'way', 'nodes': nodes, 'layer': layer, - 'priority': 50, 'style': style, 'path': path}) - if 'railway' in tags: - style = 'fill:none;stroke:none;' - layer += 0.45 - v = tags['railway'] - style = 'fill:none;stroke-dasharray:none;stroke-linejoin:round;' + \ - 'stroke-linecap:round;stroke-width:' - if v == 'subway': style += '10;stroke:#DDDDDD;' - if v in ['narrow_gauge', 'tram']: - style += '2;stroke:#000000;' + drawing['ways'].append({'kind': 'way', 'nodes': nodes, 'layer': layer, + 'priority': 50, 'style': style, 'path': path}) + if 'waterway' in tags: + style = 'fill:none;stroke:none;' + layer += 0.2 + if tags['waterway'] == 'riverbank': + style = 'fill:#' + water_color + ';stroke:#' + \ + water_border_color + ';stroke-width:1.0;' + elif tags['waterway'] == 'river': + style = 'fill:none;stroke:#' + water_color + ';stroke-width:10.0;' + drawing['ways'].append({'kind': 'way', 'nodes': nodes, 'layer': layer, + 'priority': 50, 'style': style, 'path': path}) + if 'railway' in tags: + style = 'fill:none;stroke:none;' + layer += 0.45 + v = tags['railway'] + style = 'fill:none;stroke-dasharray:none;stroke-linejoin:round;' + \ + 'stroke-linecap:round;stroke-width:' + if v == 'subway': style += '10;stroke:#DDDDDD;' + if v in ['narrow_gauge', 'tram']: + style += '2;stroke:#000000;' + else: + return + drawing['ways'].append({'kind': 'way', 'nodes': nodes, 'layer': layer, + 'priority': 50, 'style': style, 'path': path}) + if 'highway' in tags: + style = 'fill:none;stroke:none;' + layer += 0.4 + v = tags['highway'] + if 'tunnel' in tags and tags['tunnel'] == 'yes': + style = 'fill:none;stroke:#FFFFFF;stroke-dasharray:none;' + \ + 'stroke-linejoin:round;stroke-linecap:round;stroke-width:10;' + drawing['ways'].append({'kind': 'way', 'nodes': nodes, + 'layer': layer - 100, 'priority': 50, 'style': style, + 'path': path}) + + style = 'fill:none;stroke:#' + road_border_color + \ + ';stroke-dasharray:none;' + \ + 'stroke-linejoin:round;stroke-linecap:round;stroke-width:' + if v == 'motorway': style += '30' + elif v == 'trunk': style += '25' + elif v == 'primary': style += '20;stroke:#' + primary_border_color + elif v == 'secondary': style += '13' + elif v == 'tertiary': style += '25' + elif v == 'unclassified': style += '17' + elif v == 'residential': style += '17' + elif v == 'service': + if 'service' in tags and tags['service'] == 'parking_aisle': + style += '7' else: - return - drawing['ways'].append({'kind': 'way', 'nodes': nodes, 'layer': layer, - 'priority': 50, 'style': style, 'path': path}) - if 'highway' in tags: - style = 'fill:none;stroke:none;' - layer += 0.4 - v = tags['highway'] - if 'tunnel' in tags and tags['tunnel'] == 'yes': - style = 'fill:none;stroke:#FFFFFF;stroke-dasharray:none;' + \ - 'stroke-linejoin:round;stroke-linecap:round;stroke-width:10;' - drawing['ways'].append({'kind': 'way', 'nodes': nodes, - 'layer': layer - 100, 'priority': 50, 'style': style, - 'path': path}) - - style = 'fill:none;stroke:#' + road_border_color + \ - ';stroke-dasharray:none;' + \ - 'stroke-linejoin:round;stroke-linecap:round;stroke-width:' - if v == 'motorway': style += '30' - elif v == 'trunk': style += '25' - elif v == 'primary': style += '20;stroke:#' + primary_border_color - elif v == 'secondary': style += '13' - elif v == 'tertiary': style += '25' - elif v == 'unclassified': style += '17' - elif v == 'residential': style += '17' - elif v == 'service': - if 'service' in tags and tags['service'] == 'parking_aisle': - style += '7' - else: - style += '11' - elif v == 'track': style += '3' - elif v in ['footway', 'pedestrian', 'cycleway']: style += '3;stroke:#' + foot_border_color - else: style = None - if style: - style += ';' - drawing['ways'].append({'kind': 'way', 'nodes': nodes, - 'layer': layer - 0.1, 'priority': 50, 'style': style, - 'path': path}) - - style = 'fill:none;stroke:#FFFFFF;stroke-linecap:round;' + \ - 'stroke-linejoin:round;stroke-width:' - if v == 'motorway': style += '28' - elif v == 'trunk': style += '23' - elif v == 'primary': style += '19;stroke:#' + primary_color - elif v == 'secondary': style += '11' - elif v == 'tertiary': style += '23' - elif v == 'unclassified': style += '15' - elif v == 'residential': style += '15' - elif v == 'service': - if 'service' in tags and tags['service'] == 'parking_aisle': - style += '5' - else: - style += '9' - elif v == 'cycleway': - style += '1;stroke-dasharray:8,2;istroke-linecap:butt;' + \ - 'stroke:#' + cycle_color - elif v in ['footway', 'pedestrian']: - if 'area' in tags and tags['area'] == 'yes': - style += '1;stroke:none;fill:#DDDDDD' - else: - style += '1.5;stroke-dasharray:8,2;stroke-linecap:butt;' + \ - 'stroke:#' + foot_color - elif v == 'steps': - style += '5;stroke-dasharray:1,2;stroke-linecap:butt;' + \ - 'stroke:#' + foot_color - elif v == 'path': - style += '1;stroke-dasharray:5,5;stroke-linecap:butt;' + \ - 'stroke:#' + foot_color + style += '11' + elif v == 'track': style += '3' + elif v in ['footway', 'pedestrian', 'cycleway']: style += '3;stroke:#' + foot_border_color + else: style = None + if style: style += ';' - drawing['ways'].append({'kind': 'way', 'nodes': nodes, 'layer': layer, - 'priority': 50, 'style': style, 'path': path}) - if 'access' in tags and tags['access'] == 'private': - drawing['ways'].append({'kind': 'way', 'nodes': nodes, - 'layer': layer + 0.1, 'priority': 50, 'path': path, - 'style': 'fill:none;' + \ - 'stroke:#' + private_access_color + ';' + \ - 'stroke-linecap:butt;' + \ - 'stroke-width:10;stroke-dasharray:1,5;' + \ - 'opacity:0.4;'}) - if 'leisure' in tags: - style = 'fill:none;stroke:none;' - layer += 0.2 - if tags['leisure'] == 'playground': - style = 'fill:#' + playground_color + ';opacity:0.2;' - if nodes: - draw_point_shape('toy_horse', c.x, c.y, '444444') - elif tags['leisure'] == 'garden': - style = 'fill:#' + grass_color + ';' - elif tags['leisure'] == 'pitch': - style = 'fill:#' + playground_color + ';opacity:0.2;' - elif tags['leisure'] == 'park': - return + drawing['ways'].append({'kind': 'way', 'nodes': nodes, + 'layer': layer - 0.1, 'priority': 50, 'style': style, + 'path': path}) + + style = 'fill:none;stroke:#FFFFFF;stroke-linecap:round;' + \ + 'stroke-linejoin:round;stroke-width:' + if v == 'motorway': style += '28' + elif v == 'trunk': style += '23' + elif v == 'primary': style += '19;stroke:#' + primary_color + elif v == 'secondary': style += '11' + elif v == 'tertiary': style += '23' + elif v == 'unclassified': style += '15' + elif v == 'residential': style += '15' + elif v == 'service': + if 'service' in tags and tags['service'] == 'parking_aisle': + style += '5' else: - style = 'fill:#FF0000;opacity:0.2;' - drawing['ways'].append({'kind': 'way', 'nodes': nodes, 'layer': layer, - 'priority': 50, 'style': style, 'path': path}) - if 'barrier' in tags: - style = 'fill:none;stroke:none;' - layer += 0.5 - if tags['barrier'] == 'hedge': - style += 'fill:none;stroke:#' + wood_color + ';stroke-width:4;' - elif tags['barrier'] == 'fense': - style += 'fill:none;stroke:#000000;stroke-width:1;opacity:0.4;' - elif tags['barrier'] == 'kerb': - style += 'fill:none;stroke:#000000;stroke-width:1;opacity:0.2;' + style += '9' + elif v == 'cycleway': + style += '1;stroke-dasharray:8,2;istroke-linecap:butt;' + \ + 'stroke:#' + cycle_color + elif v in ['footway', 'pedestrian']: + if 'area' in tags and tags['area'] == 'yes': + style += '1;stroke:none;fill:#DDDDDD' else: - style += 'fill:none;stroke:#000000;stroke-width:1;opacity:0.3;' - drawing['ways'].append({'kind': 'way', 'nodes': nodes, 'layer': layer, - 'priority': 50, 'style': style, 'path': path}) - if 'border' in tags: - style = 'fill:none;stroke:none;' - style += 'fill:none;stroke:#FF0000;stroke-width:0.5;' + \ - 'stroke-dahsarray:10,20;' - drawing['ways'].append({'kind': 'way', 'nodes': nodes, 'layer': layer, - 'priority': 50, 'style': style, 'path': path}) - if 'area:highway' in tags: - style = 'fill:none;stroke:none;' - if tags['area:highway'] == 'yes': - style += 'fill:#FFFFFF;stroke:#DDDDDD;stroke-width:1;' - drawing['ways'].append({'kind': 'way', 'nodes': nodes, 'layer': layer, - 'priority': 50, 'style': style, 'path': path}) - #drawing['ways'].append({'kind': 'way', 'nodes': nodes, 'layer': layer, - # 'priority': 50, 'style': style, 'path': path}) + style += '1.5;stroke-dasharray:8,2;stroke-linecap:butt;' + \ + 'stroke:#' + foot_color + elif v == 'steps': + style += '5;stroke-dasharray:1,2;stroke-linecap:butt;' + \ + 'stroke:#' + foot_color + elif v == 'path': + style += '1;stroke-dasharray:5,5;stroke-linecap:butt;' + \ + 'stroke:#' + foot_color + style += ';' + drawing['ways'].append({'kind': 'way', 'nodes': nodes, 'layer': layer, + 'priority': 50, 'style': style, 'path': path}) + if 'access' in tags and tags['access'] == 'private': + drawing['ways'].append({'kind': 'way', 'nodes': nodes, + 'layer': layer + 0.1, 'priority': 50, 'path': path, + 'style': 'fill:none;' + \ + 'stroke:#' + private_access_color + ';' + \ + 'stroke-linecap:butt;' + \ + 'stroke-width:10;stroke-dasharray:1,5;' + \ + 'opacity:0.4;'}) + if 'leisure' in tags: + style = 'fill:none;stroke:none;' + layer += 0.2 + if tags['leisure'] == 'playground': + style = 'fill:#' + playground_color + ';opacity:0.2;' + if nodes: + draw_point_shape('toy_horse', c.x, c.y, '444444') + elif tags['leisure'] == 'garden': + style = 'fill:#' + grass_color + ';' + elif tags['leisure'] == 'pitch': + style = 'fill:#' + playground_color + ';opacity:0.2;' + elif tags['leisure'] == 'park': + return + else: + style = 'fill:#FF0000;opacity:0.2;' + drawing['ways'].append({'kind': 'way', 'nodes': nodes, 'layer': layer, + 'priority': 50, 'style': style, 'path': path}) + if 'barrier' in tags: + style = 'fill:none;stroke:none;' + layer += 0.5 + if tags['barrier'] == 'hedge': + style += 'fill:none;stroke:#' + wood_color + ';stroke-width:4;' + elif tags['barrier'] == 'fense': + style += 'fill:none;stroke:#000000;stroke-width:1;opacity:0.4;' + elif tags['barrier'] == 'kerb': + style += 'fill:none;stroke:#000000;stroke-width:1;opacity:0.2;' + else: + style += 'fill:none;stroke:#000000;stroke-width:1;opacity:0.3;' + drawing['ways'].append({'kind': 'way', 'nodes': nodes, 'layer': layer, + 'priority': 50, 'style': style, 'path': path}) + if 'border' in tags: + style = 'fill:none;stroke:none;' + style += 'fill:none;stroke:#FF0000;stroke-width:0.5;' + \ + 'stroke-dahsarray:10,20;' + drawing['ways'].append({'kind': 'way', 'nodes': nodes, 'layer': layer, + 'priority': 50, 'style': style, 'path': path}) + if 'area:highway' in tags: + style = 'fill:none;stroke:none;' + if tags['area:highway'] == 'yes': + style += 'fill:#FFFFFF;stroke:#DDDDDD;stroke-width:1;' + drawing['ways'].append({'kind': 'way', 'nodes': nodes, 'layer': layer, + 'priority': 50, 'style': style, 'path': path}) + #drawing['ways'].append({'kind': 'way', 'nodes': nodes, 'layer': layer, + # 'priority': 50, 'style': style, 'path': path}) def glue_ways(ways): @@ -616,7 +651,7 @@ def construct_relations(drawing): way.reverse() path = get_path(way) p += path + ' ' - construct_way(drawing, None, tags, p) + construct_way(drawing, None, tags, p, '') # Nodes drawing @@ -636,6 +671,8 @@ def no_draw(key): return False def to_write(key): + if key in tags_to_skip: + return False if key in tags_to_write: return True for prefix in prefix_to_write: @@ -665,21 +702,25 @@ def draw_shapes(shapes, overlap, points, x, y, fill, show_missed_tags, tags, draw_point_shape(shape, x + xxx, y, fill) xxx += 16 - write_tags = construct_text(tags) + if options.draw_captions: + write_tags = construct_text(tags, processed) - for text_struct in write_tags: - fill = text_struct['fill'] if 'fill' in text_struct else '444444' - size = text_struct['size'] if 'size' in text_struct else 10 - text_y += size + 1 - wr(text_struct['text'], x, y, fill, text_y, size=size) + for text_struct in write_tags: + fill = text_struct['fill'] if 'fill' in text_struct else '444444' + size = text_struct['size'] if 'size' in text_struct else 10 + text_y += size + 1 + wr(text_struct['text'], x, y, fill, text_y, size=size) - if show_missed_tags: - for k in tags: - if not no_draw(k) and not k in processed: - point(k, tags[k], x, y, fill, text_y) - text_y += 10 + if show_missed_tags: + for k in tags: + if not no_draw(k) and not k in processed: + point(k, tags[k], x, y, fill, text_y) + text_y += 10 def construct_nodes(drawing): + """ + Draw nodes. + """ print 'Draw nodes...' start_time = datetime.datetime.now() @@ -704,6 +745,9 @@ def construct_nodes(drawing): shapes, fill, processed = process.get_icon(tags, scheme) + if options.user_coloring: + fill = get_user_color(node['user']) + for k in tags: if k in processed or no_draw(k): processed_tags += 1 @@ -772,22 +816,27 @@ options = ui.parse_options(sys.argv) if not options: sys.exit(1) -input_file_name = options['input_file_name'] +input_file_name = options.input_file_name if not os.path.isfile(input_file_name): print 'Fatal: no such file: ' + input_file_name + '.' sys.exit(1) -node_map, way_map, relation_map = osm_reader.parse_osm_file(input_file_name, - parse_ways=options['draw_ways'], parse_relations=options['draw_ways']) +full = False # Full keys getting -output_file = svg.SVG(open(options['output_file_name'], 'w+')) +if options.user_coloring: + full = True + +node_map, way_map, relation_map = osm_reader.parse_osm_file(input_file_name, + parse_ways=options.draw_ways, parse_relations=options.draw_ways, full=full) + +output_file = svg.SVG(open(options.output_file_name, 'w+')) w, h = 2650, 2650 if 'size' in options: - w = options['size'][0] - h = options['size'][1] + w = options.size[0] + h = options.size[1] output_file.begin(w, h) output_file.rect(0, 0, w, h, color=background_color) @@ -796,7 +845,7 @@ minimum = Geo(180, 180) maximum = Geo(-180, -180) if 'boundary_box' in options: - bb = options['boundary_box'] + bb = options.boundary_box min1 = Geo(bb[2], bb[0]) max1 = Geo(bb[3], bb[1]) @@ -823,20 +872,20 @@ icons = extract_icon.IconExtractor(icons_file_name) drawing = {'nodes': [], 'ways': []} -if options['draw_ways']: +if options.draw_ways: construct_ways(drawing) construct_relations(drawing) construct_nodes(drawing) -draw(drawing, show_missed_tags=options['show_missed_tags'], - overlap=options['overlap'], draw=options['draw_nodes']) +draw(drawing, show_missed_tags=options.show_missed_tags, + overlap=options.overlap, draw=options.draw_nodes) if flinger.space.x == 0: output_file.rect(0, 0, w, flinger.space.y, color='FFFFFF') output_file.rect(0, h - flinger.space.y, w, flinger.space.y, color='FFFFFF') -if options['show_index']: +if options.show_index: print min1.lon, max1.lon print min1.lat, max1.lat diff --git a/engine/osm_reader.py b/engine/osm_reader.py index 07ebf09..d8f6456 100644 --- a/engine/osm_reader.py +++ b/engine/osm_reader.py @@ -6,10 +6,11 @@ Author: Sergey Vartanov import datetime import ui +import re import sys -def parse_node_full(node_datae): +def parse_node_full(node_data): """ Parse full node parameters using regular expressions: id, visible, version, etc. For faster parsing use parse_node(). @@ -19,9 +20,10 @@ def parse_node_full(node_datae): 'lat="(.*)" lon="(.*)"', node_data) if m: return {'id': int(m.group(1)), 'visible': m.group(2), - 'changeset': m.group(3), 'timestamp': m.group(4), - 'user': m.group(5), 'uid': m.group(6), - 'lat': float(m.group(7)), 'lon': float(m.group(8))} + 'version': m.group(3), + 'changeset': m.group(4), 'timestamp': m.group(5), + 'user': m.group(6), 'uid': m.group(7), + 'lat': float(m.group(8)), 'lon': float(m.group(9))} else: print 'Error: cannot parse node data: ' + node_data + '.' return None @@ -46,8 +48,8 @@ def parse_way_full(way_data): 'timestamp="(.*)" user="(.*)" uid="(.*)"', way_data) if m: return {'id': m.group(1), 'visible': m.group(2), - 'changeset': m.group(3), 'timestamp': m.group(4), - 'user': m.group(5), 'uid': m.group(6)} + 'changeset': m.group(4), 'timestamp': m.group(5), + 'user': m.group(6), 'uid': m.group(7)} else: print 'Error: cannot parse way data: ' + way_data + '.' return None @@ -87,12 +89,12 @@ def parse_tag(text): return k, v def parse_osm_file(file_name, parse_nodes=True, parse_ways=True, - parse_relations=True): + parse_relations=True, full=False): start_time = datetime.datetime.now() try: node_map, way_map, relation_map = parse_osm_file_fast(file_name, parse_nodes=parse_nodes, parse_ways=parse_ways, - parse_relations=parse_relations) + parse_relations=parse_relations, full=full) except Exception as e: print e print '\033[31mFast parsing failed.\033[0m' @@ -107,7 +109,7 @@ def parse_osm_file(file_name, parse_nodes=True, parse_ways=True, input_file.close() print 'Done.' else: - return None, None, None + sys.exit(0) print 'File readed in ' + \ str(datetime.datetime.now() - start_time) + '.' print 'Nodes: ' + str(len(node_map)) + ', ways: ' + \ @@ -115,7 +117,7 @@ def parse_osm_file(file_name, parse_nodes=True, parse_ways=True, return node_map, way_map, relation_map def parse_osm_file_fast(file_name, parse_nodes=True, parse_ways=True, - parse_relations=True): + parse_relations=True, full=False): node_map = {} way_map = {} relation_map = {} @@ -141,10 +143,16 @@ def parse_osm_file_fast(file_name, parse_nodes=True, parse_ways=True, else: break if line[-3] == '/': - node = parse_node(line[7:-3]) + if not full: + node = parse_node(line[7:-3]) + else: + node = parse_node_full(line[7:-3]) node_map[node['id']] = node else: - element = parse_node(line[7:-2]) + if not full: + element = parse_node(line[7:-2]) + else: + element = parse_node_full(line[7:-2]) element['tags'] = {} elif line in [' \n', '\t\n']: node_map[element['id']] = element @@ -158,10 +166,16 @@ def parse_osm_file_fast(file_name, parse_nodes=True, parse_ways=True, else: break if line[-3] == '/': - way = parse_way(line[6:-3]) + if not full: + way = parse_way(line[6:-3]) + else: + way = parse_way_full(line[6:-3]) way_map[node['id']] = way else: - element = parse_way(line[6:-2]) + if not full: + element = parse_way(line[6:-2]) + else: + element = parse_way_full(line[6:-2]) element['tags'] = {} element['nodes'] = [] elif line in [' \n', '\t\n']: diff --git a/engine/ui.py b/engine/ui.py index 1249cee..1d51cad 100644 --- a/engine/ui.py +++ b/engine/ui.py @@ -4,45 +4,47 @@ Author: Sergey Vartanov (me@enzet.ru). """ +import argparse import sys def parse_options(args): - options = {'draw_nodes': True, 'draw_ways': False, 'overlap': 12, - 'show_missed_tags': False, 'show_index': False} - args = iter(args[1:]) - for arg in args: - if arg in ['-i', '--input']: - options['input_file_name'] = next(args) - elif arg in ['-o', '--output']: - options['output_file_name'] = next(args) - elif arg in ['-bbox', '--boundary-box']: - arg = next(args) - options['boundary_box'] = map(lambda x: float(x), arg.split(',')) - elif arg in ['-n', '--draw-nodes']: - options['draw_nodes'] = True - elif arg in ['-w', '--draw-ways']: - options['draw_ways'] = True - elif arg in ['-nn', '--no-draw-nodes']: - options['draw_nodes'] = False - elif arg in ['-nw', '--no-draw-ways']: - options['draw_ways'] = False - elif arg in ['--show-missed-tags']: - options['show_missed_tags'] = True - elif arg in ['--no-show-missed-tags']: - options['show_missed_tags'] = False - elif arg in ['--overlap']: - options['overlap'] = int(next(args)) - elif arg in ['-s', '--size']: - options['size'] = map(lambda x: float(x), next(args).split(',')) - elif arg in ['--show-index']: - options['show_index'] = True - elif arg in ['--no-show-index']: - options['show_index'] = False - else: - print 'Unknown option: ' + arg - return None - return options + + parser = argparse.ArgumentParser() + + parser.add_argument('-i', '--input', dest='input_file_name', + required=True) + parser.add_argument('-o', '--output', dest='output_file_name', + required=True) + parser.add_argument('-bbox', '--boundary-box', dest='boundary_box', + required=True) + parser.add_argument('-nn', '--no-draw-nodes', dest='draw_nodes', + action='store_false', default=True) + parser.add_argument('-nw', '--no-draw-ways', dest='draw_ways', + action='store_false', default=True) + parser.add_argument('-nc', '--no-draw-captions', dest='draw_captions', + action='store_false', default=True) + parser.add_argument('--show-missed-tags', dest='show_missed_tags', + action='store_true') + parser.add_argument('--no-show-missed-tags', dest='show_missed_tags', + action='store_false') + parser.add_argument('--overlap', dest='overlap', default=12, type=int) + parser.add_argument('-s', '--size', dest='size') + parser.add_argument('--show-index', dest='show_index', + action='store_true') + parser.add_argument('--no-show-index', dest='show_index', + action='store_false') + parser.add_argument('--user-coloring', dest='user_coloring', + action='store_true', default=False) + parser.add_argument('--seed', dest='seed', default='') + + arguments = parser.parse_args(args[1:]) + + arguments.boundary_box = \ + map(lambda x: float(x), arguments.boundary_box.split(',')) + arguments.size = map(lambda x: float(x), arguments.size.split(',')) + + return arguments def write_line(number, total): diff --git a/icons/icons.svg b/icons/icons.svg index 8a42e94..8e2dc6f 100644 --- a/icons/icons.svg +++ b/icons/icons.svg @@ -24,9 +24,9 @@ borderopacity="1.0" inkscape:pageopacity="0.0" inkscape:pageshadow="2" - inkscape:zoom="16" - inkscape:cx="191.13126" - inkscape:cy="368.67156" + inkscape:zoom="5.656854" + inkscape:cx="330.04973" + inkscape:cy="498.87454" inkscape:current-layer="layer1" inkscape:document-units="px" showgrid="true" @@ -36,8 +36,8 @@ inkscape:snap-bbox="true" inkscape:window-width="1425" inkscape:window-height="995" - inkscape:window-x="67" - inkscape:window-y="18" + inkscape:window-x="66" + inkscape:window-y="24" inkscape:window-maximized="0"> + + + + + + +