From fab5d6e30b9a42a1f94524fca74ef227d2c963e4 Mon Sep 17 00:00:00 2001 From: cloudflight <cloudflight@126.com> Date: 星期六, 20 七月 2024 11:12:32 +0800 Subject: [PATCH] 1 --- Hydraulic/Hydro.MapUI/WindowsForm/Form_Color.cs | 73 +++++++----------------------------- 1 files changed, 15 insertions(+), 58 deletions(-) diff --git a/Hydraulic/Hydro.MapUI/WindowsForm/Form_Color.cs b/Hydraulic/Hydro.MapUI/WindowsForm/Form_Color.cs index ac50cae..9facb18 100644 --- a/Hydraulic/Hydro.MapUI/WindowsForm/Form_Color.cs +++ b/Hydraulic/Hydro.MapUI/WindowsForm/Form_Color.cs @@ -24,6 +24,8 @@ public Template Template { get; private set; } private List<Colour> Colours = new List<Colour>(); + + private Colour CurrenColour { get { @@ -318,14 +320,14 @@ private void GenerateFloorsButton_Click(object sender, EventArgs e) { - if (CurrenColour==null) + if (CurrenColour == null) { - simpleButton9_Click(1,new EventArgs()); + simpleButton9_Click(1, new EventArgs()); } // 闅愯棌閿欒鏍囩 ErrorLabel.Visible = false; - + float minFloorIndex; float maxFloorIndex; @@ -346,7 +348,7 @@ ErrorLabel.Visible = true; return; } - if (!int.TryParse(tb_ColourNum.Text,out ColourNum)) + if (!int.TryParse(tb_ColourNum.Text, out ColourNum)) { ErrorLabel.Text = "绾ф暟蹇呴』鏄暟瀛�"; ErrorLabel.Visible = true; @@ -366,7 +368,7 @@ //} - CurrenColour.color0= color0; + CurrenColour.color0 = color0; CurrenColour.color1 = color1; CurrenColour.maxNum = maxFloorIndex; CurrenColour.minNum = minFloorIndex; @@ -376,33 +378,13 @@ //string tempID = BackgroundImgTextBox_q.Text; // 閫愬眰鐢熸垚妤煎眰 - for (int i = 0; i < ColourNum; i++) - { - DRange currentRange =new DRange(minFloorIndex + i * (maxFloorIndex- minFloorIndex)/ColourNum, minFloorIndex + (i+1) * (maxFloorIndex - minFloorIndex) / ColourNum); - Color c; - //鑾峰彇color0鍜宑olor1锛孋olour涓瓑鍒嗛鑹诧紝绗竴涓负color0锛屾渶鍚庝竴涓负color1锛屼腑闂寸殑涓虹瓑鍒嗛鑹� - if (i == 0) - { - c = color0; - } - else if (i == ColourNum-1) - { - c = color1; - } - else - { - c = Color.FromArgb(color0.R + (color1.R - color0.R) / (ColourNum - 1) * i, color0.G + (color1.G - color0.G) / (ColourNum - 1) * i, color0.B + (color1.B - color0.B) / (ColourNum-1) * i); - - } - - - ColourItem newFloor = new ColourItem(currentRange,c); - floors.Add(newFloor); - } - + var items=Colour.GetColourItems(minFloorIndex, maxFloorIndex, ColourNum, color0, color1); + floors.AddRange(items); // 鏇存柊妤煎眰鍒楄〃 UpdateColourItemList(); } + + private void SelectImageButton_Click_q(object sender, EventArgs e) { @@ -563,35 +545,10 @@ if (CurrenColour == null) return; double max = 0; double min = 0; - - switch(CurrenColour.Type) - { - case ColourType.鑺傜偣鑷敱鍘嬪姏: - max=this.Template.network.Nodes.Where(node=>!(node is ReservoirViewModel || node is TankViewModel)).Max(node => node.EN_PRESSURE); - min=this.Template.network.Nodes.Where(node => !(node is ReservoirViewModel || node is TankViewModel)).Min(node => node.EN_PRESSURE); - break; - case ColourType.鑺傜偣缁濆鍘嬪姏: - max = this.Template.network.Nodes.Where(node => !(node is ReservoirViewModel || node is TankViewModel)).Max(node => node.EN_PRESSURE); - min = this.Template.network.Nodes.Where(node => !(node is ReservoirViewModel || node is TankViewModel)).Min(node => node.EN_PRESSURE); - break; - case ColourType.鑺傜偣闇�姘撮噺: - max = this.Template.network.Nodes.Where(node => !(node is ReservoirViewModel || node is TankViewModel)).Max(node => node.EN_DEMAND); - min = this.Template.network.Nodes.Where(node => !(node is ReservoirViewModel || node is TankViewModel)).Min(node => node.EN_DEMAND); - break; - case ColourType.绠$嚎娴侀噺: - max = this.Template.network.Links.Max(link => link.EN_FLOW); - min = this.Template.network.Links.Min(link => link.EN_FLOW); - break; - case ColourType.绠$嚎娴侀��: - max = this.Template.network.Links.Max(link => link.EN_VELOCITY); - min = this.Template.network.Links.Min(link => link.EN_VELOCITY); - break; - default: - break; - - } - tb_minFloorIndex.Text = min.ToString(); - tb_maxFloorIndex.Text = max.ToString(); + var doubles=this.Template.network.getMinMax(CurrenColour.Type); + + tb_minFloorIndex.Text = doubles[0].ToString(); + tb_maxFloorIndex.Text = doubles[1].ToString(); } private void btn_useColour_Click(object sender, EventArgs e) -- Gitblit v1.9.3