/// <summary> /// 比较 /// </summary> /// <param name="netA"></param> /// <param name="netB"></param> /// <returns></returns> public static List <NamedXyzEnu> Compare(BaseLineNet netA, BaseLineNet netB) {//提取和转换,有的方向不一致 List <NamedXyz> netBlines = new List <NamedXyz>(); foreach (var item in netB) { var line = netA.GetOrReversed(item.BaseLineName); if (line == null) { continue; } var namedXyz = new NamedXyz(line.BaseLineName.Name, line.EstimatedVector); netBlines.Add(namedXyz); } var CoordsB = netB.GetNamedXyzs(); var Compared = NamedXyz.Compare(netBlines, CoordsB); var CompareResults = new List <NamedXyzEnu>(); foreach (var localXyz in Compared) { GnssBaseLineName name = new GnssBaseLineName(localXyz.Name); var staXyz = netA.GetSiteCoord(name.RefName); if (staXyz == null) { continue; } var item = NamedXyzEnu.Get(localXyz.Name, localXyz.Value, staXyz); CompareResults.Add(item); } return(CompareResults); }