/// <summary> /// 获取指定 /// </summary> /// <param name="indexes"></param> /// <returns></returns> public EphemerisStorage GetSubEphemerises(List <double> indexes) { EphemerisStorage entities = new EphemerisStorage(); foreach (var item in indexes) { entities.Add(item, this[item]); } return(entities); }
/// <summary> /// 获取 /// </summary> /// <param name="time"></param> /// <param name="order"></param> /// <returns></returns> public EphemerisStorage GetGetNearst(Time time, int order) { var storege = new EphemerisStorage(); double minAbs = double.MaxValue; var nearTime = this.First.Time; foreach (var item in this) { var differ = item.Time - time; var absdiffer = Math.Abs(differ); if (minAbs > absdiffer) { nearTime = item.Time; minAbs = absdiffer; } storege.Add(differ, item); } var indexes = Geo.Utils.DoubleUtil.GetNearstValues(storege.Keys, minAbs, order); return(storege.GetSubEphemerises(indexes)); }
public EphemerisInterpolator1(Data.Rinex.EphemerisStorage entities) { // TODO: Complete member initialization this.entities = entities; Init(); }