/// <summary> /// 匹配人员坐标 /// </summary> /// <param name="SubjectString"></param> private void MatchPerson(string SubjectString) { try { string strPosition = Regex.Match(SubjectString, "\\|[0-9]*\\|-?[0-9]*\\.[0-9]*,-?[0-9]*\\.[0-9]*,-?[0-9]*\\.[0-9]*").Value; if (!string.IsNullOrEmpty(strPosition)) { FramePosition position = FramePosition.Parse(strPosition.Substring(1, strPosition.LastIndexOf("|") - 1), strPosition.Substring(strPosition.LastIndexOf("|") + 1)); if (position != null) { if (Rmode == Runmode.Match) { Cmatch?.AddPosition(position); } else if (rmode == Runmode.Train) { Ctrain?.AddPosition(position); } } } } catch (ArgumentException ex) { LogText.Error("MatchPerson", ex.Message); } }
/// <summary> /// 接收来自底层的数据 /// </summary> /// <param name="path"></param> public bool InsertPathToDB(string path) { // SaveDataToFile(path); if (path.StartsWith("0|")) { MatchPerson(path); } else if (path.StartsWith("1|")) { Track t = Track.Parse(path); if (Rmode == Runmode.Match) { Cmatch?.AddNewTrack(t); } else { Ctrain?.AddNewTrack(t); } } else { matchSpeed(path); } return(true); }
/// <summary> /// 结束训练 /// </summary> /// <param name="trian"></param> public bool EndTrain(string trianID) { Ctrain.SavePlayersTrack(); Ctrain = null; //保存训练人员的轨迹信息 LogText.Info("EndTrain", "训练结束"); return(true); }
/// <summary> /// 交换产地 /// </summary> public bool ChangeGroud() { if (rmode == Runmode.Match) { cmatch.ExChangeGround(); } else if (rmode == Runmode.Train) { Ctrain.ExChangeGround(); } LogText.Info("ChangeGroud", "交换场地"); return(true); }