MKCoordinateSpan in Metern?
Brauche ich zum erstellen einer MKCoordinateSpan, die über 500 Meter.
Wie berechne ich die Werte übergeben in die MKCoordinateSpan Konstruktor?
Antworten in allen Programmiersprachen (Obj-C, .Die Netto -) Sprache sind in Ordnung.
InformationsquelleAutor der Frage BahaiResearch.com | 2011-09-11
Du musst angemeldet sein, um einen Kommentar abzugeben.
Andere alternative ist die Verwendung von MapKit ist
MKCoordinateRegionMakeWithDistance
Funktion:Den
MKCoordinateSpan
werden inrgn.span
.InformationsquelleAutor der Antwort Anna
Es sei denn, Sie müssen mit sehr großer Genauigkeit, die Sie können, machen es viel leichter mit Annäherung. Das erste problem ist das finden der Bruchteil von einem Grad der Breite, mit 500 Meter. Einfach, da ein Breitengrad ist eine Konstante in jeder Lage, etwa 111 km. So 500 Meter ist .0045 Grad nördlicher Breite.
Dann wird es schwieriger, weil die Länge eines Längengrad variiert je nachdem, wo Sie sind. Es kann angenähert werden mit
wo ist alpha Erde äquatorialen radius, 6,378,137 km, b/a ist 0.99664719 (eine Konstante im Einsatz für die WGC84 Sphäroid-Modell in der Anwendung für alle GPS-Geräte) und , wo phi ist der Grad der Breite.
Sich vorstellen, für eine Sekunde, Sie Glück genug, um in Melbourne mit einer Länge von 37.783 Grad S. Nord oder Süd spielt keine Rolle hier. beta-arbeitet zu werden 37.6899 und der rest löst zu geben, eine längs-Abschluss einer Länge von 88km. So 500 Meter ist .0057 Grad.
Ergebnis für Melbourne -
MKCoordinateSpan melbourne500MeterSpan = MKCoordinateSpanMake(.0045, .0057);
Können Sie überprüfen Sie Ihre Antworten und Ihr code mit diesem online-Rechner
Den wiki-Artikel Längengrad hat eine Menge weitere Einzelheiten über diese (und die Quelle der Bilder hier)
Code:
InformationsquelleAutor der Antwort Adam Eberbach
In MonoTouch, dann mit dieser Lösung können Sie diesen Helfer-Methode:
InformationsquelleAutor der Antwort BahaiResearch.com