Come calcolare l'altitudine sopra dal livello del mare medio

Ho cercato di trovare come get l'altitudine al di sopra del livello del mare medio. A questo punto, restituisce l'altitudine dall'elipsoide. Così, chiunque conosce la formula o il calcolo per cambiare il valore dell'altitudine dall'elipsoide al valore di altitudine dal livello del mare medio.

Grazie per tutto l'aiuto

  • Le voci di AppCompatSpinner non aprono TimePickerDialog per la seconda volta. Vedi dettagli
  • Messaggi GCM CCS Upstream forzano una riconnessione alla networking GCM?
  • Android NFC: Tag perso quando il command APDU viene inviato a una smart card
  • Come impostare Java.util.calendar in un determinato periodo di tempo in futuro
  • Comprimere l'image in android
  • IllegalAccessError: il codice di class nella class pre-verificata risolto all'implementazione imprevista
  • Android: C'è un modo per get altitudine a parte Location.getAltitude ()? (Ho sentito usare il sensore)
  • L'altitudine GPS di Android è errata a causa della non inclusione dell'altezza del geoid?
  • Android: Come utilizzare SensorManager.getAltitude (float p0, float p)?
  • Android: Come get un'altitudine precisa?
  • One Solution collect form web for “Come calcolare l'altitudine sopra dal livello del mare medio”

    Come già detto, il GPS restituisce l'altitudine come un offset dell'elipsoide di riferimento WGS84, ma la maggior parte delle persone vuole vedere il livello del mare medio (MSL), ei due spesso non sono d'accordo. Il modo più frequente è guardare il delta in una tabella e usarlo per calcolare MSL in base all'altezza dal GPS e dal delta nella tabella.

    C'è un codice java qui: http://worldwind31.arc.nasa.gov/svn/trunk/WorldWind/src/gov/nasa/worldwind/util/EGM96.java . Le altre funzioni che utilizza da Worldwind non sono così complicate, pertanto potresti probabilmente utilizzare la maggior parte del codice non modificato, e il resto potresti adattare se stai lavorando in Java e la loro licenza soddisfa le tue esigenze.

    Utilizza informazioni dal set di dati EGM 96 (link qui se sei interessato, non strettamente necessario), che è ansible scaricare qui: http://earth-info.nga.mil/GandG/wgs84/gravitymod/egm96 /binary/binarygeoid.html . Vorresti il ​​file WW15MGH.DAC. È un file binario pieno di interi firmati a 16 bit. È ansible utilizzare l'esempio Java per mostrare come accedere ai dati nel file. Essi forniscono anche un esempio Fortran se questa è la tua cosa. 🙂

    Ecco le informazioni sul file dal loro readme.

    Descrizione dei dati per un file di altezza binario geoide a 15 minuti in tutto il mondo:


    —- FILE: WW15MGH.DAC

    La dimensione totale del file è 2.076.480 byte. Questo file è stato creato utilizzando un formato di dati tipo INTEGER * 2 ed è un file di accesso diretto non formattato. I dati sul file sono disposti in record da nord a sud. Ci sono 721 record sul file che iniziano con il record 1 a 90 N. L'ultimo record sul file è a latitudine 90 S. Per ciascun record, ci sono 1.440 15 altezze di altezza geoide di arco disposte per longitudine da ovest ad est a partire da Prime Meridian (0 E) e terminando 15 archi minuti a ovest del primo meridione (359,75 E). In file, le altezze geoide sono in unità di centimetri. Durante il recupero dei valori Integer * 2 sul file, divide per 100 e questo produrrà un'altezza di geoidi in metri.

    L'Android è un fan Android di Google, tutto su telefoni Android, Android Wear, Android Dev e applicazioni Android Games e così via.