package com.dcu.project.server;
Import com.dcu.project.model.NMEAData;
Import com.dcu.project.server. Tokenizer;
allgemeiner Kategorie Manager {
allgemeines NMEAData ParseData (Schnur-Daten)
{
NMEAData gpsData = neues NMEAData ();
Tokenizer tokenizer = neues Tokenizer (Daten);
Schnurzeichen = tokenizer.next ();
während (token.endsWith („$GPRMC“) == falsch) {
Zeichen = tokenizer.next ();
}
wenn (token.endsWith („$GPRMC“)) {
//-Zeit der Verlegenheit
Schnur theTime = tokenizer.next ();
Schnur-Stunde = theTime.substring (0, 2);
Schnur setzt = theTime.substring auf (2, 4);
Schnur unterstützt = theTime.substring (4, 6);
Schnur newTime = (Hour+ „: “ + setzt + " auf: „+Seconds+“ UTC“);
//-Breite
Schnur-Status = tokenizer.next ();
Schnur raw_lat = tokenizer.next ();
Schnur lat_deg = raw_lat.substring (0, 2);
Schnur lat_min1 = raw_lat.substring (2, 4);
Schnur lat_min2 = raw_lat.substring (5);
Schnur lat_min3 = „0.“ + lat_min1 + lat_min2;
doppeltes lat_dec = Float.parseFloat (lat_min3) /.6f;
doppeltes lat_val = Float.parseFloat (lat_deg) + lat_dec;
//-Breiterichtung
Schnur lat_direction = tokenizer.next ();
wenn (lat_direction == „S“) {
lat_val = (lat_val * -1);
}
//-Länge
Schnur raw_lon = tokenizer.next ();
Schnur lon_deg = raw_lon.substring (0, 3);
Schnur lon_min1 = raw_lon.substring (3, 5);
Schnur lon_min2 = raw_lon.substring (6);
Schnur lon_min3 = „0.“ + lon_min1 + lon_min2;
doppeltes lon_dec = Float.parseFloat (lon_min3) /.6f;
doppeltes lon_val = Float.parseFloat (lon_deg) + lon_dec;
//-Längerichtung
Schnur lon_direction = tokenizer.next ();
wenn (lon_direction == „W“)
{
lon_val = (lon_val * -1);
}
//Speed
Schnur speedknots = tokenizer.next ();
doppelte speed_knots = Float.parseFloat (speedknots);
doppelte speedmpers = (speed_knots * 0.51);
//Course
Schnurkurs = tokenizer.next ();
//Date
Schnur theDate = tokenizer.next ();
Schnurtag = theDate.substring (0, 2);
Schnurmonat = theDate.substring (2, 4);
Schnurjahr = theDate.substring (4, 6);
Schnur newDate = (day+ " - „+month+“ - „+year);
gpsData.setTime (newTime);
gpsData.setDate (newDate);
gpsData.setLat (lat_val);
gpsData.setLongitude (lon_val);
gpsData.setSpeed (speedmpers);
gpsData.setCourse (Kurs);
}
RückholgpsData;
}
}
|