use of org.osgi.util.position.Position in project kura by eclipse.
the class PositionServiceImpl method updateGps.
private void updateGps() {
s_logger.debug("GPS Emulator index: {}", this.index);
if (this.index + 1 == this.gpsPoints.length) {
s_logger.debug("GPS Emulator - wrapping index");
this.index = 0;
}
Measurement latitude = new Measurement(java.lang.Math.toRadians(this.gpsPoints[this.index].getLatitude()), Unit.rad);
Measurement longitude = new Measurement(java.lang.Math.toRadians(this.gpsPoints[this.index].getLongitude()), Unit.rad);
Measurement altitude = new Measurement(this.gpsPoints[this.index].getAltitude(), Unit.m);
s_logger.debug("Updating lat/long/altitude: " + latitude + "/" + longitude + "/" + altitude);
// Measurement lat, Measurement lon, Measurement alt, Measurement speed, Measurement track
this.currentTime = new Date();
this.currentPosition = new Position(latitude, longitude, altitude, null, null);
this.currentNmeaPosition = new NmeaPosition(this.gpsPoints[this.index].getLatitude(), this.gpsPoints[this.index].getLongitude(), this.gpsPoints[this.index].getAltitude(), 0, 0);
this.index++;
return;
}
use of org.osgi.util.position.Position in project kura by eclipse.
the class ExampleComponent method doGpsUpdate.
private void doGpsUpdate() {
if (this.m_gpsHandle != null) {
this.m_gpsHandle.cancel(true);
}
this.m_gpsWorker = Executors.newSingleThreadScheduledExecutor();
this.m_gpsHandle = this.m_gpsWorker.scheduleAtFixedRate(new Runnable() {
@Override
public void run() {
Position position = ExampleComponent.this.m_positionService.getPosition();
s_logger.debug("Latitude: " + position.getLatitude());
s_logger.debug("Longitude: " + position.getLongitude());
s_logger.debug("Altitude: " + position.getAltitude());
s_logger.debug("Speed: " + position.getSpeed());
s_logger.debug("Track: " + position.getTrack());
s_logger.debug("Time: " + ExampleComponent.this.m_positionService.getNmeaTime());
s_logger.debug("Date: " + ExampleComponent.this.m_positionService.getNmeaDate());
s_logger.debug("Last Sentence: " + ExampleComponent.this.m_positionService.getLastSentence());
}
}, 0, POLL_DELAY_SEC, TimeUnit.SECONDS);
}
use of org.osgi.util.position.Position in project kura by eclipse.
the class PositionServiceImpl method initializeDefaultPosition.
private void initializeDefaultPosition(double lat, double lon, double alt) {
Measurement l_latitude = new Measurement(java.lang.Math.toRadians(lat), Unit.rad);
Measurement l_longitude = new Measurement(java.lang.Math.toRadians(lon), Unit.rad);
Measurement l_altitude = new Measurement(alt, Unit.m);
// conversion speed in knots to m/s : 1 m/s = 1.94384449
Measurement l_speed = new Measurement(0, Unit.m_s);
// knots
Measurement l_track = new Measurement(java.lang.Math.toRadians(0), Unit.rad);
double l_latitudeNmea = lat;
double l_longitudeNmea = lon;
double l_altitudeNmea = alt;
double l_speedNmea = 0;
double l_trackNmea = 0;
int l_fixQuality = 0;
int l_nrSatellites = 0;
double l_DOP = 0;
double l_PDOP = 0;
double l_HDOP = 0;
double l_VDOP = 0;
int l_3Dfix = 0;
this.m_defaultPosition = new Position(l_latitude, l_longitude, l_altitude, l_speed, l_track);
this.m_defaultNmeaPosition = new NmeaPosition(l_latitudeNmea, l_longitudeNmea, l_altitudeNmea, l_speedNmea, l_trackNmea, l_fixQuality, l_nrSatellites, l_DOP, l_PDOP, l_HDOP, l_VDOP, l_3Dfix);
this.m_GpsdPosition = new Position(l_latitude, l_longitude, l_altitude, l_speed, l_track);
this.m_GpsdNmeaPosition = new NmeaPosition(l_latitudeNmea, l_longitudeNmea, l_altitudeNmea, l_speedNmea, l_trackNmea, l_fixQuality, l_nrSatellites, l_DOP, l_PDOP, l_HDOP, l_VDOP, l_3Dfix);
}
Aggregations