changed to leaflet for real map
Signed-off-by: Pascal Syma <pascal@syma.dev>
This commit is contained in:
+68
-46
@@ -8,6 +8,9 @@
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>Editor</title>
|
||||
<link crossorigin="" href="https://unpkg.com/leaflet@1.7.1/dist/leaflet.css"
|
||||
integrity="sha512-xodZBNTC5n17Xt2atTPuE1HxjVMSvLVW9ocqUKLsCC5CXdbqCmblAshOMAS6/keqq/sMZMZ19scR4PsZChSR7A=="
|
||||
rel="stylesheet"/>
|
||||
<style>
|
||||
body {
|
||||
margin: 0;
|
||||
@@ -19,16 +22,26 @@
|
||||
-ms-user-select: none; /* IE10+ */
|
||||
}
|
||||
|
||||
div {
|
||||
#st {
|
||||
position: fixed;
|
||||
right: 0;
|
||||
margin: 8px;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
#map {
|
||||
width: 80%;
|
||||
height: 100vh;
|
||||
}
|
||||
</style>
|
||||
<script crossorigin=""
|
||||
integrity="sha512-XQoYMqMTK8LvdxXYG3nZ448hOEQiglfqkJs1NOQV44cWnUrBc8PkAOcXy20w0vlaXaVUearIOBhiXZ5V3ynxwA=="
|
||||
src="https://unpkg.com/leaflet@1.7.1/dist/leaflet.js"></script>
|
||||
<link href="https://unpkg.com/leaflet-routing-machine@3.2.12/dist/leaflet-routing-machine.css" rel="stylesheet"/>
|
||||
<script src="https://unpkg.com/leaflet-routing-machine@3.2.12/dist/leaflet-routing-machine.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
<div>
|
||||
<div id="st">
|
||||
<table id="stops">
|
||||
<thead>
|
||||
<tr>
|
||||
@@ -41,17 +54,27 @@
|
||||
</table>
|
||||
<label><textarea id="inp" rows="3"></textarea></label>
|
||||
</div>
|
||||
<canvas id="canvas"></canvas>
|
||||
<div id="map"></div>
|
||||
|
||||
<script>
|
||||
let route;
|
||||
Number.prototype.mod = function (n) {
|
||||
return ((this % n) + n) % n;
|
||||
};
|
||||
let stops = [];
|
||||
let i = 0;
|
||||
let canvas = document.getElementById("canvas");
|
||||
canvas.focus()
|
||||
let ctx = canvas.getContext("2d");
|
||||
let map = L.map('map').setView([53.01839765015724, 8.636455535888674], 12);
|
||||
L.tileLayer('https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', {
|
||||
attribution: '© <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors'
|
||||
}).addTo(map);
|
||||
let line = L.polyline([], {
|
||||
color: '#000',
|
||||
weight: 3
|
||||
}).addTo(map)
|
||||
|
||||
|
||||
let plan, p, a;
|
||||
|
||||
|
||||
let tbl = document.getElementById("stops");
|
||||
let inp = document.getElementById("inp");
|
||||
@@ -67,22 +90,18 @@
|
||||
})
|
||||
inp.value = ''
|
||||
i = 0;
|
||||
canvas.focus();
|
||||
draw()
|
||||
})
|
||||
let map = new Image();
|
||||
map.onload = () => {
|
||||
canvas.width = map.width;
|
||||
canvas.height = map.height
|
||||
|
||||
draw()
|
||||
|
||||
canvas.addEventListener('contextmenu', ev => {
|
||||
map.on('contextmenu', ev => {
|
||||
// right
|
||||
ev.preventDefault();
|
||||
|
||||
stops.splice(i, 0, {
|
||||
name: null,
|
||||
x: ev.offsetX,
|
||||
y: ev.offsetY
|
||||
x: ev.latlng.lat,
|
||||
y: ev.latlng.lng
|
||||
})
|
||||
|
||||
i = (i + 1).mod(stops.length)
|
||||
@@ -90,12 +109,16 @@
|
||||
return false;
|
||||
}, false);
|
||||
|
||||
canvas.addEventListener('click', ev => {
|
||||
map.on('click', ev => {
|
||||
// left
|
||||
ev.preventDefault();
|
||||
|
||||
stops[i].x = ev.offsetX
|
||||
stops[i].y = ev.offsetY
|
||||
stops[i].x = ev.latlng.lat
|
||||
stops[i].y = ev.latlng.lng
|
||||
|
||||
if (stops[i].marker)
|
||||
stops[i].marker.setLatLng(ev.latlng)
|
||||
else if (stops[i].name)
|
||||
stops[i].marker = L.marker(ev.latlng).addTo(map)
|
||||
|
||||
|
||||
i = (i + 1).mod(stops.length)
|
||||
@@ -118,18 +141,34 @@
|
||||
// enter
|
||||
let output = stops.map(s => `${s.x},${s.y}` + (s.name ? `,,${s.name}` : '')).join('\n')
|
||||
|
||||
console.log(output)
|
||||
// console.log(output)
|
||||
|
||||
|
||||
let out = a._selectedRoute.coordinates.map(c => `${c.lat},${c.lng}`)
|
||||
a._selectedRoute.waypointIndices.forEach((j, index) => {
|
||||
out[j] += `,${stops[index].name}`
|
||||
})
|
||||
|
||||
console.log(out.join('\n'))
|
||||
|
||||
} else if (e.which === 191) {
|
||||
// #
|
||||
|
||||
|
||||
plan = stops.map(s => L.latLng(s.x, s.y))
|
||||
|
||||
p = L.Routing.plan(plan)
|
||||
|
||||
a = L.Routing.control({
|
||||
plan: p
|
||||
}).addTo(map);
|
||||
}
|
||||
})
|
||||
}
|
||||
map.src = "map.png";
|
||||
|
||||
|
||||
function draw() {
|
||||
ctx.clearRect(0, 0, canvas.width, canvas.height);
|
||||
ctx.drawImage(map, 0, 0)
|
||||
tbl.getElementsByTagName('tbody')[0].innerHTML = "";
|
||||
let last = null;
|
||||
let newLine = [];
|
||||
stops.forEach((s, index) => {
|
||||
const tr = document.createElement('tr');
|
||||
const tdName = document.createElement('td');
|
||||
@@ -145,28 +184,11 @@
|
||||
|
||||
if (s.y === null && s.x === null)
|
||||
return;
|
||||
if (s.name !== null) {
|
||||
ctx.beginPath()
|
||||
ctx.arc(s.x, s.y, 5, 0, 2 * Math.PI);
|
||||
ctx.lineWidth = 1;
|
||||
ctx.strokeStyle = index === i ? '#f00' : '#000'
|
||||
ctx.stroke()
|
||||
ctx.closePath()
|
||||
ctx.fillStyle = '#000'
|
||||
ctx.textAlign = "center";
|
||||
ctx.fillText(s.name, s.x, s.y - 10);
|
||||
}
|
||||
if (last) {
|
||||
ctx.beginPath()
|
||||
ctx.moveTo(last.x, last.y)
|
||||
ctx.lineWidth = 3;
|
||||
ctx.lineTo(s.x, s.y)
|
||||
ctx.strokeStyle = '#000'
|
||||
ctx.stroke()
|
||||
ctx.closePath()
|
||||
}
|
||||
last = s;
|
||||
|
||||
newLine.push(L.latLng(s.x, s.y))
|
||||
})
|
||||
|
||||
line.setLatLngs(newLine)
|
||||
}
|
||||
</script>
|
||||
</body>
|
||||
|
||||
+6
-50
@@ -8,36 +8,6 @@
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>Title</title>
|
||||
<style>
|
||||
body {
|
||||
margin: 0;
|
||||
height: 0;
|
||||
}
|
||||
|
||||
#buttons {
|
||||
position: fixed;
|
||||
margin: 8px;
|
||||
}
|
||||
|
||||
#settings {
|
||||
position: fixed;
|
||||
margin: 8px;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
}
|
||||
|
||||
#bus {
|
||||
position: fixed;
|
||||
right: 0;
|
||||
margin: 8px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
button {
|
||||
width: 30px;
|
||||
height: 30px;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div id="buttons">
|
||||
@@ -45,28 +15,14 @@
|
||||
<button id="play">></button>
|
||||
<button id="real">></button>
|
||||
<button id="plus">+1</button>
|
||||
<button disabled id="display" style="width: 70px">00:00</button>
|
||||
<button disabled id="display">00:00</button>
|
||||
<button id="showStops">Show Stops</button>
|
||||
<label title="Minutes per Minute">
|
||||
<input id="mpm" max="10000" min="1" type="number" value="10">
|
||||
</label>
|
||||
</div>
|
||||
<table id="bus">
|
||||
<thead>
|
||||
<tr>
|
||||
<th style="width: 200px">Next Stop</th>
|
||||
<th>Line</th>
|
||||
<th>Offset</th>
|
||||
<th>Delay</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
</tbody>
|
||||
</table>
|
||||
<div id="settings">
|
||||
<label style="display: grid">
|
||||
<input id="mpm" max="10000" min="1" type="number" value="180"> Minutes per Minute
|
||||
</label>
|
||||
<label>
|
||||
<input id="showMap" type="checkbox"> Show Map?
|
||||
</label>
|
||||
</div>
|
||||
<canvas id="canvas"></canvas>
|
||||
<div id="map"></div>
|
||||
</body>
|
||||
</html>
|
||||
Generated
+234
@@ -1585,6 +1585,12 @@
|
||||
"@types/node": "*"
|
||||
}
|
||||
},
|
||||
"@types/geojson": {
|
||||
"version": "7946.0.7",
|
||||
"resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.7.tgz",
|
||||
"integrity": "sha512-wE2v81i4C4Ol09RtsWFAqg3BUitWbHSpSlIo+bNdsCJijO9sjme+zm+73ZMCa/qMC8UEERxzGbvmr1cffo2SiQ==",
|
||||
"dev": true
|
||||
},
|
||||
"@types/glob": {
|
||||
"version": "7.1.3",
|
||||
"resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.1.3.tgz",
|
||||
@@ -1607,6 +1613,15 @@
|
||||
"integrity": "sha512-3c+yGKvVP5Y9TYBEibGNR+kLtijnj7mYrXRg+WpFb2X9xm04g/DXYkfg4hmzJQosc9snFNUPkbYIhu+KAm6jJw==",
|
||||
"dev": true
|
||||
},
|
||||
"@types/leaflet": {
|
||||
"version": "1.5.17",
|
||||
"resolved": "https://registry.npmjs.org/@types/leaflet/-/leaflet-1.5.17.tgz",
|
||||
"integrity": "sha512-2XYq9k6kNjhNI7PaTz8Rdxcc8Vzwu97OaS9CtcrTxnTSxFUGwjlGjTDvhTLJU+JRSfZ4lBwGcl0SjZHALdVr6g==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@types/geojson": "*"
|
||||
}
|
||||
},
|
||||
"@types/minimatch": {
|
||||
"version": "3.0.3",
|
||||
"resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz",
|
||||
@@ -3419,6 +3434,71 @@
|
||||
"integrity": "sha1-ojD2T1aDEOFJgAmUB5DsmVRbyn4=",
|
||||
"dev": true
|
||||
},
|
||||
"css-loader": {
|
||||
"version": "4.3.0",
|
||||
"resolved": "https://registry.npmjs.org/css-loader/-/css-loader-4.3.0.tgz",
|
||||
"integrity": "sha512-rdezjCjScIrsL8BSYszgT4s476IcNKt6yX69t0pHjJVnPUTDpn4WfIpDQTN3wCJvUvfsz/mFjuGOekf3PY3NUg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"camelcase": "^6.0.0",
|
||||
"cssesc": "^3.0.0",
|
||||
"icss-utils": "^4.1.1",
|
||||
"loader-utils": "^2.0.0",
|
||||
"postcss": "^7.0.32",
|
||||
"postcss-modules-extract-imports": "^2.0.0",
|
||||
"postcss-modules-local-by-default": "^3.0.3",
|
||||
"postcss-modules-scope": "^2.2.0",
|
||||
"postcss-modules-values": "^3.0.0",
|
||||
"postcss-value-parser": "^4.1.0",
|
||||
"schema-utils": "^2.7.1",
|
||||
"semver": "^7.3.2"
|
||||
},
|
||||
"dependencies": {
|
||||
"camelcase": {
|
||||
"version": "6.0.0",
|
||||
"resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.0.0.tgz",
|
||||
"integrity": "sha512-8KMDF1Vz2gzOq54ONPJS65IvTUaB1cHJ2DMM7MbPmLZljDH1qpzzLsWdiN9pHh6qvkRVDTi/07+eNGch/oLU4w==",
|
||||
"dev": true
|
||||
},
|
||||
"json5": {
|
||||
"version": "2.1.3",
|
||||
"resolved": "https://registry.npmjs.org/json5/-/json5-2.1.3.tgz",
|
||||
"integrity": "sha512-KXPvOm8K9IJKFM0bmdn8QXh7udDh1g/giieX0NLCaMnb4hEiVFqnop2ImTXCc5e0/oHz3LTqmHGtExn5hfMkOA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"minimist": "^1.2.5"
|
||||
}
|
||||
},
|
||||
"loader-utils": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.0.tgz",
|
||||
"integrity": "sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"big.js": "^5.2.2",
|
||||
"emojis-list": "^3.0.0",
|
||||
"json5": "^2.1.2"
|
||||
}
|
||||
},
|
||||
"schema-utils": {
|
||||
"version": "2.7.1",
|
||||
"resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz",
|
||||
"integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@types/json-schema": "^7.0.5",
|
||||
"ajv": "^6.12.4",
|
||||
"ajv-keywords": "^3.5.2"
|
||||
}
|
||||
},
|
||||
"semver": {
|
||||
"version": "7.3.2",
|
||||
"resolved": "https://registry.npmjs.org/semver/-/semver-7.3.2.tgz",
|
||||
"integrity": "sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==",
|
||||
"dev": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"css-select": {
|
||||
"version": "1.2.0",
|
||||
"resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz",
|
||||
@@ -3437,6 +3517,12 @@
|
||||
"integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==",
|
||||
"dev": true
|
||||
},
|
||||
"cssesc": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz",
|
||||
"integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==",
|
||||
"dev": true
|
||||
},
|
||||
"csv-loader": {
|
||||
"version": "3.0.3",
|
||||
"resolved": "https://registry.npmjs.org/csv-loader/-/csv-loader-3.0.3.tgz",
|
||||
@@ -5178,6 +5264,15 @@
|
||||
"safer-buffer": ">= 2.1.2 < 3"
|
||||
}
|
||||
},
|
||||
"icss-utils": {
|
||||
"version": "4.1.1",
|
||||
"resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-4.1.1.tgz",
|
||||
"integrity": "sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"postcss": "^7.0.14"
|
||||
}
|
||||
},
|
||||
"ieee754": {
|
||||
"version": "1.1.13",
|
||||
"resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz",
|
||||
@@ -5221,6 +5316,12 @@
|
||||
"integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==",
|
||||
"dev": true
|
||||
},
|
||||
"indexes-of": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz",
|
||||
"integrity": "sha1-8w9xbI4r00bHtn0985FVZqfAVgc=",
|
||||
"dev": true
|
||||
},
|
||||
"infer-owner": {
|
||||
"version": "1.0.4",
|
||||
"resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz",
|
||||
@@ -5717,6 +5818,12 @@
|
||||
"integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==",
|
||||
"dev": true
|
||||
},
|
||||
"leaflet": {
|
||||
"version": "1.7.1",
|
||||
"resolved": "https://registry.npmjs.org/leaflet/-/leaflet-1.7.1.tgz",
|
||||
"integrity": "sha512-/xwPEBidtg69Q3HlqPdU3DnrXQOvQU/CCHA1tcDQVzOwm91YMYaILjNp7L4Eaw5Z4sOYdbBz6koWyibppd8Zqw==",
|
||||
"dev": true
|
||||
},
|
||||
"leven": {
|
||||
"version": "3.1.0",
|
||||
"resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz",
|
||||
@@ -6865,6 +6972,84 @@
|
||||
"integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=",
|
||||
"dev": true
|
||||
},
|
||||
"postcss": {
|
||||
"version": "7.0.35",
|
||||
"resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz",
|
||||
"integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"chalk": "^2.4.2",
|
||||
"source-map": "^0.6.1",
|
||||
"supports-color": "^6.1.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"source-map": {
|
||||
"version": "0.6.1",
|
||||
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
|
||||
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
|
||||
"dev": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"postcss-modules-extract-imports": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz",
|
||||
"integrity": "sha512-LaYLDNS4SG8Q5WAWqIJgdHPJrDDr/Lv775rMBFUbgjTz6j34lUznACHcdRWroPvXANP2Vj7yNK57vp9eFqzLWQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"postcss": "^7.0.5"
|
||||
}
|
||||
},
|
||||
"postcss-modules-local-by-default": {
|
||||
"version": "3.0.3",
|
||||
"resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.3.tgz",
|
||||
"integrity": "sha512-e3xDq+LotiGesympRlKNgaJ0PCzoUIdpH0dj47iWAui/kyTgh3CiAr1qP54uodmJhl6p9rN6BoNcdEDVJx9RDw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"icss-utils": "^4.1.1",
|
||||
"postcss": "^7.0.32",
|
||||
"postcss-selector-parser": "^6.0.2",
|
||||
"postcss-value-parser": "^4.1.0"
|
||||
}
|
||||
},
|
||||
"postcss-modules-scope": {
|
||||
"version": "2.2.0",
|
||||
"resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-2.2.0.tgz",
|
||||
"integrity": "sha512-YyEgsTMRpNd+HmyC7H/mh3y+MeFWevy7V1evVhJWewmMbjDHIbZbOXICC2y+m1xI1UVfIT1HMW/O04Hxyu9oXQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"postcss": "^7.0.6",
|
||||
"postcss-selector-parser": "^6.0.0"
|
||||
}
|
||||
},
|
||||
"postcss-modules-values": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-3.0.0.tgz",
|
||||
"integrity": "sha512-1//E5jCBrZ9DmRX+zCtmQtRSV6PV42Ix7Bzj9GbwJceduuf7IqP8MgeTXuRDHOWj2m0VzZD5+roFWDuU8RQjcg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"icss-utils": "^4.0.0",
|
||||
"postcss": "^7.0.6"
|
||||
}
|
||||
},
|
||||
"postcss-selector-parser": {
|
||||
"version": "6.0.4",
|
||||
"resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.4.tgz",
|
||||
"integrity": "sha512-gjMeXBempyInaBqpp8gODmwZ52WaYsVOsfr4L4lDQ7n3ncD6mEyySiDtgzCT+NYC0mmeOLvtsF8iaEf0YT6dBw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"cssesc": "^3.0.0",
|
||||
"indexes-of": "^1.0.1",
|
||||
"uniq": "^1.0.1",
|
||||
"util-deprecate": "^1.0.2"
|
||||
}
|
||||
},
|
||||
"postcss-value-parser": {
|
||||
"version": "4.1.0",
|
||||
"resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz",
|
||||
"integrity": "sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ==",
|
||||
"dev": true
|
||||
},
|
||||
"prebuild-install": {
|
||||
"version": "5.3.5",
|
||||
"resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-5.3.5.tgz",
|
||||
@@ -8504,6 +8689,49 @@
|
||||
"integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=",
|
||||
"dev": true
|
||||
},
|
||||
"style-loader": {
|
||||
"version": "1.2.1",
|
||||
"resolved": "https://registry.npmjs.org/style-loader/-/style-loader-1.2.1.tgz",
|
||||
"integrity": "sha512-ByHSTQvHLkWE9Ir5+lGbVOXhxX10fbprhLvdg96wedFZb4NDekDPxVKv5Fwmio+QcMlkkNfuK+5W1peQ5CUhZg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"loader-utils": "^2.0.0",
|
||||
"schema-utils": "^2.6.6"
|
||||
},
|
||||
"dependencies": {
|
||||
"json5": {
|
||||
"version": "2.1.3",
|
||||
"resolved": "https://registry.npmjs.org/json5/-/json5-2.1.3.tgz",
|
||||
"integrity": "sha512-KXPvOm8K9IJKFM0bmdn8QXh7udDh1g/giieX0NLCaMnb4hEiVFqnop2ImTXCc5e0/oHz3LTqmHGtExn5hfMkOA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"minimist": "^1.2.5"
|
||||
}
|
||||
},
|
||||
"loader-utils": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.0.tgz",
|
||||
"integrity": "sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"big.js": "^5.2.2",
|
||||
"emojis-list": "^3.0.0",
|
||||
"json5": "^2.1.2"
|
||||
}
|
||||
},
|
||||
"schema-utils": {
|
||||
"version": "2.7.1",
|
||||
"resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz",
|
||||
"integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@types/json-schema": "^7.0.5",
|
||||
"ajv": "^6.12.4",
|
||||
"ajv-keywords": "^3.5.2"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"supports-color": {
|
||||
"version": "6.1.0",
|
||||
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz",
|
||||
@@ -9058,6 +9286,12 @@
|
||||
"set-value": "^2.0.1"
|
||||
}
|
||||
},
|
||||
"uniq": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz",
|
||||
"integrity": "sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=",
|
||||
"dev": true
|
||||
},
|
||||
"unique-filename": {
|
||||
"version": "1.1.1",
|
||||
"resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz",
|
||||
|
||||
@@ -14,14 +14,18 @@
|
||||
"devDependencies": {
|
||||
"@babel/core": "^7.11.6",
|
||||
"@babel/preset-env": "^7.11.5",
|
||||
"@types/leaflet": "^1.5.17",
|
||||
"babel-loader": "^8.1.0",
|
||||
"clean-webpack-plugin": "^3.0.0",
|
||||
"css-loader": "^4.3.0",
|
||||
"csv-loader": "^3.0.3",
|
||||
"favicons-webpack-plugin": "^4.2.0",
|
||||
"file-loader": "^6.1.0",
|
||||
"html-webpack-plugin": "^4.5.0",
|
||||
"leaflet": "^1.7.1",
|
||||
"raw-loader": "^4.0.1",
|
||||
"source-map": "^0.7.3",
|
||||
"style-loader": "^1.2.1",
|
||||
"terser-webpack-plugin": "^4.2.2",
|
||||
"ts-loader": "^8.0.4",
|
||||
"typescript": "^4.0.3",
|
||||
|
||||
+29
-17
@@ -3,6 +3,10 @@
|
||||
* All rights reserved.
|
||||
*/
|
||||
|
||||
// @ts-ignore
|
||||
import imgBusE from './east.png';
|
||||
// @ts-ignore
|
||||
import {Icon, Marker} from "leaflet";
|
||||
import Line from "./Line";
|
||||
import Coordinate from "./Coordinate";
|
||||
|
||||
@@ -11,35 +15,32 @@ export default class Bus {
|
||||
readonly line: Line;
|
||||
|
||||
public delay: number = 0;
|
||||
public td: HTMLTableDataCellElement;
|
||||
public marker: Marker;
|
||||
|
||||
constructor(line: Line, offset: number = 0) {
|
||||
this.line = line;
|
||||
this.offset = offset
|
||||
this.marker = new Marker([53.0518179006886, 8.63831533914209], {
|
||||
icon: new Icon({
|
||||
iconUrl: imgBusE,
|
||||
iconSize: [61, 29],
|
||||
iconAnchor: [30.5, 26],
|
||||
popupAnchor: [0, -25]
|
||||
})
|
||||
}).addTo(this.line.map);
|
||||
}
|
||||
|
||||
draw(ctx: CanvasRenderingContext2D, s: number) {
|
||||
draw(s: number) {
|
||||
|
||||
// @ts-ignore
|
||||
const progress = (this.offset + s - this.delay).mod(this.line.duration);
|
||||
|
||||
|
||||
let position = this.getCurrentPosition(progress);
|
||||
ctx.beginPath()
|
||||
if (this.delay === 0)
|
||||
ctx.fillStyle = '#0f0'
|
||||
else if (this.delay > 0 && this.delay < 5)
|
||||
ctx.fillStyle = '#ff0'
|
||||
else {
|
||||
ctx.fillStyle = '#f00'
|
||||
ctx.fillText("+" + this.delay, position.x, position.y - 3);
|
||||
}
|
||||
ctx.arc(position.x, position.y, 3, 0, 2 * Math.PI);
|
||||
ctx.fill()
|
||||
ctx.closePath()
|
||||
|
||||
if (this.td)
|
||||
this.td.innerText = this.getNextStop(progress);
|
||||
this.marker.setLatLng([position.x, position.y]).bindPopup(this.line.name + ' > ' + this.getNextEnd(progress) + '<br>> ' + this.getNextStop(progress));
|
||||
let icon = this.marker.getIcon();
|
||||
// icon.options.iconUrl = position.headingEast ? imgBusE : imgBusW;
|
||||
this.marker.setIcon(icon)
|
||||
}
|
||||
|
||||
public getNextStop(progress: number = 0): string {
|
||||
@@ -47,9 +48,20 @@ export default class Bus {
|
||||
for (; br < this.line.stopBreaks.length && progress > this.line.stopBreaks[br]; br++) {
|
||||
}
|
||||
|
||||
|
||||
return this.line.stops[br].name;
|
||||
}
|
||||
|
||||
public getNextEnd(progress: number = 0): string {
|
||||
let br = 0
|
||||
for (; br < this.line.endBreaks.length && progress > this.line.endBreaks[br]; br++) {
|
||||
}
|
||||
|
||||
// @ts-ignore
|
||||
br = br.mod(this.line.ends.length)
|
||||
return this.line.ends[br];
|
||||
}
|
||||
|
||||
public getCurrentPosition(progress: number = 0): Coordinate {
|
||||
let br = 0
|
||||
for (; br < this.line.breaks.length && progress > this.line.breaks[br]; br++) {
|
||||
|
||||
+52
-26
@@ -3,25 +3,30 @@
|
||||
* All rights reserved.
|
||||
*/
|
||||
|
||||
import {LatLng, Map, Polyline} from "leaflet";
|
||||
import Stop from "./Stop";
|
||||
import Coordinate from "./Coordinate";
|
||||
|
||||
export default class Line {
|
||||
readonly name: String;
|
||||
readonly map: Map;
|
||||
readonly name: string;
|
||||
readonly stops: Stop[] = [];
|
||||
readonly ends: string[] = [];
|
||||
|
||||
readonly breaks: number[] = [];
|
||||
readonly stopBreaks: number[] = [];
|
||||
readonly endBreaks: number[] = [];
|
||||
readonly duration: number = 0;
|
||||
readonly coords: Coordinate[];
|
||||
readonly color: string = '#000';
|
||||
|
||||
constructor(name: String, stops: string, color: string) {
|
||||
constructor(map: Map, name: string, stops: string, color: string) {
|
||||
this.map = map;
|
||||
this.color = color
|
||||
this.name = name;
|
||||
let coords = stops.split("\n").map(e => {
|
||||
let a = e.split(',');
|
||||
return a.length > 2 ? new Stop(Number.parseFloat(a[0]), Number.parseFloat(a[1]), Number.parseFloat(a[2]), a[3]) : new Coordinate(Number.parseFloat(a[0]), Number.parseFloat(a[1]));
|
||||
return a.length > 2 ? new Stop(Number.parseFloat(a[0]), Number.parseFloat(a[1]), Number.parseFloat(a[2]), a[3], a.length === 5 ? a[4] : null) : new Coordinate(Number.parseFloat(a[0]), Number.parseFloat(a[1]));
|
||||
});
|
||||
this.coords = coords;
|
||||
|
||||
@@ -33,6 +38,10 @@ export default class Line {
|
||||
let stop = <Stop>coords[i];
|
||||
this.stops.push(stop)
|
||||
this.stopBreaks.push(stop.minute)
|
||||
if (stop.end) {
|
||||
this.endBreaks.push(stop.minute)
|
||||
this.ends.push(stop.end)
|
||||
}
|
||||
|
||||
const td = stop.minute - lastStop.minute
|
||||
if (coords[i - 1])
|
||||
@@ -55,32 +64,49 @@ export default class Line {
|
||||
this.duration = lastStop.minute
|
||||
}
|
||||
|
||||
draw(ctx: CanvasRenderingContext2D) {
|
||||
let last: Coordinate = null;
|
||||
this.coords.forEach(c => {
|
||||
ctx.beginPath()
|
||||
ctx.textAlign = "center";
|
||||
if (c instanceof Stop) {
|
||||
let stop: Stop = c;
|
||||
ctx.arc(c.x, c.y, 5, 0, 2 * Math.PI);
|
||||
ctx.strokeStyle = this.color
|
||||
ctx.fillStyle = '#000'
|
||||
ctx.fillText(stop.name, c.x, c.y - 10);
|
||||
drawStops(show: boolean = true) {
|
||||
if (show) {
|
||||
this.stops.forEach(s => s.marker.addTo(this.map))
|
||||
} else {
|
||||
this.stops.forEach(s => s.marker.removeFrom(this.map))
|
||||
}
|
||||
ctx.stroke()
|
||||
ctx.closePath()
|
||||
if (last) {
|
||||
ctx.beginPath()
|
||||
ctx.moveTo(last.x, last.y)
|
||||
ctx.lineWidth = 3;
|
||||
ctx.lineTo(c.x, c.y)
|
||||
ctx.strokeStyle = this.color
|
||||
ctx.stroke()
|
||||
ctx.closePath()
|
||||
}
|
||||
last = c;
|
||||
})
|
||||
|
||||
draw() {
|
||||
let pointList = this.coords.map(c => new LatLng(c.x, c.y));
|
||||
new Polyline(pointList, {
|
||||
color: this.color,
|
||||
weight: 5,
|
||||
// opacity: 0.7
|
||||
}).addTo(this.map)
|
||||
this.stops.forEach(s => {
|
||||
// if (s.isEnd)
|
||||
// new Popup().setLatLng([s.x, s.y]).setContent(this.name + ' - ' + s.name).openOn(this.map)
|
||||
})
|
||||
// let last: Coordinate = null;
|
||||
// this.coords.forEach(c => {
|
||||
// ctx.beginPath()
|
||||
// ctx.textAlign = "center";
|
||||
// if (c instanceof Stop) {
|
||||
// let stop: Stop = c;
|
||||
// ctx.arc(c.x, c.y, 5, 0, 2 * Math.PI);
|
||||
// ctx.strokeStyle = this.color
|
||||
// ctx.fillStyle = '#000'
|
||||
// ctx.fillText(stop.name, c.x, c.y - 10);
|
||||
// }
|
||||
// ctx.stroke()
|
||||
// ctx.closePath()
|
||||
// if (last) {
|
||||
// ctx.beginPath()
|
||||
// ctx.moveTo(last.x, last.y)
|
||||
// ctx.lineWidth = 3;
|
||||
// ctx.lineTo(c.x, c.y)
|
||||
// ctx.strokeStyle = this.color
|
||||
// ctx.stroke()
|
||||
// ctx.closePath()
|
||||
// }
|
||||
// last = c;
|
||||
// })
|
||||
}
|
||||
|
||||
|
||||
|
||||
+6
-1
@@ -4,14 +4,19 @@
|
||||
*/
|
||||
|
||||
import Coordinate from "./Coordinate";
|
||||
import {Marker, Popup} from "leaflet";
|
||||
|
||||
export default class Stop extends Coordinate {
|
||||
readonly name: string;
|
||||
readonly minute: number;
|
||||
readonly marker: Marker;
|
||||
readonly end: string;
|
||||
|
||||
constructor(x: number, y: number, minute: number, name: string) {
|
||||
constructor(x: number, y: number, minute: number, name: string, end: string = null) {
|
||||
super(x, y);
|
||||
this.minute = minute;
|
||||
this.name = name;
|
||||
this.marker = new Marker([this.x, this.y]).bindPopup(this.name)
|
||||
this.end = end
|
||||
}
|
||||
}
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 6.5 KiB |
+33
-53
@@ -2,11 +2,14 @@
|
||||
* Copyright (c) 2020. Pascal Syma <pascal@syma.dev>.
|
||||
* All rights reserved.
|
||||
*/
|
||||
require('leaflet/dist/leaflet.css')
|
||||
require('./main.css')
|
||||
|
||||
Number.prototype.mod = function (n) {
|
||||
return ((this % n) + n) % n;
|
||||
};
|
||||
|
||||
import * as L from 'leaflet';
|
||||
import mapSrc from "../map.png";
|
||||
import Bus from "./Bus";
|
||||
import Line from "./Line";
|
||||
@@ -15,48 +18,52 @@ import stops204 from './lines/204.csv';
|
||||
import stops205 from './lines/205.csv';
|
||||
import stops206 from './lines/206.csv';
|
||||
|
||||
let line201 = new Line("201", stops201, '#fbce18');
|
||||
let line204 = new Line("204", stops204, '#99207e');
|
||||
let line205 = new Line("205", stops205, '#009fe3');
|
||||
let line206 = new Line("206", stops206, '#1c60b2');
|
||||
|
||||
let map = L.map('map').setView([53.041883898950985, 8.668813705444338], 13);
|
||||
L.tileLayer('https://{s}.tile.openstreetmap.de/{z}/{x}/{y}.png', {
|
||||
'attribution': 'Kartendaten © <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> Mitwirkende',
|
||||
'useCache': true
|
||||
}).addTo(map);
|
||||
|
||||
let line201 = new Line(map, "201", stops201, '#fbce18');
|
||||
let line204 = new Line(map, "204", stops204, '#99207e');
|
||||
let line205 = new Line(map, "205", stops205, '#009fe3');
|
||||
let line206 = new Line(map, "206", stops206, '#1c60b2');
|
||||
console.log(line201);
|
||||
|
||||
let canvas = document.getElementById("canvas");
|
||||
let lines = [line201, line204, line205, line206];
|
||||
|
||||
|
||||
let btnMinus = document.getElementById("minus");
|
||||
let btnPlay = document.getElementById("play");
|
||||
let btnReal = document.getElementById("real");
|
||||
let btnPlus = document.getElementById("plus");
|
||||
let btnDisplay = document.getElementById("display");
|
||||
let tblBus = document.getElementById("bus");
|
||||
let chkMap = document.getElementById("showMap");
|
||||
let btnShowStops = document.getElementById("showStops");
|
||||
let inpMpm = document.getElementById("mpm");
|
||||
|
||||
chkMap.addEventListener('change', () => run(0));
|
||||
inpMpm.addEventListener('change', () => mpm = parseInt(inpMpm.value))
|
||||
let ctx = canvas.getContext("2d");
|
||||
let map = new Image();
|
||||
map.onload = () => {
|
||||
canvas.width = map.width;
|
||||
canvas.height = map.height
|
||||
run(0)
|
||||
}
|
||||
map.src = mapSrc;
|
||||
|
||||
lines.forEach(l => l.draw())
|
||||
|
||||
let isRunning = false;
|
||||
let realIsRunning = false;
|
||||
let interval;
|
||||
let progress = 0;
|
||||
let mpm = parseInt(inpMpm.value);
|
||||
let showStops = false;
|
||||
|
||||
let busses = [
|
||||
new Bus(line201),
|
||||
new Bus(line201, 30),
|
||||
new Bus(line201, 60),
|
||||
new Bus(line201, 90),
|
||||
new Bus(line201, 120),
|
||||
new Bus(line204),
|
||||
new Bus(line204, 30),
|
||||
new Bus(line204, 60),
|
||||
new Bus(line204, 90),
|
||||
new Bus(line204, 120),
|
||||
new Bus(line205),
|
||||
new Bus(line205, 30),
|
||||
new Bus(line205, 60),
|
||||
@@ -65,28 +72,8 @@ let busses = [
|
||||
new Bus(line206, 60),
|
||||
];
|
||||
|
||||
run(0)
|
||||
|
||||
busses.forEach(b => {
|
||||
const tr = document.createElement('tr');
|
||||
const tdNext = document.createElement('td');
|
||||
b.td = tdNext;
|
||||
const tdLine = document.createElement('td');
|
||||
tdLine.innerText = b.line.name
|
||||
const tdOffset = document.createElement('td');
|
||||
tdOffset.innerText = b.offset.toString()
|
||||
const tdDelay = document.createElement('td');
|
||||
const inputDelay = document.createElement('input')
|
||||
inputDelay.type = 'number'
|
||||
inputDelay.min = '0'
|
||||
inputDelay.max = '120'
|
||||
inputDelay.value = b.delay.toString()
|
||||
inputDelay.addEventListener('change', () => b.delay = parseInt(inputDelay.value))
|
||||
tdDelay.append(inputDelay)
|
||||
|
||||
tr.append(tdNext, tdLine, tdOffset, tdDelay);
|
||||
|
||||
tblBus.getElementsByTagName('tbody')[0].append(tr)
|
||||
})
|
||||
|
||||
function run(s) {
|
||||
if (s instanceof Date) {
|
||||
@@ -103,16 +90,7 @@ function run(s) {
|
||||
const seconds = Math.floor((mprogress * 60).mod(60))
|
||||
btnDisplay.innerText = (hours > 9 ? hours : "0" + hours) + ":" + (minutes > 9 ? minutes : "0" + minutes) + ":" + (seconds > 9 ? seconds : "0" + seconds)
|
||||
|
||||
ctx.clearRect(0, 0, canvas.width, canvas.height);
|
||||
if (chkMap.checked)
|
||||
ctx.drawImage(map, 0, 0)
|
||||
else {
|
||||
line201.draw(ctx)
|
||||
line204.draw(ctx)
|
||||
line205.draw(ctx)
|
||||
line206.draw(ctx)
|
||||
}
|
||||
busses.forEach(b => b.draw(ctx, progress))
|
||||
busses.forEach(b => b.draw(progress))
|
||||
}
|
||||
|
||||
btnMinus.addEventListener('click', () => {
|
||||
@@ -165,11 +143,13 @@ btnReal.addEventListener('click', () => {
|
||||
realIsRunning = !realIsRunning;
|
||||
})
|
||||
|
||||
btnShowStops.addEventListener('click', () => {
|
||||
showStops = !showStops
|
||||
|
||||
lines.forEach(l => l.drawStops(showStops))
|
||||
|
||||
btnShowStops.innerText = showStops ? 'Hide Stops' : 'Show Stops'
|
||||
})
|
||||
|
||||
|
||||
if ('serviceWorker' in navigator) {
|
||||
window.addEventListener('load', () => {
|
||||
navigator.serviceWorker.register('./service-worker.js').catch(() => {
|
||||
}).then();
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
+1406
-97
File diff suppressed because it is too large
Load Diff
+1519
-81
File diff suppressed because it is too large
Load Diff
+848
-59
@@ -1,59 +1,848 @@
|
||||
515,881,1,Gothaer Str.
|
||||
467,864,1,Dresdener Str.
|
||||
475,826,2,Blücherweg
|
||||
498,787,3,Jenaer Str.
|
||||
529,750,4,Overbergstr.
|
||||
553,770,5,Jägerstr.
|
||||
588,717,6,Danziger Str.
|
||||
583,682,7,Görlitzer Str.
|
||||
576,654,8,Liegnitzer Str.
|
||||
567,628,9,Königsberger Str.
|
||||
583,571,10,Breslauer Str.
|
||||
578,536,12,Max-Planck-Str.
|
||||
548,492,13,Parkstr.
|
||||
499,446,14,Markt
|
||||
498,432,15,Post
|
||||
529,401,18,Bahnhof / ZOB
|
||||
529,401,24,Bahnhof / ZOB
|
||||
564,357,26,Am Wollepark
|
||||
558,318,27,Thüringer Str.
|
||||
546,260,27,Schönemoorer Str.
|
||||
555,227,28,Hansastr.
|
||||
574,187,29,Nordstr.
|
||||
532,190,30,Lessingstr.
|
||||
526,140,31,Andersenstr.
|
||||
532,106,31,Kleistweg
|
||||
543,78,32,Gorch-Fock-Str.
|
||||
590,83,33,Friedhof
|
||||
644,75,33,Brauereiweg
|
||||
658,47,34,Bungerhof
|
||||
658,47,50,Bungerhof
|
||||
644,75,51,Brauereiweg
|
||||
590,83,52,Friedhof
|
||||
543,78,53,Gorch-Fock-Str.
|
||||
532,106,53,Kleistweg
|
||||
526,140,54,Andersenstr.
|
||||
532,190,55,Lessingstr.
|
||||
574,187,56,Nordstr.
|
||||
555,227,57,Hansastr.
|
||||
546,260,58,Schönemoorer Str.
|
||||
558,318,59,Thüringer Str.
|
||||
564,357,60,Am Wollepark
|
||||
529,401,63,Bahnhof / ZOB
|
||||
529,401,69,Bahnhof / ZOB
|
||||
498,432,70,Post
|
||||
499,446,73,Markt
|
||||
548,492,75,Parkstr.
|
||||
578,536,77,Max-Planck-Str.
|
||||
583,571,78,Breslauer Str.
|
||||
567,628,79,Königsberger Str.
|
||||
576,654,80,Liegnitzer Str.
|
||||
583,682,81,Görlitzer Str.
|
||||
588,717,81,Danziger Str.
|
||||
553,770,82,Jägerstr.
|
||||
529,750,83,Overbergstr.
|
||||
498,787,84,Jenaer Str.
|
||||
525,828,86,Chemnitzer Str.
|
||||
539,875,86,Altenburger Str.
|
||||
515,881,88,Gothaer Str.
|
||||
515,881,90,Gothaer Str.
|
||||
53.02127,8.62516,1,Gothaer Str.,Brendel
|
||||
53.02132,8.62493
|
||||
53.02194,8.62227
|
||||
53.02206,8.62175
|
||||
53.02206,8.62175,1,Dresdener Str.
|
||||
53.02206,8.62175
|
||||
53.0221,8.62158
|
||||
53.0222,8.62117
|
||||
53.0222,8.62117
|
||||
53.02252,8.62161
|
||||
53.02316,8.62236
|
||||
53.02333,8.62249
|
||||
53.02359,8.62262
|
||||
53.02373,8.62273
|
||||
53.024,8.623
|
||||
53.02419,8.62319
|
||||
53.02419,8.62319,2,Blücherweg
|
||||
53.02419,8.62319
|
||||
53.02444,8.62343
|
||||
53.02457,8.62356
|
||||
53.02498,8.62396
|
||||
53.02529,8.62426
|
||||
53.02596,8.62495
|
||||
53.02655,8.62551
|
||||
53.02659,8.62555
|
||||
53.02659,8.62555
|
||||
53.02657,8.62575
|
||||
53.0266,8.62592
|
||||
53.02671,8.62595
|
||||
53.02685,8.62592
|
||||
53.02685,8.62592,3,Jenaer Str.
|
||||
53.02685,8.62592
|
||||
53.02695,8.62589
|
||||
53.02724,8.62617
|
||||
53.02749,8.62641
|
||||
53.02868,8.62753
|
||||
53.02873,8.62759
|
||||
53.02876,8.62761
|
||||
53.02893,8.62778
|
||||
53.02907,8.62791
|
||||
53.02928,8.62812
|
||||
53.0294,8.62823
|
||||
53.02945,8.62829
|
||||
53.02945,8.62829
|
||||
53.02939,8.62841
|
||||
53.02933,8.62852
|
||||
53.02912,8.62893
|
||||
53.02912,8.62893,4,Overbergstr.
|
||||
53.02912,8.62893
|
||||
53.0291,8.62896
|
||||
53.02901,8.62914
|
||||
53.02895,8.62924
|
||||
53.02881,8.62952
|
||||
53.02873,8.62968
|
||||
53.0287,8.62973
|
||||
53.02864,8.62984
|
||||
53.02858,8.62996
|
||||
53.02799,8.63108
|
||||
53.02788,8.63129
|
||||
53.02785,8.63135
|
||||
53.02778,8.63147
|
||||
53.02778,8.63147
|
||||
53.02785,8.63157
|
||||
53.02789,8.63163
|
||||
53.02821,8.63208
|
||||
53.02821,8.63208,5,Jägerstr.
|
||||
53.02821,8.63208
|
||||
53.02823,8.63211
|
||||
53.02843,8.6324
|
||||
53.02886,8.63302
|
||||
53.02933,8.63372
|
||||
53.02976,8.63434
|
||||
53.02986,8.63448
|
||||
53.03007,8.63479
|
||||
53.03016,8.63492
|
||||
53.0303,8.63505
|
||||
53.0304,8.63511
|
||||
53.03052,8.63514
|
||||
53.03062,8.63515
|
||||
53.03085,8.63514
|
||||
53.03085,8.63514,6,Danziger Str.
|
||||
53.03085,8.63514
|
||||
53.03086,8.63514
|
||||
53.03153,8.63512
|
||||
53.03211,8.63512
|
||||
53.03225,8.63511
|
||||
53.03246,8.6351
|
||||
53.03251,8.6351
|
||||
53.03274,8.63507
|
||||
53.03298,8.63493
|
||||
53.03335,8.63475
|
||||
53.03338,8.63473
|
||||
53.03338,8.63473,7,Görlitzer Str.
|
||||
53.03338,8.63473
|
||||
53.03356,8.63464
|
||||
53.03437,8.63421
|
||||
53.03491,8.63393
|
||||
53.03509,8.63384
|
||||
53.03522,8.63377
|
||||
53.03522,8.63377,8,Liegnitzer Str.
|
||||
53.03522,8.63377
|
||||
53.03525,8.63376
|
||||
53.03537,8.6337
|
||||
53.03546,8.63365
|
||||
53.03556,8.63359
|
||||
53.0357,8.63354
|
||||
53.03578,8.63349
|
||||
53.03618,8.6333
|
||||
53.0366,8.63307
|
||||
53.0368,8.63296
|
||||
53.03698,8.63282
|
||||
53.03721,8.63267
|
||||
53.03748,8.63254
|
||||
53.03757,8.6325
|
||||
53.03771,8.63243
|
||||
53.03772,8.63243
|
||||
53.03772,8.63243,9,Königsberger Str.
|
||||
53.03772,8.63243
|
||||
53.03777,8.6324
|
||||
53.038,8.63228
|
||||
53.03817,8.63215
|
||||
53.03829,8.63202
|
||||
53.03839,8.63187
|
||||
53.03839,8.63187
|
||||
53.03891,8.63266
|
||||
53.0391,8.6329
|
||||
53.03926,8.63312
|
||||
53.03943,8.63338
|
||||
53.03947,8.63344
|
||||
53.03974,8.63382
|
||||
53.03985,8.63396
|
||||
53.04008,8.6343
|
||||
53.04008,8.6343,10,Breslauer Str.
|
||||
53.04008,8.6343
|
||||
53.04016,8.6344
|
||||
53.04029,8.63459
|
||||
53.04041,8.63475
|
||||
53.04049,8.63487
|
||||
53.04078,8.63527
|
||||
53.04112,8.63575
|
||||
53.0413,8.63599
|
||||
53.04134,8.63605
|
||||
53.04142,8.63617
|
||||
53.04142,8.63617
|
||||
53.04151,8.63604
|
||||
53.04154,8.63599
|
||||
53.04164,8.63587
|
||||
53.04175,8.63573
|
||||
53.04269,8.63484
|
||||
53.04275,8.63478
|
||||
53.04296,8.63455
|
||||
53.04322,8.63422
|
||||
53.04378,8.63354
|
||||
53.04383,8.63347
|
||||
53.04393,8.63336
|
||||
53.044,8.63328
|
||||
53.04425,8.63306
|
||||
53.04425,8.63306,12,Max-Planck-Str.
|
||||
53.04425,8.63306
|
||||
53.04428,8.63304
|
||||
53.04484,8.63255
|
||||
53.04494,8.63246
|
||||
53.04499,8.63241
|
||||
53.04509,8.63231
|
||||
53.0452,8.63217
|
||||
53.04522,8.63215
|
||||
53.04526,8.6321
|
||||
53.04537,8.63195
|
||||
53.04548,8.63181
|
||||
53.04564,8.63159
|
||||
53.04581,8.63138
|
||||
53.04599,8.63115
|
||||
53.04617,8.6309
|
||||
53.04623,8.63082
|
||||
53.04637,8.63064
|
||||
53.04649,8.63044
|
||||
53.04656,8.63034
|
||||
53.04676,8.62994
|
||||
53.04684,8.62973
|
||||
53.04684,8.62973,13,Parkstr.
|
||||
53.04684,8.62973
|
||||
53.04701,8.62932
|
||||
53.04711,8.62907
|
||||
53.04719,8.62886
|
||||
53.0473,8.62861
|
||||
53.04732,8.62854
|
||||
53.04736,8.62841
|
||||
53.04739,8.62828
|
||||
53.04748,8.62789
|
||||
53.04754,8.62752
|
||||
53.04762,8.62721
|
||||
53.04767,8.62708
|
||||
53.04776,8.62686
|
||||
53.04776,8.62686
|
||||
53.04785,8.627
|
||||
53.04794,8.6271
|
||||
53.04794,8.6271,14,Markt
|
||||
53.04794,8.6271
|
||||
53.04802,8.62718
|
||||
53.04806,8.62722
|
||||
53.04811,8.62727
|
||||
53.04823,8.62738
|
||||
53.04836,8.62753
|
||||
53.0484,8.62758
|
||||
53.04847,8.6277
|
||||
53.04855,8.62779
|
||||
53.04867,8.62792
|
||||
53.04875,8.62796
|
||||
53.04882,8.62795
|
||||
53.04892,8.6279
|
||||
53.049,8.62777
|
||||
53.04908,8.62749
|
||||
53.04912,8.62734
|
||||
53.04912,8.6273
|
||||
53.04915,8.62717
|
||||
53.04919,8.6269
|
||||
53.0492,8.62683
|
||||
53.04921,8.62678
|
||||
53.04922,8.62637
|
||||
53.04921,8.62613
|
||||
53.04921,8.62595
|
||||
53.04918,8.62555
|
||||
53.04918,8.62548
|
||||
53.04917,8.6253
|
||||
53.04917,8.6253
|
||||
53.04932,8.62526
|
||||
53.04993,8.62514
|
||||
53.05019,8.6251
|
||||
53.05019,8.6251,15,Post
|
||||
53.05019,8.6251
|
||||
53.05057,8.62501
|
||||
53.05124,8.62472
|
||||
53.05165,8.62455
|
||||
53.05165,8.62455
|
||||
53.05166,8.62476
|
||||
53.05169,8.62506
|
||||
53.0517,8.62519
|
||||
53.05175,8.62573
|
||||
53.0518,8.62629
|
||||
53.05181,8.62642
|
||||
53.05183,8.62659
|
||||
53.05183,8.62666
|
||||
53.05184,8.62677
|
||||
53.05185,8.62687
|
||||
53.05193,8.6278
|
||||
53.05195,8.62804
|
||||
53.05195,8.62822
|
||||
53.05193,8.62839
|
||||
53.05188,8.62865
|
||||
53.05187,8.62872
|
||||
53.05184,8.62888
|
||||
53.05183,8.62913
|
||||
53.05187,8.62966
|
||||
53.05187,8.62966,18,Bahnhof / ZOB
|
||||
53.05187,8.62966,24,Bahnhof / ZOB
|
||||
53.05187,8.62966
|
||||
53.05188,8.62983
|
||||
53.05194,8.63053
|
||||
53.05198,8.631
|
||||
53.05203,8.63172
|
||||
53.0521,8.63238
|
||||
53.05215,8.63304
|
||||
53.05216,8.63313
|
||||
53.05218,8.63322
|
||||
53.05218,8.63322
|
||||
53.05222,8.6334
|
||||
53.05261,8.63323
|
||||
53.05271,8.63318
|
||||
53.05329,8.63291
|
||||
53.05329,8.63291
|
||||
53.05419,8.63246
|
||||
53.05419,8.63246,26,Am Wollepark
|
||||
53.05419,8.63246
|
||||
53.05422,8.63245
|
||||
53.055,8.6321
|
||||
53.05516,8.63203
|
||||
53.05551,8.6319
|
||||
53.05554,8.63188
|
||||
53.05557,8.63188
|
||||
53.05571,8.63183
|
||||
53.05585,8.63179
|
||||
53.05587,8.63178
|
||||
53.0559,8.63177
|
||||
53.05598,8.63167
|
||||
53.05607,8.63165
|
||||
53.05619,8.63162
|
||||
53.05703,8.63143
|
||||
53.05743,8.63134
|
||||
53.05776,8.63126
|
||||
53.05776,8.63126,27,Thüringer Str.
|
||||
53.05776,8.63126
|
||||
53.05783,8.63125
|
||||
53.05795,8.63122
|
||||
53.05808,8.63119
|
||||
53.05872,8.63105
|
||||
53.05906,8.63097
|
||||
53.05908,8.63097
|
||||
53.05925,8.63094
|
||||
53.0596,8.63086
|
||||
53.06006,8.63076
|
||||
53.06023,8.63072
|
||||
53.06023,8.63072,27,Schönemoorer Str.
|
||||
53.06023,8.63072
|
||||
53.06025,8.63072
|
||||
53.06034,8.6307
|
||||
53.06043,8.63068
|
||||
53.06063,8.63063
|
||||
53.06089,8.63057
|
||||
53.06113,8.63052
|
||||
53.06159,8.63045
|
||||
53.06173,8.63046
|
||||
53.06186,8.63049
|
||||
53.06197,8.63056
|
||||
53.06221,8.63077
|
||||
53.0629,8.63137
|
||||
53.06309,8.6315
|
||||
53.06323,8.63161
|
||||
53.06364,8.63195
|
||||
53.06364,8.63195,28,Hansastr.
|
||||
53.06364,8.63195
|
||||
53.0637,8.632
|
||||
53.06437,8.63256
|
||||
53.06529,8.63332
|
||||
53.0656,8.63357
|
||||
53.0659,8.63383
|
||||
53.0659,8.63383
|
||||
53.06586,8.63322
|
||||
53.0658,8.63241
|
||||
53.0658,8.63241,29,Nordstr.
|
||||
53.0658,8.63241
|
||||
53.06565,8.63024
|
||||
53.06556,8.62908
|
||||
53.06552,8.62867
|
||||
53.06552,8.62867,30,Lessingstr.
|
||||
53.06552,8.62867
|
||||
53.06552,8.62863
|
||||
53.06549,8.62818
|
||||
53.06549,8.62818
|
||||
53.06594,8.62811
|
||||
53.0663,8.62807
|
||||
53.06667,8.62803
|
||||
53.0668,8.62804
|
||||
53.06714,8.62811
|
||||
53.06819,8.62835
|
||||
53.06829,8.62838
|
||||
53.06852,8.62843
|
||||
53.06874,8.62848
|
||||
53.06874,8.62848,31,Andersenstr.
|
||||
53.06874,8.62848
|
||||
53.06887,8.62851
|
||||
53.06983,8.62874
|
||||
53.07045,8.62889
|
||||
53.07062,8.62893
|
||||
53.07062,8.62893,31,Kleistweg
|
||||
53.07062,8.62893
|
||||
53.07066,8.62893
|
||||
53.07078,8.62897
|
||||
53.07092,8.629
|
||||
53.07098,8.62901
|
||||
53.07135,8.6291
|
||||
53.07185,8.62921
|
||||
53.07224,8.6293
|
||||
53.07268,8.6294
|
||||
53.07268,8.6294
|
||||
53.07265,8.63001
|
||||
53.07265,8.63001,32,Gorch-Fock-Str.
|
||||
53.07265,8.63001
|
||||
53.07264,8.63009
|
||||
53.07263,8.6305
|
||||
53.07261,8.63082
|
||||
53.07258,8.6315
|
||||
53.0725,8.63359
|
||||
53.07243,8.63491
|
||||
53.07241,8.63565
|
||||
53.0724,8.63584
|
||||
53.0724,8.63584,33,Friedhof
|
||||
53.0724,8.63584
|
||||
53.0724,8.63589
|
||||
53.07237,8.63638
|
||||
53.07237,8.63646
|
||||
53.07233,8.63722
|
||||
53.07232,8.63758
|
||||
53.07226,8.63883
|
||||
53.07224,8.63919
|
||||
53.07224,8.63922
|
||||
53.07224,8.63922,33,Brauereiweg
|
||||
53.07224,8.63922
|
||||
53.07222,8.63967
|
||||
53.07217,8.63997
|
||||
53.0721,8.64015
|
||||
53.0721,8.64015
|
||||
53.07215,8.6402
|
||||
53.07233,8.64039
|
||||
53.07264,8.64073
|
||||
53.07285,8.64095
|
||||
53.07313,8.64124
|
||||
53.07327,8.64139
|
||||
53.07369,8.64177
|
||||
53.07396,8.64198
|
||||
53.07403,8.64202
|
||||
53.07425,8.64218
|
||||
53.07454,8.64237
|
||||
53.07468,8.64246
|
||||
53.07468,8.64246,34,Bungerhof
|
||||
53.07552,8.64303,50,Bungerhof,Bungerhof
|
||||
53.07552,8.64303
|
||||
53.07501,8.64269
|
||||
53.07484,8.64257
|
||||
53.07476,8.64251
|
||||
53.0747,8.64247
|
||||
53.07454,8.64237
|
||||
53.07425,8.64218
|
||||
53.07403,8.64202
|
||||
53.07396,8.64198
|
||||
53.07369,8.64177
|
||||
53.07327,8.64139
|
||||
53.07313,8.64124
|
||||
53.07285,8.64095
|
||||
53.07264,8.64073
|
||||
53.07233,8.64039
|
||||
53.07215,8.6402
|
||||
53.0721,8.64015
|
||||
53.0721,8.64015
|
||||
53.07217,8.63997
|
||||
53.07222,8.63967
|
||||
53.07224,8.63919
|
||||
53.07224,8.63915
|
||||
53.07224,8.63915,51,Brauereiweg
|
||||
53.07224,8.63915
|
||||
53.07226,8.63883
|
||||
53.07232,8.63758
|
||||
53.07233,8.63722
|
||||
53.07237,8.63646
|
||||
53.07237,8.63638
|
||||
53.07239,8.63596
|
||||
53.07239,8.63596,52,Friedhof
|
||||
53.07239,8.63596
|
||||
53.0724,8.63589
|
||||
53.07241,8.63565
|
||||
53.07243,8.63491
|
||||
53.0725,8.63359
|
||||
53.07258,8.6315
|
||||
53.07261,8.63083
|
||||
53.07261,8.63083,53,Gorch-Fock-Str.
|
||||
53.07261,8.63082
|
||||
53.07263,8.6305
|
||||
53.07264,8.63009
|
||||
53.07268,8.6294
|
||||
53.07268,8.6294
|
||||
53.07224,8.6293
|
||||
53.07185,8.62921
|
||||
53.07135,8.6291
|
||||
53.07098,8.62901
|
||||
53.07098,8.62901,53,Kleistweg
|
||||
53.07098,8.62901
|
||||
53.07092,8.629
|
||||
53.07078,8.62897
|
||||
53.07066,8.62893
|
||||
53.07045,8.62889
|
||||
53.06983,8.62874
|
||||
53.06887,8.62851
|
||||
53.06874,8.62848
|
||||
53.06852,8.62843
|
||||
53.06831,8.62838
|
||||
53.06831,8.62838,54,Andersenstr.
|
||||
53.06831,8.62838
|
||||
53.06829,8.62838
|
||||
53.06819,8.62835
|
||||
53.06714,8.62811
|
||||
53.0668,8.62804
|
||||
53.06667,8.62803
|
||||
53.0663,8.62807
|
||||
53.06594,8.62811
|
||||
53.06549,8.62818
|
||||
53.06549,8.62818
|
||||
53.06552,8.62863
|
||||
53.06556,8.62908
|
||||
53.06556,8.62908,55,Lessingstr.
|
||||
53.06556,8.62909
|
||||
53.06565,8.63024
|
||||
53.0658,8.63241
|
||||
53.06586,8.63322
|
||||
53.06586,8.63322
|
||||
53.06581,8.63339
|
||||
53.06577,8.63347
|
||||
53.06572,8.63352
|
||||
53.0656,8.63357
|
||||
53.06531,8.63334
|
||||
53.06531,8.63334,56,Nordstr.
|
||||
53.06531,8.63334
|
||||
53.06529,8.63332
|
||||
53.06437,8.63256
|
||||
53.0637,8.632
|
||||
53.06323,8.63161
|
||||
53.06311,8.63152
|
||||
53.06311,8.63152,57,Hansastr.
|
||||
53.06311,8.63152
|
||||
53.06309,8.6315
|
||||
53.0629,8.63137
|
||||
53.06221,8.63077
|
||||
53.06197,8.63056
|
||||
53.06186,8.63049
|
||||
53.06173,8.63046
|
||||
53.06159,8.63045
|
||||
53.06113,8.63052
|
||||
53.06089,8.63057
|
||||
53.06089,8.63057,58,Schönemoorer Str.
|
||||
53.06088,8.63057
|
||||
53.06063,8.63063
|
||||
53.06043,8.63068
|
||||
53.06034,8.6307
|
||||
53.06025,8.63072
|
||||
53.06006,8.63076
|
||||
53.0596,8.63086
|
||||
53.05925,8.63094
|
||||
53.05908,8.63097
|
||||
53.05906,8.63097
|
||||
53.05872,8.63105
|
||||
53.05808,8.63119
|
||||
53.05795,8.63122
|
||||
53.05783,8.63125
|
||||
53.05776,8.63126
|
||||
53.05743,8.63134
|
||||
53.05703,8.63143
|
||||
53.05703,8.63143,59,Thüringer Str.
|
||||
53.05702,8.63143
|
||||
53.05619,8.63162
|
||||
53.05607,8.63165
|
||||
53.05598,8.63167
|
||||
53.05591,8.63166
|
||||
53.05587,8.63165
|
||||
53.05585,8.63166
|
||||
53.0557,8.63171
|
||||
53.05555,8.63176
|
||||
53.05553,8.63176
|
||||
53.05531,8.63183
|
||||
53.05483,8.63204
|
||||
53.05423,8.63231
|
||||
53.05423,8.63231,60,Am Wollepark
|
||||
53.05423,8.63231
|
||||
53.0542,8.63232
|
||||
53.05378,8.6325
|
||||
53.05328,8.63273
|
||||
53.05299,8.63286
|
||||
53.05299,8.63286
|
||||
53.05284,8.63284
|
||||
53.05277,8.63279
|
||||
53.05271,8.6327
|
||||
53.05266,8.63257
|
||||
53.05265,8.63245
|
||||
53.05264,8.63232
|
||||
53.05256,8.63133
|
||||
53.05257,8.63106
|
||||
53.05255,8.6308
|
||||
53.05245,8.62968
|
||||
53.05245,8.62968,63,Bahnhof / ZOB
|
||||
53.05245,8.62968,69,Bahnhof / ZOB
|
||||
53.05245,8.62967
|
||||
53.05237,8.62853
|
||||
53.05232,8.62787
|
||||
53.05218,8.62639
|
||||
53.05217,8.62624
|
||||
53.05208,8.62501
|
||||
53.05208,8.62501
|
||||
53.05198,8.6248
|
||||
53.0519,8.62466
|
||||
53.05177,8.62449
|
||||
53.05177,8.62449
|
||||
53.05165,8.62455
|
||||
53.05126,8.62471
|
||||
53.05126,8.62471,70,Post
|
||||
53.05126,8.62471
|
||||
53.05124,8.62472
|
||||
53.05057,8.62501
|
||||
53.05019,8.6251
|
||||
53.04993,8.62514
|
||||
53.04993,8.62514
|
||||
53.04932,8.62526
|
||||
53.04917,8.6253
|
||||
53.04913,8.62531
|
||||
53.04907,8.62532
|
||||
53.04901,8.62533
|
||||
53.04864,8.62542
|
||||
53.04852,8.62547
|
||||
53.04852,8.62547
|
||||
53.04836,8.62551
|
||||
53.04824,8.62563
|
||||
53.04815,8.62575
|
||||
53.04807,8.62588
|
||||
53.04801,8.62603
|
||||
53.0477,8.62679
|
||||
53.0477,8.62679
|
||||
53.04776,8.62686
|
||||
53.04785,8.627
|
||||
53.04802,8.62718
|
||||
53.04806,8.62722
|
||||
53.04811,8.62727
|
||||
53.04823,8.62738
|
||||
53.04836,8.62753
|
||||
53.0484,8.62758
|
||||
53.04844,8.62765
|
||||
53.04844,8.62765,73,Markt
|
||||
53.04844,8.62765
|
||||
53.04847,8.6277
|
||||
53.04855,8.62779
|
||||
53.04867,8.62792
|
||||
53.04875,8.62796
|
||||
53.04882,8.62795
|
||||
53.04892,8.6279
|
||||
53.049,8.62777
|
||||
53.04908,8.62749
|
||||
53.04912,8.62734
|
||||
53.04912,8.6273
|
||||
53.04915,8.62717
|
||||
53.04919,8.6269
|
||||
53.0492,8.62683
|
||||
53.04921,8.62678
|
||||
53.04922,8.62637
|
||||
53.04921,8.62613
|
||||
53.04921,8.62595
|
||||
53.04918,8.62555
|
||||
53.04918,8.62548
|
||||
53.04917,8.6253
|
||||
53.04917,8.6253
|
||||
53.04913,8.62531
|
||||
53.04907,8.62532
|
||||
53.04901,8.62533
|
||||
53.04864,8.62542
|
||||
53.04852,8.62547
|
||||
53.04852,8.62547
|
||||
53.04836,8.62551
|
||||
53.04824,8.62563
|
||||
53.04815,8.62575
|
||||
53.04807,8.62588
|
||||
53.04801,8.62603
|
||||
53.0477,8.62679
|
||||
53.0477,8.62679
|
||||
53.04763,8.62698
|
||||
53.04757,8.62713
|
||||
53.04751,8.62732
|
||||
53.04743,8.62769
|
||||
53.04734,8.62822
|
||||
53.04734,8.62822
|
||||
53.04731,8.62835
|
||||
53.04728,8.62851
|
||||
53.04726,8.62861
|
||||
53.04719,8.62886
|
||||
53.04711,8.62907
|
||||
53.04701,8.62932
|
||||
53.04684,8.62973
|
||||
53.04684,8.62973,75,Parkstr.
|
||||
53.04684,8.62973
|
||||
53.04676,8.62994
|
||||
53.04656,8.63034
|
||||
53.04649,8.63044
|
||||
53.04637,8.63064
|
||||
53.04623,8.63082
|
||||
53.04617,8.6309
|
||||
53.04599,8.63115
|
||||
53.04581,8.63138
|
||||
53.04564,8.63159
|
||||
53.04548,8.63181
|
||||
53.04537,8.63195
|
||||
53.04526,8.6321
|
||||
53.04522,8.63215
|
||||
53.0452,8.63217
|
||||
53.04509,8.63231
|
||||
53.04499,8.63241
|
||||
53.04494,8.63246
|
||||
53.04484,8.63255
|
||||
53.04428,8.63304
|
||||
53.044,8.63328
|
||||
53.04393,8.63336
|
||||
53.04383,8.63347
|
||||
53.04378,8.63354
|
||||
53.04324,8.63419
|
||||
53.04324,8.63419,77,Max-Planck-Str.
|
||||
53.04324,8.63419
|
||||
53.04322,8.63422
|
||||
53.04296,8.63455
|
||||
53.04275,8.63478
|
||||
53.04269,8.63484
|
||||
53.04175,8.63573
|
||||
53.04164,8.63587
|
||||
53.04154,8.63599
|
||||
53.04151,8.63604
|
||||
53.04142,8.63617
|
||||
53.04142,8.63617
|
||||
53.04134,8.63605
|
||||
53.0413,8.63599
|
||||
53.04112,8.63575
|
||||
53.04078,8.63527
|
||||
53.04049,8.63487
|
||||
53.04041,8.63475
|
||||
53.04029,8.63459
|
||||
53.04016,8.6344
|
||||
53.03993,8.63408
|
||||
53.03993,8.63408,78,Breslauer Str.
|
||||
53.03993,8.63408
|
||||
53.03985,8.63396
|
||||
53.03974,8.63382
|
||||
53.03947,8.63344
|
||||
53.03943,8.63338
|
||||
53.03926,8.63312
|
||||
53.0391,8.6329
|
||||
53.03891,8.63266
|
||||
53.03839,8.63187
|
||||
53.03839,8.63187
|
||||
53.03829,8.63202
|
||||
53.03817,8.63215
|
||||
53.038,8.63228
|
||||
53.03777,8.6324
|
||||
53.03771,8.63243
|
||||
53.03771,8.63243,79,Königsberger Str.
|
||||
53.03771,8.63243
|
||||
53.03757,8.6325
|
||||
53.03748,8.63254
|
||||
53.03721,8.63267
|
||||
53.03698,8.63282
|
||||
53.0368,8.63296
|
||||
53.0366,8.63307
|
||||
53.03618,8.6333
|
||||
53.03578,8.63349
|
||||
53.0357,8.63354
|
||||
53.03556,8.63359
|
||||
53.03546,8.63365
|
||||
53.03537,8.6337
|
||||
53.03525,8.63376
|
||||
53.03509,8.63383
|
||||
53.03509,8.63383,80,Liegnitzer Str.
|
||||
53.03509,8.63384
|
||||
53.03491,8.63393
|
||||
53.03437,8.63421
|
||||
53.03356,8.63464
|
||||
53.03335,8.63475
|
||||
53.03332,8.63476
|
||||
53.03332,8.63476,81,Görlitzer Str.
|
||||
53.03332,8.63476
|
||||
53.03298,8.63493
|
||||
53.03274,8.63507
|
||||
53.03251,8.6351
|
||||
53.03246,8.6351
|
||||
53.03225,8.63511
|
||||
53.03211,8.63512
|
||||
53.03153,8.63512
|
||||
53.03087,8.63514
|
||||
53.03087,8.63514,81,Danziger Str.
|
||||
53.03086,8.63514
|
||||
53.03062,8.63515
|
||||
53.03052,8.63514
|
||||
53.0304,8.63511
|
||||
53.0303,8.63505
|
||||
53.03016,8.63492
|
||||
53.03007,8.63479
|
||||
53.02986,8.63448
|
||||
53.02976,8.63434
|
||||
53.02933,8.63372
|
||||
53.02886,8.63302
|
||||
53.02843,8.6324
|
||||
53.02823,8.63211
|
||||
53.02789,8.63163
|
||||
53.02785,8.63157
|
||||
53.02778,8.63147
|
||||
53.02778,8.63147
|
||||
53.02785,8.63135
|
||||
53.02788,8.63129
|
||||
53.02797,8.63111
|
||||
53.02797,8.63111,82,Jägerstr.
|
||||
53.02797,8.63111
|
||||
53.02799,8.63108
|
||||
53.02858,8.62996
|
||||
53.02864,8.62984
|
||||
53.0287,8.62973
|
||||
53.02873,8.62968
|
||||
53.02881,8.62952
|
||||
53.02895,8.62924
|
||||
53.02901,8.62914
|
||||
53.02909,8.62899
|
||||
53.02909,8.62899,83,Overbergstr.
|
||||
53.02909,8.62899
|
||||
53.0291,8.62896
|
||||
53.02933,8.62852
|
||||
53.02939,8.62841
|
||||
53.02945,8.62829
|
||||
53.02945,8.62829
|
||||
53.0294,8.62823
|
||||
53.02928,8.62812
|
||||
53.02907,8.62791
|
||||
53.02893,8.62778
|
||||
53.02876,8.62761
|
||||
53.02873,8.62759
|
||||
53.02868,8.62753
|
||||
53.02749,8.62641
|
||||
53.02724,8.62617
|
||||
53.02695,8.62589
|
||||
53.02688,8.62583
|
||||
53.02688,8.62583,84,Jenaer Str.
|
||||
53.02688,8.62583
|
||||
53.02659,8.62555
|
||||
53.02655,8.62551
|
||||
53.02596,8.62495
|
||||
53.02596,8.62495
|
||||
53.02584,8.62528
|
||||
53.02574,8.62529
|
||||
53.02565,8.62536
|
||||
53.02516,8.62665
|
||||
53.0249,8.62738
|
||||
53.02447,8.62855
|
||||
53.02447,8.62855
|
||||
53.02438,8.62847
|
||||
53.02435,8.62844
|
||||
53.02411,8.62823
|
||||
53.02411,8.62823,86,Chemnitzer Str.
|
||||
53.02411,8.62823
|
||||
53.02388,8.62803
|
||||
53.02365,8.62783
|
||||
53.02344,8.62764
|
||||
53.0233,8.62752
|
||||
53.02312,8.62741
|
||||
53.0229,8.6274
|
||||
53.02272,8.62749
|
||||
53.02255,8.62764
|
||||
53.02247,8.62782
|
||||
53.02239,8.62799
|
||||
53.02212,8.62871
|
||||
53.02203,8.62896
|
||||
53.02189,8.62929
|
||||
53.02189,8.62929,86,Altenburger Str.
|
||||
53.02189,8.62929
|
||||
53.02189,8.62931
|
||||
53.02176,8.62964
|
||||
53.02166,8.62985
|
||||
53.02154,8.63001
|
||||
53.02136,8.63019
|
||||
53.02136,8.63019
|
||||
53.02124,8.62987
|
||||
53.02101,8.62929
|
||||
53.02076,8.62863
|
||||
53.02066,8.62838
|
||||
53.02063,8.62829
|
||||
53.0206,8.62821
|
||||
53.02059,8.6281
|
||||
53.02059,8.6281
|
||||
53.02105,8.62611
|
||||
53.02124,8.62529
|
||||
53.02126,8.62521
|
||||
53.02127,8.62516,88,Gothaer Str.
|
||||
53.02127,8.62516,90,Gothaer Str.
|
||||
|
+766
-71
@@ -1,71 +1,766 @@
|
||||
658,47,5,Bungerhof
|
||||
644,75,6,Brauereiweg
|
||||
636,85
|
||||
590,83,7,Friedhof
|
||||
543,78,8,Gorch-Fock-Str.
|
||||
498,75,8,Hebbelweg
|
||||
468,68
|
||||
463,75,9,Friedensstr.
|
||||
470,134,10,Scheffelstr.
|
||||
480,198,11,Dwostr.
|
||||
482,216
|
||||
518,239,12,Rilkeweg
|
||||
546,260,13,Schönemoorer Str.
|
||||
554,319,14,Thüringer Str.
|
||||
560,359,15,Am Wollepark
|
||||
566,386
|
||||
563,392
|
||||
548,396
|
||||
527,398,18,Bahnhof / ZOB J
|
||||
527,398,24,Bahnhof / ZOB J
|
||||
509,402
|
||||
493,415
|
||||
494,432,25,Post
|
||||
496,445,28,Markt A
|
||||
474,456
|
||||
450,463
|
||||
442,471,30,Holbeinstr./Graft Therme
|
||||
412,533
|
||||
411,530,32,Berufsschule
|
||||
362,505,33,Feuerbachstr.
|
||||
336,491,34,Schumannstr.
|
||||
299,519,35,Brahmsstr.
|
||||
242,520,36,Mozartstr.
|
||||
220,514,37,Josef-Hospital
|
||||
199,569,38,Hanse-Wissenschaftsk.
|
||||
199,569,48,Hanse-Wissenschaftsk.
|
||||
220,514,49,Josef-Hospital
|
||||
242,520,50,Mozartstr.
|
||||
299,519,51,Brahmsstr.
|
||||
336,491,52,Schumannstr.
|
||||
362,505,53,Feuerbachstr.
|
||||
411,530,54,Berufsschule
|
||||
412,533
|
||||
442,471,55,Holbeinstr./Graft Therme
|
||||
450,463
|
||||
474,456
|
||||
496,445,59,Markt C1
|
||||
494,432,60,Post
|
||||
493,415
|
||||
509,402
|
||||
527,398,63,Bahnhof / ZOB D
|
||||
527,398,69,Bahnhof / ZOB D
|
||||
548,396
|
||||
563,392
|
||||
566,386
|
||||
560,359,71,Am Wollepark
|
||||
554,319,72,Thüringer Str.
|
||||
546,260,73,Schönemoorer Str.
|
||||
518,239,74,Rilkeweg
|
||||
482,216
|
||||
480,198,74,Dwostr.
|
||||
470,134,75,Scheffelstr.
|
||||
463,75,76,Friedensstr.
|
||||
468,68
|
||||
498,75,77,Hebbelweg
|
||||
543,78,77,Gorch-Fock-Str.
|
||||
590,83,78,Friedhof
|
||||
636,85
|
||||
644,75,78,Brauereiweg
|
||||
658,47,79,Bungerhof
|
||||
658,47,90,Bungerhof
|
||||
53.07553,8.64303,5,Bungerhof,Bungerhof
|
||||
53.07501,8.64269
|
||||
53.07484,8.64257
|
||||
53.07476,8.64251
|
||||
53.0747,8.64247
|
||||
53.07454,8.64237
|
||||
53.07425,8.64218
|
||||
53.07403,8.64202
|
||||
53.07396,8.64198
|
||||
53.07369,8.64177
|
||||
53.07327,8.64139
|
||||
53.07313,8.64124
|
||||
53.07285,8.64095
|
||||
53.07264,8.64073
|
||||
53.07233,8.64039
|
||||
53.07215,8.6402
|
||||
53.0721,8.64015
|
||||
53.0721,8.64015
|
||||
53.07217,8.63997
|
||||
53.07222,8.63967
|
||||
53.07224,8.63919
|
||||
53.07225,8.63914
|
||||
53.07225,8.63914,6,Brauereiweg
|
||||
53.07225,8.63914
|
||||
53.07226,8.63883
|
||||
53.07232,8.63758
|
||||
53.07233,8.63722
|
||||
53.07237,8.63646
|
||||
53.07237,8.63638
|
||||
53.07239,8.63594
|
||||
53.07239,8.63594,7,Friedhof
|
||||
53.07239,8.63594
|
||||
53.0724,8.63589
|
||||
53.07241,8.63565
|
||||
53.07243,8.63491
|
||||
53.0725,8.63359
|
||||
53.07258,8.6315
|
||||
53.07261,8.63083
|
||||
53.07261,8.63083,8,Gorch-Fock-Str.
|
||||
53.07261,8.63082
|
||||
53.07263,8.6305
|
||||
53.07264,8.63009
|
||||
53.07268,8.6294
|
||||
53.07268,8.62921
|
||||
53.07271,8.62863
|
||||
53.07274,8.62804
|
||||
53.07276,8.62752
|
||||
53.07279,8.62656
|
||||
53.0728,8.62635
|
||||
53.07281,8.62615
|
||||
53.07281,8.62615,8,Hebbelweg
|
||||
53.07281,8.62615
|
||||
53.07284,8.62565
|
||||
53.07291,8.62485
|
||||
53.07302,8.62369
|
||||
53.07334,8.62183
|
||||
53.07335,8.62162
|
||||
53.07335,8.62162
|
||||
53.07325,8.62164
|
||||
53.07304,8.62168
|
||||
53.07301,8.62168
|
||||
53.07301,8.62168,9,Friedensstr.
|
||||
53.07301,8.62168
|
||||
53.07251,8.62177
|
||||
53.07179,8.62192
|
||||
53.07076,8.62213
|
||||
53.07051,8.62217
|
||||
53.07048,8.62218
|
||||
53.07036,8.6222
|
||||
53.06957,8.62231
|
||||
53.06952,8.62232
|
||||
53.06945,8.62233
|
||||
53.06912,8.62237
|
||||
53.06879,8.62244
|
||||
53.06879,8.62244,10,Scheffelstr.
|
||||
53.06879,8.62244
|
||||
53.06877,8.62244
|
||||
53.06827,8.62253
|
||||
53.06808,8.62257
|
||||
53.06756,8.62266
|
||||
53.06731,8.62271
|
||||
53.0667,8.62284
|
||||
53.06596,8.62299
|
||||
53.06583,8.62302
|
||||
53.06562,8.62306
|
||||
53.06507,8.62318
|
||||
53.06453,8.62331
|
||||
53.06444,8.62333
|
||||
53.06433,8.62338
|
||||
53.06421,8.62345
|
||||
53.06409,8.62357
|
||||
53.06409,8.62357,11,Dwostr.
|
||||
53.06409,8.62357
|
||||
53.06402,8.62364
|
||||
53.06385,8.62393
|
||||
53.06378,8.62408
|
||||
53.06377,8.62411
|
||||
53.06324,8.62532
|
||||
53.06317,8.62548
|
||||
53.06317,8.62548,12,Rilkeweg
|
||||
53.06317,8.62548
|
||||
53.06316,8.6255
|
||||
53.06303,8.6258
|
||||
53.06264,8.62667
|
||||
53.06192,8.62834
|
||||
53.06189,8.62841
|
||||
53.06153,8.62922
|
||||
53.06134,8.62963
|
||||
53.06123,8.62987
|
||||
53.06111,8.63011
|
||||
53.06111,8.63029
|
||||
53.06113,8.63052
|
||||
53.06113,8.63052
|
||||
53.06089,8.63057
|
||||
53.06089,8.63057,13,Schönemoorer Str.
|
||||
53.06089,8.63057
|
||||
53.06063,8.63063
|
||||
53.06043,8.63068
|
||||
53.06034,8.6307
|
||||
53.06025,8.63072
|
||||
53.06006,8.63076
|
||||
53.0596,8.63086
|
||||
53.05925,8.63094
|
||||
53.05908,8.63097
|
||||
53.05906,8.63097
|
||||
53.05872,8.63105
|
||||
53.05808,8.63119
|
||||
53.05795,8.63122
|
||||
53.05783,8.63125
|
||||
53.05776,8.63126
|
||||
53.05743,8.63134
|
||||
53.05703,8.63143
|
||||
53.05702,8.63144
|
||||
53.05702,8.63144,14,Thüringer Str.
|
||||
53.05702,8.63144
|
||||
53.05619,8.63162
|
||||
53.05607,8.63165
|
||||
53.05598,8.63167
|
||||
53.05591,8.63166
|
||||
53.05587,8.63165
|
||||
53.05585,8.63166
|
||||
53.0557,8.63171
|
||||
53.05555,8.63176
|
||||
53.05553,8.63176
|
||||
53.05531,8.63183
|
||||
53.05483,8.63204
|
||||
53.05424,8.6323
|
||||
53.05424,8.6323,15,Am Wollepark
|
||||
53.05424,8.6323
|
||||
53.0542,8.63232
|
||||
53.05378,8.6325
|
||||
53.05328,8.63273
|
||||
53.05299,8.63286
|
||||
53.05299,8.63286
|
||||
53.05284,8.63284
|
||||
53.05277,8.63279
|
||||
53.05271,8.6327
|
||||
53.05266,8.63257
|
||||
53.05265,8.63245
|
||||
53.05264,8.63232
|
||||
53.05256,8.63133
|
||||
53.05257,8.63106
|
||||
53.05255,8.6308
|
||||
53.05245,8.62968
|
||||
53.05245,8.62968,18,Bahnhof / ZOB J
|
||||
53.05245,8.62968,24,Bahnhof / ZOB J
|
||||
53.05245,8.62966
|
||||
53.05237,8.62853
|
||||
53.05232,8.62787
|
||||
53.05218,8.62639
|
||||
53.05217,8.62624
|
||||
53.05208,8.62501
|
||||
53.05208,8.62501
|
||||
53.05198,8.6248
|
||||
53.0519,8.62466
|
||||
53.05177,8.62449
|
||||
53.05177,8.62449
|
||||
53.05165,8.62455
|
||||
53.05127,8.62471
|
||||
53.05127,8.62471,25,Post
|
||||
53.05127,8.62471
|
||||
53.05124,8.62472
|
||||
53.05057,8.62501
|
||||
53.05019,8.6251
|
||||
53.04993,8.62514
|
||||
53.04993,8.62514
|
||||
53.04932,8.62526
|
||||
53.04917,8.6253
|
||||
53.04913,8.62531
|
||||
53.04907,8.62532
|
||||
53.04901,8.62533
|
||||
53.04864,8.62542
|
||||
53.04852,8.62547
|
||||
53.04852,8.62547
|
||||
53.04836,8.62551
|
||||
53.04824,8.62563
|
||||
53.04815,8.62575
|
||||
53.04807,8.62588
|
||||
53.04801,8.62603
|
||||
53.0477,8.62679
|
||||
53.0477,8.62679
|
||||
53.04776,8.62686
|
||||
53.04785,8.627
|
||||
53.04802,8.62718
|
||||
53.04806,8.62722
|
||||
53.04811,8.62727
|
||||
53.04823,8.62738
|
||||
53.04836,8.62753
|
||||
53.0484,8.62758
|
||||
53.04847,8.6277
|
||||
53.04855,8.62779
|
||||
53.04867,8.62792
|
||||
53.04867,8.62792,28,Markt A
|
||||
53.04867,8.62792
|
||||
53.04875,8.62796
|
||||
53.04882,8.62795
|
||||
53.04892,8.6279
|
||||
53.049,8.62777
|
||||
53.04908,8.62749
|
||||
53.04912,8.62734
|
||||
53.04912,8.6273
|
||||
53.04915,8.62717
|
||||
53.04919,8.6269
|
||||
53.0492,8.62683
|
||||
53.04921,8.62678
|
||||
53.04922,8.62637
|
||||
53.04921,8.62613
|
||||
53.04921,8.62595
|
||||
53.04918,8.62555
|
||||
53.04918,8.62548
|
||||
53.04917,8.6253
|
||||
53.04917,8.6253
|
||||
53.04913,8.62531
|
||||
53.04907,8.62532
|
||||
53.04901,8.62533
|
||||
53.04864,8.62542
|
||||
53.04852,8.62547
|
||||
53.04852,8.62547
|
||||
53.04843,8.62507
|
||||
53.0484,8.62477
|
||||
53.04836,8.62443
|
||||
53.04835,8.62431
|
||||
53.04832,8.624
|
||||
53.04824,8.6233
|
||||
53.04816,8.62264
|
||||
53.04812,8.62232
|
||||
53.04807,8.6219
|
||||
53.04797,8.62123
|
||||
53.04794,8.62099
|
||||
53.04793,8.62084
|
||||
53.04797,8.62059
|
||||
53.04797,8.62059
|
||||
53.04798,8.62059
|
||||
53.048,8.62057
|
||||
53.04802,8.62054
|
||||
53.04803,8.6205
|
||||
53.04804,8.62046
|
||||
53.04803,8.6204
|
||||
53.04801,8.62035
|
||||
53.04799,8.62033
|
||||
53.04798,8.62032
|
||||
53.04795,8.62032
|
||||
53.04792,8.62033
|
||||
53.04792,8.62033
|
||||
53.04786,8.62014
|
||||
53.04781,8.62
|
||||
53.04779,8.61996
|
||||
53.04776,8.61991
|
||||
53.04765,8.61977
|
||||
53.04741,8.61953
|
||||
53.0473,8.61943
|
||||
53.04711,8.61926
|
||||
53.04711,8.61926,30,Holbeinstr./Graft Therme
|
||||
53.04711,8.61926
|
||||
53.04711,8.61926
|
||||
53.04677,8.61896
|
||||
53.0466,8.61881
|
||||
53.04593,8.61821
|
||||
53.04588,8.61816
|
||||
53.0458,8.61809
|
||||
53.0449,8.61726
|
||||
53.04468,8.61707
|
||||
53.04406,8.61653
|
||||
53.04377,8.61631
|
||||
53.04314,8.61585
|
||||
53.04314,8.61585
|
||||
53.04335,8.61528
|
||||
53.04341,8.61513
|
||||
53.0435,8.61487
|
||||
53.0435,8.61487,32,Berufsschule
|
||||
53.0435,8.61487
|
||||
53.04352,8.61481
|
||||
53.04358,8.61464
|
||||
53.04363,8.61451
|
||||
53.04365,8.61446
|
||||
53.04371,8.61429
|
||||
53.04398,8.61351
|
||||
53.04434,8.6125
|
||||
53.04465,8.61165
|
||||
53.04486,8.61109
|
||||
53.04505,8.61056
|
||||
53.04515,8.61031
|
||||
53.04515,8.61031,33,Feuerbachstr.
|
||||
53.04515,8.61031
|
||||
53.04517,8.61025
|
||||
53.04539,8.60965
|
||||
53.04539,8.60965
|
||||
53.04551,8.60971
|
||||
53.04626,8.61
|
||||
53.04709,8.6103
|
||||
53.04709,8.6103
|
||||
53.04713,8.60999
|
||||
53.04752,8.60824
|
||||
53.04752,8.60824
|
||||
53.04744,8.60817
|
||||
53.04711,8.60799
|
||||
53.0469,8.60787
|
||||
53.04681,8.60781
|
||||
53.04681,8.60781,34,Schumannstr.
|
||||
53.04681,8.60781
|
||||
53.04655,8.60765
|
||||
53.04652,8.60764
|
||||
53.04636,8.60751
|
||||
53.04621,8.60737
|
||||
53.04596,8.60707
|
||||
53.04571,8.60655
|
||||
53.04562,8.60636
|
||||
53.04484,8.60483
|
||||
53.0447,8.60455
|
||||
53.0446,8.60436
|
||||
53.04456,8.60428
|
||||
53.0444,8.60396
|
||||
53.0443,8.60375
|
||||
53.04397,8.6031
|
||||
53.04397,8.6031
|
||||
53.04401,8.60306
|
||||
53.04406,8.60299
|
||||
53.04408,8.6029
|
||||
53.04408,8.60272
|
||||
53.04408,8.60272,35,Brahmsstr.
|
||||
53.04408,8.60271
|
||||
53.04409,8.60211
|
||||
53.0441,8.59964
|
||||
53.04411,8.59904
|
||||
53.04411,8.5986
|
||||
53.04411,8.59858
|
||||
53.04411,8.59858,36,Mozartstr.
|
||||
53.04411,8.59858
|
||||
53.04412,8.5982
|
||||
53.04415,8.59779
|
||||
53.04416,8.59764
|
||||
53.04435,8.59665
|
||||
53.04468,8.59547
|
||||
53.04468,8.59547
|
||||
53.04456,8.59534
|
||||
53.04429,8.5951
|
||||
53.04429,8.5951,37,Josef-Hospital
|
||||
53.04429,8.59509
|
||||
53.04407,8.59494
|
||||
53.04393,8.59485
|
||||
53.04392,8.59484
|
||||
53.04336,8.5945
|
||||
53.04294,8.59424
|
||||
53.0429,8.59421
|
||||
53.04249,8.59396
|
||||
53.04211,8.59371
|
||||
53.04175,8.59348
|
||||
53.0417,8.59345
|
||||
53.04161,8.5934
|
||||
53.0416,8.5934
|
||||
53.0414,8.59328
|
||||
53.04117,8.59315
|
||||
53.04107,8.5931
|
||||
53.04098,8.59305
|
||||
53.04052,8.59273
|
||||
53.04052,8.59273
|
||||
53.04054,8.59267
|
||||
53.04054,8.59263
|
||||
53.04052,8.59253
|
||||
53.04049,8.59247
|
||||
53.04044,8.59244
|
||||
53.0404,8.59244
|
||||
53.04038,8.59245
|
||||
53.04034,8.59249
|
||||
53.04032,8.59254
|
||||
53.0403,8.59262
|
||||
53.04031,8.59269
|
||||
53.04033,8.59275
|
||||
53.04034,8.59278
|
||||
53.04038,8.59281
|
||||
53.04041,8.59283
|
||||
53.04045,8.59282
|
||||
53.04048,8.5928
|
||||
53.04052,8.59273
|
||||
53.04098,8.59305
|
||||
53.04107,8.5931
|
||||
53.04117,8.59315
|
||||
53.04118,8.59316
|
||||
53.04118,8.59316,38,Hanse-Wissenschaftsk.,Deichhorst
|
||||
53.04118,8.59316
|
||||
53.0414,8.59328
|
||||
53.0416,8.5934
|
||||
53.04161,8.5934
|
||||
53.04162,8.59341
|
||||
53.04162,8.59341,48,Hanse-Wissenschaftsk.
|
||||
53.04162,8.59341
|
||||
53.0417,8.59345
|
||||
53.04175,8.59348
|
||||
53.04211,8.59371
|
||||
53.04249,8.59396
|
||||
53.0429,8.59421
|
||||
53.04294,8.59424
|
||||
53.04336,8.5945
|
||||
53.04389,8.59483
|
||||
53.04389,8.59483,49,Josef-Hospital
|
||||
53.04389,8.59483
|
||||
53.04392,8.59484
|
||||
53.04393,8.59485
|
||||
53.04407,8.59494
|
||||
53.04429,8.59509
|
||||
53.04456,8.59534
|
||||
53.04468,8.59547
|
||||
53.04468,8.59547
|
||||
53.04435,8.59665
|
||||
53.04416,8.59764
|
||||
53.04415,8.59779
|
||||
53.04412,8.5982
|
||||
53.04412,8.5982,50,Mozartstr.
|
||||
53.04412,8.59821
|
||||
53.04411,8.5986
|
||||
53.04411,8.59904
|
||||
53.0441,8.59964
|
||||
53.04409,8.60211
|
||||
53.04408,8.60272
|
||||
53.04408,8.6029
|
||||
53.04406,8.60299
|
||||
53.04401,8.60306
|
||||
53.04397,8.6031
|
||||
53.04397,8.6031
|
||||
53.0443,8.60375
|
||||
53.0443,8.60375,51,Brahmsstr.
|
||||
53.0443,8.60375
|
||||
53.0444,8.60396
|
||||
53.04456,8.60428
|
||||
53.0446,8.60436
|
||||
53.0447,8.60455
|
||||
53.04484,8.60483
|
||||
53.04562,8.60636
|
||||
53.04571,8.60655
|
||||
53.04596,8.60707
|
||||
53.04621,8.60737
|
||||
53.04636,8.60751
|
||||
53.04652,8.60764
|
||||
53.04655,8.60765
|
||||
53.0469,8.60787
|
||||
53.04697,8.60791
|
||||
53.04697,8.60791,52,Schumannstr.
|
||||
53.04697,8.60791
|
||||
53.04711,8.60799
|
||||
53.04744,8.60817
|
||||
53.04752,8.60824
|
||||
53.04752,8.60824
|
||||
53.04713,8.60999
|
||||
53.04709,8.6103
|
||||
53.04709,8.6103
|
||||
53.04626,8.61
|
||||
53.04551,8.60971
|
||||
53.04539,8.60965
|
||||
53.04539,8.60965
|
||||
53.04517,8.61025
|
||||
53.04505,8.61056
|
||||
53.04486,8.61109
|
||||
53.04486,8.61109,53,Feuerbachstr.
|
||||
53.04486,8.61109
|
||||
53.04465,8.61165
|
||||
53.04434,8.6125
|
||||
53.04398,8.61351
|
||||
53.04371,8.61429
|
||||
53.04365,8.61446
|
||||
53.04363,8.61451
|
||||
53.04358,8.61464
|
||||
53.04353,8.61479
|
||||
53.04353,8.61479,54,Berufsschule
|
||||
53.04353,8.61479
|
||||
53.04352,8.61481
|
||||
53.04341,8.61513
|
||||
53.04335,8.61528
|
||||
53.04314,8.61585
|
||||
53.04314,8.61585
|
||||
53.04377,8.61631
|
||||
53.04406,8.61653
|
||||
53.04468,8.61707
|
||||
53.0449,8.61726
|
||||
53.0458,8.61809
|
||||
53.04588,8.61816
|
||||
53.04593,8.61821
|
||||
53.0466,8.61881
|
||||
53.04677,8.61896
|
||||
53.04711,8.61926
|
||||
53.0473,8.61943
|
||||
53.04741,8.61953
|
||||
53.04758,8.6197
|
||||
53.04758,8.6197,55,Holbeinstr./Graft Therme
|
||||
53.04758,8.6197
|
||||
53.04765,8.61977
|
||||
53.04776,8.61991
|
||||
53.04779,8.61996
|
||||
53.04781,8.62
|
||||
53.04786,8.62014
|
||||
53.04792,8.62033
|
||||
53.04792,8.62033
|
||||
53.0479,8.62035
|
||||
53.04788,8.6204
|
||||
53.04787,8.62042
|
||||
53.04787,8.62048
|
||||
53.04788,8.62053
|
||||
53.0479,8.62056
|
||||
53.04792,8.62058
|
||||
53.04792,8.62058
|
||||
53.04793,8.62084
|
||||
53.04794,8.62099
|
||||
53.04797,8.62123
|
||||
53.04807,8.6219
|
||||
53.04812,8.62232
|
||||
53.04816,8.62264
|
||||
53.04824,8.6233
|
||||
53.04832,8.624
|
||||
53.04835,8.62431
|
||||
53.04836,8.62443
|
||||
53.0484,8.62477
|
||||
53.04843,8.62507
|
||||
53.04852,8.62547
|
||||
53.04852,8.62547
|
||||
53.04836,8.62551
|
||||
53.04824,8.62563
|
||||
53.04815,8.62575
|
||||
53.04807,8.62588
|
||||
53.04801,8.62603
|
||||
53.0477,8.62679
|
||||
53.0477,8.62679
|
||||
53.04776,8.62686
|
||||
53.04785,8.627
|
||||
53.04795,8.6271
|
||||
53.04795,8.6271,59,Markt C1
|
||||
53.04795,8.6271
|
||||
53.04802,8.62718
|
||||
53.04806,8.62722
|
||||
53.04811,8.62727
|
||||
53.04823,8.62738
|
||||
53.04836,8.62753
|
||||
53.0484,8.62758
|
||||
53.04847,8.6277
|
||||
53.04855,8.62779
|
||||
53.04867,8.62792
|
||||
53.04875,8.62796
|
||||
53.04882,8.62795
|
||||
53.04892,8.6279
|
||||
53.049,8.62777
|
||||
53.04908,8.62749
|
||||
53.04912,8.62734
|
||||
53.04912,8.6273
|
||||
53.04915,8.62717
|
||||
53.04919,8.6269
|
||||
53.0492,8.62683
|
||||
53.04921,8.62678
|
||||
53.04922,8.62637
|
||||
53.04921,8.62613
|
||||
53.04921,8.62595
|
||||
53.04918,8.62555
|
||||
53.04918,8.62548
|
||||
53.04917,8.6253
|
||||
53.04917,8.6253
|
||||
53.04932,8.62526
|
||||
53.04993,8.62514
|
||||
53.05019,8.6251
|
||||
53.05019,8.6251,60,Post
|
||||
53.05019,8.6251
|
||||
53.05057,8.62501
|
||||
53.05124,8.62472
|
||||
53.05165,8.62455
|
||||
53.05165,8.62455
|
||||
53.05166,8.62476
|
||||
53.05169,8.62506
|
||||
53.0517,8.62519
|
||||
53.05175,8.62573
|
||||
53.0518,8.62629
|
||||
53.05181,8.62642
|
||||
53.05183,8.62659
|
||||
53.05183,8.62666
|
||||
53.05184,8.62677
|
||||
53.05185,8.62687
|
||||
53.05193,8.6278
|
||||
53.05195,8.62804
|
||||
53.05195,8.62822
|
||||
53.05193,8.62839
|
||||
53.05188,8.62865
|
||||
53.05187,8.62872
|
||||
53.05184,8.62888
|
||||
53.05183,8.62913
|
||||
53.05187,8.62972
|
||||
53.05187,8.62972,63,Bahnhof / ZOB D
|
||||
53.05187,8.62972,69,Bahnhof / ZOB D
|
||||
53.05187,8.62972
|
||||
53.05188,8.62983
|
||||
53.05194,8.63053
|
||||
53.05198,8.631
|
||||
53.05203,8.63172
|
||||
53.0521,8.63238
|
||||
53.05215,8.63304
|
||||
53.05216,8.63313
|
||||
53.05218,8.63322
|
||||
53.05218,8.63322
|
||||
53.05222,8.6334
|
||||
53.05261,8.63323
|
||||
53.05271,8.63318
|
||||
53.05329,8.63291
|
||||
53.05329,8.63291
|
||||
53.05418,8.63247
|
||||
53.05418,8.63247,71,Am Wollepark
|
||||
53.05418,8.63247
|
||||
53.05422,8.63245
|
||||
53.055,8.6321
|
||||
53.05516,8.63203
|
||||
53.05551,8.6319
|
||||
53.05554,8.63188
|
||||
53.05557,8.63188
|
||||
53.05571,8.63183
|
||||
53.05585,8.63179
|
||||
53.05587,8.63178
|
||||
53.0559,8.63177
|
||||
53.05598,8.63167
|
||||
53.05607,8.63165
|
||||
53.05619,8.63162
|
||||
53.05703,8.63143
|
||||
53.05743,8.63134
|
||||
53.05775,8.63126
|
||||
53.05775,8.63126,72,Thüringer Str.
|
||||
53.05775,8.63126
|
||||
53.05776,8.63126
|
||||
53.05783,8.63125
|
||||
53.05795,8.63122
|
||||
53.05808,8.63119
|
||||
53.05872,8.63105
|
||||
53.05906,8.63097
|
||||
53.05908,8.63097
|
||||
53.05925,8.63094
|
||||
53.0596,8.63086
|
||||
53.06006,8.63076
|
||||
53.06023,8.63072
|
||||
53.06023,8.63072,73,Schönemoorer Str.
|
||||
53.06023,8.63072
|
||||
53.06025,8.63072
|
||||
53.06034,8.6307
|
||||
53.06043,8.63068
|
||||
53.06063,8.63063
|
||||
53.06089,8.63057
|
||||
53.06113,8.63052
|
||||
53.06113,8.63052
|
||||
53.06111,8.63029
|
||||
53.06111,8.63011
|
||||
53.06123,8.62987
|
||||
53.06134,8.62963
|
||||
53.06153,8.62922
|
||||
53.06189,8.62841
|
||||
53.06192,8.62834
|
||||
53.06264,8.62667
|
||||
53.06302,8.62581
|
||||
53.06302,8.62581,74,Rilkeweg
|
||||
53.06303,8.6258
|
||||
53.06316,8.6255
|
||||
53.06324,8.62532
|
||||
53.06377,8.62411
|
||||
53.06378,8.62408
|
||||
53.06385,8.62393
|
||||
53.06402,8.62364
|
||||
53.06421,8.62345
|
||||
53.06433,8.62338
|
||||
53.06444,8.62333
|
||||
53.06453,8.62331
|
||||
53.06507,8.62318
|
||||
53.06562,8.62306
|
||||
53.06583,8.62302
|
||||
53.06593,8.623
|
||||
53.06593,8.623,74,Dwostr.
|
||||
53.06593,8.623
|
||||
53.06596,8.62299
|
||||
53.0667,8.62284
|
||||
53.06731,8.62271
|
||||
53.06756,8.62266
|
||||
53.06808,8.62257
|
||||
53.06827,8.62253
|
||||
53.06877,8.62244
|
||||
53.06912,8.62237
|
||||
53.06945,8.62233
|
||||
53.06945,8.62233,75,Scheffelstr.
|
||||
53.06945,8.62233
|
||||
53.06952,8.62232
|
||||
53.06957,8.62231
|
||||
53.07036,8.6222
|
||||
53.07048,8.62218
|
||||
53.07051,8.62217
|
||||
53.07076,8.62213
|
||||
53.07179,8.62192
|
||||
53.07251,8.62177
|
||||
53.07303,8.62168
|
||||
53.07303,8.62168,76,Friedensstr.
|
||||
53.07303,8.62168
|
||||
53.07304,8.62168
|
||||
53.07325,8.62164
|
||||
53.07335,8.62162
|
||||
53.07335,8.62162
|
||||
53.07334,8.62183
|
||||
53.07302,8.62369
|
||||
53.07291,8.62485
|
||||
53.07284,8.62565
|
||||
53.0728,8.62635
|
||||
53.0728,8.62651
|
||||
53.0728,8.62651,77,Hebbelweg
|
||||
53.0728,8.62651
|
||||
53.07279,8.62656
|
||||
53.07276,8.62752
|
||||
53.07274,8.62804
|
||||
53.07271,8.62863
|
||||
53.07268,8.62921
|
||||
53.07268,8.6294
|
||||
53.07265,8.62999
|
||||
53.07265,8.62999,77,Gorch-Fock-Str.
|
||||
53.07265,8.62999
|
||||
53.07264,8.63009
|
||||
53.07263,8.6305
|
||||
53.07261,8.63082
|
||||
53.07258,8.6315
|
||||
53.0725,8.63359
|
||||
53.07243,8.63491
|
||||
53.07241,8.63565
|
||||
53.0724,8.63582
|
||||
53.0724,8.63582,78,Friedhof
|
||||
53.0724,8.63582
|
||||
53.0724,8.63589
|
||||
53.07237,8.63638
|
||||
53.07237,8.63646
|
||||
53.07233,8.63722
|
||||
53.07232,8.63758
|
||||
53.07226,8.63883
|
||||
53.07224,8.63919
|
||||
53.07224,8.63924
|
||||
53.07224,8.63924,78,Brauereiweg
|
||||
53.07224,8.63924
|
||||
53.07222,8.63967
|
||||
53.07217,8.63997
|
||||
53.0721,8.64015
|
||||
53.0721,8.64015
|
||||
53.07215,8.6402
|
||||
53.07233,8.64039
|
||||
53.07264,8.64073
|
||||
53.07285,8.64095
|
||||
53.07313,8.64124
|
||||
53.07327,8.64139
|
||||
53.07369,8.64177
|
||||
53.07396,8.64198
|
||||
53.07403,8.64202
|
||||
53.07425,8.64218
|
||||
53.07454,8.64237
|
||||
53.07468,8.64246
|
||||
53.07468,8.64246,79,Bungerhof
|
||||
53.07468,8.64246,90,Bungerhof
|
||||
|
@@ -0,0 +1,53 @@
|
||||
/*
|
||||
* Copyright (c) 2020. Pascal Syma <pascal@syma.dev>.
|
||||
* All rights reserved.
|
||||
*/
|
||||
|
||||
body {
|
||||
margin: 0;
|
||||
height: 0;
|
||||
}
|
||||
|
||||
#buttons {
|
||||
z-index: 500;
|
||||
position: fixed;
|
||||
margin: 8px;
|
||||
bottom: 0;
|
||||
}
|
||||
|
||||
#settings {
|
||||
position: fixed;
|
||||
margin: 8px;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
}
|
||||
|
||||
#bus {
|
||||
position: fixed;
|
||||
right: 0;
|
||||
margin: 8px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
button, input {
|
||||
width: 30px;
|
||||
height: 30px;
|
||||
}
|
||||
|
||||
#map {
|
||||
height: 100vh;
|
||||
width: 100vw;
|
||||
}
|
||||
|
||||
#display {
|
||||
width: 70px;
|
||||
}
|
||||
|
||||
#showStops {
|
||||
width: 100px;
|
||||
}
|
||||
|
||||
#mpm {
|
||||
width: 50px;
|
||||
height: 24px;
|
||||
}
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 6.7 KiB |
@@ -33,6 +33,10 @@ module.exports = {
|
||||
test: /\.csv$/i,
|
||||
use: 'raw-loader',
|
||||
},
|
||||
{
|
||||
test: /\.css$/i,
|
||||
use: ['style-loader', 'css-loader'],
|
||||
},
|
||||
]
|
||||
},
|
||||
resolve: {
|
||||
|
||||
Reference in New Issue
Block a user