{"id":128,"date":"2010-09-06T00:59:11","date_gmt":"2010-09-05T22:59:11","guid":{"rendered":"http:\/\/unckel.com\/blog\/?p=128"},"modified":"2019-12-07T22:04:16","modified_gmt":"2019-12-07T21:04:16","slug":"position-eines-street-view-panoramas-ueber-panorama-id-ermitteln-google-maps-javascript-api-v3","status":"publish","type":"post","link":"https:\/\/unckel.de\/blog\/position-eines-street-view-panoramas-ueber-panorama-id-ermitteln-google-maps-javascript-api-v3\/","title":{"rendered":"Position eines Street View-Panoramas \u00fcber Panorama-ID ermitteln (Google Maps Javascript API V3)"},"content":{"rendered":"<p>Jedes Panorama hat eine eindeutige ID. (IDs sind nur w\u00e4hrend einer Session stabil!) \u00dcber die Methode\u00a0<a href=\"http:\/\/code.google.com\/apis\/maps\/documentation\/javascript\/reference.html#StreetViewPanorama\" target=\"_blank\" rel=\"noopener\">getLinks()<\/a>\u00a0werden zum aktuellen Street View-Panorama ein Array der verbundenen Stra\u00dfen mit Name, Richtung und IDs der n\u00e4chsten Panoramen zur\u00fcckgeliefert. Leider aber nicht die einzelnen Positionen.<\/p>\n<p>Eine M\u00f6glichkeit bietet die\u00a0<a href=\"http:\/\/code.google.com\/apis\/maps\/documentation\/javascript\/reference.html#StreetViewService\" target=\"_blank\" rel=\"noopener\">StreetViewService-Klasse<\/a>. Die Methode getPanoramaById() liefert dazu ein StreetViewPanoramaData-Objekt zur\u00fcck welches unter anderem die Position enth\u00e4lt.<\/p>\n<pre>\/\/...\n\nvar sv = new google.maps.StreetViewService();\nvar panoramaLinks = panorama.getLinks();\nfor (var i in panoramaLinks) {\n  sv.getPanoramaById(panoramaLinks[i].pano, processSVData)\n}\n\n\/\/...\n \nfunction processSVData(data, status) {\n  if (status == google.maps.StreetViewStatus.OK) {\n    alert(data.location.latLng);\n  }\n}<\/pre>\n<p>Jetzt ist man in der Lage z.B. die Positionen der n\u00e4chsten Panoramen auf einer Karte zu markieren oder die Entfernungen zur aktuellen Position auszurechnen. Letzteres ist wiederum wichtig wenn es um eine m\u00f6glichste genaue Simulation einer virtuellen Fahrt durch Street View geht.<\/p>\n<p>Bei kurzen Tests rund um den Globus, scheinen die Panoramen immer mindestens 10 m Abstand zu haben. Eine Unterschreitung habe ich nie gesehen. Auf Landstra\u00dfen k\u00f6nnen es auch schon mal \u00fcber 40 m sein.<\/p>\n<p>Link:\u00a0<a href=\"http:\/\/code.google.com\/apis\/maps\/documentation\/javascript\/\" target=\"_blank\" rel=\"noopener\">Google Maps Javascript API V3<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Jedes Panorama hat eine eindeutige ID. (IDs sind nur w\u00e4hrend einer Session stabil!) \u00dcber die Methode\u00a0getLinks()\u00a0werden zum aktuellen Street View-Panorama ein Array der verbundenen Stra\u00dfen mit Name, Richtung und IDs der n\u00e4chsten Panoramen zur\u00fcckgeliefert. Leider aber nicht die einzelnen Positionen. Eine M\u00f6glichkeit bietet die\u00a0StreetViewService-Klasse. Die Methode getPanoramaById() liefert dazu ein StreetViewPanoramaData-Objekt zur\u00fcck welches unter anderem [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[71],"tags":[],"class_list":["post-128","post","type-post","status-publish","format-standard","hentry","category-webdesign"],"_links":{"self":[{"href":"https:\/\/unckel.de\/blog\/wp-json\/wp\/v2\/posts\/128","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/unckel.de\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/unckel.de\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/unckel.de\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/unckel.de\/blog\/wp-json\/wp\/v2\/comments?post=128"}],"version-history":[{"count":1,"href":"https:\/\/unckel.de\/blog\/wp-json\/wp\/v2\/posts\/128\/revisions"}],"predecessor-version":[{"id":785,"href":"https:\/\/unckel.de\/blog\/wp-json\/wp\/v2\/posts\/128\/revisions\/785"}],"wp:attachment":[{"href":"https:\/\/unckel.de\/blog\/wp-json\/wp\/v2\/media?parent=128"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/unckel.de\/blog\/wp-json\/wp\/v2\/categories?post=128"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/unckel.de\/blog\/wp-json\/wp\/v2\/tags?post=128"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}