private void PrintTimeInfo() { HisPosInfo hisPosInfo = posInfo as HisPosInfo; //假如是历史数据 if (hisPosInfo != null) { var current = hisPosInfo.CurrentPosInfo; var next = current.Next; if (next != null) { TimeSpan time = next.Time - current.Time; //下一个点的时间 float distance = Vector3.Distance(next.Vec, current.Vec); //下一个点的距离 Log.Info("NavAgentControllerBase.UpdatePosition", string.Format("{0}=>{1},time:{2},distance:{3}", current.Vec, next.Vec, time, distance)); MultHistoryTimeStamp timeStamp = LocationHistoryUITool.GetTimeStamp(); double timesum = timeStamp.timeSum; DateTime showPointTime = timeStamp.showPointTime; float currentSpeedT = timeStamp.currentSpeed; Log.Info("NavAgentControllerBase.UpdatePosition", string.Format("t1:{0},t2:{1},t3{2}", current.Time.ToString("HH:mm:ss.f"), next.Time.ToString("HH:mm:ss.f"), showPointTime.ToString("HH:mm:ss.f"))); } } }
public static MultHistoryTimeStamp GetTimeStamp() { MultHistoryTimeStamp stamp = new MultHistoryTimeStamp(); if (UIManage.Instance.isShowNewHistoryWindow) { stamp.timeSum = MultHistoryPlayUINew.Instance.timeSum; stamp.showPointTime = MultHistoryPlayUINew.Instance.GetStartTime().AddSeconds(stamp.timeSum); stamp.currentSpeed = MultHistoryPlayUINew.Instance.CurrentSpeed; } else { stamp.timeSum = MultHistoryPlayUI.Instance.timeSum; stamp.showPointTime = MultHistoryPlayUI.Instance.GetStartTime().AddSeconds(stamp.timeSum); stamp.currentSpeed = MultHistoryPlayUI.Instance.CurrentSpeed; } return(stamp); }
protected override void Update() { //if (MultHistoryPlayUINew.Instance.istest) //{ // int i= 0; //} base.Update(); if (MultHistoryPlayUINew.Instance.isPlay) { if (!isCreatePathComplete) { return; } if (!LocationHistoryUITool.GetIsPlaying()) { return; } if (isNeedHide) { isNeedHide = false; Hide(); return; } float valuet = 1; valuet = LocationHistoryUITool.GetProcessSliderValue(); if (valuet < 1) { //double timesum = MultHistoryPlayUI.Instance.timeSum; //DateTime showPointTime = MultHistoryPlayUI.Instance.GetStartTime().AddSeconds(timesum); MultHistoryTimeStamp timeStamp = LocationHistoryUITool.GetTimeStamp(); double timesum = timeStamp.timeSum; DateTime showPointTime = timeStamp.showPointTime; float currentSpeedT = timeStamp.currentSpeed; if (currentPointIndex < PosCount && currentPointIndex > -1) { //Debug.LogErrorFormat("timelist[currentPointIndex]:{0},showPointTime:{1}", timelist[currentPointIndex], showPointTime); if (PosInfoList[currentPointIndex].Time < showPointTime) { //double timesum2 = (timelist[currentPointIndex] - HistoryPlayUI.Instance.GetStartTime()).TotalSeconds; //Debug.Log("timesum2:" + timesum2); //progressTargetValue = (double)timesum2 / HistoryPlayUI.Instance.timeLength; //if (MultHistoryPlayUI.Instance.isNewWalkPath) //{ if (currentPointIndex - 1 >= 0) { double temp = PosInfoList.GetTimeSpane(currentPointIndex); if (temp > 2f) { //ExcuteHistoryPath(currentPointIndex,1f, false); ExcuteHistoryPath(currentPointIndex, currentSpeedT); currentPointIndex++; return; } else { ExcuteHistoryPath(currentPointIndex, currentSpeedT); } } else { ExcuteHistoryPath(currentPointIndex, currentSpeedT); } //} //else //{ // ExcuteHistoryPath(currentPointIndex, MultHistoryPlayUI.Instance.CurrentSpeed); //} //Debug.LogError("currentPointIndex111:" + currentPointIndex); currentPointIndex++; Show(); } else//如果当前点的时间超过了当前进度时间 { //if (currentPointIndex - 1 >= 0) //{ // ExcuteHistoryPath(currentPointIndex - 1, MultHistoryPlayUI.Instance.CurrentSpeed); //} ExcuteHistoryPath(currentPointIndex, currentSpeedT); //Debug.LogError("currentPointIndex222:" + currentPointIndex); //if (MultHistoryPlayUI.Instance.isNewWalkPath) //{ if (currentPointIndex - 1 >= 0) { double temp = (PosInfoList[currentPointIndex].Time - PosInfoList[currentPointIndex - 1].Time).TotalSeconds; if (temp > 2f)//如果当前要执行历史点的值,超过播放时间值5秒,就认为这超过5秒时间里,没历史轨迹数据,则让人员消失 { //Hide(); } } else { //Hide(); } //} //else //{ // double temp = (timelist[currentPointIndex] - showPointTime).TotalSeconds; // if (temp > 5f)//如果当前要执行历史点的值,超过播放时间值5秒,就认为这超过5秒时间里,没历史轨迹数据,则让人员消失 // { // Hide(); // } //} } //progressValue = Mathf.Lerp((float)progressValue, (float)progressTargetValue, 2 * Time.deltaTime); //transform.position = line.GetPoint3D01((float)progressValue); //ExcuteHistoryPath(currentPointIndex); } else { Hide(); } } else { progressValue = 0; progressTargetValue = 0; currentPointIndex = 0; } } //else //{ ShowArea(); //} if (depnode != null) { if (LocationHistoryManager.Instance && LocationHistoryManager.Instance.IsFocus)//对焦状态时才可以加载设备 { BuildingController buillding = depnode.GetParentNode <BuildingController>(); if (buillding && !buillding.IsDevCreate)//加载设备 { buillding.IsDevCreate = true; buillding.LoadDevices(() => { RoomFactory.Instance.CreateDepDev(buillding, true);//todo:是否可以不加载动态设备 }); } } } }