public void OnGpsLocationReceived(GpsLocation l) { l.Timestamp = (int)Java.Lang.JavaSystem.CurrentTimeMillis(); m_locations.AddLast(l); if (m_locations.Count >= BUFFER_SIZE) { Flush(); } }
public static GpsCoordinate GetCoordinateFromLocation(GpsLocation location) { var latRad = (location.Latitude * Math.PI) / 180.0; var lonRad = (location.Longitude * Math.PI) / 180.0; var cosLat = Math.Cos(latRad); return(new GpsCoordinate { x = EARTH_RADIUS_METERS * cosLat * Math.Cos(lonRad), y = EARTH_RADIUS_METERS * cosLat * Math.Sin(lonRad), z = EARTH_RADIUS_METERS * Math.Sin(latRad) + location.Altitude }); }