diff options
author | Stefan Wildemann <metalstrolch@users.noreply.github.com> | 2020-06-21 22:48:53 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-06-21 22:48:53 +0200 |
commit | 567521f2f80c707225ec8e2a7f5fe4c677fd6013 (patch) | |
tree | dd7a33b7a47e5d51ec8e8ae98bbdb34ff6642f9f | |
parent | ef8b9ae8901178cdb521dcc6dcc55abbbf09e693 (diff) | |
download | navit-567521f2f80c707225ec8e2a7f5fe4c677fd6013.tar.gz |
fix:maptool:better map aerodroms and military areas (#1022)
* fix:maptool:better map aerodroms and military areas
This commit uses more complex rule set to map aerodromes and military
landuses depending on tag combination avoiding duplication of the area
in binfile.
For example military airports are quite often tagged:
landuse=military
military=airfield
aeroway=aerodrome
which caused the airport to be tripled in map. This is now resolved.
* Enhancement:layout_car:add stripesto military areas
* Fix:maptool:treat archaeological_site limes special
archaeological_site tag is used on way despite outruled by OSM wiki on
limes archaeological site. But there is a special tagging scheme for
Limes. Use that to fix rendering of Limes in map.
-rw-r--r-- | navit/item_def.h | 1 | ||||
-rw-r--r-- | navit/maptool/osm.c | 17 | ||||
-rw-r--r-- | navit/navit_layout_car_dark_shipped.xml | 12 | ||||
-rw-r--r-- | navit/navit_layout_car_shipped.xml | 12 | ||||
-rw-r--r-- | navit/textures/diagonal-stripes-gray.svg | 70 |
5 files changed, 106 insertions, 6 deletions
diff --git a/navit/item_def.h b/navit/item_def.h index b82d1907d..82f49d2a0 100644 --- a/navit/item_def.h +++ b/navit/item_def.h @@ -528,6 +528,7 @@ ITEM(former_itinerary) ITEM(former_itinerary_part) ITEM(cliff) ITEM(sports_track) +ITEM(archaeological_site) /* Area */ ITEM2(0xc0000000,area) ITEM2(0xc0000001,area_unspecified) diff --git a/navit/maptool/osm.c b/navit/maptool/osm.c index cbe13cc6f..288a227be 100644 --- a/navit/maptool/osm.c +++ b/navit/maptool/osm.c @@ -581,6 +581,9 @@ static char *attrmap= { "w aerialway=chair_lift lift_chair\n" "w aerialway=drag_lift lift_drag\n" "w aeroway=aerodrome poly_airport\n" + /* airport wins over military landuse and specifier if given */ + "w aeroway=aerodrome,landuse=military poly_airfield\n" + "w aeroway=aerodrome,landuse=military,military=* poly_airfield\n" "w aeroway=apron poly_apron\n" "w aeroway=runway aeroway_runway\n" "w aeroway=taxiway aeroway_taxiway\n" @@ -675,6 +678,10 @@ static char *attrmap= { "w highway=unsurfaced track_gravelled\n" "w highway=steps steps\n" "w historic=archaeological_site poly_archaeological_site\n" + /* Albeit historic=archaeological_site should not be used on ways (only on areas) according to OSM wiki, + * it is at least done so for the Limes in germany. Luckily we can sort the Limes out as it has it's own + * tag scheme.*/ + "w historic=archaeological_site,site_type=fortification,fortification_type=limes archaeological_site\n" "w historic=battlefield poly_battlefield\n" "w historic=ruins poly_ruins\n" "w historic=town_gate poly_building\n" @@ -692,7 +699,15 @@ static char *attrmap= { "w landuse=greenfield poly_greenfield\n" "w landuse=industrial poly_industry\n" "w landuse=landfill poly_landfill\n" + /* landuse=military plus military tag */ "w landuse=military poly_military\n" + "w landuse=military,military=* poly_military\n" + "w landuse=military,military=airfield poly_airfield\n" + "w landuse=military,military=barracks poly_barracks\n" + "w landuse=military,military=danger_area poly_danger_area\n" + "w landuse=military,military=naval_base poly_naval_base\n" + "w landuse=military,military=range poly_range\n" + "w landuse=military,military=training_area poly_military_zone\n" "w landuse=meadow poly_meadow\n" "w landuse=plaza poly_plaza\n" "w landuse=quarry poly_quarry\n" @@ -729,11 +744,13 @@ static char *attrmap= { "w leisure=track sports_track\n" "w leisure=water_park poly_water_park\n" "w leisure=swimming_pool poly_swimming_pool\n" + /* military tag without further info */ "w military=airfield poly_airfield\n" "w military=barracks poly_barracks\n" "w military=danger_area poly_danger_area\n" "w military=naval_base poly_naval_base\n" "w military=range poly_range\n" + "w military=training_area poly_military_zone\n" "w natural=beach poly_beach\n" "w natural=coastline water_line\n" "w natural=fell poly_fell\n" diff --git a/navit/navit_layout_car_dark_shipped.xml b/navit/navit_layout_car_dark_shipped.xml index 1c8ef041c..80727d4ff 100644 --- a/navit/navit_layout_car_dark_shipped.xml +++ b/navit/navit_layout_car_dark_shipped.xml @@ -477,6 +477,10 @@ <polygon color="#1d2425"/> <text color="#55c4bd" background_color="#000000" text_size="5"/> </itemgra> + <itemgra item_types="archaeological_site" order="8-"> + <polyline color="#1d2222" width="3"/> + <text color="#55c4bd" background_color="#000000" text_size="8"/> + </itemgra> <itemgra item_types="poly_building" order="0-"> <polygon color="#1a1f21"/> <polyline color="#17191a"/> @@ -522,15 +526,17 @@ <polyline color="#18212599" width="10"/> <text color="#55c4bd" background_color="#000000" text_size="5"/> </itemgra> - <itemgra item_types="poly_military_zone" order="9-"> - <polygon color="#1a1e2044"/> + <itemgra item_types="poly_military_zone,poly_military" order="9-"> + <polygon color="#1a1e2044" src="diagonal-stripes-gray.png" w="16" h="16"/> + <polyline color="#191d1eb5" width="1"/> <text color="#55c4bd" background_color="#000000" text_size="5"/> </itemgra> <itemgra item_types="poly_airport" order="0-"> <polygon color="#1a1e2066"/> </itemgra> <itemgra item_types="poly_airfield" order="10-"> - <polygon color="#1e232566"/> + <polygon color="#1e232566" src="diagonal-stripes-gray.png" w="16" h="16"/> + <polyline color="#191d1eb5" width="1"/> <text color="#55c4bd" background_color="#000000" text_size="5"/> </itemgra> <itemgra item_types="poly_danger_area" order="8-"> diff --git a/navit/navit_layout_car_shipped.xml b/navit/navit_layout_car_shipped.xml index 0603fc40f..3c25259c1 100644 --- a/navit/navit_layout_car_shipped.xml +++ b/navit/navit_layout_car_shipped.xml @@ -477,6 +477,10 @@ <polygon color="#deddcc"/> <text text_size="5"/> </itemgra> + <itemgra item_types="archaeological_site" order="8-"> + <polyline color="#d9cfb6" width="3"/> + <text text_size="8"/> + </itemgra> <itemgra item_types="poly_building" order="0-"> <polygon color="#aaaaaa"/> <polyline color="#777777"/> @@ -522,15 +526,17 @@ <polyline color="#8cc1c899" width="10"/> <text text_size="5"/> </itemgra> - <itemgra item_types="poly_military_zone" order="9-"> - <polygon color="#a0a0a044"/> + <itemgra item_types="poly_military_zone,poly_military" order="9-"> + <polygon color="#a0a0a044" src="diagonal-stripes-gray.png" w="16" h="16"/> + <polyline color="#969696b5" width="1"/> <text text_size="5"/> </itemgra> <itemgra item_types="poly_airport" order="0-"> <polygon color="#a0a0a066"/> </itemgra> <itemgra item_types="poly_airfield" order="10-"> - <polygon color="#ecd3cf66"/> + <polygon color="#ecd3cf66" src="diagonal-stripes-gray.png" w="16" h="16"/> + <polyline color="#969696b5" width="1"/> <text text_size="5"/> </itemgra> <itemgra item_types="poly_danger_area" order="8-"> diff --git a/navit/textures/diagonal-stripes-gray.svg b/navit/textures/diagonal-stripes-gray.svg new file mode 100644 index 000000000..7b6858521 --- /dev/null +++ b/navit/textures/diagonal-stripes-gray.svg @@ -0,0 +1,70 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> + +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="16" + height="16" + viewBox="0 0 16 16" + version="1.1" + id="svg8" + inkscape:version="0.92.4 5da689c313, 2019-01-14" + sodipodi:docname="diagonal-stripes-gray.svg"> + <defs + id="defs2" /> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="31.678384" + inkscape:cx="7.1319523" + inkscape:cy="7.0756723" + inkscape:document-units="px" + inkscape:current-layer="layer1" + showgrid="false" + units="px" + inkscape:window-width="1889" + inkscape:window-height="1025" + inkscape:window-x="31" + inkscape:window-y="0" + inkscape:window-maximized="1" /> + <metadata + id="metadata5"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + <dc:title></dc:title> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Ebene 1" + inkscape:groupmode="layer" + id="layer1" + transform="translate(0,93.566687)"> + <path + style="fill:none;stroke:#969696;stroke-width:1.0015748;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.70980394;opacity:1" + d="m 0,-81.566687 12,-12" + id="path817" + inkscape:connector-curvature="0" + sodipodi:nodetypes="cc" /> + <path + style="fill:none;stroke:#969696;stroke-width:1.0015748;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.70980394;opacity:1" + d="m 12,-77.566687 4,-4" + id="path821" + inkscape:connector-curvature="0" + sodipodi:nodetypes="cc" /> + </g> +</svg> |