private static void ProcessPosition(GPSPosition position) { //last_point = new GPSPoint(position.Time.ToUniversalTime(), (float)position.dblLatitude, (float)position.dblLongitude, Convert.ToInt32(position.flSpeed)) last_point = new GPSPoint(position.Time, (float)position.dblLatitude, (float)position.dblLongitude, Convert.ToInt32(position.flSpeed)) { Course = position.flHeading }; T.INFO(last_point.ToString()); double delta_distance = -1; mobile.Fix(last_point); if (destination_point != null) { delta_distance = Distances.Rhumb(last_point, destination_point); T.TRACE(String.Format("TRACKER: delta_distance={0}", delta_distance)); //Locked = delta_distance <= destination_area_radio; /*if (delta_distance <= destination_radio) * { * T.INFO("TRACKER: Llegamos al destino. Informando."); * Beep("gps_in_destination"); * posicion.Clear(); * destination_point = null; * var dummy = new byte[2]; * dummy[0] = 0; * posicion.Push(last_point.AsMessage((int)delta_distance), dummy); * mobile.ActiveOT(last_point, active_ot); * }*/ } if (last_sent_point == null || (last_point.Date - last_sent_point.Date).TotalSeconds >= fix_interval) { T.INFO("TRACKER: fix seleccionado para enviar."); last_sent_point = last_point; mobile.Fix(last_sent_point); posicion.Clear(); var dummy = new byte[2]; dummy[0] = 0; posicion.Push(last_sent_point.AsMessage((int)delta_distance), dummy); } }
public static void Process(DAOFactory daoFactory, string codigo, Coche vehiculo, GPSPoint point, IMessage message, bool ignoreMessages, Empleado chofer) { try { // Si no es uno de los codigos que cambian estados automáticos, salgo directamente;)) if (!IsAutomaticCode(codigo)) { return; } var evento = EventFactory.GetEvent(daoFactory, point, codigo, null, message, vehiculo, chofer); if (evento == null) { return; } Process(vehiculo, evento, ignoreMessages); } catch (Exception ex) { STrace.Exception(typeof(CicloLogisticoFactory).FullName, ex, "Code: " + (codigo ?? "null") + " vehicle: " + (vehiculo == null ? "null" : vehiculo.Id.ToString("#0")) + " message:" + (message == null ? "null" : message.ToString()) + " gpspoint:" + (point == null ? "null" : point.ToString())); } }