/// <summary> /// 数据点太多创建,数据拆开以便创建多条轨迹 /// 因为创建一条连续线最多为16383个点 /// </summary> public void GroupingLine(int segmentsMaxT = 16000) { Log.Info("LocationHistoryPathBase.GroupingLine Start"); if (PosInfoList == null) { Debug.LogError("HistoryPath.GroupingLine PosInfoList == null"); return; } //if (splinePoints.Count != timelist.Count) //{ // return; //} int n = PosCount / segmentsMaxT; if (PosCount % segmentsMaxT > 0) { n += 1; } for (int i = 0; i < n; i++) { if (i < n - 1) { var listT = PosInfoList.GetRange(i * segmentsMaxT, segmentsMaxT); PosInfoGroup.AddList(listT); } else { var listT = PosInfoList.GetRange(i * segmentsMaxT, PosCount - i * segmentsMaxT); PosInfoGroup.AddList(listT); } } Log.Info("LocationHistoryPathBase.GroupingLine End"); //for (int i = 0; i < n; i++) //{ // if (i < n - 1) // { // List<DateTime> listT = timelist.GetRange(i * segmentsMaxT, segmentsMaxT); // timelistLsit.Add(listT); // } // else // { // List<DateTime> listT = timelist.GetRange(i * segmentsMaxT, splinePoints.Count - i * segmentsMaxT); // timelistLsit.Add(listT); // } //} //if (splinePoints.Count> 16000) //{ // splinePointsList.AddRange(splinePoints.GetRange()) //} }