[gnome-maps] routes: Add roundabout support
- From: Jonas Danielsson <jonasdn src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-maps] routes: Add roundabout support
- Date: Mon, 11 Jan 2016 20:28:57 +0000 (UTC)
commit 89ec8fd4f3fafc80d0f3d6c658c165c132eb262e
Author: Prashant Tyagi <prashanttyagi221295 gmail com>
Date: Mon Jan 11 19:32:50 2016 +0530
routes: Add roundabout support
Add roundabout support to route service
https://bugzilla.gnome.org/show_bug.cgi?id=745242
data/icons/Makefile.am | 9 ++
..._32x32_maps-direction-roundabout-0-symbolic.svg | 82 ++++++++++++++++++++
...2x32_maps-direction-roundabout-135-symbolic.svg | 81 +++++++++++++++++++
...2x32_maps-direction-roundabout-180-symbolic.svg | 81 +++++++++++++++++++
...2x32_maps-direction-roundabout-225-symbolic.svg | 81 +++++++++++++++++++
...2x32_maps-direction-roundabout-270-symbolic.svg | 81 +++++++++++++++++++
...2x32_maps-direction-roundabout-315-symbolic.svg | 81 +++++++++++++++++++
...32x32_maps-direction-roundabout-45-symbolic.svg | 81 +++++++++++++++++++
...32x32_maps-direction-roundabout-90-symbolic.svg | 82 ++++++++++++++++++++
...ps_32x32_maps-direction-roundabout-symbolic.svg | 20 +++++
src/route.js | 33 +++++++-
src/routeService.js | 10 ++-
12 files changed, 715 insertions(+), 7 deletions(-)
---
diff --git a/data/icons/Makefile.am b/data/icons/Makefile.am
index 61f4325..f4fd634 100644
--- a/data/icons/Makefile.am
+++ b/data/icons/Makefile.am
@@ -25,6 +25,15 @@ private_icons = \
hicolor_apps_32x32_maps-direction-continue-symbolic.svg \
hicolor_apps_32x32_maps-direction-slightright-symbolic.svg \
hicolor_apps_32x32_maps-direction-right-symbolic.svg \
+ hicolor_apps_32x32_maps-direction-roundabout-symbolic.svg \
+ hicolor_apps_32x32_maps-direction-roundabout-0-symbolic.svg \
+ hicolor_apps_32x32_maps-direction-roundabout-45-symbolic.svg \
+ hicolor_apps_32x32_maps-direction-roundabout-90-symbolic.svg \
+ hicolor_apps_32x32_maps-direction-roundabout-135-symbolic.svg \
+ hicolor_apps_32x32_maps-direction-roundabout-180-symbolic.svg \
+ hicolor_apps_32x32_maps-direction-roundabout-225-symbolic.svg \
+ hicolor_apps_32x32_maps-direction-roundabout-270-symbolic.svg \
+ hicolor_apps_32x32_maps-direction-roundabout-315-symbolic.svg \
hicolor_apps_32x32_maps-direction-sharpright-symbolic.svg \
hicolor_apps_16x16_layers-button-symbolic.svg \
hicolor_apps_16x16_route-button-symbolic.svg \
diff --git a/data/icons/hicolor_apps_32x32_maps-direction-roundabout-0-symbolic.svg
b/data/icons/hicolor_apps_32x32_maps-direction-roundabout-0-symbolic.svg
new file mode 100644
index 0000000..1c429d1
--- /dev/null
+++ b/data/icons/hicolor_apps_32x32_maps-direction-roundabout-0-symbolic.svg
@@ -0,0 +1,82 @@
+<?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="32px"
+ height="32px"
+ id="svg13790"
+ version="1.1"
+ inkscape:version="0.91 r13725"
+ sodipodi:docname="direction-roundabout-360.svg"
+ inkscape:export-filename="/home/andreasn/SparkleShare/gnome-icons/maps-symbolic/direction-roundabout.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <defs
+ id="defs13792" />
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="11.313708"
+ inkscape:cx="-9.8326586"
+ inkscape:cy="6.8786964"
+ inkscape:current-layer="layer1"
+ showgrid="false"
+ inkscape:grid-bbox="true"
+ inkscape:document-units="px"
+ inkscape:snap-global="true"
+ inkscape:snap-nodes="false"
+ inkscape:snap-bbox="true"
+ inkscape:bbox-paths="true"
+ showguides="true"
+ inkscape:guide-bbox="true"
+ showborder="true"
+ inkscape:window-width="1920"
+ inkscape:window-height="1016"
+ inkscape:window-x="0"
+ inkscape:window-y="27"
+ inkscape:window-maximized="1"
+ inkscape:bbox-nodes="true">
+ <inkscape:grid
+ type="xygrid"
+ id="grid13798" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata13795">
+ <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
+ id="layer1"
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer">
+ <path
+
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#bebebe;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3.99999881;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-back
ground:accumulate"
+ d="m 16.154297,8 c 4.394589,0 8,3.60541 8,8 0,4.39459 -3.605411,8 -8,8 -4.394589,0
-8.0000001,-3.60541 -8.0000001,-8 0,-4.39459 3.6054111,-8 8.0000001,-8 z m 0,4 c -2.232829,0 -4,1.76717 -4,4
0,2.23283 1.767171,4 4,4 2.232829,0 4,-1.76717 4,-4 0,-2.23283 -1.767171,-4 -4,-4 z"
+ id="path4136-5-4-9-7-7-3"
+ inkscape:connector-curvature="0" />
+ <path
+
style="color:#000000;display:inline;overflow:visible;visibility:visible;fill:#bebebe;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;enable-background:accumulate"
+ d="m 15.99414,32 -5.01562,-6.99609 3.00195,0 0,-2.51563 4.00391,1.20899 0,1.30664 3.02734,0 z"
+ id="rect13805-3-4-8-8-8-7-2-9-0"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccc" />
+ </g>
+</svg>
diff --git a/data/icons/hicolor_apps_32x32_maps-direction-roundabout-135-symbolic.svg
b/data/icons/hicolor_apps_32x32_maps-direction-roundabout-135-symbolic.svg
new file mode 100644
index 0000000..3f4f0ea
--- /dev/null
+++ b/data/icons/hicolor_apps_32x32_maps-direction-roundabout-135-symbolic.svg
@@ -0,0 +1,81 @@
+<?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="32px"
+ height="32px"
+ id="svg13790"
+ version="1.1"
+ inkscape:version="0.91 r13725"
+ sodipodi:docname="roundabout-135.svg"
+ inkscape:export-filename="/home/andreasn/SparkleShare/gnome-icons/maps-symbolic/direction-roundabout.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <defs
+ id="defs13792" />
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="2.8284271"
+ inkscape:cx="-73.447909"
+ inkscape:cy="36.618372"
+ inkscape:current-layer="layer1"
+ showgrid="false"
+ inkscape:grid-bbox="true"
+ inkscape:document-units="px"
+ inkscape:snap-global="true"
+ inkscape:snap-nodes="false"
+ inkscape:snap-bbox="true"
+ inkscape:bbox-paths="true"
+ showguides="true"
+ inkscape:guide-bbox="true"
+ showborder="true"
+ inkscape:window-width="1920"
+ inkscape:window-height="1016"
+ inkscape:window-x="0"
+ inkscape:window-y="27"
+ inkscape:window-maximized="1"
+ inkscape:bbox-nodes="true">
+ <inkscape:grid
+ type="xygrid"
+ id="grid13798" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata13795">
+ <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
+ id="layer1"
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer">
+ <path
+
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:0.3;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#bebebe;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3.99999881;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-ba
ckground:accumulate"
+ d="m 16.060547,9.02539 c -4.394589,0 -8,3.60541 -8,8 0,4.39459 3.605411,8 8,8 4.394589,0 8,-3.60541
8,-8 0,-4.39459 -3.605411,-8 -8,-8 z m 0,4 c 2.232829,0 4,1.76717 4,4 0,2.23283 -1.767171,4 -4,4 -2.232829,0
-4,-1.76717 -4,-4 0,-2.23283 1.767171,-4 4,-4 z"
+ id="path4136-5-4-9-7"
+ inkscape:connector-curvature="0" />
+ <path
+
style="color:#000000;display:inline;overflow:visible;visibility:visible;fill:#bebebe;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;enable-background:accumulate"
+ d="m 28,5 -8.494141,1.40039 2.128907,2.12891 -2.550782,2.53711 a 2.0002,2.0002 0 0 0
-0.232422,3.09375 c 1.176924,1.14627 1.5347,2.87854 0.90625,4.39648 -0.628449,1.51794 -2.105289,2.48986
-3.748046,2.46875 a 2.0002,2.0002 0 0 0 -2.027344,2.1875 l 0,4.82227 4.003906,0 0,-3.26368 c
2.423278,-0.60481 4.48292,-2.30911 5.466797,-4.68554 0.982287,-2.3726 0.73062,-5.02905 -0.550781,-7.16797 l
1.554687,-1.56641 2.142578,2.14258 L 28,5 Z"
+ id="rect13805-3-4-8-8-8-7-2-9-98-8-5"
+ inkscape:connector-curvature="0" />
+ </g>
+</svg>
diff --git a/data/icons/hicolor_apps_32x32_maps-direction-roundabout-180-symbolic.svg
b/data/icons/hicolor_apps_32x32_maps-direction-roundabout-180-symbolic.svg
new file mode 100644
index 0000000..03c5744
--- /dev/null
+++ b/data/icons/hicolor_apps_32x32_maps-direction-roundabout-180-symbolic.svg
@@ -0,0 +1,81 @@
+<?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="32px"
+ height="32px"
+ id="svg13790"
+ version="1.1"
+ inkscape:version="0.91 r13725"
+ sodipodi:docname="direction-roundabout-180.svg"
+ inkscape:export-filename="/home/andreasn/SparkleShare/gnome-icons/maps-symbolic/direction-roundabout.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <defs
+ id="defs13792" />
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="7.9999999"
+ inkscape:cx="-8.9119311"
+ inkscape:cy="26.304937"
+ inkscape:current-layer="layer1"
+ showgrid="false"
+ inkscape:grid-bbox="true"
+ inkscape:document-units="px"
+ inkscape:snap-global="true"
+ inkscape:snap-nodes="false"
+ inkscape:snap-bbox="true"
+ inkscape:bbox-paths="true"
+ showguides="true"
+ inkscape:guide-bbox="true"
+ showborder="true"
+ inkscape:window-width="1920"
+ inkscape:window-height="1016"
+ inkscape:window-x="0"
+ inkscape:window-y="27"
+ inkscape:window-maximized="1"
+ inkscape:bbox-nodes="true">
+ <inkscape:grid
+ type="xygrid"
+ id="grid13798" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata13795">
+ <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
+ id="layer1"
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer">
+ <path
+
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:0.3;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#bebebe;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3.99999881;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-ba
ckground:accumulate"
+ d="m 15.93945,9.02539 c -4.39459,0 -8,3.60541 -8,8 0,4.39459 3.60541,8 8,8 4.39459,0 8,-3.60541 8,-8
0,-4.39459 -3.60541,-8 -8,-8 z m 0,4 c 2.23283,0 4,1.76717 4,4 0,2.23283 -1.76717,4 -4,4 -2.23283,0
-4,-1.76717 -4,-4 0,-2.23283 1.76717,-4 4,-4 z"
+ id="path4136-5"
+ inkscape:connector-curvature="0" />
+ <path
+
style="color:#000000;display:inline;overflow:visible;visibility:visible;fill:#bebebe;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;enable-background:accumulate"
+ d="m 15.99414,1 -5.01562,6.99609 3.00195,0 0,2.51563 a 2.0002,2.0002 0 0 0 1.95898,2.51367 c
2.22225,0 3.98561,1.75241 4,3.97461 0.0144,2.2222 -1.72716,3.99661 -3.94922,4.02539 a 2.0002,2.0002 0 0 0
-1.97656,2.14063 l 0,4.86914 4.00391,0 0,-3.29493 c 3.41751,-0.92897 5.94579,-4.07401 5.92187,-7.76562
-0.0237,-3.6678 -2.55911,-6.76404 -5.95507,-7.67188 l 0,-1.30664 3.02734,0 L 15.99414,1 Z"
+ id="rect13805-3-4-8-8-8-7-2-9"
+ inkscape:connector-curvature="0" />
+ </g>
+</svg>
diff --git a/data/icons/hicolor_apps_32x32_maps-direction-roundabout-225-symbolic.svg
b/data/icons/hicolor_apps_32x32_maps-direction-roundabout-225-symbolic.svg
new file mode 100644
index 0000000..3cfcbaa
--- /dev/null
+++ b/data/icons/hicolor_apps_32x32_maps-direction-roundabout-225-symbolic.svg
@@ -0,0 +1,81 @@
+<?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="32px"
+ height="32px"
+ id="svg13790"
+ version="1.1"
+ inkscape:version="0.91 r13725"
+ sodipodi:docname="direction-roundabout-225.svg"
+ inkscape:export-filename="/home/andreasn/SparkleShare/gnome-icons/maps-symbolic/direction-roundabout.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <defs
+ id="defs13792" />
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="2.8284271"
+ inkscape:cx="-36.077693"
+ inkscape:cy="36.618372"
+ inkscape:current-layer="layer1"
+ showgrid="false"
+ inkscape:grid-bbox="true"
+ inkscape:document-units="px"
+ inkscape:snap-global="true"
+ inkscape:snap-nodes="false"
+ inkscape:snap-bbox="true"
+ inkscape:bbox-paths="true"
+ showguides="true"
+ inkscape:guide-bbox="true"
+ showborder="true"
+ inkscape:window-width="1920"
+ inkscape:window-height="1016"
+ inkscape:window-x="0"
+ inkscape:window-y="27"
+ inkscape:window-maximized="1"
+ inkscape:bbox-nodes="true">
+ <inkscape:grid
+ type="xygrid"
+ id="grid13798" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata13795">
+ <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
+ id="layer1"
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer">
+ <path
+
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:0.3;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#bebebe;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3.99999881;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-ba
ckground:accumulate"
+ d="m 15.93945,9.02539 c -4.39459,0 -8,3.60541 -8,8 0,4.39459 3.60541,8 8,8 4.394592,0
8.000003,-3.60541 8.000003,-8 0,-4.39459 -3.605411,-8 -8.000003,-8 z m 0,4 c 2.23283,0 4,1.76717 4,4
0,2.23283 -1.76717,4 -4,4 -2.23283,0 -4,-1.76717 -4,-4 0,-2.23283 1.76717,-4 4,-4 z"
+ id="path4136-5-4-9"
+ inkscape:connector-curvature="0" />
+ <path
+
style="color:#000000;display:inline;overflow:visible;visibility:visible;fill:#bebebe;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;enable-background:accumulate"
+ d="m 4,5 1.40039,8.49414 2.14063,-2.14062 2.5996,2.61523 a 2.000528,2.000528 0 0 0 2.99024,0.20898 c
1.28895,-1.27051 3.2436,-1.52092 4.81055,-0.61523 1.56694,0.90569 2.324714,2.72353 1.86718,4.47461
-0.45751,1.75108 -2.00865,2.96484 -3.81836,2.98828 a 2.0002,2.0002 0 0 0 -1.97656,2.14063 l 0,4.86914
4.00391,0 0,-3.28516 c 2.72255,-0.73556 4.925689,-2.88265 5.662108,-5.70117 0.907891,-3.47481
-0.62887,-7.15199 -3.738278,-8.94922 -1.55472,-0.89862 -3.3192,-1.22257 -5.01563,-1.00586 -1.04227,0.13314
-2.05685,0.47331 -2.98242,1.00586 L 10.36523,8.5293 12.49414,6.40039 4,5 Z"
+ id="rect13805-3-4-8-8-8-7-2-9-98-8"
+ inkscape:connector-curvature="0" />
+ </g>
+</svg>
diff --git a/data/icons/hicolor_apps_32x32_maps-direction-roundabout-270-symbolic.svg
b/data/icons/hicolor_apps_32x32_maps-direction-roundabout-270-symbolic.svg
new file mode 100644
index 0000000..c5bcbf6
--- /dev/null
+++ b/data/icons/hicolor_apps_32x32_maps-direction-roundabout-270-symbolic.svg
@@ -0,0 +1,81 @@
+<?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="32px"
+ height="32px"
+ id="svg13790"
+ version="1.1"
+ inkscape:version="0.91 r13725"
+ sodipodi:docname="direction-roundabout-270.svg"
+ inkscape:export-filename="/home/andreasn/SparkleShare/gnome-icons/maps-symbolic/direction-roundabout.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <defs
+ id="defs13792" />
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="2.8284271"
+ inkscape:cx="-2.7372306"
+ inkscape:cy="36.618372"
+ inkscape:current-layer="layer1"
+ showgrid="false"
+ inkscape:grid-bbox="true"
+ inkscape:document-units="px"
+ inkscape:snap-global="true"
+ inkscape:snap-nodes="false"
+ inkscape:snap-bbox="true"
+ inkscape:bbox-paths="true"
+ showguides="true"
+ inkscape:guide-bbox="true"
+ showborder="true"
+ inkscape:window-width="1920"
+ inkscape:window-height="1016"
+ inkscape:window-x="0"
+ inkscape:window-y="27"
+ inkscape:window-maximized="1"
+ inkscape:bbox-nodes="true">
+ <inkscape:grid
+ type="xygrid"
+ id="grid13798" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata13795">
+ <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
+ id="layer1"
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer">
+ <path
+
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:0.3;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#bebebe;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3.99999881;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-ba
ckground:accumulate"
+ d="m 15.93945,9.02539 c -4.39459,0 -8,3.60541 -8,8 0,4.39459 3.60541,8 8,8 4.39459,0 8,-3.60541 8,-8
0,-4.39459 -3.60541,-8 -8,-8 z m 0,4 c 2.23283,0 4,1.76717 4,4 0,2.23283 -1.76717,4 -4,4 -2.23283,0
-4,-1.76717 -4,-4 0,-2.23283 1.76717,-4 4,-4 z"
+ id="path4136-5-4"
+ inkscape:connector-curvature="0" />
+ <path
+
style="color:#000000;display:inline;overflow:visible;visibility:visible;fill:#bebebe;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;enable-background:accumulate"
+ d="m 15.9043,9.02539 c -3.69969,0.016 -6.82237,2.58831 -7.70703,6.02539 l -1.24024,0 0,-3.04492
-6.99609,5.01562 6.99609,5.01758 0,-2.98242 3.04297,0 0,-0.006 a 2.0002,2.0002 0 0 0 1.93945,-2.02539 c
0,-2.22577 1.75668,-3.99039 3.98243,-4 2.22574,-0.01 3.99835,1.73916 4.01757,3.96484 0.0192,2.22569
-1.72363,4.00633 -3.94922,4.03516 a 2.0002,2.0002 0 0 0 -1.97656,2.14063 l 0,4.86914 4.00391,0 0,-3.29493 c
3.42389,-0.93026 5.95382,-4.08469 5.92187,-7.7832 -0.0378,-4.38126 -3.65377,-7.95056 -8.03515,-7.93164 z"
+ id="rect13805-3-4-8-8-8-7-2-9-98"
+ inkscape:connector-curvature="0" />
+ </g>
+</svg>
diff --git a/data/icons/hicolor_apps_32x32_maps-direction-roundabout-315-symbolic.svg
b/data/icons/hicolor_apps_32x32_maps-direction-roundabout-315-symbolic.svg
new file mode 100644
index 0000000..73fa4e1
--- /dev/null
+++ b/data/icons/hicolor_apps_32x32_maps-direction-roundabout-315-symbolic.svg
@@ -0,0 +1,81 @@
+<?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="32px"
+ height="32px"
+ id="svg13790"
+ version="1.1"
+ inkscape:version="0.91 r13725"
+ sodipodi:docname="roundabout-315.svg"
+ inkscape:export-filename="/home/andreasn/SparkleShare/gnome-icons/maps-symbolic/direction-roundabout.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <defs
+ id="defs13792" />
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="2.8284271"
+ inkscape:cx="-115.87432"
+ inkscape:cy="36.618372"
+ inkscape:current-layer="layer1"
+ showgrid="false"
+ inkscape:grid-bbox="true"
+ inkscape:document-units="px"
+ inkscape:snap-global="true"
+ inkscape:snap-nodes="false"
+ inkscape:snap-bbox="true"
+ inkscape:bbox-paths="true"
+ showguides="true"
+ inkscape:guide-bbox="true"
+ showborder="true"
+ inkscape:window-width="1920"
+ inkscape:window-height="1016"
+ inkscape:window-x="0"
+ inkscape:window-y="27"
+ inkscape:window-maximized="1"
+ inkscape:bbox-nodes="true">
+ <inkscape:grid
+ type="xygrid"
+ id="grid13798" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata13795">
+ <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
+ id="layer1"
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer">
+ <path
+
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:0.3;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#bebebe;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3.99999881;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-ba
ckground:accumulate"
+ d="m 15.939453,9.02539 c -4.394589,0 -8,3.60541 -8,8 0,4.39459 3.605411,8 8,8 4.394589,0 8,-3.60541
8,-8 0,-4.39459 -3.605411,-8 -8,-8 z m 0,4 c 2.232829,0 4,1.76717 4,4 0,2.23283 -1.767171,4 -4,4 -2.232829,0
-4,-1.76717 -4,-4 0,-2.23283 1.767171,-4 4,-4 z"
+ id="path4136-5-4-9-7-7"
+ inkscape:connector-curvature="0" />
+ <path
+
style="color:#000000;display:inline;overflow:visible;visibility:visible;fill:#bebebe;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;enable-background:accumulate"
+ d="m 16.140625,9.03125 c -2.672801,-0.002 -4.548389,1.05205 -5.876953,2.35547 -2.205805,2.22014
-2.881302,5.50381 -1.839844,8.37305 L 7.541016,20.64648 5.400391,18.50586 4,27 l 8.494141,-1.40039
-2.185547,-2.18555 1.833984,-1.96094 -0.002,-0.002 c 0.651051,-0.63804 0.788389,-1.63555 0.333984,-2.42579
-0.907577,-1.57197 -0.65239,-3.5307 0.626953,-4.81836 1.279348,-1.28765 3.236638,-1.55558 4.814454,-0.6582
1.577815,0.89738 2.349227,2.71682 1.896484,4.47461 -0.452743,1.75779 -2.007262,2.97844 -3.822266,3.00195
-1.375351,0.0111 -2.026131,1.07696 -1.976562,2.10547 l 0,4.9043 4.003906,0 0,-3.28711 C 20.74825,24.00941
22.956499,21.85179 23.6855,19.02143 24.583842,15.53359 23.025221,11.85281 19.894484,10.07221
18.720458,9.40448 17.429288,9.06236 16.140578,9.03119 Z"
+ id="rect13805-3-4-8-8-8-7-2-9-98-8-5-9"
+ inkscape:connector-curvature="0" />
+ </g>
+</svg>
diff --git a/data/icons/hicolor_apps_32x32_maps-direction-roundabout-45-symbolic.svg
b/data/icons/hicolor_apps_32x32_maps-direction-roundabout-45-symbolic.svg
new file mode 100644
index 0000000..b92d3e6
--- /dev/null
+++ b/data/icons/hicolor_apps_32x32_maps-direction-roundabout-45-symbolic.svg
@@ -0,0 +1,81 @@
+<?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="32px"
+ height="32px"
+ id="svg13790"
+ version="1.1"
+ inkscape:version="0.91 r13725"
+ sodipodi:docname="roundabout-45.svg"
+ inkscape:export-filename="/home/andreasn/SparkleShare/gnome-icons/maps-symbolic/direction-roundabout.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <defs
+ id="defs13792" />
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="2.8284271"
+ inkscape:cx="-125.58813"
+ inkscape:cy="34.345249"
+ inkscape:current-layer="layer1"
+ showgrid="false"
+ inkscape:grid-bbox="true"
+ inkscape:document-units="px"
+ inkscape:snap-global="true"
+ inkscape:snap-nodes="false"
+ inkscape:snap-bbox="true"
+ inkscape:bbox-paths="true"
+ showguides="true"
+ inkscape:guide-bbox="true"
+ showborder="true"
+ inkscape:window-width="1920"
+ inkscape:window-height="1016"
+ inkscape:window-x="0"
+ inkscape:window-y="27"
+ inkscape:window-maximized="1"
+ inkscape:bbox-nodes="true">
+ <inkscape:grid
+ type="xygrid"
+ id="grid13798" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata13795">
+ <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
+ id="layer1"
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer">
+ <path
+
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:0.3;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#bebebe;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3.99999881;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-ba
ckground:accumulate"
+ d="m 16.154297,9.02539 c 4.394589,0 8,3.60541 8,8 0,4.39459 -3.605411,8 -8,8 -4.394589,0
-8.0000001,-3.60541 -8.0000001,-8 0,-4.39459 3.6054111,-8 8.0000001,-8 z m 0,4 c -2.232829,0 -4,1.76717 -4,4
0,2.23283 1.767171,4 4,4 2.232829,0 4,-1.76717 4,-4 0,-2.23283 -1.767171,-4 -4,-4 z"
+ id="path4136-5-4-9-7-7-3"
+ inkscape:connector-curvature="0" />
+ <path
+
style="color:#000000;display:inline;overflow:visible;visibility:visible;fill:#bebebe;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;enable-background:accumulate"
+ d="M 21.212891,18.14453 A 2.0002,2.0002 0 0 0 19.5625,19.11914 c -0.738995,1.20259 -2.047602,1.92463
-3.458984,1.90625 a 2.0002,2.0002 0 0 0 -2.027344,2.17383 l 0,4.83594 4.003906,0 0,-3.2461 c
1.241341,-0.30851 2.389795,-0.91289 3.34961,-1.7539 l 0.355468,0.3789 -2.185547,2.18555 L 28.09375,27 l
-1.400391,-8.49414 -2.140625,2.14062 -1.625,-1.63476 a 2.0002,2.0002 0 0 0 -1.714843,-0.86719 z"
+ id="rect13805-3-4-8-8-8-7-2-9-98-8-5-9-0"
+ inkscape:connector-curvature="0" />
+ </g>
+</svg>
diff --git a/data/icons/hicolor_apps_32x32_maps-direction-roundabout-90-symbolic.svg
b/data/icons/hicolor_apps_32x32_maps-direction-roundabout-90-symbolic.svg
new file mode 100644
index 0000000..eb93b7b
--- /dev/null
+++ b/data/icons/hicolor_apps_32x32_maps-direction-roundabout-90-symbolic.svg
@@ -0,0 +1,82 @@
+<?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="32px"
+ height="32px"
+ id="svg13790"
+ version="1.1"
+ inkscape:version="0.91 r13725"
+ sodipodi:docname="direction-roundabout-90.svg"
+ inkscape:export-filename="/home/andreasn/SparkleShare/gnome-icons/maps-symbolic/direction-roundabout.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <defs
+ id="defs13792" />
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="7.9999999"
+ inkscape:cx="20.126651"
+ inkscape:cy="20.713054"
+ inkscape:current-layer="layer1"
+ showgrid="false"
+ inkscape:grid-bbox="true"
+ inkscape:document-units="px"
+ inkscape:snap-global="true"
+ inkscape:snap-nodes="false"
+ inkscape:snap-bbox="true"
+ inkscape:bbox-paths="true"
+ showguides="true"
+ inkscape:guide-bbox="true"
+ showborder="true"
+ inkscape:window-width="1920"
+ inkscape:window-height="1016"
+ inkscape:window-x="0"
+ inkscape:window-y="27"
+ inkscape:window-maximized="1"
+ inkscape:bbox-nodes="true">
+ <inkscape:grid
+ type="xygrid"
+ id="grid13798" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata13795">
+ <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
+ id="layer1"
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer">
+ <path
+
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:0.3;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#bebebe;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3.99999881;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-ba
ckground:accumulate"
+ d="m 15.93945,9.02539 c -4.39459,0 -8,3.60541 -8,8 0,4.39459 3.60541,8 8,8 4.39459,0 8,-3.60541 8,-8
0,-4.39459 -3.60541,-8 -8,-8 z m 0,4 c 2.23283,0 4,1.76717 4,4 0,2.23283 -1.76717,4 -4,4 -2.23283,0
-4,-1.76717 -4,-4 0,-2.23283 1.76717,-4 4,-4 z"
+ id="path4136-5-6"
+ inkscape:connector-curvature="0" />
+ <path
+
style="color:#000000;display:inline;overflow:visible;visibility:visible;fill:#bebebe;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;enable-background:accumulate"
+ d="m 24.99609,11.99023 0,3.04493 -2.67382,0 c -1.43712,0 -2.36664,1.01862 -2.38282,1.99023 0,2.21168
-1.73772,3.97135 -3.94922,4 -1.15255,0.0108 -2.05753,0.99087 -1.97656,2.14063 l 0,4.86914 4.00391,0
0,-3.28711 C 20.7862,23.99533 22.96613,21.7804 23.68164,19 l 1.31445,0 0,3.02344 6.99805,-5.01758 z"
+ id="rect13805-3-4-8-8-8-7-2-9-9"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccccccc" />
+ </g>
+</svg>
diff --git a/data/icons/hicolor_apps_32x32_maps-direction-roundabout-symbolic.svg
b/data/icons/hicolor_apps_32x32_maps-direction-roundabout-symbolic.svg
new file mode 100644
index 0000000..1178640
--- /dev/null
+++ b/data/icons/hicolor_apps_32x32_maps-direction-roundabout-symbolic.svg
@@ -0,0 +1,20 @@
+<?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="32px" height="32px" id="svg13790"
version="1.1" inkscape:version="0.91 r13725" sodipodi:docname="direction-roundabout-generic.svg"
inkscape:export-filename="/home/andreasn/SparkleShare/gnome-icons/maps-symbolic/direction-roundabout.png"
inkscape:export-xdpi="90" inkscape:export-ydpi="90">
+ <defs id="defs13792"/>
+ <sodipodi:namedview id="base" pagecolor="#ffffff" bordercolor="#666666" borderopacity="1.0"
inkscape:pageopacity="0.0" inkscape:pageshadow="2" inkscape:zoom="16" inkscape:cx="17.723175"
inkscape:cy="19.451697" inkscape:current-layer="layer1" showgrid="false" inkscape:grid-bbox="true"
inkscape:document-units="px" inkscape:snap-global="true" inkscape:snap-nodes="false"
inkscape:snap-bbox="true" inkscape:bbox-paths="true" showguides="true" inkscape:guide-bbox="true"
showborder="true" inkscape:window-width="1920" inkscape:window-height="1016" inkscape:window-x="0"
inkscape:window-y="27" inkscape:window-maximized="1" inkscape:bbox-nodes="true">
+ <inkscape:grid type="xygrid" id="grid13798"/>
+ </sodipodi:namedview>
+ <metadata id="metadata13795">
+ <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/>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g id="layer1" inkscape:label="Layer 1" inkscape:groupmode="layer">
+ <path
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#bebebe;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3.99999881;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-b
ackground:accumulate" d="M 14 4 L 14 8.2578125 C 11.206553 8.9876483 8.995202 11.204465 8.265625 14 L 4 14 L
4 18 L 8.2578125 18 C 8.9876483 20.793448 11.204465 23.004798 14 23.734375 L 14 28 L 18 28 L 18 23.734375 C
20.795535 23.004798 23.012352 20.793448 23.742188 18 L 28 18 L 28 14 L 23.742188 14 C 23.012352 11.206552
20.795535 8.9952018 18 8.265625 L 18 4 L 14 4 z M 16 12 C 18.232829 12 20 13.76717 20 16 C 20 18.23283
18.232829 20 16 20 C 13.767171 20 12 18.23283 12 16 C 12 13.76717 13.767171 12 16 12 z "
id="path4136-5-4-9-7-7-3"/>
+ </g>
+</svg>
\ No newline at end of file
diff --git a/src/route.js b/src/route.js
index 50a36a5..61df3ae 100644
--- a/src/route.js
+++ b/src/route.js
@@ -34,6 +34,7 @@ const TurnPointType = {
SHARP_RIGHT: 6,
END: 7,
VIA: 8,
+ ROUNDABOUT: 9,
// This one is not in GraphHopper, so choose
// a reasonably unlikely number for this
@@ -79,12 +80,12 @@ Utils.addSignalMethods(Route.prototype);
const TurnPoint = new Lang.Class({
Name: 'TurnPoint',
- _init: function({ coordinate, type, distance, instruction }) {
+ _init: function({ coordinate, type, distance, instruction, turnAngle }) {
this.coordinate = coordinate;
this._type = type;
this.distance = distance;
this.instruction = instruction;
- this.iconName = this._getIconName();
+ this.iconName = this._getIconName(turnAngle);
},
get type() {
@@ -97,7 +98,7 @@ const TurnPoint = new Lang.Class({
|| this._type === TurnPointType.END;
},
- _getIconName: function() {
+ _getIconName: function(turnAngle) {
switch(this._type) {
case TurnPointType.SHARP_LEFT: return 'maps-direction-sharpleft-symbolic';
case TurnPointType.LEFT: return 'maps-direction-left-symbolic';
@@ -109,7 +110,33 @@ const TurnPoint = new Lang.Class({
case TurnPointType.START: return 'maps-point-start-symbolic';
case TurnPointType.VIA: return 'maps-point-end-symbolic';
case TurnPointType.END: return 'maps-point-end-symbolic';
+ case TurnPointType.ROUNDABOUT: return this._getRoundaboutIconName(turnAngle);
default: return '';
}
+ },
+
+ _getRoundaboutIconName: function(turnAngle) {
+ /*
+ * To map turnAngle with closest roundabout
+ * turning angle symbol available. The Algorithm
+ * calculates the minimum of absolute difference
+ * between turnAngle and the angle of which map
+ * has turning symbols.
+ */
+ let minDiff = 2 * Math.PI;
+ let angle = 0;
+ if (turnAngle === null)
+ return 'maps-direction-roundabout-symbolic';
+
+ if (turnAngle < 0)
+ turnAngle += 2 * Math.PI;
+
+ for (let x = 0; x < 360; x += 45) {
+ if (Math.abs(turnAngle - (x / 180) * Math.PI) < minDiff) {
+ minDiff = Math.abs(turnAngle - (x / 180) * Math.PI);
+ angle = x;
+ }
+ }
+ return 'maps-direction-roundabout-' + angle + '-symbolic';
}
});
diff --git a/src/routeService.js b/src/routeService.js
index c1d2880..8424c5e 100644
--- a/src/routeService.js
+++ b/src/routeService.js
@@ -166,24 +166,26 @@ const GraphHopper = new Lang.Class({
type: Route.TurnPointType.START,
distance: 0,
instruction: _("Start!"),
- time: 0
+ time: 0,
+ turnAngle: 0
});
let rest = instructions.map(this._createTurnPoint.bind(this, path));
return [startPoint].concat(rest);
},
- _createTurnPoint: function(path, { text, distance, time, interval, sign }) {
+ _createTurnPoint: function(path, { text, distance, time, interval, sign, turn_angle }) {
return new Route.TurnPoint({ coordinate: path[interval[0]],
type: this._createTurnPointType(sign),
distance: distance,
instruction: text,
- time: time });
+ time: time,
+ turnAngle: turn_angle});
},
_createTurnPointType: function(sign) {
let type = sign + 3;
let min = Route.TurnPointType.SHARP_LEFT;
- let max = Route.TurnPointType.VIA;
+ let max = Route.TurnPointType.ROUNDABOUT;
if (min <= type && type <= max)
return type;
else
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]