org.placelab.demo.virtualgps
Class NMEAFactory

java.lang.Object
  extended byorg.placelab.demo.virtualgps.NMEAFactory

public class NMEAFactory
extends java.lang.Object

Builds NMEA Sentences. We only need to support one sentence (GGA) to fool MS MapPoint. More sentences may come...


Field Summary
static java.lang.String prefix
           
 
Constructor Summary
NMEAFactory()
           
 
Method Summary
static java.lang.String GGA(java.lang.String hhmmss, java.lang.String lat, java.lang.String latDir, java.lang.String lon, java.lang.String lonDir, int fixQuality, int numSats, java.lang.String hdop, java.lang.String altitude, java.lang.String altitudeUnit, java.lang.String heightOfGeoid, java.lang.String heightOfGeoidUnit)
           
static java.lang.String GLL(java.lang.String lat, java.lang.String latDir, java.lang.String lon, java.lang.String lonDir, java.lang.String hhmmss, java.lang.String active)
           
static void main(java.lang.String[] args)
          TESTS
static java.lang.String RMC(java.lang.String hhmmss, java.lang.String validity, java.lang.String lat, java.lang.String latDir, java.lang.String lon, java.lang.String lonDir, java.lang.String knots, java.lang.String trueCourse, java.lang.String ddmmyy, java.lang.String variation, java.lang.String dir)
          Return something reasonable but in no way accurate.
static java.lang.String toLatNMEA(double n)
           
static java.lang.String toLonNMEA(double n)
           
static java.lang.String twoDigitFormat(int n)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

prefix

public static java.lang.String prefix
Constructor Detail

NMEAFactory

public NMEAFactory()
Method Detail

GGA

public static java.lang.String GGA(java.lang.String hhmmss,
                                   java.lang.String lat,
                                   java.lang.String latDir,
                                   java.lang.String lon,
                                   java.lang.String lonDir,
                                   int fixQuality,
                                   int numSats,
                                   java.lang.String hdop,
                                   java.lang.String altitude,
                                   java.lang.String altitudeUnit,
                                   java.lang.String heightOfGeoid,
                                   java.lang.String heightOfGeoidUnit)
Parameters:
hhmmss - seconds UTC of position: HHMMSS.ss
lat - latitude
latDir - N or S
lon - longitude
lonDir - E or W
fixQuality - 0 (invalid), 1 (gps fix), 2 (dgps fix)
numSats - number of satellites
hdop - horizontal dilution of precision
altitude - meters above mean sea level
altitudeUnit - should be M
heightOfGeoid - height of geoid above WGS84 ellipsoid
heightOfGeoidUnit - should be M

GLL

public static java.lang.String GLL(java.lang.String lat,
                                   java.lang.String latDir,
                                   java.lang.String lon,
                                   java.lang.String lonDir,
                                   java.lang.String hhmmss,
                                   java.lang.String active)

RMC

public static java.lang.String RMC(java.lang.String hhmmss,
                                   java.lang.String validity,
                                   java.lang.String lat,
                                   java.lang.String latDir,
                                   java.lang.String lon,
                                   java.lang.String lonDir,
                                   java.lang.String knots,
                                   java.lang.String trueCourse,
                                   java.lang.String ddmmyy,
                                   java.lang.String variation,
                                   java.lang.String dir)
Return something reasonable but in no way accurate.

Returns:
sensible GSV string

toLatNMEA

public static java.lang.String toLatNMEA(double n)

toLonNMEA

public static java.lang.String toLonNMEA(double n)

twoDigitFormat

public static java.lang.String twoDigitFormat(int n)

main

public static void main(java.lang.String[] args)
TESTS