Qualcuno sa dove posso trovare una libreria di codice per convertire la posizione Lat/Lon a Military Grid Reference System (MGRS)? Sto cercando un'implementazione C# se possibile.Converti Lat/Lon in MGRS
risposta
Abbiamo finito per utilizzare GeoTrans e creare una DLL dal codice e utilizzando PInvoke per chiamare le funzioni. Abbiamo tirato il seguente dalla sorgente in caso qualcuno voleva sapere (soluzione minima):
- polarst
- tranmerc
- up
- UTM
- MGRS
The Signature PInvoke abbiamo usato:
[DllImport("mgrs.dll")]
public static extern int Convert_Geodetic_To_MGRS(
double Latitude,
double Longitude,
int Precision, // 1 to 5, we used 4 (10 square meters)
StringBuilder MGRS);
che corrisponde a questa funzione in mgrs.h:
MGRSDLL_API long __stdcall Convert_Geodetic_To_MGRS(
double Latitude,
double Longitude,
long Precision,
char* MGRS);
Hi potrebbe condividere la dll PInvoke si è creato? – Jason
@Jason - Sì, aggiornerò la mia risposta con esso – SwDevMan81
@ SwDevMan81 puoi condividere la DLL? E il modo in cui posso aggiungerlo al mio progetto Windows Phone –
È possibile utilizzare i wrapper C# GDAL per convertire da lat/lon a UTM. È quindi necessario formattare i valori in modo appropriato per MGRS, poiché è solo UTM con un diverso formato numerico.
Trovato su js se si tratta di aiuto ...
https://github.com/codice/usng.js
usage-
var converter = new usngs.Converter();
alert(converter.LLtoMGRS(33.754032, -98.451233, 9));
CoordinateSharp è disponibile come pacchetto Nuget e può fare proprio questo.
Coordinate c = new Coordinate(40.57682, -70.75678);
c.MGRS.ToString(); // Outputs 19T CE 51307 93264
si può prendere in considerazione di chiedere queste forme di domande sulla http://gis.stackexchange.com –