From 5fa6947054206e2e781eadd4effdcdf52eda28c4 Mon Sep 17 00:00:00 2001 From: cloudflight <cloudflight@126.com> Date: 星期二, 26 十二月 2023 11:02:28 +0800 Subject: [PATCH] 2023年12月26日 --- Hydro.MapBase/Map/MapViewer.cs | 20 +++++++++++--------- 1 files changed, 11 insertions(+), 9 deletions(-) diff --git a/Hydro.MapBase/Map/MapViewer.cs b/Hydro.MapBase/Map/MapViewer.cs index d0d4eba..ea7fcb8 100644 --- a/Hydro.MapBase/Map/MapViewer.cs +++ b/Hydro.MapBase/Map/MapViewer.cs @@ -690,8 +690,8 @@ void Draw(Graphics bufferG, Template template) { if (template == null) return; - var _Nodes = template.network.Nodes; - var _Links = template.network.Links; + var _Nodes = template.network.Nodes.ViewNodes; + var _Links = template.network.Links.ViewLinks; var Cpoints = getCurclePoints(64).ToList(); @@ -801,7 +801,7 @@ using (Pen pen0 = new Pen(Color.FromArgb(0, 0, 255), 2 * r)) { - foreach (var link in _Links.Select(link => (LinkViewModel)link).ToList()) + foreach (var link in _Links) { if (!link.Visible) continue; if (link.Elev < minElve || link.Elev >= maxElve) continue; @@ -987,7 +987,7 @@ using (Pen pen = new Pen(Color.FromArgb(255, 0, 0), 1 * r)) { Brush brush = pen.Brush; - foreach (NodeViewModel node in _Nodes.Select(node => (NodeViewModel)node).ToList()) + foreach (NodeViewModel node in _Nodes) { if (!node.Visible) continue; if (node.Elev < minElve || node.Elev >= maxElve) continue; @@ -1654,7 +1654,6 @@ _NewNet.Clear(); _Network.BuildRelation(); - selectedObjs.ForEach(o => o.Selected = false); selectedObjs.Clear(); @@ -2813,6 +2812,7 @@ if (p.StartNode == obj) { p.StartNode = junc; + } else if (p.EndNode == obj) { @@ -2992,13 +2992,15 @@ MessageBox.Show("鍥寸粫閫変腑鑺傜偣杩涜涓夌淮缂╂斁锛岃鍦ㄥ睘鎬у垪琛ㄤ腑閫変腑涓�涓缉鏀句腑蹇冨璞�"); return; } - if (!(selectobjs[0] as IBaseViewModel).isNode()) + //if (!(selectobjs[0] as IBaseViewModel).isNode()) + var list = objs.FindAll(o => o.ID == selectobjs[0]); + if (list.Count>=1 && !list[0].isNode()) { MessageBox.Show("鍥寸粫閫変腑鑺傜偣杩涜涓夌淮缂╂斁锛岃鍦ㄥ睘鎬у垪琛ㄤ腑閫変腑涓�涓猍鑺傜偣绫籡缂╂斁涓績瀵硅薄"); return; } - NodeViewModel origin = selectobjs[0] as NodeViewModel; + NodeViewModel origin = list[0] as NodeViewModel; var nodes = objs.FindAll(o => o.isNode()).Select(o => o as NodeViewModel).ToList(); ToolStripMenuItem item = sender as ToolStripMenuItem; @@ -3870,7 +3872,7 @@ //net.Nodes.ForEach(o => o.Selected = false); //net.Links.ForEach(o => o.Selected = false); selectedObjs.AddRange(net.Nodes.Select(n=>(NodeViewModel)n)); - selectedObjs.AddRange(net.Links.Select(n => (LinkViewModel)n)); + selectedObjs.AddRange(net.Links.ViewLinks); //net.Nodes.ForEach(o => selectedNodes.); //net.Links.ForEach(o => o.Selected = false) ; var list = _Network.Add(net); @@ -4143,7 +4145,7 @@ { _Template.network.MapObjects.ForEach(o => o.Selected = false) ; selectedObjs.Clear(); - _Template.network.ViewLinks.ForEach(link => + _Template.network.Links.ForEach(link => { if (link.EN_FLOW != 0) { -- Gitblit v1.9.3