Zeigen Sie gültige Google Streetview-Bereiche als Ebene auf einer Karte mit Javascript API v3 an

8

Ich arbeite an einer JavaScript-Webanwendung, die Google Maps JavaScript API v3 verwendet. Eines der Dinge, die die Karte den Benutzern ermöglicht, ist das Zeichnen von Routen entlang von Straßen. Ich möchte jedoch, dass Benutzer in der Lage sind, Routen entlang von Straßen zu zeichnen, die von der Straße aus gesehen wurden, und ich stoße auf ein kleines Problem ...

Wenn Sie den gelben Streetview-Mann über das Kartenobjekt ziehen, leuchten alle gültigen Streetview-Straßen blau auf. Manchmal stimmen diese Straßen jedoch nicht korrekt mit der tatsächlichen Karte überein, und manchmal wurden Straßen, die sich auf der Karte befinden, nicht auf der Straße angezeigt. Meine Frage ist, wie bekomme ich diese "gültige streetview area" -Overlay auf der Karte zu sein, ohne den gelben Kerl zu ziehen? Gibt es eine Schicht, die ich irgendwie aktivieren kann?

Ich möchte, dass diese Ebene jederzeit sichtbar ist, damit Benutzer erkennen können, ob die Straßen, auf denen sie Routen zeichnen, auch von der Straße aus betrachtet wurden und dass ihre Routen mit dem Straßenansichtsgitter übereinstimmen.

>

Danke

    
Jason 02.08.2012, 18:41
quelle

2 Antworten

6

StreetViewCoverageLayer () wurde zu v3 api hinzugefügt, damit dies möglich ist.

Ссылка

%Vor%     
doughoman 04.12.2013 16:17
quelle
1

In API v3 gibt es keine Ebene, auf der die blaue Überlagerung über der Karte angezeigt wird. Hier ist die vollständige Liste der verfügbaren Ebenen: Ссылка .

Derzeit sind sowohl in der API als auch auf der offiziellen Google Maps-Website diese blauen Linien tatsächlich transparente PNG-Kacheln (256 x 256), die über der Karte angezeigt werden.

Der Grund, warum sie manchmal nicht richtig ausgerichtet sind, liegt darin, dass Map Maker in einigen Ländern verfügbar ist (kollaborative Kartenbearbeitung), und die Leute sich mit den Straßen auseinandersetzen und nicht alle Google-Dienste gleichzeitig aktualisieren (für Street View Verfügbarkeit ich glaube nicht einmal, dass sie überhaupt aktualisieren).

Die einzige Problemumgehung, die ich sehen kann, besteht darin, sich mit dem in Google Maps verwendeten Tile Coordinates-System vertraut zu machen ( Ссылка ), das auch für das blaue Overlay verwendet wird, und erstellt einen neuen Map Type / Layer, der es verwendet.

Beispiel für einen Kachel-Link: Ссылка .

x und y sind Kachelkoordinaten und z ist der Zoom

Es ist ein wenig kompliziert, aber wenn Sie planen, es zu tun, könnte ich mit einigen zusätzlichen Ressourcen helfen.

Aber bitte HINWEIS: Diese Problemumgehung wird NICHT von den API-Bedingungen abgedeckt.

    
Tiborg 05.08.2012 22:07
quelle