From ccdc621d089fcffaca72b576baa4a121264f9949 Mon Sep 17 00:00:00 2001 From: cloudflight <cloudflight@126.com> Date: 星期六, 22 六月 2024 14:00:55 +0800 Subject: [PATCH] fix:CubeView移动问题 --- Hydraulic/Hydro.MapView/MapViewNetWork.cs | 37 +++++++++++++++++++++++++++++-------- 1 files changed, 29 insertions(+), 8 deletions(-) diff --git a/Hydraulic/Hydro.MapView/MapViewNetWork.cs b/Hydraulic/Hydro.MapView/MapViewNetWork.cs index 55f5430..b776855 100644 --- a/Hydraulic/Hydro.MapView/MapViewNetWork.cs +++ b/Hydraulic/Hydro.MapView/MapViewNetWork.cs @@ -1019,46 +1019,65 @@ return list; //return new List<TimePoint>(); } - public string CheckValidate() + public Dictionary<string, List<string>> CheckValidate() { BuildRelation(); string result = null; + Dictionary<string, List<string>> result_dict = new Dictionary<string, List<string>>(); StringBuilder result_sb=new StringBuilder(); //to-do - var objs = new List<LinkViewModel>() { Links[0] }; //Links.FindAll(o => o is LinkViewModel).Select(o => o as LinkViewModel).ToList(); + var objs = Links.Select(o => o as LinkViewModel).ToList();//new List<LinkViewModel>() { Links[0] }; //Links.FindAll(o => o is LinkViewModel).Select(o => o as LinkViewModel).ToList(); //objs鍘绘帀閲嶅鐨勫厓绱� objs = objs.Distinct().ToList(); var visitedNodes = new HashSet<NodeViewModel>(); FindObjs = new HashSet<IBaseViewModel>(); objs.ForEach(o => TraversePipeNetworkALL(o, visitedNodes)); - + List<string> list_瀛ょ珛鐐� = new List<string>(); for(int i=0;i<Nodes.Count;i++) { - if (!FindObjs.Contains(Nodes[i])) result_sb .AppendLine($"鑺傜偣{Nodes[i].ID}鏄绔嬬偣"); + if (!FindObjs.Contains(Nodes[i])) + { + result_sb.AppendLine($"鑺傜偣{Nodes[i].ID}鏄绔嬬偣"); + list_瀛ょ珛鐐�.Add(Nodes[i].ID); + } + } + if (list_瀛ょ珛鐐�.Count>0)result_dict.Add("瀛ょ珛鐐�", list_瀛ょ珛鐐�); //灞炴�у垽鏂� + var list_绠¢亾杩炴帴鍏崇郴寮傚父 = new List<string>(); + var list_绠¢亾闀垮害灏忎簬绛変簬0 = new List<string>(); + var list_绮楃硻绯绘暟璁剧疆閿欒 = new List<string>(); + var list_绠″緞璁剧疆閿欒 = new List<string>(); pipes.ForEach(p => { if (p.StartNode == null || p.EndNode == null) { - result_sb.AppendLine($"{p.ID}绠¢亾鏈繛鎺�"); + result_sb.AppendLine($"{p.ID}绠¢亾杩炴帴鍏崇郴寮傚父"); + list_绠¢亾杩炴帴鍏崇郴寮傚父.Add(p.ID); } if (p.Length<=0) { result_sb.AppendLine($"{p.ID}绠¢亾闀垮害灏忎簬绛変簬0"); + list_绠¢亾闀垮害灏忎簬绛変簬0.Add(p.ID); } if (p.Roughness<=0.1 || p.Roughness>10000) { result_sb.AppendLine($"{p.ID}绮楃硻绯绘暟璁剧疆閿欒"); + list_绮楃硻绯绘暟璁剧疆閿欒.Add(p.ID); } if (p.Diameter<=0.1 || p.Diameter>10000) { result_sb.AppendLine($"{p.ID}绠″緞璁剧疆閿欒"); + list_绠″緞璁剧疆閿欒.Add(p.ID); } }); - return result_sb.ToString(); + if (list_绠¢亾杩炴帴鍏崇郴寮傚父.Count > 0) result_dict.Add("绠¢亾杩炴帴鍏崇郴寮傚父", list_绠¢亾杩炴帴鍏崇郴寮傚父); + if (list_绠¢亾闀垮害灏忎簬绛変簬0.Count > 0) result_dict.Add("绠¢亾闀垮害灏忎簬绛変簬0", list_绠¢亾闀垮害灏忎簬绛変簬0); + if (list_绮楃硻绯绘暟璁剧疆閿欒.Count > 0) result_dict.Add("绮楃硻绯绘暟璁剧疆閿欒", list_绮楃硻绯绘暟璁剧疆閿欒); + if (list_绠″緞璁剧疆閿欒.Count > 0) result_dict.Add("绠″緞璁剧疆閿欒", list_绠″緞璁剧疆閿欒); + return result_dict; @@ -1187,7 +1206,8 @@ } if (k2 == list.Count) { - throw new Exception($"鏈壘鍒癗ode[{J.ID}]鐨剓valueType}"); + return; + //throw new Exception($"鏈壘鍒癗ode[{J.ID}]鐨剓valueType}"); } switch (valueType) { @@ -1228,7 +1248,8 @@ } if (k2 == list.Count) { - throw new Exception($"鏈壘鍒癓ink[{J.ID}]鐨剓valueType}"); + return; + //throw new Exception($"鏈壘鍒癓ink[{J.ID}]鐨剓valueType}"); } switch (valueType) { -- Gitblit v1.9.3