├── README.md ├── Weser-Radweg-Hauptroute.csv ├── map.png └── mapbender.py /README.md: -------------------------------------------------------------------------------- 1 | Mapbender bends a map along a path. 2 | 3 | Example execution: 4 | 5 | ./mapbender.py Weser-Radweg-Hauptroute.csv 0.286 6 20 6 | 7 | The openstreetmap map of the Weser area is currently hardcoded. Upon execution 8 | it will show the path given in Weser-Radweg-Hauptroute.csv on the map in a 9 | matplotlib plot. It will show the approximated b-spline with the given 10 | smoothing factor (6 above) and the map section of the given width (0.286 above) 11 | around that curve. The area will be split into sections (20 in the example) 12 | which will individually be transformed into rectangles which are also plotted. 13 | 14 | On Debian systems you need the following packages: 15 | 16 | apt-get install python python-pil python-scipy python-tk python-matplotlib python-numpy 17 | -------------------------------------------------------------------------------- /Weser-Radweg-Hauptroute.csv: -------------------------------------------------------------------------------- 1 | 9.6581040043384 51.41319695860146 2 | 9.65868797153236 51.4135240204632 3 | 9.660673979669829 51.41410295851525 4 | 9.663288965821284 51.41535999253389 5 | 9.66484649106862 51.41692978119291 6 | 9.659085609018819 51.41725732013581 7 | 9.657224575057642 51.41762754879889 8 | 9.6538352686912 51.41864217817782 9 | 9.652425851672904 51.4187399111688 10 | 9.653251972049492 51.41966896131632 11 | 9.648427013307824 51.42199099995194 12 | 9.645615974441183 51.42423802055416 13 | 9.645121023058906 51.4253959804773 14 | 9.645296037197129 51.426389990374425 15 | 9.644730007275951 51.42669299617406 16 | 9.643776984885351 51.42786595970389 17 | 9.642471000552192 51.43055898137388 18 | 9.644019976258294 51.427490031346665 19 | 9.642474018037332 51.430551018565865 20 | 9.642089959234015 51.43244398757811 21 | 9.641220001503841 51.43361996859309 22 | 9.640520028769984 51.435329960659146 23 | 9.640939962118878 51.43685999326405 24 | 9.64093996211888 51.43938001245259 25 | 9.641510015353578 51.44184001721439 26 | 9.64436003006996 51.44784003496167 27 | 9.644769988954081 51.44925003871321 28 | 9.64486998505892 51.45132003352046 29 | 9.644130030646936 51.452129976823905 30 | 9.642009995877759 51.45343998447058 31 | 9.641299964860096 51.454930035397396 32 | 9.641559971496477 51.45766002126036 33 | 9.642799990251676 51.461460040882194 34 | 9.642950026318443 51.463819965720155 35 | 9.64349996298553 51.46469000726935 36 | 9.645020021125692 51.466239988803835 37 | 9.645659979432837 51.46748998202384 38 | 9.645659979432837 51.4683000091463 39 | 9.644779963418856 51.470149978995295 40 | 9.643889972940103 51.47126996889707 41 | 9.641770021989958 51.47322001866994 42 | 9.639610005542652 51.474400022998424 43 | 9.63689996860923 51.47512002848088 44 | 9.629270005971206 51.47615997120738 45 | 9.627630002796662 51.47673002444204 46 | 9.626670023426428 51.47732002660632 47 | 9.62270001880826 51.480710003525004 48 | 9.618340004235518 51.484859967604265 49 | 9.613910000771293 51.48997996933755 50 | 9.610460009425891 51.493259975686655 51 | 9.609170034527791 51.4949800260365 52 | 9.609070038422955 51.49554002098738 53 | 9.609343037009252 51.49610303342341 54 | 9.608176024630678 51.49582098238168 55 | 9.607243034988652 51.49747096002102 56 | 9.605970997363341 51.497375993058085 57 | 9.60608499124647 51.49844896048303 58 | 9.607203975319873 51.49843303486702 59 | 9.605730017647158 51.50030001997944 60 | 9.605760024860512 51.500590033829184 61 | 9.605600014328969 51.50056002661582 62 | 9.605760024860512 51.500590033829184 63 | 9.605619963258517 51.50097995996473 64 | 9.60688998922707 51.50129000656305 65 | 9.606720004230748 51.501510031521306 66 | 9.603379983454953 51.50313000194726 67 | 9.601400010287772 51.505759991705396 68 | 9.597539976239215 51.50985002517698 69 | 9.597880030050884 51.51037003844975 70 | 9.594549983739862 51.511609973385916 71 | 9.591610031202444 51.51294001378117 72 | 9.590960014611492 51.51340001262722 73 | 9.59007002413274 51.51521000079809 74 | 9.589740028604874 51.51809002272783 75 | 9.59033003076912 51.51912996545432 76 | 9.591850005090246 51.520439973101006 77 | 9.594010021537553 51.52121999301014 78 | 9.59520997479559 51.52030996978282 79 | 9.595239982008945 51.51980001479385 80 | 9.596470026299368 51.520320028066614 81 | 9.599230019375693 51.52069997973738 82 | 9.600519994273792 51.520450031384826 83 | 9.601370003074418 51.5197700075805 84 | 9.601839976385246 51.51987997815013 85 | 9.602259993553172 51.52022003196177 86 | 9.604190010577453 51.52048003859816 87 | 9.605189971625816 51.52022003196178 88 | 9.606150034815084 51.520690005272606 89 | 9.610030017793191 51.52141001075504 90 | 9.612980028614414 51.521540014073224 91 | 9.61396004073323 51.522179972380385 92 | 9.61528999730946 51.52233000844715 93 | 9.616100024431956 51.522769974544616 94 | 9.618070023134363 51.524230018258095 95 | 9.617940019816174 51.5254999604076 96 | 9.618300022557388 51.526249973103376 97 | 9.6187900286168 51.52677996084092 98 | 9.621750013902796 51.528839981183395 99 | 9.623250039294373 51.53076999820769 100 | 9.624159978702677 51.53530997224151 101 | 9.625100009143365 51.53740997426208 102 | 9.625160023570071 51.53937997296449 103 | 9.62770996615292 51.54065997339783 104 | 9.62783996947111 51.541219968348734 105 | 9.627639977261436 51.54177996329961 106 | 9.627799987792983 51.54179002158341 107 | 9.626040039584053 51.54258001595732 108 | 9.62356000207366 51.54274002648887 109 | 9.622969999909413 51.54313003644344 110 | 9.620549976825728 51.54540999792515 111 | 9.61952000856401 51.546970037743435 112 | 9.614140000194324 51.55301003716884 113 | 9.612260023131977 51.55621997080741 114 | 9.610720016062269 51.558210002258384 115 | 9.609129969030633 51.559529984369874 116 | 9.608989991247663 51.5594999771565 117 | 9.609410008415589 51.55922999605533 118 | 9.608559999614966 51.559729976579526 119 | 9.608260011300457 51.56033003702758 120 | 9.604949997738014 51.563330003991695 121 | 9.605939984321607 51.56221001408993 122 | 9.604610027745375 51.56346000730988 123 | 9.601779961958536 51.5665000397712 124 | 9.596536159515392 51.569214435294256 125 | 9.592636981979023 51.57257465645669 126 | 9.592502117156993 51.57385566271839 127 | 9.59272633306683 51.57504362985492 128 | 9.594384022057069 51.57865103334186 129 | 9.59494896233083 51.57879302278159 130 | 9.594296012073766 51.58096502535044 131 | 9.59409099072219 51.583747984841466 132 | 9.594268016517175 51.58598503097892 133 | 9.593998035416016 51.58714097924529 134 | 9.592990027740607 51.5890000015497 135 | 9.591559991240512 51.590119991451495 136 | 9.591689994558703 51.59005000255999 137 | 9.591819997876893 51.59054998308418 138 | 9.5914500206709 51.591000007465475 139 | 9.590879967436203 51.592879984527805 140 | 9.591129999607812 51.59299003891647 141 | 9.5905900374055 51.59335004165768 142 | 9.589380025863658 51.59500001929698 143 | 9.58880997262896 51.594849983230205 144 | 9.586009997874507 51.59588003531097 145 | 9.583350000903021 51.596299968659864 146 | 9.583600033074628 51.5965899825096 147 | 9.58137002773584 51.59695995971561 148 | 9.576659984886655 51.59874002449213 149 | 9.575649965554483 51.598979998379946 150 | 9.575820034369837 51.59927001222966 151 | 9.571799989789731 51.59982003271578 152 | 9.570459974929697 51.59970000386237 153 | 9.565139980986721 51.59983000718056 154 | 9.562779972329743 51.60033996216951 155 | 9.560379981994638 51.60062997601924 156 | 9.557169964537032 51.60078998655081 157 | 9.553930023685103 51.601409995928385 158 | 9.552209973335273 51.60190997645257 159 | 9.550580028444534 51.59979002550242 160 | 9.550090022385127 51.59946002997458 161 | 9.549549976363787 51.59946002997458 162 | 9.547470007091766 51.600160002708435 163 | 9.543409980833538 51.60271002911029 164 | 9.541750028729446 51.60463996231556 165 | 9.539629993960268 51.60780002363025 166 | 9.539160020649437 51.60945997573434 167 | 9.538470022380356 51.60962996073067 168 | 9.539169995114213 51.610920019447775 169 | 9.539260016754277 51.611810009926536 170 | 9.540270036086447 51.61341003142297 171 | 9.54260003753007 51.615510033443556 172 | 9.545500008389359 51.61864000372587 173 | 9.545990014448769 51.618919959291816 174 | 9.546900037676103 51.62005998194218 175 | 9.549530027434239 51.624350007623434 176 | 9.549100035801537 51.62523002363739 177 | 9.550521019846208 51.625856989994624 178 | 9.55057298764587 51.62610903382299 179 | 9.550027996301658 51.626850999891744 180 | 9.5479500386864 51.628410033881664 181 | 9.545602016150957 51.633167015388594 182 | 9.540789965540178 51.63216998800634 183 | 9.538329960778363 51.63124001584948 184 | 9.535169983282689 51.63000997155903 185 | 9.53364003449679 51.62885997444391 186 | 9.532000031322244 51.62805003114043 187 | 9.529280019924048 51.62716004066166 188 | 9.525250000879172 51.62543999031186 189 | 9.52252998948098 51.62517998367548 190 | 9.52210997231305 51.62550000473858 191 | 9.520239969715483 51.62543999031186 192 | 9.517130032181747 51.62462996318934 193 | 9.511399995535616 51.624740017577984 194 | 9.508900009095676 51.62507998757063 195 | 9.504960011690859 51.62639996968207 196 | 9.501359984278684 51.6272000223398 197 | 9.499749988317493 51.627939976751804 198 | 9.495749976485971 51.63020996376869 199 | 9.492870038375262 51.63240996189413 200 | 9.491130039095884 51.63450996391473 201 | 9.490580018609766 51.63564001210033 202 | 9.490190008655194 51.637399960309246 203 | 9.490369968116289 51.63882002234457 204 | 9.491790030151613 51.64348999969661 205 | 9.49377000331879 51.64798001758752 206 | 9.49435003101826 51.65090999566017 207 | 9.493809984996918 51.65251999162136 208 | 9.492399981245402 51.6539099626243 209 | 9.490759978070859 51.654740022495375 210 | 9.487850032746795 51.655309991911054 211 | 9.480489967390898 51.65494001470504 212 | 9.476219974458221 51.654499964788535 213 | 9.468880025669936 51.652910001575954 214 | 9.466260010376576 51.65198002941905 215 | 9.461749959737066 51.64982998743653 216 | 9.460309026762847 51.648851986974464 217 | 9.455819008871913 51.645004022866466 218 | 9.455260019749403 51.64468802511692 219 | 9.45318499580026 51.644087964668856 220 | 9.450719961896542 51.64526000618935 221 | 9.446660019457342 51.64561003446577 222 | 9.443529965355996 51.64620003663002 223 | 9.43764997646213 51.648939996957765 224 | 9.4357000105083 51.649209978058934 225 | 9.433820033445954 51.64923001080749 226 | 9.429920017719272 51.64857999421656 227 | 9.417979996651415 51.64444000460206 228 | 9.417789978906514 51.64418997243045 229 | 9.414149969816211 51.642709979787455 230 | 9.410179965198042 51.64056002162397 231 | 9.409896992146972 51.64077878929672 232 | 9.40760001540184 51.640179986134164 233 | 9.405760020017627 51.639889972284415 234 | 9.403479974716902 51.639069970697165 235 | 9.402689980342988 51.63962996564804 236 | 9.403330022469166 51.638609971851096 237 | 9.406610112637281 51.63663025583373 238 | 9.407342439517379 51.63715938521949 239 | 9.407422874086024 51.63731182186875 240 | 9.407198767889785 51.637360145652494 241 | 9.40383997745812 51.63600998930632 242 | 9.40225001424551 51.63554999046028 243 | 9.399890005588531 51.63511999882756 244 | 9.396419981494546 51.63482001051307 245 | 9.39425996504724 51.63482998497782 246 | 9.392309999093413 51.635119998827555 247 | 9.389050025492907 51.635310016572475 248 | 9.384920010343194 51.63627997040747 249 | 9.38183002173901 51.637640018016114 250 | 9.377149986103177 51.640590028837316 251 | 9.375760015100244 51.642089970409856 252 | 9.374199975281957 51.64436004124582 253 | 9.37365003861487 51.64749998599291 254 | 9.372840011492372 51.64975002408027 255 | 9.372350005432967 51.653119968250365 256 | 9.372370038181547 51.65484001860021 257 | 9.372830037027597 51.65586001239715 258 | 9.373809965327386 51.65694002062082 259 | 9.374659974128008 51.658320017158985 260 | 9.376829965040088 51.66317003779113 261 | 9.377010008320216 51.66406002826985 262 | 9.377439999952912 51.66399003937842 263 | 9.378949999809265 51.66633998975157 264 | 9.3800999969244 51.66761001572011 265 | 9.381400030106306 51.66875003837046 266 | 9.384569982066754 51.67089999653397 267 | 9.38688003458083 51.671540038660154 268 | 9.39223003573716 51.67240999639033 269 | 9.393640039488673 51.67293998412788 270 | 9.395970040932298 51.67420003563164 271 | 9.396140025928617 51.6762700304389 272 | 9.395139981061222 51.67926002293825 273 | 9.394029965624217 51.68064001947641 274 | 9.391919989138845 51.68257003650069 275 | 9.389129988849163 51.684229988604784 276 | 9.387280019000173 51.685660025104845 277 | 9.385779993608597 51.68849000707269 278 | 9.385710004717112 51.690379958599806 279 | 9.385989960283043 51.69079000130294 280 | 9.387220004573466 51.691630035638816 281 | 9.396930020302534 51.696820026263595 282 | 9.39821002073586 51.69801997952162 283 | 9.399330010637641 51.69995997101069 284 | 9.398819971829653 51.70228997245429 285 | 9.396459963172678 51.70609996654093 286 | 9.39530996605754 51.70722004026173 287 | 9.390979958698153 51.71051002107558 288 | 9.38991998322308 51.71208003535865 289 | 9.390319967642426 51.71291001141073 290 | 9.387910002842546 51.71606001444162 291 | 9.386820020154119 51.71832002699372 292 | 9.386330014094712 51.720070000737884 293 | 9.386520031839613 51.72232003882527 294 | 9.38757003284991 51.72423002310097 295 | 9.38905002549291 51.72548001632094 296 | 9.389310032129288 51.72594998963177 297 | 9.388630008324983 51.728309998288736 298 | 9.386820020154119 51.729769958183155 299 | 9.387779999524355 51.731550022959695 300 | 9.387789973989129 51.732119992375374 301 | 9.387459978461266 51.732849972322576 302 | 9.386269999668006 51.733839958906174 303 | 9.381479993462563 51.7354099731892 304 | 9.381649978458885 51.73595999367534 305 | 9.377879966050386 51.73750997520982 306 | 9.376420006155968 51.73883004114032 307 | 9.375339997932315 51.74021003767848 308 | 9.373969975858927 51.743289967998855 309 | 9.374199975281954 51.74417995847761 310 | 9.376670038327575 51.74679997377096 311 | 9.38242002390325 51.74964998848735 312 | 9.383889958262444 51.750809960067265 313 | 9.384550033137206 51.75198996439575 314 | 9.384650029242039 51.75305999815463 315 | 9.384420029819012 51.75441996194421 316 | 9.383909991011024 51.75467996858058 317 | 9.383440017700199 51.756019983440616 318 | 9.377920031547548 51.764659965410814 319 | 9.377899998798966 51.76578003913164 320 | 9.378629978746176 51.76777996122837 321 | 9.379779975861311 51.7701699770987 322 | 9.380469974130392 51.7705500125885 323 | 9.3818199634552 51.7721999902278 324 | 9.382880022749307 51.77314002066848 325 | 9.384959992021322 51.77426001057029 326 | 9.387680003419518 51.77541000768542 327 | 9.390720035880804 51.7763500381261 328 | 9.392210002988577 51.776650026440606 329 | 9.394830018281937 51.776910033077 330 | 9.399420032277703 51.77666997537016 331 | 9.401850029826168 51.77699997089801 332 | 9.40183997154236 51.7768299859017 333 | 9.403920024633411 51.77574000321327 334 | 9.403769988566637 51.775019997730844 335 | 9.403950031846762 51.77435003221035 336 | 9.406910017132759 51.77297003567219 337 | 9.408109970390797 51.772750010713935 338 | 9.409470017999414 51.772859981283524 339 | 9.410940036177635 51.774020036682465 340 | 9.411670016124848 51.77623000927267 341 | 9.411440016701818 51.776910033077 342 | 9.412179971113803 51.77780999802053 343 | 9.413482015952471 51.78204000927507 344 | 9.414829993620515 51.79014002904296 345 | 9.416439989581708 51.79103999398649 346 | 9.418140007182956 51.79297001101075 347 | 9.419169975444678 51.79632000625132 348 | 9.419499970972542 51.79856996051965 349 | 9.421629980206493 51.80217996239661 350 | 9.423139980062842 51.80417996831237 351 | 9.423169987276196 51.80459001101553 352 | 9.4225499778986 51.805770015344024 353 | 9.421499976888303 51.80636999197303 354 | 9.419369967654351 51.80685999803243 355 | 9.417359987273816 51.806850023567655 356 | 9.416049979627132 51.80663997307418 357 | 9.414330013096336 51.80580999702215 358 | 9.41289997659624 51.803200040012584 359 | 9.41226001828909 51.802769964560866 360 | 9.41121001727879 51.80239001289008 361 | 9.409349989145994 51.80217996239662 362 | 9.4061999861151 51.80297004058955 363 | 9.404750000685457 51.80311999283732 364 | 9.404510026797652 51.80381996557115 365 | 9.403549963608388 51.804439974948764 366 | 9.403070015832782 51.80636001750826 367 | 9.404599964618685 51.81295003741979 368 | 9.40494999289513 51.81372997350989 369 | 9.405470006167889 51.81434998288751 370 | 9.408099995926023 51.815699972212315 371 | 9.416839974001054 51.81689003482461 372 | 9.418960008770231 51.81740996427834 373 | 9.420760022476315 51.81762998923658 374 | 9.421499976888299 51.81715004146097 375 | 9.424099959433079 51.81736998260019 376 | 9.428180018439889 51.817920003086314 377 | 9.430629964917902 51.81851000525057 378 | 9.432719992473722 51.81939002126455 379 | 9.435119982808828 51.8208199739456 380 | 9.438330000266436 51.824129987508066 381 | 9.438160015270117 51.82448001578449 382 | 9.436699971556667 51.82559003122149 383 | 9.436989985406399 51.82625002227723 384 | 9.43871003575623 51.82707002386449 385 | 9.439819967374206 51.82688998058439 386 | 9.440710041671995 51.828109966591 387 | 9.441879987716678 51.82783001102506 388 | 9.444521963596346 51.8276789691299 389 | 9.444928988814357 51.82725199498235 390 | 9.444060958921913 51.82723799720406 391 | 9.443638008087877 51.827568998560295 392 | 9.443685030564666 51.828223038464785 393 | 9.443189995363358 51.82994996197522 394 | 9.444630006328229 51.830320023000205 395 | 9.444469995796684 51.831080010160804 396 | 9.443779997527603 51.83143003843725 397 | 9.440890001133086 51.83446001261474 398 | 9.439380001276735 51.83571998029948 399 | 9.444209989160301 51.83770003728567 400 | 9.441819973289967 51.83978000655769 401 | 9.446950033307079 51.84385000728071 402 | 9.45125003345311 51.84598999097941 403 | 9.454640010371804 51.84801002964375 404 | 9.455269994214177 51.84884000569582 405 | 9.455060027539734 51.85026995837688 406 | 9.45529002696276 51.850269958376884 407 | 9.455880029127002 51.84890999458729 408 | 9.457990005612375 51.84874000959095 409 | 9.460410028696064 51.85147996991872 410 | 9.460740024223927 51.85215999372301 411 | 9.461119975894691 51.85421003960073 412 | 9.462489997968081 51.85701998881995 413 | 9.461879963055257 51.86381000094116 414 | 9.463179996237162 51.86571998521684 415 | 9.465359961614016 51.868019979447126 416 | 9.466529991477731 51.86971002258359 417 | 9.467229964211587 51.87110996805129 418 | 9.468019958585504 51.87352001667022 419 | 9.468539971858265 51.87627003528177 420 | 9.468989996239547 51.876500034704804 421 | 9.469949975609783 51.876579998061054 422 | 9.470799984410405 51.87773996964098 423 | 9.471370037645105 51.87913002446291 424 | 9.471859959885482 51.8814300186932 425 | 9.471730040386323 51.882499968633056 426 | 9.47098002769053 51.883570002391906 427 | 9.46833000518382 51.88515996560453 428 | 9.466599980369214 51.88573001883923 429 | 9.465059973299503 51.88596001826227 430 | 9.462039973586798 51.88606001436708 431 | 9.450289970263839 51.887570014223456 432 | 9.443080024793748 51.887979973107555 433 | 9.430099977180365 51.88944999128577 434 | 9.426889959722761 51.89033998176454 435 | 9.42339001223445 51.89187998883426 436 | 9.418779965490106 51.892269998788834 437 | 9.41062998957932 51.89416003413499 438 | 9.409700017422438 51.89505999907851 439 | 9.40974997356534 51.89641996286809 440 | 9.414009992033247 51.89815996214746 441 | 9.415570031851534 51.89857000485061 442 | 9.415380014106633 51.89926000311969 443 | 9.415740016847852 51.89981002360581 444 | 9.421320017427206 51.90448000095781 445 | 9.428089996799828 51.90612000413238 446 | 9.42814003676176 51.90627004019915 447 | 9.42608999088407 51.90880003385245 448 | 9.446990014985206 51.903989994898424 449 | 9.454479999840261 51.900400025770054 450 | 9.454979980364445 51.90028997138142 451 | 9.454479999840261 51.900400025770054 452 | 9.446990014985206 51.903989994898424 453 | 9.45306002162397 51.901030009612434 454 | 9.45566000416875 51.89995997585355 455 | 9.45973997935653 51.89930995926261 456 | 9.46252997964621 51.89939998090267 457 | 9.46541000157595 51.9001199863851 458 | 9.467970002442602 51.90146997570991 459 | 9.468950014561418 51.90220003947615 460 | 9.470160026103262 51.90353997051715 461 | 9.470590017735962 51.90451000817118 462 | 9.470539977774028 51.90595999360083 463 | 9.470209982246164 51.906600035727024 464 | 9.46866000071168 51.908129984512925 465 | 9.468239983543755 51.910610022023306 466 | 9.467210015282035 51.91242001019417 467 | 9.466820005327467 51.91419999115167 468 | 9.465589961037043 51.91622002981601 469 | 9.464859981089834 51.91719995811581 470 | 9.463340006768707 51.91826001740992 471 | 9.460139963775877 51.92096997052431 472 | 9.458810007199649 51.92315999418495 473 | 9.45816996507347 51.925610024482 474 | 9.45819997228682 51.92650998942554 475 | 9.460719991475347 51.92667997442186 476 | 9.464499978348616 51.92791001871228 477 | 9.46474003605545 51.92834998480974 478 | 9.465400027111176 51.92866003140806 479 | 9.468299997970465 51.92909002304077 480 | 9.469010028988126 51.92883999086916 481 | 9.472829997539524 51.92640999332069 482 | 9.480010019615296 51.922850031405666 483 | 9.484240030869847 51.92230998538434 484 | 9.487579967826608 51.92229003645479 485 | 9.491679975762967 51.922650039196014 486 | 9.498209981247786 51.92365997470915 487 | 9.502430018037561 51.92476001568137 488 | 9.505290007218726 51.92600003443656 489 | 9.50852299109102 51.92851401865481 490 | 9.506551986560233 51.92703897133468 491 | 9.508223002776509 51.92821201868355 492 | 9.509069994091993 51.92926000803707 493 | 9.511009985581047 51.93290001712736 494 | 9.511369988322262 51.93521996028721 495 | 9.511039992794398 51.938110040500746 496 | 9.508400028571494 51.94259997457264 497 | 9.50867998413742 51.94281002506612 498 | 9.510129969567064 51.943140020593994 499 | 9.509460004046566 51.94354000501333 500 | 9.508949965238575 51.94469997659325 501 | 9.507580026984222 51.94655003026126 502 | 9.505009967833765 51.9515800103545 503 | 9.505250025540594 51.95900000631809 504 | 9.510019998997453 51.96493003517389 505 | 9.51271997764707 51.96527997963129 506 | 9.514749990776187 51.96925995871424 507 | 9.51625797897578 51.9713250081986 508 | 9.514115983620293 51.971983993425944 509 | 9.517543008551005 51.974804000929 510 | 9.519639993086464 51.97731999680398 511 | 9.520060010254387 51.9780400022864 512 | 9.521190980449326 51.982576958835104 513 | 9.52072997577489 51.9839199911803 514 | 9.51544996351004 51.989000011235476 515 | 9.514519991353158 51.99100001715122 516 | 9.51327997259796 51.99235000647603 517 | 9.513309979811314 51.99277002364396 518 | 9.512789966538554 51.99297999031842 519 | 9.51192000880838 51.9938399735838 520 | 9.510919963940985 51.994480015709996 521 | 9.508279999718075 51.9956600200385 522 | 9.50623003765941 51.99626997113227 523 | 9.502390036359435 51.99698000214994 524 | 9.499719981104139 51.99718996882437 525 | 9.49787001125515 51.99704999104143 526 | 9.494299991056327 51.99721000157295 527 | 9.490840025246147 51.99681999161838 528 | 9.48674001730979 51.996699962764986 529 | 9.484199965372685 51.99618003331123 530 | 9.480300033465031 51.99455997906623 531 | 9.477109964936975 51.992740016430616 532 | 9.473259989172224 51.9896999839693 533 | 9.471129979938272 51.98868996463717 534 | 9.466000003740195 51.987260011956096 535 | 9.458240037783984 51.985689997673035 536 | 9.452649978920821 51.98588001541791 537 | 9.44890997372568 51.986800013110035 538 | 9.446809971705079 51.987950010225155 539 | 9.446609979495406 51.98769997805357 540 | 9.446219969540838 51.98791002854706 541 | 9.438390014693141 51.99248000979422 542 | 9.438499985262755 51.99254999868571 543 | 9.436829974874858 51.99372002854943 544 | 9.434819994494323 51.995739983394714 545 | 9.431809969246387 52.001890037208796 546 | 9.430080028250813 52.00669999234377 547 | 9.427609965205193 52.01023003086448 548 | 9.426879985257983 52.01223003678024 549 | 9.42598999477923 52.017169995233395 550 | 9.42621999420226 52.017190027982 551 | 9.426089990884066 52.018229970708475 552 | 9.42632996477187 52.019430007785544 553 | 9.42565999925137 52.019430007785544 554 | 9.425780028104782 52.020600037649274 555 | 9.427070003002886 52.02277002856135 556 | 9.429660011082888 52.02504001557826 557 | 9.431660016998652 52.02757998369634 558 | 9.430810008198023 52.02782004140316 559 | 9.430090002715588 52.030090028420084 560 | 9.42904000170529 52.031280007213354 561 | 9.427580041810874 52.03245003707705 562 | 9.424400031566623 52.034479966387146 563 | 9.42484997212887 52.034850027412155 564 | 9.4174400344491 52.03873998485505 565 | 9.411730030551556 52.04343996942041 566 | 9.409870002418756 52.04444001428782 567 | 9.409050000831485 52.04545003361998 568 | 9.40898998640478 52.04601002857089 569 | 9.404599964618686 52.04749999567864 570 | 9.403869984671477 52.047999976202846 571 | 9.400970013812184 52.048879992216804 572 | 9.398775966838002 52.04976595938204 573 | 9.398138020187616 52.04978398047388 574 | 9.395368974655868 52.05084797926247 575 | 9.393367962911725 52.05120697617531 576 | 9.39187003299594 52.0518740080297 577 | 9.390401020646095 52.05282200127839 578 | 9.389196960255504 52.053348971530795 579 | 9.39041300676763 52.054530987516046 580 | 9.376689987257123 52.06073996610941 581 | 9.368890039622785 52.062959996983395 582 | 9.364230036735535 52.06457996740937 583 | 9.358460018411279 52.06492002122104 584 | 9.356769975274805 52.069490002468214 585 | 9.359310027211905 52.07070001401005 586 | 9.36187002807856 52.07268996164201 587 | 9.367829980328679 52.080190004780874 588 | 9.368500029668212 52.08140001632272 589 | 9.370889961719515 52.08128996193409 590 | 9.368749978020787 52.08278001286088 591 | 9.368619974702597 52.08488001488149 592 | 9.369660001248121 52.08527002483605 593 | 9.36950996518135 52.08573999814687 594 | 9.368870006874204 52.08609002642333 595 | 9.367889994755389 52.08616998977958 596 | 9.366229958832264 52.08786003291607 597 | 9.36286998912692 52.08964998833834 598 | 9.361696019768715 52.09262296557425 599 | 9.36089102178812 52.092566974461086 600 | 9.360329015180469 52.092724973335855 601 | 9.358050981536508 52.09405702538786 602 | 9.357205331325531 52.095005102455616 603 | 9.358074031770233 52.09564900025725 604 | 9.355610003694892 52.09690997377036 605 | 9.354590009897947 52.09935002960264 606 | 9.354399992153049 52.09936997853219 607 | 9.35321998782456 52.101130010560155 608 | 9.35399598442018 52.104099970310926 609 | 9.353870004415512 52.10440498776734 610 | 9.353379998356104 52.10518098436295 611 | 9.353021839633584 52.10526103153824 612 | 9.352279035374522 52.10587098263204 613 | 9.351973012089731 52.10665301419793 614 | 9.351709987968206 52.10668000392616 615 | 9.351080004125834 52.107209991663694 616 | 9.350109966471791 52.10901997983456 617 | 9.350650012493134 52.109400015324354 618 | 9.350260002538562 52.11010996252299 619 | 9.350889986380935 52.110280031338334 620 | 9.350079959258437 52.11032998748122 621 | 9.34598003514111 52.11312996223567 622 | 9.344870019704105 52.11400000378488 623 | 9.341650027781725 52.117250002920606 624 | 9.338660035282373 52.1189299877733 625 | 9.336310001090169 52.11984001100063 626 | 9.333269968628885 52.12142997421323 627 | 9.330579964444041 52.12185996584594 628 | 9.327689968049526 52.12144003249705 629 | 9.325070036575198 52.12063000537453 630 | 9.323460040614009 52.12030000984669 631 | 9.32166002690792 52.12027997709809 632 | 9.319799998775125 52.12063997983931 633 | 9.310949966311455 52.124149985611425 634 | 9.30591001175344 52.12598000653087 635 | 9.30404000915587 52.12693001143634 636 | 9.302699994295835 52.12821001186966 637 | 9.300070004537702 52.12802996858954 638 | 9.297170033678412 52.12900000624361 639 | 9.29248002357781 52.13175002485513 640 | 9.292199984192848 52.132080020383 641 | 9.2956199683249 52.13441002182662 642 | 9.295870000496507 52.13439996354283 643 | 9.296239977702498 52.13513002730906 644 | 9.296120032668114 52.13547997176646 645 | 9.29271999746561 52.13865998201071 646 | 9.28814004175365 52.142469976097345 647 | 9.286199966445565 52.141670007258654 648 | 9.280460039153695 52.14649999514222 649 | 9.277880005538464 52.14837997220455 650 | 9.275029990822077 52.14629002846777 651 | 9.273610012605786 52.14676000177859 652 | 9.272620026022196 52.1473199967295 653 | 9.271930027753115 52.14879001490772 654 | 9.274079985916615 52.15093997307121 655 | 9.27394000813365 52.15125001966953 656 | 9.274100018665195 52.151880003511906 657 | 9.270260017365217 52.15686002746223 658 | 9.269370026886463 52.15867001563311 659 | 9.267660034820437 52.16114996932446 660 | 9.267800012603402 52.16192998923361 661 | 9.265769999474287 52.16277002356946 662 | 9.262120015919209 52.16360997408628 663 | 9.257950019091368 52.16373000293968 664 | 9.257950019091368 52.16251001693309 665 | 9.25625997595489 52.161609968170524 666 | 9.254700019955635 52.15995001606643 667 | 9.253369979560375 52.15914996340871 668 | 9.252460040152073 52.158949971199036 669 | 9.245519991964102 52.15935003943741 670 | 9.24207997508347 52.160630039870725 671 | 9.239540006965399 52.16186000034213 672 | 9.237330034375193 52.16235998086631 673 | 9.238859983161092 52.1631099935621 674 | 9.239389970898628 52.16317998245357 675 | 9.238139977678657 52.16337997466324 676 | 9.23773999325931 52.163160033524015 677 | 9.2164000030607 52.16349002905189 678 | 9.216179978102446 52.16248000971973 679 | 9.214910035952926 52.162470035254934 680 | 9.213749980553985 52.16218999586999 681 | 9.213800020515919 52.163100019097314 682 | 9.212209973484278 52.163209989666925 683 | 9.211510000750422 52.163630006834865 684 | 9.211809989064932 52.16419000178574 685 | 9.20074000954628 52.16652000322938 686 | 9.199469983577728 52.16774996370077 687 | 9.198500029742718 52.16812002472578 688 | 9.197090025991201 52.16812999919057 689 | 9.195429990068078 52.16845999471841 690 | 9.195130001753569 52.16891999356449 691 | 9.19375997968018 52.169920038431876 692 | 9.193290006369352 52.17066996730862 693 | 9.1924499720335 52.1707599889487 694 | 9.19191000983119 52.17102997004986 695 | 9.190539987757802 52.17207997106014 696 | 9.190509980544448 52.172480039298534 697 | 9.190088035538793 52.1726099587977 698 | 9.18915898539126 52.17338603921233 699 | 9.188874000683427 52.17390798032284 700 | 9.189150016754866 52.17474399134515 701 | 9.187452010810375 52.17511698603628 702 | 9.185472037643194 52.17624703422189 703 | 9.183414028957486 52.17671700753271 704 | 9.181219981983304 52.1767999883741 705 | 9.179240008816123 52.17646001838147 706 | 9.17570997029543 52.175189992412925 707 | 9.172670021653175 52.174929985776544 708 | 9.170150002464652 52.175029981881394 709 | 9.167420016601682 52.17584000900388 710 | 9.165469966828823 52.17683997005224 711 | 9.162830002605915 52.17867996543646 712 | 9.161819983273745 52.17870997264982 713 | 9.15996003895998 52.17938999645412 714 | 9.15878003463149 52.18057000078259 715 | 9.154020035639405 52.18375998549162 716 | 9.153670007362962 52.18415996991098 717 | 9.153779977932572 52.18433003872634 718 | 9.150799959897995 52.18542002141476 719 | 9.150540037080646 52.18598999083042 720 | 9.148340038955212 52.18625997193156 721 | 9.14416995830834 52.18565999530256 722 | 9.14313999004662 52.185959983617046 723 | 9.142700023949146 52.18643004074692 724 | 9.140149997547269 52.18467000871897 725 | 9.138319976627827 52.18480001203716 726 | 9.134720033034682 52.18552999198435 727 | 9.129069959744811 52.18550995923579 728 | 9.129080018028617 52.18700998462736 729 | 9.129429962486029 52.18886003829539 730 | 9.129359973594546 52.190900025889285 731 | 9.129679994657636 52.19180996529758 732 | 9.127589967101812 52.192250015214086 733 | 9.126520017161965 52.19213996082542 734 | 9.12607996724546 52.19340998679399 735 | 9.12577997893095 52.19346002675593 736 | 9.125080006197095 52.19448999501765 737 | 9.119520038366318 52.193409986793995 738 | 9.118350008502604 52.19330001622438 739 | 9.114330999999995 52.193861999999996 740 | 9.111663000000021 52.19399199999998 741 | 9.109286999999995 52.194616999999994 742 | 9.107675999999971 52.19458299999999 743 | 9.107654000000025 52.194173 744 | 9.10817099999997 52.193749999999994 745 | 9.107770999999957 52.192273000000014 746 | 9.104929994791746 52.191950026899576 747 | 9.102720022201538 52.19347997568546 748 | 9.10094004124403 52.19416997395455 749 | 9.098049961030483 52.194870030507445 750 | 9.095719959586859 52.195040015503764 751 | 9.094380028545856 52.19498000107705 752 | 9.092239961028099 52.194569958373904 753 | 9.090710012242198 52.19403997063637 754 | 9.087100010365248 52.191950026899576 755 | 9.085190026089549 52.19301000237464 756 | 9.083740040659904 52.193560022860765 757 | 9.082749970257282 52.1932799834758 758 | 9.082479989156127 52.1911300253123 759 | 9.081407021731138 52.19109096564354 760 | 9.080045968294144 52.19173603691161 761 | 9.081806000322104 52.19223601743578 762 | 9.08091802150011 52.1892480365932 763 | 9.080026019364595 52.18932397663593 764 | 9.079271983355284 52.18990802764891 765 | 9.076935024932027 52.190210027620196 766 | 9.074579961597921 52.19025000929831 767 | 9.070069994777441 52.1884199883789 768 | 9.067049995064735 52.187469983473434 769 | 9.062199974432588 52.18647002242505 770 | 9.06127997674048 52.185940034687505 771 | 9.060480007901788 52.18620004132391 772 | 9.059739969670773 52.186150001361966 773 | 9.052370013669133 52.18457998707889 774 | 9.047429971396923 52.18319999054074 775 | 9.043429959565401 52.183099994435906 776 | 9.03986002318561 52.18361003324387 777 | 9.037639992311597 52.18375998549161 778 | 9.02686002664268 52.183439964428544 779 | 9.026830019429326 52.18959999270736 780 | 9.026459958404303 52.19075996428726 781 | 9.020189959555864 52.196770040318356 782 | 9.01916996575892 52.19990998506546 783 | 9.01800999417901 52.20010997727511 784 | 9.017689973115921 52.20042002387345 785 | 9.017210025340319 52.20049998722969 786 | 9.01702000759542 52.20111999660729 787 | 9.01624996215105 52.20118001103401 788 | 9.002630040049553 52.200769968330846 789 | 8.99358001537621 52.2008699644357 790 | 8.980310037732124 52.19882997684181 791 | 8.979660021141171 52.19641003757714 792 | 8.97897002287209 52.19612002372742 793 | 8.97953001782298 52.195549970492735 794 | 8.97980997338891 52.19557997770607 795 | 8.979799998924136 52.191390031948686 796 | 8.978250017389655 52.18953997828066 797 | 8.976740017533302 52.188990041613586 798 | 8.970430037006736 52.188189988955855 799 | 8.969329996034503 52.188380006700754 800 | 8.968279995024204 52.187810037285075 801 | 8.96476998925209 52.18828998506069 802 | 8.963610017672181 52.18831001780927 803 | 8.932650033384562 52.18752999790013 804 | 8.931819973513484 52.18763996846973 805 | 8.930590013042092 52.18733998015523 806 | 8.929709997028112 52.187890000641346 807 | 8.928190022706985 52.186749977990985 808 | 8.921750038862228 52.18305003829299 809 | 8.917999975383282 52.18013003468514 810 | 8.916089991107583 52.17932000756264 811 | 8.907180028036237 52.176279975101345 812 | 8.905600039288402 52.1750800218433 813 | 8.903510011732578 52.17393999919295 814 | 8.89520002529025 52.17013997957109 815 | 8.890050016343594 52.16813997365536 816 | 8.887989996001124 52.16833996586501 817 | 8.884609993547201 52.16753002256155 818 | 8.881819993257523 52.167400019243374 819 | 8.880049986764789 52.16783001087606 820 | 8.878650041297078 52.16848002746703 821 | 8.87728001922369 52.16888001188636 822 | 8.875210024416447 52.169879972934716 823 | 8.872020039707422 52.17101002112031 824 | 8.870209967717528 52.17223998159169 825 | 8.869579983875155 52.17229999601842 826 | 8.868720000609756 52.174660004675374 827 | 8.868480026721954 52.174699986353524 828 | 8.86754997074604 52.17623999342323 829 | 8.867179993540049 52.17906000092625 830 | 8.866610024124384 52.18057000078259 831 | 8.86655998416245 52.1821799967438 832 | 8.866359991952777 52.18228996731341 833 | 8.866080036386847 52.18411998823284 834 | 8.865560023114085 52.185269985347986 835 | 8.865339998155832 52.18651000410317 836 | 8.864640025421977 52.18727996572852 837 | 8.865430019795895 52.19039996154606 838 | 8.86554996483028 52.19173997640609 839 | 8.864919980987908 52.19293003901838 840 | 8.865049984306097 52.193779963999994 841 | 8.864619992673397 52.19478000886738 842 | 8.864629967138171 52.196320015937076 843 | 8.862580005079508 52.1981600113213 844 | 8.859820012003183 52.201709998771555 845 | 8.858990035951138 52.20352996140718 846 | 8.857799973338842 52.205399964004755 847 | 8.858229964971542 52.20581998117267 848 | 8.857369981706144 52.20616003498433 849 | 8.857350032776594 52.20745000988245 850 | 8.857580032199621 52.20784999430181 851 | 8.856679983437061 52.2077800054103 852 | 8.854921963065863 52.20832801423966 853 | 8.854185026139021 52.20958898775278 854 | 8.855265034362674 52.20990599133073 855 | 8.851780006662011 52.20860998146236 856 | 8.849510019645095 52.2079100087285 857 | 8.848270000889897 52.20768998377023 858 | 8.848000019788742 52.209139969199896 859 | 8.846999974921347 52.21069003455341 860 | 8.844423294067383 52.20976307988167 861 | 8.844239981845021 52.20985000021754 862 | 8.842910025268793 52.21184003166855 863 | 8.841289971023798 52.21317996270953 864 | 8.835100019350648 52.215729989111416 865 | 8.828113032504916 52.22023098729552 866 | 8.827485982328653 52.22021196037531 867 | 8.826900003477931 52.22104998305439 868 | 8.827360002323985 52.22154996357856 869 | 8.827599976211786 52.223019981756806 870 | 8.82891995832324 52.22422999329864 871 | 8.830510005354881 52.22494999878107 872 | 8.834299966692924 52.22625003196299 873 | 8.835590025410056 52.226859983056784 874 | 8.836259990930557 52.227379996329546 875 | 8.835909962654114 52.2304900176823 876 | 8.837799998000264 52.23207000643015 877 | 8.83950999006629 52.23302998580039 878 | 8.838900038972497 52.23452003672719 879 | 8.840359998866916 52.23472002893686 880 | 8.844720013439657 52.234660014510155 881 | 8.845340022817254 52.2350599989295 882 | 8.846230013296008 52.2352999728173 883 | 8.847299963235855 52.23617001436649 884 | 8.849259987473488 52.236990015953786 885 | 8.862879993394017 52.241559997200966 886 | 8.866320010274649 52.242589965462685 887 | 8.86776002123952 52.242779983207576 888 | 8.869879972189665 52.2427799832076 889 | 8.870689999312162 52.244740007445195 890 | 8.872750019654632 52.24451000802217 891 | 8.877440029755235 52.24358003586531 892 | 8.878799993544817 52.24297997541727 893 | 8.88089002110064 52.2423400171101 894 | 8.884660033509135 52.24165001884103 895 | 8.885130006819963 52.24120996892452 896 | 8.884949963539839 52.24077000282701 897 | 8.88985002413392 52.24031000398098 898 | 8.895110003650188 52.240700013935545 899 | 8.895809976384044 52.23955001682043 900 | 8.89721998013556 52.23991001956163 901 | 8.914570016786456 52.242370024323456 902 | 8.9173099771142 52.24310997873544 903 | 8.918600035831332 52.24391003139317 904 | 8.919460019096732 52.246229974552996 905 | 8.918449999764562 52.246949980035396 906 | 8.918270040303469 52.24836995825169 907 | 8.918629959225655 52.25013996474445 908 | 8.91778003424406 52.25498001091182 909 | 8.917339984327555 52.25610000081358 910 | 8.917369991540909 52.25685998797415 911 | 8.9179299864918 52.25902000442147 912 | 8.919730000197887 52.26309000514448 913 | 8.921049982309341 52.263870025053606 914 | 8.922510026022792 52.26538002490996 915 | 8.924980005249381 52.26903000846504 916 | 8.92501998692751 52.26942001841961 917 | 8.924729973077774 52.27025996893643 918 | 8.92356002703309 52.27093001827599 919 | 8.920600041747093 52.27391003631057 920 | 8.919400004670024 52.27421002462505 921 | 8.91950000077486 52.27661998942493 922 | 8.919019969180226 52.278129989281275 923 | 8.918449999764562 52.27908996865153 924 | 8.916830029338598 52.27992002852261 925 | 8.916459968313575 52.280580019578345 926 | 8.918120004236698 52.28091998957097 927 | 8.919119965285063 52.28091998957097 928 | 8.919309983029962 52.28105996735392 929 | 8.919270001351833 52.28219001553953 930 | 8.919750032946467 52.28253995999693 931 | 8.919790014624596 52.28400997817516 932 | 8.919170005246997 52.284339973703034 933 | 8.9192199613899 52.284550024196506 934 | 8.920189999043941 52.285900013521314 935 | 8.920849990099669 52.28593002073467 936 | 8.921140003949404 52.28609003126622 937 | 8.922689985483885 52.28888003155589 938 | 8.923509987071157 52.29090996086599 939 | 8.924169978126884 52.29193003848196 940 | 8.924060007557273 52.29203003458678 941 | 8.927939990535378 52.296029962599285 942 | 8.927809987217188 52.2967499680817 943 | 8.927159970626235 52.29732999578117 944 | 8.927630027756095 52.30027003213765 945 | 8.92718997783959 52.30070002377033 946 | 8.926959978416562 52.30053003877403 947 | 8.926120027899742 52.30050003156063 948 | 8.925352999940515 52.30351399630305 949 | 8.923987001180649 52.303372006863334 950 | 8.922169972211123 52.30368699878455 951 | 8.920297035947442 52.306768018752315 952 | 8.918993985280395 52.30691696517169 953 | 8.919179979711771 52.30716498568652 954 | 8.919639978557825 52.313819965347655 955 | 8.919980032369494 52.315659960731864 956 | 8.921890016645193 52.31981998309493 957 | 8.923149984329939 52.32211000286043 958 | 8.924850001931192 52.32431000098586 959 | 8.930490016937256 52.33034002594648 960 | 8.933640019968152 52.33249995857476 961 | 8.93512001261115 52.33377995900808 962 | 8.943887986242771 52.34361696057023 963 | 8.94379603676498 52.34394997358321 964 | 8.944870010018349 52.34420696273446 965 | 8.946389984339476 52.344939960166826 966 | 8.95711999386549 52.35208000056446 967 | 8.959150006994605 52.35312002710998 968 | 8.961380012333393 52.35394002869725 969 | 8.965719994157553 52.356430040672414 970 | 8.968110010027885 52.35835997387767 971 | 8.968579983338714 52.35831999219954 972 | 8.9786206651479 52.367127193138 973 | 8.977930750697851 52.36884171143174 974 | 8.97874765098095 52.36892301589251 975 | 8.978127054870129 52.370889661833644 976 | 8.972856681793928 52.377375746145844 977 | 8.970945021137595 52.376892026513815 978 | 8.96985998377204 52.378332037478685 979 | 8.965694010257721 52.37741497345269 980 | 8.965440960600972 52.37752402201294 981 | 8.964551975950599 52.37744900397955 982 | 8.963262001052499 52.38645100034773 983 | 8.963406756520273 52.39024934358895 984 | 8.964264979586005 52.39181902259587 985 | 8.964613331481814 52.3919181805104 986 | 8.964833104982974 52.393112769350395 987 | 8.96348143927753 52.401008354499936 988 | 8.966723810881376 52.40738170221448 989 | 8.969490677118301 52.41060244850814 990 | 8.970170198008418 52.41250916384162 991 | 8.970093671232462 52.41333813406527 992 | 8.967964332550764 52.417203448712826 993 | 8.967812703922391 52.41718928329645 994 | 8.967857714742422 52.41971869021653 995 | 8.967601396143436 52.419734112918384 996 | 8.978300979360938 52.42200301028788 997 | 8.980192020535469 52.421970991417744 998 | 8.981130961328745 52.4220979772508 999 | 8.982512969523668 52.422877997159944 1000 | 8.984365034848452 52.42487699724732 1001 | 8.986165970563889 52.42562700994311 1002 | 8.988099005073309 52.427126029506326 1003 | 8.990504024550319 52.42797897197304 1004 | 8.994394987821579 52.42789498530328 1005 | 8.995295036584139 52.42664800956844 1006 | 8.996407985687256 52.42642697878182 1007 | 8.997651021927595 52.42652898654342 1008 | 8.998046983033419 52.42599296383558 1009 | 8.999105030670762 52.42592297494413 1010 | 8.999977000057697 52.42613797076044 1011 | 9.002570025622845 52.42628901265559 1012 | 8.999632000923157 52.43351303972304 1013 | 8.997867023572326 52.44485199451448 1014 | 8.99809199385345 52.446337016299374 1015 | 9.006404746323824 52.44619024917483 1016 | 9.006481524556875 52.44753235951066 1017 | 9.006935572251678 52.44825789704919 1018 | 9.007971994578838 52.44943169876931 1019 | 9.011013619601727 52.45211860165 1020 | 9.011690793558955 52.45352625846861 1021 | 9.01242052204907 52.45354360900818 1022 | 9.013413274660707 52.45423746295275 1023 | 9.016458922997117 52.45713542215524 1024 | 9.01712310500443 52.458453476428964 1025 | 9.017014978453517 52.46020923368633 1026 | 9.017801871523261 52.46391101740301 1027 | 9.016850274056196 52.4659760668874 1028 | 9.013170031830668 52.46548002585768 1029 | 9.012850010767579 52.46719999238849 1030 | 9.01407997123897 52.47024999931455 1031 | 9.01525997556746 52.472370034083724 1032 | 9.016339983791113 52.47343998402357 1033 | 9.013660037890077 52.47504997998477 1034 | 9.014309970661998 52.47546002268791 1035 | 9.01265999302268 52.47675997205077 1036 | 9.0183300152421 52.4810800049454 1037 | 9.019459979608655 52.48213000595568 1038 | 9.02204998768866 52.483870005235055 1039 | 9.022850040346384 52.48609003610909 1040 | 9.023520005866885 52.48715001158417 1041 | 9.025009972974658 52.487919973209515 1042 | 9.026679983362556 52.488420037552714 1043 | 9.027929976582527 52.48862002976238 1044 | 9.029650026932359 52.48865003697574 1045 | 9.030270036309958 52.48817000538109 1046 | 9.030870012938976 52.48820001259448 1047 | 9.034580010920763 52.48925998806953 1048 | 9.034670032560825 52.48968997970222 1049 | 9.038039976730943 52.48974001966417 1050 | 9.041089983657002 52.489280020818114 1051 | 9.045649990439415 52.485459968447685 1052 | 9.046699991449714 52.48504003509879 1053 | 9.058800023049116 52.48321998864411 1054 | 9.059950020164251 52.483270028606036 1055 | 9.062220007181168 52.48387000523507 1056 | 9.062649998813868 52.48387000523506 1057 | 9.064283464103937 52.48325879685581 1058 | 9.064060002565384 52.48616002500056 1059 | 9.065649965777993 52.4889200180769 1060 | 9.065679972991347 52.4893999658525 1061 | 9.059550035744905 52.49556996859608 1062 | 9.059839965775609 52.495840033516274 1063 | 9.063087282702327 52.49721357598901 1064 | 9.06667641364038 52.498354939743855 1065 | 9.069330710917711 52.50077077187597 1066 | 9.071335745975375 52.502243388444185 1067 | 9.075733562931418 52.50767754390834 1068 | 9.076882721856236 52.50787451863289 1069 | 9.076839722692966 52.50855755992232 1070 | 9.077284969389439 52.51048933714628 1071 | 9.07623102888465 52.51425541006026 1072 | 9.07742477953434 52.5145961344242 1073 | 9.076927565038204 52.5166184362024 1074 | 9.076871573925018 52.51830797642469 1075 | 9.078407976776361 52.52071534283458 1076 | 9.079367620870471 52.5218200776726 1077 | 9.081122456118464 52.52273546531798 1078 | 9.081355975940824 52.52613399177789 1079 | 9.079839019104838 52.5262299645692 1080 | 9.079907331615686 52.52690881490707 1081 | 9.079339038580656 52.5274269003421 1082 | 9.076858581975102 52.52747702412307 1083 | 9.077031332999468 52.529830327257514 1084 | 9.079276425763965 52.52971884794535 1085 | 9.080327348783612 52.531124576926224 1086 | 9.080386441200972 52.53441556356846 1087 | 9.082362055778503 52.53505091182888 1088 | 9.083382049575448 52.536911526694894 1089 | 9.10217234864831 52.535878121852875 1090 | 9.102278212085368 52.54132116213441 1091 | 9.102739468216896 52.54314506426454 1092 | 9.104572925716639 52.54556081257761 1093 | 9.10560742020607 52.55276707001029 1094 | 9.105445481836796 52.552875028923154 1095 | 9.107429226860404 52.5561712961644 1096 | 9.108537985011935 52.557374518364654 1097 | 9.10976266488433 52.55771482363342 1098 | 9.110046476125717 52.559179393574595 1099 | 9.110401114448905 52.559466641396284 1100 | 9.113415330648422 52.55973754450679 1101 | 9.11690203472972 52.5590700097382 1102 | 9.115022979676723 52.559334039688096 1103 | 9.1147980093956 52.55885400809349 1104 | 9.114978974685073 52.56027197465299 1105 | 9.114768002182245 52.561874007806196 1106 | 9.115605019032955 52.56175800226628 1107 | 9.114875039085746 52.56199101917444 1108 | 9.114501038566232 52.56275603547692 1109 | 9.111482966691256 52.56668597459793 1110 | 9.111302001401782 52.56808600388466 1111 | 9.111452959477901 52.57009397260843 1112 | 9.11198403686285 52.57175501435995 1113 | 9.113009981811047 52.57395199500023 1114 | 9.115997040644288 52.578878961503506 1115 | 9.128740970045328 52.58552296087146 1116 | 9.129826007410884 52.58633097633718 1117 | 9.130536038428545 52.587124994024634 1118 | 9.13100198842585 52.58801196701825 1119 | 9.131053034216166 52.58869802579284 1120 | 9.131472799926996 52.58916338905691 1121 | 9.131930535659194 52.5892706774175 1122 | 9.134394312277436 52.58916003629565 1123 | 9.136590035632253 52.58888997137545 1124 | 9.13778998889029 52.58895996026695 1125 | 9.140310008078815 52.58871998637913 1126 | 9.144389983266592 52.587639978155494 1127 | 9.147620033472776 52.58651998825371 1128 | 9.14838002063334 52.588180024176815 1129 | 9.149059960618615 52.58894998580217 1130 | 9.15153999812901 52.588819982483976 1131 | 9.15255001746118 52.58937997743488 1132 | 9.153560036793351 52.5929899793118 1133 | 9.155110018327832 52.594150034710765 1134 | 9.155259970575571 52.594539960846305 1135 | 9.15643502958119 52.59449997916818 1136 | 9.157720981165767 52.59704899974167 1137 | 9.170294003561139 52.596826041117325 1138 | 9.177184011787176 52.59605096653104 1139 | 9.180968021973968 52.59577604010701 1140 | 9.181862035766244 52.59763900190589 1141 | 9.191855024546385 52.60875298641622 1142 | 9.19433900155127 52.60995998047292 1143 | 9.197917990386486 52.60855299420655 1144 | 9.199520023539662 52.60948900133371 1145 | 9.200044982135296 52.60953702963887 1146 | 9.20355599373579 52.61102003976704 1147 | 9.204902965575457 52.612150004133575 1148 | 9.207889018580317 52.61316396296024 1149 | 9.20924797654152 52.61433399282395 1150 | 9.205557005479932 52.61511200107633 1151 | 9.210216002538802 52.620951002463705 1152 | 9.210520014166832 52.62157201766966 1153 | 9.208674989640713 52.6220369618386 1154 | 9.206487983465195 52.62340497225522 1155 | 9.20823996886611 52.62448498047887 1156 | 9.208218008279802 52.62490097433325 1157 | 9.207630017772317 52.6253130286932 1158 | 9.20903499238193 52.626402005553246 1159 | 9.210144001990557 52.6289340108633 1160 | 9.20972096733749 52.630810970440486 1161 | 9.209306985139847 52.63150800950824 1162 | 9.207672011107206 52.632917007431374 1163 | 9.2063910048455 52.632605032995336 1164 | 9.20460700057447 52.63260503299534 1165 | 9.204257978126407 52.633094033226364 1166 | 9.205014193430543 52.6345048751682 1167 | 9.204784864559771 52.63569275848566 1168 | 9.205169677734375 52.6360657531768 1169 | 9.203291293233633 52.638532128185005 1170 | 9.203056767582893 52.63961758464571 1171 | 9.204093692824244 52.64230356551707 1172 | 9.203760428354144 52.64250682666896 1173 | 9.20417751185596 52.64347527176142 1174 | 9.206103337928653 52.64305148273705 1175 | 9.201869973912835 52.643920015543685 1176 | 9.202229976654053 52.64424003660679 1177 | 9.203030029311776 52.644559973850846 1178 | 9.204540029168129 52.64661999419332 1179 | 9.205279983580112 52.64856996014714 1180 | 9.205339998006822 52.65052000992 1181 | 9.205109998583794 52.651219982653856 1182 | 9.20520999468863 52.648529978469014 1183 | 9.205330023542047 52.65022002160549 1184 | 9.204819984734058 52.65158995985985 1185 | 9.20422000810504 52.65184996649623 1186 | 9.203760009258986 52.65268002636731 1187 | 9.202640019357204 52.65354998409747 1188 | 9.201079979538918 52.654330004006624 1189 | 9.199799979105592 52.65603999607263 1190 | 9.1990000102669 52.65649002045393 1191 | 9.19924819841981 52.65695261768997 1192 | 9.198536910116673 52.6575333997607 1193 | 9.197084996849298 52.657744958996766 1194 | 9.19098699465394 52.65643503516911 1195 | 9.189848899841309 52.657903796061866 1196 | 9.186780033633113 52.659169966354966 1197 | 9.184149960055947 52.660720031708465 1198 | 9.181879973039031 52.660830002278075 1199 | 9.180347006767988 52.66067996621132 1200 | 9.17992003262043 52.6623499765992 1201 | 9.180129999294877 52.66263999044894 1202 | 9.180020028725266 52.663120022043586 1203 | 9.179010009393096 52.66362997703254 1204 | 9.177869986742735 52.66387003473936 1205 | 9.173729997128248 52.66293000429868 1206 | 9.172630039975047 52.666549980640426 1207 | 9.169829981401563 52.66618000343442 1208 | 9.168786015361547 52.666258960962274 1209 | 9.168274970725179 52.66757600940764 1210 | 9.166905032470822 52.66767499968408 1211 | 9.167323959991336 52.668282017111764 1212 | 9.16847001761198 52.67218999564647 1213 | 9.17068401351571 52.67671303823589 1214 | 9.171230010688305 52.677309997379766 1215 | 9.171550031751394 52.67904999665916 1216 | 9.17238000780344 52.680050041526535 1217 | 9.172860039398074 52.68102996982633 1218 | 9.17182001285255 52.68229999579489 1219 | 9.171729991212487 52.685040039941654 1220 | 9.170779986307025 52.68596003763376 1221 | 9.169810032472014 52.687659971416004 1222 | 9.169139983132482 52.68824997358023 1223 | 9.17001002468169 52.68826003186405 1224 | 9.172589974477887 52.68772996030748 1225 | 9.17730001732707 52.687180023640394 1226 | 9.178629973903298 52.69073998555541 1227 | 9.179679974913597 52.69510000012816 1228 | 9.18469000607729 52.694839993491776 1229 | 9.185410011559725 52.695329999551156 1230 | 9.185589971020818 52.69637002609668 1231 | 9.186810040846467 52.69625997170806 1232 | 9.188780039548874 52.69709003157913 1233 | 9.19072899967432 52.69756402820347 1234 | 9.194242022931576 52.69777399487792 1235 | 9.199684979394078 52.69721802324057 1236 | 9.202540023252368 52.69748498685658 1237 | 9.210351034998894 52.69719597883521 1238 | 9.210933996364474 52.6901990175247 1239 | 9.210139978677034 52.68803598359227 1240 | 9.210248021408916 52.68779299221933 1241 | 9.211528021842241 52.68764899112284 1242 | 9.21303198672831 52.68799499608576 1243 | 9.215915026143193 52.687364006414995 1244 | 9.217400969937444 52.68734598532318 1245 | 9.219720996916294 52.68784596584738 1246 | 9.219564003869891 52.68818803131579 1247 | 9.222948029637337 52.68946602009236 1248 | 9.223921000957489 52.6901199761778 1249 | 9.225736018270254 52.69217697903514 1250 | 9.226315040141344 52.693648003041744 1251 | 9.225551029667258 52.694954993203275 1252 | 9.225509958341718 52.69647102802992 1253 | 9.22508399002254 52.69658301025629 1254 | 9.223864004015923 52.69624203443525 1255 | 9.22323603183031 52.696272041648605 1256 | 9.221380027011037 52.697737030684955 1257 | 9.221113985404372 52.69954903051256 1258 | 9.221647996455431 52.70087102428079 1259 | 9.221735000610352 52.7030570246279 1260 | 9.221985032781959 52.70391097292304 1261 | 9.2223749589175 52.70442101173102 1262 | 9.22428896650672 52.7042399626225 1263 | 9.226965978741646 52.70538903772831 1264 | 9.227396976202728 52.70625597797334 1265 | 9.22845602966845 52.70649997517463 1266 | 9.231006978079677 52.708012992516146 1267 | 9.231191966682673 52.708756970241666 1268 | 9.231204036623241 52.7088709641248 1269 | 9.229842983186245 52.708857972174854 1270 | 9.229111997410655 52.709545036777854 1271 | 9.229411985725164 52.71019999869168 1272 | 9.230656027793884 52.71098203025758 1273 | 9.230618979781866 52.71170102991164 1274 | 9.230365008115768 52.71232296712695 1275 | 9.229821022599936 52.712750025093555 1276 | 9.229886988177896 52.713224021717906 1277 | 9.22667596489191 52.72252298891545 1278 | 9.226378994062543 52.72273496724663 1279 | 9.220445025712253 52.723771976307034 1280 | 9.21064398251474 52.722138008102775 1281 | 9.209694983437657 52.7207069657743 1282 | 9.207191979512574 52.71948396228252 1283 | 9.205215023830533 52.721261009573915 1284 | 9.203390032052994 52.72439399734138 1285 | 9.202999016270041 52.72606199607253 1286 | 9.202484032139182 52.7265670057386 1287 | 9.20205001719296 52.727442998439074 1288 | 9.201657995581627 52.72770099341869 1289 | 9.202935984358191 52.72778296843171 1290 | 9.198801023885608 52.73155197501183 1291 | 9.197453968226911 52.73304797708989 1292 | 9.204164016991854 52.73401097394525 1293 | 9.202816961333156 52.740056002512574 1294 | 9.203911973163486 52.741505987942205 1295 | 9.20514696277678 52.74401402100921 1296 | 9.202902959659696 52.745815962553024 1297 | 9.201159020885827 52.745884023606784 1298 | 9.200550997629762 52.7469229605049 1299 | 9.1992780379951 52.748352997004986 1300 | 9.195685973390937 52.750578979030244 1301 | 9.195048026740551 52.751551028341055 1302 | 9.193658977746964 52.751899966970065 1303 | 9.19184798374772 52.75025501847266 1304 | 9.190733022987843 52.750455010682344 1305 | 9.187724003568292 52.748874016106114 1306 | 9.184529995545745 52.74800498038528 1307 | 9.183760033920407 52.74807002395392 1308 | 9.1839399933815 52.74850999005138 1309 | 9.183340016752481 52.749229995533824 1310 | 9.182529989629984 52.75080998428166 1311 | 9.180924016982317 52.750463979318724 1312 | 9.180046012625098 52.75187498889862 1313 | 9.18022496625781 52.75191698223353 1314 | 9.17992003262043 52.75239198468626 1315 | 9.179530022665858 52.75422996841372 1316 | 9.178750002756715 52.75558004155756 1317 | 9.178350018337369 52.75687001645564 1318 | 9.172529960051179 52.761460030451396 1319 | 9.178060004487634 52.76308000087738 1320 | 9.175479970872402 52.76603001169858 1321 | 9.174580005928876 52.7683099731803 1322 | 9.17425001040101 52.76984998025 1323 | 9.172909995540977 52.7716400194913 1324 | 9.171079974621534 52.771900026127696 1325 | 9.170979978516698 52.772660013288245 1326 | 9.169769966974854 52.77254995889961 1327 | 9.167320020496845 52.773139961063855 1328 | 9.166249986737967 52.77321003377437 1329 | 9.165580021217465 52.77347004041074 1330 | 9.161350009962916 52.77636003680526 1331 | 9.153779977932572 52.778809983283274 1332 | 9.15325996465981 52.778869997709975 1333 | 9.14851002395153 52.77840999886393 1334 | 9.146879995241761 52.78022996149956 1335 | 9.146800031885505 52.780770007520886 1336 | 9.146370040252805 52.7813799586147 1337 | 9.144960036501288 52.781850015744546 1338 | 9.14412997663021 52.78195001184942 1339 | 9.135959967970848 52.781090028584 1340 | 9.134509982541205 52.780040027573705 1341 | 9.133395021781325 52.7814959641546 1342 | 9.135305006057024 52.78196199797094 1343 | 9.139492018148303 52.78332497924566 1344 | 9.143129009753466 52.783584985882044 1345 | 9.144195020198822 52.78405303135512 1346 | 9.143226994201543 52.786414967849865 1347 | 9.139724029228091 52.792921001091585 1348 | 9.14092599414289 52.793130967766025 1349 | 9.141519013792276 52.79359498992562 1350 | 9.145737960934639 52.79320104047655 1351 | 9.146572798490524 52.7946211863309 1352 | 9.147901246324182 52.79574268497526 1353 | 9.15027542039752 52.79629815369843 1354 | 9.149097176268697 52.797622829675646 1355 | 9.145750869065523 52.799784271046526 1356 | 9.144227961078286 52.802775017917135 1357 | 9.145069001242518 52.803962985053666 1358 | 9.143901988863945 52.805996015667915 1359 | 9.144217986613512 52.807980012148604 1360 | 9.14541601203382 52.81034303829074 1361 | 9.144889963790774 52.81339002773166 1362 | 9.145560013130307 52.81457003206017 1363 | 9.147980036213994 52.81445000320673 1364 | 9.14894001558423 52.81497001647949 1365 | 9.150940021499991 52.81542004086077 1366 | 9.151720041409135 52.81598003581165 1367 | 9.1527200024575 52.8160200174898 1368 | 9.15360001847148 52.816380020230994 1369 | 9.154179962351918 52.81642997637391 1370 | 9.155719969421625 52.816269965842366 1371 | 9.157310016453266 52.81634003855288 1372 | 9.16400003246963 52.81485996209084 1373 | 9.167640041559935 52.813709964975715 1374 | 9.170400034636259 52.81415998935696 1375 | 9.169769966974854 52.817309992387884 1376 | 9.170559961348772 52.81733002513647 1377 | 9.184039989486337 52.819939982146025 1378 | 9.184750020503998 52.82023997046051 1379 | 9.186499994248152 52.82252999022601 1380 | 9.186829989776015 52.823830023407936 1381 | 9.18666997924447 52.824910031631575 1382 | 9.19062003493309 52.82954002730549 1383 | 9.1907300055027 52.82987999729812 1384 | 9.189199972897768 52.83269003033638 1385 | 9.189970018342137 52.83556996844706 1386 | 9.189970018342137 52.837150041013935 1387 | 9.189280020073056 52.838370027020574 1388 | 9.190010000020266 52.839839961379774 1389 | 9.189329976215959 52.845930000767105 1390 | 9.18570002540946 52.84704001620411 1391 | 9.184200000017881 52.84769003279507 1392 | 9.182919999584556 52.84786001779139 1393 | 9.181860024109483 52.84822999499736 1394 | 9.179200027137995 52.84807995893061 1395 | 9.17858999222517 52.85052001476288 1396 | 9.165750006213784 52.85419003106654 1397 | 9.165980005636811 52.856990005820975 1398 | 9.169480036944151 52.86660002544521 1399 | 9.16975999251008 52.86996996961533 1400 | 9.169690003618598 52.87228002212944 1401 | 9.169282978400588 52.87436200305818 1402 | 9.17012301273644 52.87444096058606 1403 | 9.17222997173667 52.87541896104814 1404 | 9.171810038387775 52.87733397446573 1405 | 9.172085970640184 52.88631996139882 1406 | 9.170887023210526 52.88689998909831 1407 | 9.170201970264316 52.88748596794903 1408 | 9.171937024220824 52.888415018096566 1409 | 9.17248503305018 52.88830001838505 1410 | 9.171937024220824 52.888415018096566 1411 | 9.172687958925962 52.889469964429736 1412 | 9.173520030453801 52.88982301019131 1413 | 9.173624971881509 52.89007497020066 1414 | 9.17321601882577 52.89055198431014 1415 | 9.168738992884755 52.89363903924823 1416 | 9.167061019688845 52.895752033218756 1417 | 9.166357023641467 52.89702096953987 1418 | 9.166233977302909 52.8978569805622 1419 | 9.167701983824372 52.899743998423226 1420 | 9.167026989161968 52.90090397000312 1421 | 9.164720037952065 52.900924505665884 1422 | 9.159299964085221 52.90808600373566 1423 | 9.157886020839214 52.90832002647219 1424 | 9.157601036131382 52.908954033628106 1425 | 9.15682403370738 52.90978602133689 1426 | 9.155662972480059 52.909722989425056 1427 | 9.155399026349187 52.91068003512919 1428 | 9.156810035929084 52.91129996068774 1429 | 9.159220000728965 52.91098999790846 1430 | 9.159270040690899 52.91188996285198 1431 | 9.160060035064816 52.91345000267029 1432 | 9.159649992361665 52.91433999314902 1433 | 9.160109991207719 52.914469996467226 1434 | 9.160190038383007 52.914799991995096 1435 | 9.159749988466501 52.91677996516227 1436 | 9.16066998615861 52.91987003758548 1437 | 9.163139965385199 52.91987003758548 1438 | 9.164869990199804 52.92027999646962 1439 | 9.176580011844635 52.92612997815013 1440 | 9.177240002900362 52.92601003311573 1441 | 9.178469963371754 52.92519003152846 1442 | 9.179820036515594 52.924689967185245 1443 | 9.184190025553107 52.92442996054888 1444 | 9.185459967702627 52.92421999387443 1445 | 9.189259987324476 52.92185001075267 1446 | 9.190790019929409 52.921329997479916 1447 | 9.192430023103952 52.92133997194469 1448 | 9.194170022383332 52.921550022438154 1449 | 9.197950009256603 52.92153996415435 1450 | 9.200679995119572 52.92126000858844 1451 | 9.205109998583794 52.92172998189926 1452 | 9.22072003595531 52.91867000050845 1453 | 9.221819993108511 52.91933996602892 1454 | 9.227409968152642 52.91998000815509 1455 | 9.227409968152642 52.920489963144064 1456 | 9.226890038698912 52.92165999300778 1457 | 9.226099960505962 52.92307997122407 1458 | 9.225369980558753 52.92297000065446 1459 | 9.224839992821217 52.924649985507116 1460 | 9.22607003711164 52.92546001262962 1461 | 9.22589996829629 52.926849983632565 1462 | 9.225559998303652 52.92755004018544 1463 | 9.228159980848432 52.928269961848855 1464 | 9.227710040286183 52.92931996285917 1465 | 9.227139987051487 52.93212999589741 1466 | 9.226519977673888 52.93338996358216 1467 | 9.22632995992899 52.934870040044196 1468 | 9.226410007104278 52.93629999272525 1469 | 9.227100005373359 52.937900014221675 1470 | 9.226189982146025 52.9379399958998 1471 | 9.227279964834452 52.94086997397244 1472 | 9.227439975365996 52.94243998825549 1473 | 9.225559998303652 52.942709969356635 1474 | 9.221759978681803 52.94266001321373 1475 | 9.220690028741956 52.943329978734255 1476 | 9.219229985028505 52.94384001754223 1477 | 9.215169958770277 52.94456002302467 1478 | 9.212739961221814 52.9448399785906 1479 | 9.19367004185915 52.952310014516094 1480 | 9.192709978669882 52.952579995617256 1481 | 9.190690023824573 52.952709998935454 1482 | 9.192260038107634 52.95467002317309 1483 | 9.192620040848851 52.956250011920915 1484 | 9.184980019927025 52.95874002389608 1485 | 9.182439967989922 52.95849996618926 1486 | 9.17639996856451 52.96055998653175 1487 | 9.173680040985346 52.96249997802079 1488 | 9.172010030597448 52.96344000846147 1489 | 9.162709973752499 52.967250002548084 1490 | 9.16556996293366 52.96970003284513 1491 | 9.157400038093328 52.97300996258853 1492 | 9.150510029867291 52.97362997196612 1493 | 9.146689977496862 52.9751999862492 1494 | 9.143599988892674 52.97489002346992 1495 | 9.131970014423132 52.97950996086001 1496 | 9.13171000778675 52.9797599930316 1497 | 9.132249969989061 52.980619976297014 1498 | 9.129029978066683 52.98074997961522 1499 | 9.122229991480708 52.98334996216 1500 | 9.121769992634654 52.98370996490121 1501 | 9.120359988883138 52.98422997817396 1502 | 9.119709972292185 52.98445000313221 1503 | 9.118670029565692 52.98454999923705 1504 | 9.112540008500218 52.986749997362494 1505 | 9.091279981657864 52.99266996793448 1506 | 9.090039962902665 52.99305997788908 1507 | 9.089609971269965 52.9934599623084 1508 | 9.087569983676076 52.99384997226297 1509 | 9.087079977616668 52.99409002996981 1510 | 9.085959987714887 52.997220000252106 1511 | 9.082900006324053 52.9967999830842 1512 | 9.080790029838681 52.99607997760178 1513 | 9.078249977901578 52.99695001915098 1514 | 9.077299972996116 52.99709997139871 1515 | 9.0714000351727 52.99679000861941 1516 | 9.067990025505424 52.996790008619406 1517 | 9.064020020887256 52.99716996029018 1518 | 9.06402999535203 52.99735000357032 1519 | 9.062410024926066 52.99770003184675 1520 | 9.062299970537424 52.99784000962971 1521 | 9.0599699690938 52.997870016843095 1522 | 9.054809985682368 52.99757002852856 1523 | 9.05225995928049 52.99755997024475 1524 | 9.05210003256798 52.99678003415465 1525 | 9.051499972119927 52.996609965339296 1526 | 9.0508399810642 52.99725998193024 1527 | 9.04840998351574 52.998079983517506 1528 | 9.048360027372837 52.998579964041696 1529 | 9.0486900229007 52.998999981209636 1530 | 9.049199977889657 52.99919997341929 1531 | 9.050160041078927 52.99913995899261 1532 | 9.051989978179336 52.99636999145151 1533 | 9.052230035886168 52.9935899656266 1534 | 9.053260004147887 52.99125996418297 1535 | 9.05388998799026 52.98616996966303 1536 | 9.053720002993941 52.98530001193285 1537 | 9.052609987556934 52.98454999923705 1538 | 9.04548997990787 52.98229996114967 1539 | 9.044530000537634 52.98162999562918 1540 | 9.044269993901253 52.98113001510499 1541 | 9.044360015541317 52.98054001294075 1542 | 9.046579962596297 52.97588001005351 1543 | 9.030979983508587 52.971580009907484 1544 | 9.029390020295978 52.96850997023282 1545 | 9.027980016544461 52.96679997816681 1546 | 9.03087998740375 52.966160019859664 1547 | 9.031030023470521 52.96331000514327 1548 | 9.03044999577105 52.96262000687419 1549 | 9.030700027942657 52.96245999634266 1550 | 9.028990035876632 52.961249984800816 1551 | 9.028329961001873 52.96105996705592 1552 | 9.026500023901463 52.961800005286925 1553 | 9.026180002838373 52.96223997138441 1554 | 9.025999959558249 52.96291002072391 1555 | 9.027079967781901 52.9633000306785 1556 | 9.027199996635318 52.963530030101545 1557 | 9.026870001107454 52.96449000947176 1558 | 9.025970036163926 52.96567001380026 1559 | 9.025559993460776 52.96698999591172 1560 | 9.024739991873503 52.96718998812139 1561 | 9.023329988121986 52.96701002866029 1562 | 9.02226003818214 52.96640996821225 1563 | 9.02204998768866 52.965719969943144 1564 | 9.021310033276677 52.965059978887425 1565 | 9.019529968500137 52.96485998667775 1566 | 9.015489974990487 52.9653199855238 1567 | 9.00819000788033 52.965479996055365 1568 | 9.000070039182903 52.96502997167407 1569 | 8.996820040047169 52.96548997052014 1570 | 8.989380011335015 52.965789958834634 1571 | 8.990060035139322 52.96751000918448 1572 | 8.990300009027123 52.97040998004378 1573 | 8.988750027492642 52.97480000182988 1574 | 8.988690013065934 52.975589996203794 1575 | 8.988760001957417 52.975829970091574 1576 | 8.989719981327653 52.97657998278736 1577 | 8.987819971516728 52.97709002159536 1578 | 8.982529984787107 52.97674996778367 1579 | 8.981040017679334 52.97673001885414 1580 | 8.980659982189536 52.97684996388852 1581 | 8.977119969204068 52.97676002606749 1582 | 8.974340027198195 52.97634998336433 1583 | 8.973759999498725 52.976800007745624 1584 | 8.97245996631682 52.977299988269785 1585 | 8.972530039027333 52.9786600358784 1586 | 8.973200004547834 52.98008001409469 1587 | 8.975520031526685 52.98307998105883 1588 | 8.976470036432147 52.985290037468054 1589 | 8.978559980168939 52.98813996836543 1590 | 8.9784100279212 52.9882900044322 1591 | 8.975000018253922 52.98894999548792 1592 | 8.974169958382845 52.988900039345026 1593 | 8.952399976551533 52.98609000630675 1594 | 8.934980034828186 52.98324996605513 1595 | 8.932509971782565 52.98885997384786 1596 | 8.931710002943875 52.98964996822177 1597 | 8.930580038577318 52.99035999923942 1598 | 8.919360022991896 52.99557002261281 1599 | 8.920450005680323 52.998579964041696 1600 | 8.918229974806309 53.000230025500045 1601 | 8.900869963690639 53.00507996231317 1602 | 8.897930011153221 53.00558002665639 1603 | 8.894550008699298 53.005610033869736 1604 | 8.891860004514456 53.00597003661097 1605 | 8.892280021682382 53.006900008767836 1606 | 8.891109991818668 53.00763996317983 1607 | 8.890169961377978 53.00890001468362 1608 | 8.889899980276823 53.01038000732659 1609 | 8.88795998878777 53.01388003863396 1610 | 8.884419975802302 53.015149980783455 1611 | 8.882140014320612 53.01723003387451 1612 | 8.880839981138706 53.017879966646404 1613 | 8.879440035670996 53.01894002594053 1614 | 8.877659970894456 53.020780021324754 1615 | 8.876019967719913 53.02171996794641 1616 | 8.875020006671548 53.02147999405861 1617 | 8.874609963968396 53.02157001569867 1618 | 8.872969960793853 53.02286996506153 1619 | 8.871410004794598 53.02318001165985 1620 | 8.86898998171091 53.02462002262473 1621 | 8.86703004129231 53.02547003142537 1622 | 8.865879960358143 53.02637997083366 1623 | 8.86454002931714 53.026439985260346 1624 | 8.863630006089807 53.02676000632346 1625 | 8.863669987767935 53.02761998958885 1626 | 8.863140000030398 53.028860008344054 1627 | 8.86353000998497 53.03041996434332 1628 | 8.862559972330928 53.03155001252888 1629 | 8.861690014600754 53.03208997473121 1630 | 8.861829992383718 53.032739991322146 1631 | 8.861330011859536 53.035869961604476 1632 | 8.861720021814108 53.038749983534224 1633 | 8.862080024555326 53.039850024506435 1634 | 8.865579972043633 53.043430019170046 1635 | 8.866210039705038 53.044310035184026 1636 | 8.864310029894114 53.04626000113785 1637 | 8.863339992240071 53.046980006620274 1638 | 8.862140038982034 53.04872000589968 1639 | 8.860020004212856 53.050499986857176 1640 | 8.857739958912134 53.0517300311476 1641 | 8.856969997286797 53.051960030570626 1642 | 8.856709990650415 53.05236998945476 1643 | 8.854230036959052 53.0535700265318 1644 | 8.852690029889345 53.05467995814978 1645 | 8.85053001344204 53.055559974163785 1646 | 8.849499961361289 53.05574001744388 1647 | 8.848119964823127 53.0555899813771 1648 | 8.846430005505681 53.056170009076574 1649 | 8.84432002902031 53.056430015712955 1650 | 8.84239001199603 53.056330019608154 1651 | 8.841159967705607 53.055979991331704 1652 | 8.839679975062609 53.05626003071666 1653 | 8.839000035077333 53.0562199652195 1654 | 8.836080031469464 53.05583003908396 1655 | 8.834189996123314 53.05541002191601 1656 | 8.830470023676753 53.05564002133906 1657 | 8.829100001603365 53.0558499880135 1658 | 8.823729967698455 53.05712001398206 1659 | 8.819670025259256 53.05834997445345 1660 | 8.81205003708601 53.061369974166155 1661 | 8.810859974473715 53.06233003735544 1662 | 8.810410033911467 53.06306001730263 1663 | 8.81187996827066 53.063539965078235 1664 | 8.809960009530187 53.065290022641406 1665 | 8.809330025687814 53.06641001254322 1666 | 8.80871999077499 53.06677001528441 1667 | 8.80727997981012 53.06825998239217 1668 | 8.805420035496354 53.06946001946925 1669 | 8.804319994524121 53.07055000215767 1670 | 8.803920010104775 53.07129004038869 1671 | 8.804770018905401 53.07203996926546 1672 | 8.804129976779222 53.07248001918197 1673 | 8.806429971009493 53.07363001629708 1674 | 8.80494000390172 53.074599970132105 1675 | 8.804449997842312 53.075430030003176 1676 | 8.80349999293685 53.07531000114976 1677 | 8.802400035783648 53.07635002769529 1678 | 8.8007499743253 53.0775099992752 1679 | 8.795259995386004 53.07983002625406 1680 | 8.790899980813265 53.080750023946166 1681 | 8.789140032604337 53.07863996364174 1682 | 8.786350032314658 53.074559988453984 1683 | 8.78394995816052 53.075700011104345 1684 | 8.78150001168251 53.077849969267845 1685 | 8.7761299777776 53.07963003404437 1686 | 8.772849971428514 53.08129996061323 1687 | 8.76646002754569 53.074599970132105 1688 | 8.753040013834834 53.08522998355329 1689 | 8.752540033310652 53.085489990189664 1690 | 8.750399965792894 53.08381997980176 1691 | 8.743840036913753 53.08899002149701 1692 | 8.743239976465702 53.08916998095812 1693 | 8.742149993777275 53.089169980958104 1694 | 8.733489979058504 53.087369967252016 1695 | 8.722269963473082 53.10619999654589 1696 | 8.726280033588411 53.108780030161135 1697 | 8.726799963042142 53.10934002511203 1698 | 8.727189972996712 53.110300004482234 1699 | 8.727080002427101 53.11112000606955 1700 | 8.726569963619113 53.11175996437669 1701 | 8.725519962608814 53.112309984862804 1702 | 8.723379978910089 53.11308003030716 1703 | 8.723330022767186 53.113340036943555 1704 | 8.723760014399886 53.113859966397285 1705 | 8.723179986700416 53.11407001689075 1706 | 8.716300036758184 53.116179993376136 1707 | 8.715769965201616 53.116119978949435 1708 | 8.715420020744205 53.11575997620821 1709 | 8.714969996362925 53.11575997620821 1710 | 8.714719964191318 53.115919986739755 1711 | 8.714909981936216 53.116349978372455 1712 | 8.714730022475123 53.11656002886592 1713 | 8.71087996289134 53.117220019921646 1714 | 8.701119991019368 53.11752998270093 1715 | 8.697549970820546 53.11781002208589 1716 | 8.697379985824227 53.11756996437905 1717 | 8.696819990873337 53.11745999380945 1718 | 8.695539990440011 53.11762997880578 1719 | 8.695270009338856 53.11755001544951 1720 | 8.694329978898168 53.11775998212396 1721 | 8.692050017416477 53.11781002208589 1722 | 8.692050017416477 53.11838996596634 1723 | 8.691760003566742 53.11856003478169 1724 | 8.689850019291043 53.118869997560964 1725 | 8.669270016252995 53.1236699782312 1726 | 8.668849999085069 53.12346998602152 1727 | 8.66782003082335 53.1215600017458 1728 | 8.667899994179606 53.121409965679064 1729 | 8.668480021879077 53.121379958465695 1730 | 8.667569998651745 53.12127996236086 1731 | 8.661650028079748 53.12137995846568 1732 | 8.657929971814156 53.12161004170773 1733 | 8.651050021871924 53.123439978808165 1734 | 8.647380005568266 53.12301996164023 1735 | 8.646950013935566 53.124340027570724 1736 | 8.647189987823367 53.124640015885234 1737 | 8.647159980610013 53.12506003305316 1738 | 8.646169994026423 53.126199971884475 1739 | 8.644690001383424 53.12727998010814 1740 | 8.641639994457364 53.12872996553779 1741 | 8.641210002824664 53.129240004345775 1742 | 8.635300006717443 53.133159969001994 1743 | 8.631699979305267 53.136330004781485 1744 | 8.62916998565197 53.13951998949051 1745 | 8.626899998635054 53.143570041283965 1746 | 8.625740027055144 53.14699002541602 1747 | 8.62338999286294 53.160490002483115 1748 | 8.622650038450956 53.161230040714145 1749 | 8.620620025321841 53.16130002960561 1750 | 8.61950003542006 53.16328000277281 1751 | 8.618710041046143 53.16397997550666 1752 | 8.6173100117594 53.16468003205955 1753 | 8.617400033399463 53.165089990943684 1754 | 8.6109499912709 53.16712000407278 1755 | 8.607550039887425 53.16800999455154 1756 | 8.605969967320561 53.168330015614615 1757 | 8.601919999346133 53.168739974498735 1758 | 8.599459994584322 53.168550040572896 1759 | 8.597299978137015 53.168839970603585 1760 | 8.594739977270365 53.16873000003397 1761 | 8.59013998880982 53.168119965121136 1762 | 8.587670009583235 53.167340029031024 1763 | 8.587240017950535 53.16738998517394 1764 | 8.58612002804875 53.16708999685942 1765 | 8.585049994289875 53.16722000017762 1766 | 8.582819988951083 53.16702000796795 1767 | 8.58075996860862 53.167159985750914 1768 | 8.577290028333664 53.16843001171946 1769 | 8.575539970770478 53.170360028743744 1770 | 8.573620012030002 53.17181001417339 1771 | 8.57204002328217 53.174219978973255 1772 | 8.566490029916167 53.17460001446306 1773 | 8.566200016066428 53.17507996223867 1774 | 8.566449964419006 53.1756400410086 1775 | 8.565189996734258 53.17578001879154 1776 | 8.564060032367703 53.17650002427398 1777 | 8.56263997033238 53.17661996930837 1778 | 8.559700017794965 53.17807003855705 1779 | 8.558150036260484 53.17808998748661 1780 | 8.55494001880288 53.17883002571762 1781 | 8.553040008991957 53.178939996287205 1782 | 8.550810003653169 53.17881996743381 1783 | 8.546730028465387 53.17922003567217 1784 | 8.545799972489473 53.17971004173159 1785 | 8.5455999802798 53.18041001446545 1786 | 8.542579980567098 53.180700028315165 1787 | 8.54037998244166 53.18111996166408 1788 | 8.539150021970269 53.181119961664066 1789 | 8.535679997876283 53.181729996576905 1790 | 8.530490007251501 53.18323999643326 1791 | 8.530190018936988 53.183530010282986 1792 | 8.529100036248561 53.18359002470968 1793 | 8.525739982724186 53.18321996368466 1794 | 8.523500002920624 53.1837200280279 1795 | 8.51971004158258 53.18543002009391 1796 | 8.518749978393313 53.186120018362985 1797 | 8.51781003177166 53.1875300221145 1798 | 8.51565001532435 53.18832001648842 1799 | 8.514479985460639 53.189080003648996 1800 | 8.511849995702505 53.189949961379156 1801 | 8.508520033210512 53.19056997075677 1802 | 8.507280014455318 53.19112996570766 1803 | 8.505600029602643 53.19134001620113 1804 | 8.504889998584982 53.1917199678719 1805 | 8.503159973770376 53.193240026012056 1806 | 8.503099959343668 53.19393002428112 1807 | 8.50190000608563 53.19498002529142 1808 | 8.500510035082694 53.19711003452537 1809 | 8.496650001034137 53.200570000335574 1810 | 8.490530038252471 53.20486002601683 1811 | 8.486279994249339 53.20739001967012 1812 | 8.482309989631174 53.21149002760647 1813 | 8.479419993236656 53.21375004015862 1814 | 8.477210020646453 53.21628003381191 1815 | 8.47137001343071 53.22128000669181 1816 | 8.470280030742282 53.22178996168074 1817 | 8.469319967553016 53.22117003612219 1818 | 8.467830000445241 53.221349995583296 1819 | 8.465769980102776 53.220469979569295 1820 | 8.463300000876185 53.220769967883825 1821 | 8.46386997029185 53.22141998447476 1822 | 8.46145003102719 53.22131001390515 1823 | 8.460890036076302 53.2212100178003 1824 | 8.459689998999233 53.22023000568151 1825 | 8.457740033045406 53.2219499722123 1826 | 8.45676002092659 53.223110027611256 1827 | 8.456219974905247 53.22462002746758 1828 | 8.455780008807773 53.224820019677274 1829 | 8.456000033766024 53.225840013474205 1830 | 8.45735002309084 53.22851995937523 1831 | 8.459840035066001 53.232149994000785 1832 | 8.462449992075562 53.233820004388676 1833 | 8.462670017033814 53.2347199693322 1834 | 8.463490018621085 53.23536998592315 1835 | 8.463709959760301 53.23582998476923 1836 | 8.46391003578901 53.23581003583967 1837 | 8.4640899952501 53.237060029059656 1838 | 8.464280012995001 53.23707000352441 1839 | 8.466099975630636 53.242090009152854 1840 | 8.466459978371855 53.24360000900925 1841 | 8.466220004484052 53.24426997452974 1842 | 8.466659970581528 53.24497003108261 1843 | 8.466919977217907 53.24718997813761 1844 | 8.467820025980469 53.25036998838185 1845 | 8.46848999150097 53.25112997554241 1846 | 8.470459990203375 53.25270996429025 1847 | 8.471849961206313 53.25483997352421 1848 | 8.47393001429736 53.254420040175305 1849 | 8.474339973181483 53.25506997294725 1850 | 8.476079972460862 53.25666999444363 1851 | 8.478119960054752 53.26037999242543 1852 | 8.480179980397223 53.265899978578084 1853 | 8.480829996988174 53.268710011616335 1854 | 8.481289995834226 53.2769299764186 1855 | 8.480420038104054 53.27695000916717 1856 | 8.480720026418565 53.278560005128384 1857 | 8.482309989631176 53.28342000022529 1858 | 8.480669986456629 53.289120029658065 1859 | 8.481619991362095 53.291569976136074 1860 | 8.48178997635841 53.291750019416206 1861 | 8.483480019494888 53.29172998666763 1862 | 8.48430002108216 53.29257002100349 1863 | 8.484999993816015 53.29391003586352 1864 | 8.485529981553551 53.29579001292585 1865 | 8.486349983140826 53.30312996171415 1866 | 8.487020032480357 53.30620997585356 1867 | 8.487399984151121 53.305459963157766 1868 | 8.48748003132641 53.3055599592626 1869 | 8.487329995259639 53.30614996142684 1870 | 8.486460037529465 53.30732996575532 1871 | 8.486010013148189 53.30896996892989 1872 | 8.48587003536522 53.3128999918699 1873 | 8.48526997491717 53.31487996503711 1874 | 8.485429985448715 53.315420011058436 1875 | 8.485359996557232 53.320410009473555 1876 | 8.485789988189934 53.32514000125229 1877 | 8.485540039837357 53.3257399778813 1878 | 8.485799962654706 53.32609998062251 1879 | 8.48526997491717 53.32769002765414 1880 | 8.485320014879107 53.328849999234066 1881 | 8.486389964818951 53.329200027510524 1882 | 8.486159965395926 53.329470008611686 1883 | 8.487209966406223 53.33160001784563 1884 | 8.487050039693711 53.33210997283457 1885 | 8.485229993239042 53.331800010055304 1886 | 8.485190011560913 53.3355700224638 1887 | 8.483589990064498 53.33807000890374 1888 | 8.482980038970707 53.338409978896365 1889 | 8.47955997101962 53.33883997052908 1890 | 8.479719981551165 53.33913995884358 1891 | 8.479359978809953 53.339259987697005 1892 | 8.477949975058436 53.34086000919342 1893 | 8.477089991793033 53.343169977888444 1894 | 8.478009989485141 53.34349997341633 1895 | 8.477689968422052 53.34460001438856 1896 | 8.476060023531314 53.34457998163998 1897 | 8.474360005930064 53.34421000443399 1898 | 8.473240016028281 53.344930009916425 1899 | 8.472559992223974 53.34499999880787 1900 | 8.472190015017983 53.34575001150371 1901 | 8.471489958465096 53.346440009772756 1902 | 8.468359988182778 53.34840003401042 1903 | 8.465579962357877 53.352429969236226 1904 | 8.469119975343343 53.353049978613846 1905 | 8.470440041273829 53.35293003357945 1906 | 8.471449976786966 53.35304997861384 1907 | 8.482230026274916 53.35631003603338 1908 | 8.482990013435478 53.35707999765873 1909 | 8.484700005501505 53.3580099698156 1910 | 8.484010007232424 53.35941997356712 1911 | 8.482030034065243 53.361839996650815 1912 | 8.478399999439715 53.36508002132177 1913 | 8.465850027278062 53.3714200090617 1914 | 8.464459972456094 53.371710022911415 1915 | 8.464559968560929 53.37257998064159 1916 | 8.462370028719302 53.375940034165964 1917 | 8.460530033335086 53.37969001382587 1918 | 8.458709986880416 53.38251002132892 1919 | 8.458770001307125 53.384480020031326 1920 | 8.456490039825432 53.38454003445802 1921 | 8.456430025398724 53.383569996804 1922 | 8.456059964373702 53.38318996131418 1923 | 8.454569997265931 53.3830700162798 1924 | 8.45285003073513 53.38225998915732 1925 | 8.450149968266482 53.3827000390738 1926 | 8.447970002889626 53.38278997689485 1927 | 8.451129980385296 53.38665001094339 1928 | 8.451489983126516 53.39611996896565 1929 | 8.453420000150794 53.40018996968863 1930 | 8.452839972451324 53.40201999060808 1931 | 8.45292001962661 53.40191999450324 1932 | 8.455469962209458 53.40247998945413 1933 | 8.460640003904697 53.406170038506374 1934 | 8.461020039394496 53.406659960746765 1935 | 8.465579962357875 53.4071399923414 1936 | 8.466240037232632 53.4069499745965 1937 | 8.467430016025894 53.40760996565219 1938 | 8.467990010976788 53.40900999493897 1939 | 8.471579980105156 53.41315995901821 1940 | 8.4725500177592 53.4190500061959 1941 | 8.471700008958575 53.4242300223559 1942 | 8.471979964524504 53.424669988453374 1943 | 8.468239959329367 53.42561999335885 1944 | 8.471820037811991 53.430770002305486 1945 | 8.473920039832592 53.432080009952166 1946 | 8.477579997852445 53.433480039238916 1947 | 8.479089997708794 53.43454998917878 1948 | 8.479949980974194 53.43576997518538 1949 | 8.480170005932445 53.437060033902526 1950 | 8.478850023820993 53.44114998355507 1951 | 8.478990001603961 53.44193997792899 1952 | 8.477730033919212 53.442529980093234 1953 | 8.476339979097244 53.44459000043571 1954 | 8.475549984723326 53.444840032607296 1955 | 8.474880019202825 53.44478999264537 1956 | 8.474620012566444 53.44692997634409 1957 | 8.475249996408817 53.44878003001213 1958 | 8.474650019779796 53.45364999957381 1959 | 8.474320024251933 53.45410999841988 1960 | 8.474539965391157 53.45436003059147 1961 | 8.474740041419862 53.46188999712465 1962 | 8.474460002034899 53.46195001155137 1963 | 8.474910026416179 53.46258996985852 1964 | 8.475419981405137 53.46474998630583 1965 | 8.475839998573061 53.46481997519731 1966 | 8.476910032331938 53.4670499805361 1967 | 8.476889999583364 53.46805002540348 1968 | 8.477900018915532 53.46878000535068 1969 | 8.482960006222125 53.477110024541616 1970 | 8.48571999929845 53.48109997808933 1971 | 8.485970031470057 53.48227998241782 1972 | 8.486400023102757 53.482920024543986 1973 | 8.485959973186251 53.483350016176665 1974 | 8.486440004780885 53.48408997058867 1975 | 8.48709999583661 53.48430999554694 1976 | 8.487450024113059 53.48483998328447 1977 | 8.487550020217894 53.48794003017246 1978 | 8.4885199740529 53.487850008532405 1979 | 8.488730024546381 53.49261998198925 1980 | 8.486029962077737 53.49355003796516 1981 | 8.488819962367415 53.49826997146007 1982 | 8.489339975640174 53.500450020655975 1983 | 8.490029973909255 53.50130002945661 1984 | 8.493400001898408 53.50439001806079 1985 | 8.493720022961496 53.50482000969349 1986 | 8.49395002238452 53.505860036239014 1987 | 8.495009997859594 53.50702998228371 1988 | 8.497530017048117 53.50911003537475 1989 | 8.505549989640713 53.514409996569135 1990 | 8.507840009406205 53.51398997940122 1991 | 8.512170016765593 53.51283000782131 1992 | 8.51250998675823 53.51302002556619 1993 | 8.513729972764848 53.51532999426125 1994 | 8.514159964397546 53.515680022537715 1995 | 8.516340013593432 53.51453999988735 1996 | 8.517039986327287 53.51450999267398 1997 | 8.518679989501834 53.51390004158019 1998 | 8.520500035956498 53.513799961656325 1999 | 8.522080024704334 53.51424998603759 2000 | 8.520619980990887 53.515629982575746 2001 | 8.523569991812108 53.51758003234862 2002 | 8.527170019224286 53.51555999368429 2003 | 8.528550015762448 53.516319980844855 2004 | 8.539389995858073 53.521130019798875 2005 | 8.539719991385933 53.52142003364859 2006 | 8.543030004948374 53.52155003696678 2007 | 8.54451997205615 53.520329967141144 2008 | 8.547060023993254 53.520960034802556 2009 | 8.5515300091356 53.52265996858476 2010 | 8.555479981005192 53.52459996007383 2011 | 8.570070024579762 53.53393999859692 2012 | 8.572900006547567 53.53501003235576 2013 | 8.58130001462996 53.536709966137984 2014 | 8.58517002314329 53.53875003755091 2015 | 8.586820000782607 53.54003003798425 2016 | 8.582599963992834 53.54109998792408 2017 | 8.582060001790524 53.541740030050285 2018 | 8.579070009291168 53.54064996354282 2019 | 8.57982002198696 53.54001000523567 2020 | 8.580810008570552 53.53958998806774 2021 | 8.580320002511142 53.53886000812054 2022 | 8.579560015350577 53.53823999874294 2023 | 8.578629959374666 53.537900028750286 2024 | 8.578029982745647 53.538040006533265 2025 | 8.575550029054282 53.54093000292778 2026 | 8.572219982743263 53.54361003264785 2027 | 8.572419974952936 53.543699970468886 2028 | 8.570999996736646 53.54486002586782 2029 | 8.570849960669873 53.545499984174945 2030 | 8.569009965285655 53.54643004015086 2031 | 8.561319988220928 53.55455000884831 2032 | 8.560079969465733 53.55889996513722 2033 | 8.559019993990658 53.55904002673924 2034 | 8.55833997018635 53.55882000178099 2035 | 8.556759981438516 53.558989986777306 2036 | 8.552050022408364 53.563580000773065 2037 | 8.551639979705213 53.564499998465195 2038 | 8.551119966432449 53.567340038716786 2039 | 8.55113999918103 53.570249984040856 2040 | 8.55254002846777 53.571359999477856 2041 | 8.556480025872586 53.57296002097428 2042 | 8.557560034096241 53.57306999154387 2043 | 8.559819962829351 53.57261996716261 2044 | 8.56137002818286 53.57500000856814 2045 | 8.562239985913038 53.576800022274256 2046 | 8.562149964272972 53.57768003828825 2047 | 8.561449991539119 53.578289989382014 2048 | 8.56048003770411 53.57858997769654 2049 | 8.556510033085942 53.57834002934395 2050 | 8.554350016638635 53.57861001044511 2051 | 8.548370031639932 53.58091000467537 2052 | 8.546679988503454 53.58120999298988 2053 | 8.545150039717551 53.58465998433529 2054 | 8.540549967437979 53.590149963274584 2055 | 8.53909000754356 53.592390026897185 2056 | 8.539069974794984 53.59426002949476 2057 | 8.539480017498132 53.59558998607099 2058 | 8.540300019085407 53.596930000931025 2059 | 8.54125002399087 53.59729000367224 2060 | 8.540379982441664 53.59782996587455 2061 | 8.538140002638098 53.59827001579103 2062 | 8.535840008407828 53.5990799590945 2063 | 8.535199966281649 53.599850004538865 2064 | 8.535310020670291 53.60073999501764 2065 | 8.534890003502365 53.60073999501765 2066 | 8.533500032499429 53.598950039595366 2067 | 8.532239980995655 53.598409993574 2068 | 8.530759988352656 53.599099991843104 2069 | 8.531050002202392 53.599339965730906 2070 | 8.530329996719956 53.5998299717903 2071 | 8.529860023409125 53.599680019542554 2072 | 8.529589958488938 53.599789990112164 2073 | 8.529230039566752 53.60057998448609 2074 | 8.523390032351015 53.605339983478174 2075 | 8.522979989647864 53.60743998549877 2076 | 8.521109987050295 53.610810013487935 2077 | 8.520050011575218 53.61186001449823 2078 | 8.518029972910877 53.61323003657161 2079 | 8.517109975218773 53.61419001594183 2080 | 8.516189977526661 53.61653996631501 2081 | 8.513229992240667 53.621199969202266 2082 | 8.511450011283157 53.623519996181116 2083 | 8.50619003176689 53.62785997800527 2084 | 8.503270028159022 53.6338999774307 2085 | 8.502550022676587 53.63632997497915 2086 | 8.50026000291109 53.63878000527619 2087 | 8.499179994687434 53.64190997555852 2088 | 8.498429981991645 53.643080005422206 2089 | 8.495999984443186 53.645670013502226 2090 | 8.496139962226149 53.64643997512754 2091 | 8.497899994254109 53.64800998941063 2092 | 8.497049985453483 53.648019963875385 2093 | 8.496090006083246 53.64855003543198 2094 | 8.495300011709329 53.649419993162134 2095 | 8.492429964244362 53.6571600101888 2096 | 8.491360014304515 53.65887000225482 2097 | 8.489420022815462 53.661309974268065 2098 | 8.488779980689284 53.66248997859657 2099 | 8.486440004780885 53.671449981629834 2100 | 8.485380029305812 53.67783003486693 2101 | 8.485080040991305 53.68686002679169 2102 | 8.492289986461397 53.69461001828313 2103 | 8.49265996366739 53.695960007607916 2104 | 8.49366998299956 53.69654003530739 2105 | 8.495479971170422 53.698069984093294 2106 | 8.498080037534233 53.70127002708615 2107 | 8.501100037246939 53.703939998522394 2108 | 8.502109972760078 53.70462002232671 2109 | 8.502750014886256 53.705700030550354 2110 | 8.50360999815166 53.70609004050493 2111 | 8.504020040854808 53.70666998438537 2112 | 8.505939999595281 53.70839003473519 2113 | 8.506290027871724 53.70879001915455 2114 | 8.506320035085079 53.70939997024833 2115 | 8.506969967857 53.70971999131142 2116 | 8.508070008829232 53.70993004180491 2117 | 8.511489992961284 53.71188000775872 2118 | 8.512739986181256 53.71230002492666 2119 | 8.513099988922477 53.71286001987753 2120 | 8.515850007534024 53.71427002362907 2121 | 8.51753996685147 53.7157200090587 2122 | 8.51796995848417 53.716849973425255 2123 | 8.519729990512129 53.71937996707855 2124 | 8.519720016047357 53.719780035316944 2125 | 8.520789965987202 53.72014003805814 2126 | 8.525249976664778 53.72245998121797 2127 | 8.527560029178854 53.723960006609545 2128 | 8.528580022975799 53.725219974294305 2129 | 8.531770007684823 53.72787997126579 2130 | 8.531310008838771 53.72826998122034 2131 | 8.530490007251501 53.72957998886705 2132 | 8.518970003351566 53.73685003258286 2133 | 8.519139988347884 53.73700995929539 2134 | 8.518530037254095 53.7374400347471 2135 | 8.518640007823702 53.738300018012524 2136 | 8.526290003210303 53.74365001916884 2137 | 8.528889985755086 53.747369991615415 2138 | 8.532130010426041 53.75472997315225 2139 | 8.537039961665865 53.761640014126876 2140 | 8.544059973210093 53.76529997214675 2141 | 8.54968003928661 53.78097002394498 2142 | 8.551279976963997 53.78446997143327 2143 | 8.552180025726553 53.78579003736377 2144 | 8.554710019379854 53.78852999769149 2145 | 8.56046000495553 53.79552000202238 2146 | 8.567900033667684 53.80077998153863 2147 | 8.5695999674499 53.8041500095278 2148 | 8.571090018376708 53.8084599841386 2149 | 8.571339966729283 53.808629969134905 2150 | 8.580459980294108 53.81019998341799 2151 | 8.580780001357198 53.812139974907026 2152 | 8.581460025161505 53.81255001761021 2153 | 8.583660023286939 53.8134700153023 2154 | 8.585719959810376 53.8138399925083 2155 | 8.588139982894063 53.813930014148355 2156 | 8.589240023866292 53.817199962213635 2157 | 8.590209977701306 53.81893996149301 2158 | 8.59083996154368 53.81911003030835 2159 | 8.591140033677222 53.820040002465255 2160 | 8.590469984337687 53.82073997519909 2161 | 8.589430041611195 53.823199979960904 2162 | 8.587389970198274 53.82391001097857 2163 | 8.585969991981981 53.82613004185258 2164 | 8.583739986643195 53.827380035072565 2165 | 8.581999987363814 53.827980011701555 2166 | 8.581300014629958 53.82927996106446 2167 | 8.581439992412925 53.83057001978159 2168 | 8.580380016937852 53.83192998357117 2169 | 8.580519994720815 53.83370996452867 2170 | 8.58114997856319 53.83488996885717 2171 | 8.582190005108714 53.83537997491658 2172 | 8.583419965580106 53.835370000451796 2173 | 8.584489999338981 53.83792002685368 2174 | 8.600719962269068 53.85454997420311 2175 | 8.601079965010285 53.854560032486916 2176 | 8.601859984919427 53.85818998329342 2177 | 8.603049963712692 53.85943997651338 2178 | 8.6028700042516 53.85973996482789 2179 | 8.604380004107952 53.86133998632432 2180 | 8.595710014924405 53.86310999281702 2181 | 8.595819985494018 53.86323999613521 2182 | 8.597039971500635 53.86409997940063 2183 | 8.598300023004413 53.86550998315215 2184 | 8.601050041615963 53.86763999238608 2185 | 8.606649991124868 53.87122996151446 2186 | 8.6075600143522 53.871370023116484 2187 | 8.615019991993904 53.875810001045444 2188 | 8.630149997770786 53.88267997652293 2189 | 8.633000012487173 53.88264996930957 2190 | 8.638029992580414 53.88342998921871 2191 | 8.641409995034337 53.88500000350176 2192 | 8.643310004845262 53.88519999571143 2193 | 8.647270034998655 53.8864000327885 2194 | 8.648820016533136 53.88664998114107 2195 | 8.648639973253012 53.88713998720048 2196 | 8.65273998118937 53.88766997493803 2197 | 8.655829969793558 53.88759001158177 2198 | 8.657009974122047 53.887699982151375 2199 | 8.663260024040937 53.88924996368587 2200 | 8.668819991871715 53.89028001576663 2201 | 8.67317003197968 53.89080002903938 2202 | 8.678729999810457 53.891139999032 2203 | 8.678860003128648 53.89134996570646 2204 | 8.681599963456392 53.891750033944845 2205 | -------------------------------------------------------------------------------- /map.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cfax/mapbender/ddf598c8d9c207e9463f6ae2a731cbb64e1c5003/map.png -------------------------------------------------------------------------------- /mapbender.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | # 3 | # Copyright (C) 2014 Johannes Schauer 4 | # 5 | # This program is free software: you can redistribute it and/or modify 6 | # it under the terms of the GNU General Public License as published by 7 | # the Free Software Foundation, either version 3 of the License, or 8 | # (at your option) any later version. 9 | # 10 | # This program is distributed in the hope that it will be useful, 11 | # but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | # GNU General Public License for more details. 14 | # 15 | # You should have received a copy of the GNU General Public License 16 | # along with this program. If not, see . 17 | 18 | import math 19 | from math import sqrt 20 | import numpy as np 21 | import matplotlib.pyplot as plt 22 | from scipy import interpolate 23 | from itertools import tee, izip 24 | from matplotlib.patches import Polygon 25 | from matplotlib.collections import PatchCollection 26 | import matplotlib 27 | from PIL import Image 28 | 29 | def y2lat(a): 30 | return 180.0/math.pi*(2.0*math.atan(math.exp(a*math.pi/180.0))-math.pi/2.0) 31 | 32 | def lat2y(a): 33 | return 180.0/math.pi*math.log(math.tan(math.pi/4.0+a*(math.pi/180.0)/2.0)) 34 | 35 | def pairwise(iterable): 36 | "s -> (s0,s1), (s1,s2), (s2,s3), ..." 37 | a, b = tee(iterable, 2) 38 | next(b, None) 39 | return izip(a, b) 40 | 41 | def triplewise(iterable): 42 | "s -> (s0,s1,s2), (s1,s2,s3), (s2,s3,s4), ..." 43 | a,b,c = tee(iterable, 3) 44 | next(b, None) 45 | next(c, None) 46 | next(c, None) 47 | return izip(a,b,c) 48 | 49 | # using barycentric coordinates 50 | def ptInTriangle(p, p0, p1, p2): 51 | A = 0.5 * (-p1[1] * p2[0] + p0[1] * (-p1[0] + p2[0]) + p0[0] * (p1[1] - p2[1]) + p1[0] * p2[1]); 52 | sign = -1 if A < 0 else 1; 53 | s = (p0[1] * p2[0] - p0[0] * p2[1] + (p2[1] - p0[1]) * p[0] + (p0[0] - p2[0]) * p[1]) * sign; 54 | t = (p0[0] * p1[1] - p0[1] * p1[0] + (p0[1] - p1[1]) * p[0] + (p1[0] - p0[0]) * p[1]) * sign; 55 | return s >= 0 and t >= 0 and (s + t) <= 2 * A * sign; 56 | 57 | def getxing(p0, p1, p2, p3): 58 | ux = p1[0]-p0[0] 59 | uy = p1[1]-p0[1] 60 | vx = p2[0]-p3[0] 61 | vy = p2[1]-p3[1] 62 | # get multiplicity of u at which u meets v 63 | a = vy*ux-vx*uy 64 | if a == 0: 65 | # lines are parallel and never meet 66 | return None 67 | s = (vy*(p3[0]-p0[0])+vx*(p0[1]-p3[1]))/a 68 | if 0.0 < s < 1.0: 69 | return (p0[0]+s*ux, p0[1]+s*uy) 70 | else: 71 | return None 72 | 73 | # the line p0-p1 is the upper normal to the path 74 | # the line p2-p3 is the lower normal to the path 75 | # 76 | # | | | 77 | # p0--------|--------p1 78 | # | | | 79 | # | | | 80 | # p3--------|--------p2 81 | # | | | 82 | def ptInQuadrilateral(p, p0, p1, p2, p3): 83 | # it might be that the two normals cross at some point 84 | # in that case the two triangles are created differently 85 | cross = getxing(p0, p1, p2, p3) 86 | if cross: 87 | return ptInTriangle(p, p0, cross, p3) or ptInTriangle(p, p2, cross, p1) 88 | else: 89 | return ptInTriangle(p, p0, p1, p2) or ptInTriangle(p, p2, p3, p0) 90 | 91 | def get_st(Ax,Ay,Bx,By,Cx,Cy,Dx,Dy,Xx,Xy): 92 | d = Bx-Ax-Cx+Dx 93 | e = By-Ay-Cy+Dy 94 | l = Dx-Ax 95 | g = Dy-Ay 96 | h = Cx-Dx 97 | m = Cy-Dy 98 | i = Xx-Dx 99 | j = Xy-Dy 100 | n = g*h-m*l 101 | # calculation for s 102 | a1 = m*d-h*e 103 | b1 = n-j*d+i*e 104 | c1 = l*j-g*i 105 | # calculation for t 106 | a2 = g*d-l*e 107 | b2 = n+j*d-i*e 108 | c2 = h*j-m*i 109 | s = [] 110 | if a1 == 0: 111 | s.append(-c1/b1) 112 | else: 113 | r1 = b1*b1-4*a1*c1 114 | if r1 >= 0: 115 | r11 = (-b1+sqrt(r1))/(2*a1) 116 | if -0.0000000001 <= r11 <= 1.0000000001: 117 | s.append(r11) 118 | r12 = (-b1-sqrt(r1))/(2*a1) 119 | if -0.0000000001 <= r12 <= 1.0000000001: 120 | s.append(r12) 121 | t = [] 122 | if a2 == 0: 123 | t.append(-c2/b2) 124 | else: 125 | r2 = b2*b2-4*a2*c2 126 | if r2 >= 0: 127 | r21 = (-b2+sqrt(r2))/(2*a2) 128 | if -0.0000000001 <= r21 <= 1.0000000001: 129 | t.append(r21) 130 | r22 = (-b2-sqrt(r2))/(2*a2) 131 | if -0.0000000001 <= r22 <= 1.0000000001: 132 | t.append(r22) 133 | if not s or not t: 134 | return [],[] 135 | if len(s) == 1 and len(t) == 2: 136 | s = [s[0],s[0]] 137 | if len(s) == 2 and len(t) == 1: 138 | t = [t[0],t[0]] 139 | return s, t 140 | 141 | def main(x,y,width,smoothing,subdiv): 142 | halfwidth = width/2.0 143 | tck,u = interpolate.splprep([x,y],s=smoothing) 144 | unew = np.linspace(0,1.0,subdiv+1) 145 | out = interpolate.splev(unew,tck) 146 | heights = [] 147 | offs = [] 148 | height = 0.0 149 | for (ax,ay),(bx,by) in pairwise(zip(*out)): 150 | s = ax-bx 151 | t = ay-by 152 | l = sqrt(s*s+t*t) 153 | offs.append(height) 154 | height += l 155 | heights.append(l) 156 | # the border of the first segment is just perpendicular to the path 157 | cx = -out[1][1]+out[1][0] 158 | cy = out[0][1]-out[0][0] 159 | cl = sqrt(cx*cx+cy*cy)/halfwidth 160 | dx = out[1][1]-out[1][0] 161 | dy = -out[0][1]+out[0][0] 162 | dl = sqrt(dx*dx+dy*dy)/halfwidth 163 | px = [out[0][0]+cx/cl] 164 | py = [out[1][0]+cy/cl] 165 | qx = [out[0][0]+dx/dl] 166 | qy = [out[1][0]+dy/dl] 167 | for (ubx,uby),(ux,uy),(uax,uay) in triplewise(zip(*out)): 168 | # get adjacent line segment vectors 169 | ax = ux-ubx 170 | ay = uy-uby 171 | bx = uax-ux 172 | by = uay-uy 173 | # normalize length 174 | al = sqrt(ax*ax+ay*ay) 175 | bl = sqrt(bx*bx+by*by) 176 | ax = ax/al 177 | ay = ay/al 178 | bx = bx/bl 179 | by = by/bl 180 | # get vector perpendicular to sum 181 | cx = -ay-by 182 | cy = ax+bx 183 | cl = sqrt(cx*cx+cy*cy)/halfwidth 184 | px.append(ux+cx/cl) 185 | py.append(uy+cy/cl) 186 | # and in the other direction 187 | dx = ay+by 188 | dy = -ax-bx 189 | dl = sqrt(dx*dx+dy*dy)/halfwidth 190 | qx.append(ux+dx/dl) 191 | qy.append(uy+dy/dl) 192 | # the border of the last segment is just perpendicular to the path 193 | cx = -out[1][-1]+out[1][-2] 194 | cy = out[0][-1]-out[0][-2] 195 | cl = sqrt(cx*cx+cy*cy)/halfwidth 196 | dx = out[1][-1]-out[1][-2] 197 | dy = -out[0][-1]+out[0][-2] 198 | dl = sqrt(dx*dx+dy*dy)/halfwidth 199 | px.append(out[0][-1]+cx/cl) 200 | py.append(out[1][-1]+cy/cl) 201 | qx.append(out[0][-1]+dx/dl) 202 | qy.append(out[1][-1]+dy/dl) 203 | quads = [] 204 | patches = [] 205 | for (p3x,p3y,p2x,p2y),(p0x,p0y,p1x,p1y) in pairwise(zip(px,py,qx,qy)): 206 | quads.append(((p0x,p0y),(p1x,p1y),(p2x,p2y),(p3x,p3y))) 207 | polygon = Polygon(((p0x,p0y),(p1x,p1y),(p2x,p2y),(p3x,p3y)), True) 208 | patches.append(polygon) 209 | containingquad = [] 210 | for pt in zip(x,y): 211 | # for each point, find the quadrilateral that contains it 212 | found = [] 213 | for i,(p0,p1,p2,p3) in enumerate(quads): 214 | if ptInQuadrilateral(pt,p0,p1,p2,p3): 215 | found.append(i) 216 | if found: 217 | if len(found) > 1: 218 | print "point found in two quads" 219 | return None 220 | containingquad.append(found[0]) 221 | else: 222 | containingquad.append(None) 223 | # check if the only points for which no quad could be found are in the 224 | # beginning or in the end 225 | # find the first missing ones: 226 | for i,q in enumerate(containingquad): 227 | if q != None: 228 | break 229 | # find the last missing ones 230 | for j,q in izip(xrange(len(containingquad)-1, -1, -1), reversed(containingquad)): 231 | if q != None: 232 | break 233 | # remove the first and last missing ones 234 | if i != 0 or j != len(containingquad)-1: 235 | containingquad = containingquad[i:j+1] 236 | x = x[i:j+1] 237 | y = y[i:j+1] 238 | # check if there are any remaining missing ones: 239 | if None in containingquad: 240 | print "cannot find quad for point" 241 | return None 242 | for off,h in zip(offs,heights): 243 | targetquad = ((0,off+h),(width,off+h),(width,off),(0,off)) 244 | patches.append(Polygon(targetquad,True)) 245 | tx = [] 246 | ty = [] 247 | assert len(containingquad) == len(x) == len(y) 248 | assert len(out[0]) == len(out[1]) == len(px) == len(py) == len(qx) == len(qy) == len(quads)+1 == len(heights)+1 == len(offs)+1 249 | for (rx,ry),i in zip(zip(x,y),containingquad): 250 | if i == None: 251 | continue 252 | (ax,ay),(bx,by),(cx,cy),(dx,dy) = quads[i] 253 | s,t = get_st(ax,ay,bx,by,cx,cy,dx,dy,rx,ry) 254 | # if more than one solution, take second 255 | # TODO: investigate if this is always the right solution 256 | if len(s) != 1 or len(t) != 1: 257 | s = s[1] 258 | t = t[1] 259 | else: 260 | s = s[0] 261 | t = t[0] 262 | u = s*width 263 | v = offs[i]+t*heights[i] 264 | tx.append(u) 265 | ty.append(v) 266 | #sx = [] 267 | #sy = [] 268 | #for ((x1,y1),(x2,y2)),((ax,ay),(bx,by),(cx,cy),(dx,dy)),off,h in zip(pairwise(zip(*out)),quads,offs,heights): 269 | # s,t = get_st(ax,ay,bx,by,cx,cy,dx,dy,x1,y1) 270 | # if len(s) != 1 or len(t) != 1: 271 | # return None 272 | # u = s[0]*width 273 | # v = off+t[0]*h 274 | # sx.append(u) 275 | # sy.append(v) 276 | # s,t = get_st(ax,ay,bx,by,cx,cy,dx,dy,x2,y2) 277 | # if len(s) != 1 or len(t) != 1: 278 | # return None 279 | # u = s[0]*width 280 | # v = off+t[0]*h 281 | # sx.append(u) 282 | # sy.append(v) 283 | # create map with 284 | # python -c 'import logging; logging.basicConfig(level=logging.DEBUG); from landez import ImageExporter; ie = ImageExporter(tiles_url="http://{s}.tile.opencyclemap.org/cycle/{z}/{x}/{y}.png"); ie.export_image(bbox=(8.0419921875,51.25160146817652,10.074462890625,54.03681240523652), zoomlevel=14, imagepath="image.png")' 285 | im = Image.open("map.png") 286 | bbox = [8.0419921875,51.25160146817652,10.074462890625,54.03681240523652] 287 | # apply mercator projection 288 | bbox[1] = lat2y(bbox[1]) 289 | bbox[3] = lat2y(bbox[3]) 290 | iw,ih = im.size 291 | data = [] 292 | for i,(off,h,(p0,p1,p2,p3)) in enumerate(zip(offs,heights,quads)): 293 | # first, account for the offset of the input image 294 | p0 = p0[0]-bbox[0],p0[1]-bbox[1] 295 | p1 = p1[0]-bbox[0],p1[1]-bbox[1] 296 | p2 = p2[0]-bbox[0],p2[1]-bbox[1] 297 | p3 = p3[0]-bbox[0],p3[1]-bbox[1] 298 | # PIL expects coordinates in counter clockwise order 299 | p1,p3 = p3,p1 300 | # x lon 301 | # ----- = ----- 302 | # w bbox[2]-bbox[0] 303 | # translate to pixel coordinates 304 | p0 = (iw*p0[0])/(bbox[2]-bbox[0]),(ih*p0[1])/(bbox[3]-bbox[1]) 305 | p1 = (iw*p1[0])/(bbox[2]-bbox[0]),(ih*p1[1])/(bbox[3]-bbox[1]) 306 | p2 = (iw*p2[0])/(bbox[2]-bbox[0]),(ih*p2[1])/(bbox[3]-bbox[1]) 307 | p3 = (iw*p3[0])/(bbox[2]-bbox[0]),(ih*p3[1])/(bbox[3]-bbox[1]) 308 | # PIL starts coordinate system at the upper left corner, swap y coord 309 | p0 = int(p0[0]),int(ih-p0[1]) 310 | p1 = int(p1[0]),int(ih-p1[1]) 311 | p2 = int(p2[0]),int(ih-p2[1]) 312 | p3 = int(p3[0]),int(ih-p3[1]) 313 | box=(0,int(ih*(height-off-h)/(bbox[3]-bbox[1])), 314 | int(iw*width/(bbox[2]-bbox[0])),int(ih*(height-off)/(bbox[3]-bbox[1]))) 315 | quad=(p0[0],p0[1],p1[0],p1[1],p2[0],p2[1],p3[0],p3[1]) 316 | data.append((box,quad)) 317 | im_out = im.transform((int(iw*width/(bbox[2]-bbox[0])),int(ih*height/(bbox[3]-bbox[1]))),Image.MESH,data,Image.BICUBIC) 318 | im_out.save("out.png") 319 | #np.random.seed(seed=0) 320 | #colors = 100*np.random.rand(len(patches)/2)+100*np.random.rand(len(patches)/2) 321 | #p = PatchCollection(patches, cmap=matplotlib.cm.jet, alpha=0.4) 322 | #p.set_array(np.array(colors)) 323 | #plt.figure() 324 | #plt.axes().set_aspect('equal') 325 | ##plt.axhspan(0, height, xmin=0, xmax=width) 326 | #fig, ax = plt.subplots() 327 | ##ax.add_collection(p) 328 | #ax.set_aspect('equal') 329 | #plt.axis((0,width,0,height)) 330 | #plt.imshow(np.asarray(im_out),extent=[0,width,0,height]) 331 | #plt.imshow(np.asarray(im),extent=[bbox[0],bbox[2],bbox[1],bbox[3]]) 332 | #plt.plot(x,y,out[0],out[1],px,py,qx,qy,tx,ty) 333 | #plt.show() 334 | return True 335 | 336 | if __name__ == '__main__': 337 | x = [] 338 | y = [] 339 | import sys 340 | if len(sys.argv) != 5: 341 | print "usage: %s data.csv width smoothing N"%sys.argv[0] 342 | print "" 343 | print " data.csv whitespace delimited lon/lat pairs of points along the path" 344 | print " width width of the resulting map in degrees" 345 | print " smoothing curve smoothing from 0 (exact fit) to higher values (looser fit)" 346 | print " N amount of quads to split the path into" 347 | print "" 348 | print " example usage:" 349 | print " %s Weser-Radweg-Hauptroute.csv 0.286 6 20"%sys.argv[0] 350 | exit(1) 351 | with open(sys.argv[1]) as f: 352 | for l in f: 353 | a,b = l.split() 354 | # apply mercator projection 355 | b = lat2y(float(b)) 356 | x.append(float(a)) 357 | y.append(b) 358 | width = float(sys.argv[2]) 359 | smoothing = float(sys.argv[3]) 360 | N = int(sys.argv[4]) 361 | main(x,y,width,smoothing,N) 362 | #for smoothing in [1,2,4,8,12]: 363 | # for subdiv in range(10,30): 364 | # if main(x,y,width,smoothing,subdiv): 365 | # print width,smoothing,subdiv 366 | --------------------------------------------------------------------------------