Domanda

Da quello che ho letto questo richiede un po 'complicato per la matematica che io non sono bravo a. Quindi, chiedo qui.

Qualcuno ha esperienza la conversione di un MKMapPoint o CLLocationCoordinate2D ad un valore UTM? Ho trovato questa risorsa ( http://www.uwgb.edu/dutchs/usefuldata/UTMFormulas. HTM ), ma la matematica è schiacciante.

È stato utile?

Soluzione

Si potrebbe utilizzare un lib per farlo, o analizzare il codice di un lib per capire l'algoritmo e fai da te.

Questa è una c ++ lib che fa il lavoro: http://geographiclib.sourceforge.net/html/

http://geographiclib.sourceforge.net/html/classGeographicLib_1_1UTMUPS.html

Ho trovato questo sito web (http://home.hiwaay.net/~taylorc/toolbox/geography/geoutm.html). Se si guarda il codice sorgente, il tutto di conversione viene fatto usando JavaScript, è possibile dare un'occhiata a esso e cercare di convertire in Obj-C.

Altri suggerimenti

Recentemente ho scritto una classe per questo e ha postato un progetto di esempio su GitHub

UTMConverter esempio per iOS

La parte che si desidera è un file chiamato UTMConverter.m. Ha metodi per la conversione da latitudine / longitudine a UTM e viceversa.

MKMapViewZoom sembra avere alcuni metodi di classe che può convertire tra piatto mappa (geometrico) e curvo-mappa le coordinate geografiche (), anche se non ci sono abituato fuori. Qualcuno mi dia un pollice in alto se questo funziona davvero

//convert from WGS84 (geographic coordinates) to UTM (geometric coordinates)
+ (double)longitudeToPixelSpaceX(double)pixelX
+ (double)latitudeToPixelSpaceY(double)pixelY

//convert from UTM to WGS84
+ (double)pixelSpaceXToLongitude(double)longitude
+ (double)pixelSpaceYToLatitude(double)latitude

una certa documentazione qui

UPDATE:

Questa è esasperante, ma al fine di ottenere il codice sorgente di questa classe per il lavoro con precisione ho praticamente dovuto estrarre i metodi in mio dominio essenzialmente, quindi rimuovere le parti del codice di riferimento MERCATOR_OFFSET & cambiamento MERCATOR_RADIUS al valore metri del il raggio della Terra. Ero un po ', ok, molto sorpreso quando ho scoperto questo effettivamente lavorate.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top