So berechnen Sie GMSCamera zoom

8

Ich entwickle iOS-Anwendung einschließlich GoogleMaps. Und der Implementierungsprozess von GoogleMaps SDK für iOS wurde noch nicht abgeschlossen.

Aber ich möchte wissen, wie man GMSCamera Zoom berechnet um die gesamte Route auf der Karte anzuzeigen.

In Apple Map verwenden wir vielleicht spane. Aber GoogleMaps SDK hat keine Spanne.

Bitte geben Sie mir einen Rat.

    
AlfaromeoCorse 16.01.2013, 08:55
quelle

7 Antworten

18

Tatsächlich können Sie in der aktuellen Version des SDK fitBounds verwenden:

%Vor%

Auf diese Weise lassen Sie die Mathematik zu Google und ich bin mir ziemlich sicher, dass sie wirklich gut darin sind.

    
Raspu 17.06.2013 07:14
quelle
3

Hier ist eine Funktion, die helfen kann, da dies den ZoomLevel von einer MKMapView berechnet, die "Google Compatible"

ist %Vor%

Wenn Sie die Koordinaten greifen und diese stattdessen übergeben können, sollten Sie in Ordnung sein.

    
Lee Armstrong 18.01.2013 09:01
quelle
3

Lee Methode ist richtig, aber die Mathematik ist nicht richtig, basierend auf Google Maps ios sdk Dokument auf Zoom

  

Die Vergrößerung der Zoomstufe um 1 verdoppelt die Breite der Welt auf der   Bildschirm. Daher ist die Breite der Welt bei der Zoomstufe N ungefähr gleich   256 * 2 ^ N, d. H. Bei Zoom-Stufe 2 ist die gesamte Welt ungefähr 1024   Punkte breit. Beachten Sie, dass die Zoomstufe keine ganze Zahl sein muss. Das   Der Bereich der von der Karte erlaubten Zoomstufen hängt von einer Anzahl von Zoomstufen ab   Faktoren wie Standort, Kartentyp und Bildschirmgröße.

Die Mathematik zur Berechnung des Zooms sollte

sein %Vor%     
Jing 05.03.2013 02:56
quelle
1

Ich habe hier eine Antwort auf eine ähnliche Frage gepostet:

Wie setze ichRegion mit Google Maps sdk für iOS?

Es verwendet einen ähnlichen Ansatz zu Lees Antwort: Konvertieren Sie das lat / lon in Pixel, berechnen Sie eine Skala und dann eine Zoomstufe.

    
Saxon Druce 26.02.2013 02:30
quelle
0

Jing, deine Mathematik ist korrekt für Längen, aber für Breitengrade muss es ein bisschen schwieriger sein. Die Mercator-Projektion behandelt Breiten und Längen unterschiedlich. Ich habe den richtigen Code hier gepostet: Ссылка

    
Evgeny Tanhilevich 25.04.2013 14:46
quelle
0

Verwenden Sie GMSCoordinateBounds. Sie können die Karte mit verschiedenen Parametern wie Koordinaten, Grenzen usw. anpassen.

GMSCoordinateBounds * Grenzen = [[GMSCoordinateBounds alloc] initWithPath: Pfad];

Ссылка

    
IOS Learner 17.11.2014 17:20
quelle
0

Schnell:

%Vor%     
Shaked Sayag 02.11.2016 22:03
quelle

Tags und Links