From f7bed326ef5948e76dd1a1b24a9ed10f5b2e5e4e Mon Sep 17 00:00:00 2001 From: duheng <2784771470@qq.com> Date: 星期三, 04 十二月 2024 15:59:42 +0800 Subject: [PATCH] Merge branch 'master' of http://47.103.154.90:83/r/HStation/XHS.V1.0 --- WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/03-variable-speed/PumpVariableSpeedViewItemViewModel.cs | 43 -- WinFrmUI/Yw.WinFrmUI.Phart.Core/02-valve/01-view/ValveViewChart.cs | 2 WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/03-variable-speed/PumpVariableSpeedViewModel.cs | 55 -- WinFrmUI/Yw.WinFrmUI.Phart.Core/Yw.WinFrmUI.Phart.Core.csproj | 2 WinFrmUI/Yw.WinFrmUI.Phart.Core/02-valve/02-edit/ValveEditCtrl.cs | 2 WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/02-operation/PumpOperationChart.cs | 36 +- WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/04-run-view/PumpRunViewViewModel.cs | 17 WinFrmUI/Yw.WinFrmUI.Phart.Core/00-core/RandomColorHelper.cs | 64 ++++ WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/04-run-view/PumpRunViewChart.cs | 402 ++++++++++++++------------ WinFrmUI/Yw.WinFrmUI.Phart.Core/02-valve/02-edit/ValveEditChart.cs | 2 WinFrmUI/Yw.WinFrmUI.Phart.Core/Yw.WinFrmUI.Phart.Core.csproj.user | 2 WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/02-operation/PumpOperationViewModel.cs | 3 WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/04-run-view/PumpRunViewChart.resx | 0 WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/02-multi/01-parallel/PumpParallelChart.cs | 10 WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/01-view/PumpViewChart.cs | 6 WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/04-run-view/PumpRunViewChart.Designer.cs | 38 -- WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/03-variable-speed/PumpVariableSpeedViewModel1.cs | 123 ++++++++ WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/04-run-view/PumpRunViewItemViewModel.cs | 18 WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/11-pump/03-analy/SimulationSingleWorkingPumpAnalyCtrl.Designer.cs | 4 WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/11-pump/03-analy/SimulationMultiWorkingPumpAnalyCtrl.Designer.cs | 4 WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/03-variable-speed/PumpVariableSpeedChart.cs | 10 WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/11-pump/03-analy/SimulationSingleWorkingPumpAnalyCtrl.cs | 10 WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/09-edit/PumpEditChart.cs | 6 WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/09-edit/PumpEditChartCtrl.cs | 6 WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/11-pump/03-analy/SimulationMultiWorkingPumpAnalyCtrl.cs | 8 25 files changed, 509 insertions(+), 364 deletions(-) diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/11-pump/03-analy/SimulationMultiWorkingPumpAnalyCtrl.Designer.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/11-pump/03-analy/SimulationMultiWorkingPumpAnalyCtrl.Designer.cs index c4a90cc..56755aa 100644 --- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/11-pump/03-analy/SimulationMultiWorkingPumpAnalyCtrl.Designer.cs +++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/11-pump/03-analy/SimulationMultiWorkingPumpAnalyCtrl.Designer.cs @@ -32,7 +32,7 @@ hydroWorkingCheckedListHorizCtrl1 = new HydroWorkingCheckedListHorizCtrl(); hydroPumpListViewCtrl1 = new HydroPumpListViewCtrl(); panelControl1 = new PanelControl(); - pumpVariableSpeedViewChart1 = new Yw.WinFrmUI.Phart.PumpVariableSpeedViewChart(); + pumpVariableSpeedViewChart1 = new Yw.WinFrmUI.Phart.PumpRunViewChart(); Root = new DevExpress.XtraLayout.LayoutControlGroup(); layoutControlGroup1 = new DevExpress.XtraLayout.LayoutControlGroup(); layoutControlItem1 = new DevExpress.XtraLayout.LayoutControlItem(); @@ -198,7 +198,7 @@ private HydroWorkingCheckedListHorizCtrl hydroWorkingCheckedListHorizCtrl1; private HydroPumpListViewCtrl hydroPumpListViewCtrl1; private PanelControl panelControl1; - private Yw.WinFrmUI.Phart.PumpVariableSpeedViewChart pumpVariableSpeedViewChart1; + private Yw.WinFrmUI.Phart.PumpRunViewChart pumpVariableSpeedViewChart1; private DevExpress.XtraLayout.LayoutControlGroup Root; private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup1; private DevExpress.XtraLayout.LayoutControlItem layoutControlItem1; diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/11-pump/03-analy/SimulationMultiWorkingPumpAnalyCtrl.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/11-pump/03-analy/SimulationMultiWorkingPumpAnalyCtrl.cs index a489040..e7230e4 100644 --- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/11-pump/03-analy/SimulationMultiWorkingPumpAnalyCtrl.cs +++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/11-pump/03-analy/SimulationMultiWorkingPumpAnalyCtrl.cs @@ -74,7 +74,7 @@ } //鍒涘缓 - private PumpVariableSpeedViewViewModel CreateViewModel() + private PumpRunViewViewModel CreateViewModel() { if (_hydroInfo == null) { @@ -84,7 +84,7 @@ { return default; } - var vm = new PumpVariableSpeedViewViewModel(); + var vm = new PumpRunViewViewModel(); vm.Id = _pumpInfo.Code; vm.Name = _pumpInfo.Name; vm.CurveName = $"棰濆畾鏇茬嚎({_pumpInfo.RatedHz}hz)"; @@ -126,7 +126,7 @@ if (_workingList != null && _workingList.Count > 0) { - vm.Items = new List<PumpVariableSpeedViewItemViewModel>(); + vm.Items = new List<PumpRunViewItemViewModel>(); foreach (var working in _workingList) { var workingInfo = JsonHelper.Json2Object<HydroWorkingInfoViewModel>(working.WorkingInfo); @@ -135,7 +135,7 @@ var workingPumpInfo = workingInfo.Pumps.Find(x => x.Code == _pumpInfo.Code); if (workingPumpInfo != null) { - var vmItem = new PumpVariableSpeedViewItemViewModel(); + var vmItem = new PumpRunViewItemViewModel(); vm.Items.Add(vmItem); vmItem.Id = working.ID.ToString(); vmItem.Name = working.Name; diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/11-pump/03-analy/SimulationSingleWorkingPumpAnalyCtrl.Designer.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/11-pump/03-analy/SimulationSingleWorkingPumpAnalyCtrl.Designer.cs index 38fdd1b..5384916 100644 --- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/11-pump/03-analy/SimulationSingleWorkingPumpAnalyCtrl.Designer.cs +++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/11-pump/03-analy/SimulationSingleWorkingPumpAnalyCtrl.Designer.cs @@ -36,7 +36,7 @@ layoutControlItem3 = new DevExpress.XtraLayout.LayoutControlItem(); hydroPumpListStateViewCtrl1 = new HydroPumpListStateViewCtrl(); layoutControlItem2 = new DevExpress.XtraLayout.LayoutControlItem(); - pumpVariableSpeedViewChart1 = new Yw.WinFrmUI.Phart.PumpVariableSpeedViewChart(); + pumpVariableSpeedViewChart1 = new Yw.WinFrmUI.Phart.PumpRunViewChart(); ((ISupportInitialize)layoutControl1).BeginInit(); layoutControl1.SuspendLayout(); ((ISupportInitialize)panelControl1).BeginInit(); @@ -164,6 +164,6 @@ private DevExpress.XtraLayout.LayoutControlItem layoutControlItem3; private HydroPumpListStateViewCtrl hydroPumpListStateViewCtrl1; private DevExpress.XtraLayout.LayoutControlItem layoutControlItem2; - private Yw.WinFrmUI.Phart.PumpVariableSpeedViewChart pumpVariableSpeedViewChart1; + private Yw.WinFrmUI.Phart.PumpRunViewChart pumpVariableSpeedViewChart1; } } diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/11-pump/03-analy/SimulationSingleWorkingPumpAnalyCtrl.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/11-pump/03-analy/SimulationSingleWorkingPumpAnalyCtrl.cs index ec59e0a..35222cf 100644 --- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/11-pump/03-analy/SimulationSingleWorkingPumpAnalyCtrl.cs +++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/11-pump/03-analy/SimulationSingleWorkingPumpAnalyCtrl.cs @@ -53,17 +53,17 @@ return; } var vm = CreateViewModel(pump); - this.pumpVariableSpeedViewChart1.SetBindingData(vm); + this.pumpVariableSpeedViewChart1.SetBindingData(vm); } //鍒涘缓 - private PumpVariableSpeedViewViewModel CreateViewModel(Yw.Model.HydroPumpInfo pump) + private PumpRunViewViewModel CreateViewModel(Yw.Model.HydroPumpInfo pump) { if (_hydroInfo == null) { return default; } - var vm = new PumpVariableSpeedViewViewModel(); + var vm = new PumpRunViewViewModel(); vm.Id = pump.Code; vm.Name = pump.Name; vm.CurveName = $"棰濆畾鏇茬嚎({pump.RatedHz}hz)"; @@ -105,8 +105,8 @@ if (pump.LinkStatus == Yw.Hydro.PumpStatus.Open) { - vm.Items = new List<PumpVariableSpeedViewItemViewModel>(); - var vmItem = new PumpVariableSpeedViewItemViewModel(); + vm.Items = new List<PumpRunViewItemViewModel>(); + var vmItem = new PumpRunViewItemViewModel(); vm.Items.Add(vmItem); vmItem.Id = string.Empty; vmItem.Name = "杩愯"; diff --git a/WinFrmUI/Yw.WinFrmUI.Phart.Core/00-core/RandomColorHelper.cs b/WinFrmUI/Yw.WinFrmUI.Phart.Core/00-core/RandomColorHelper.cs new file mode 100644 index 0000000..5e72fa5 --- /dev/null +++ b/WinFrmUI/Yw.WinFrmUI.Phart.Core/00-core/RandomColorHelper.cs @@ -0,0 +1,64 @@ +锘縰sing System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Yw.WinFrmUI.Phart +{ + /// <summary> + /// 闅忔満鑹茶緟鍔╃被 + /// </summary> + public class RandomColorHelper + { + + private static readonly List<Color> _color_array = new List<Color>() + { + Color.Red, Color.Blue, Color.Green,Color.DodgerBlue, + Color.Fuchsia, Color.MidnightBlue, Color.Maroon, Color.Aquamarine, + Color.Bisque,Color.BurlyWood + }; + + /// <summary> + /// 鑾峰彇闅忔満棰滆壊 + /// </summary> + /// <returns></returns> + public static Color Get(int count) + { + if (count < _color_array.Count) + { + return _color_array[count]; + } + + //var _random = new Random(); + //int r = _random.Next(1, 256); + //int g = _random.Next(1, 256); + //int b = _random.Next(1, 256); + //return Color.FromArgb(r, g, b); + + return GetRandomDarkColor(); + } + + + private static Color GetRandomDarkColor() + { + Random random = new Random(); + int r, g, b; + do + { + r = random.Next(256); + g = random.Next(256); + b = random.Next(256); + } while (CalculateBrightness(r, g, b) > 128); // 纭繚棰滆壊鏄繁鑹� + + return Color.FromArgb(r, g, b); + } + + private static int CalculateBrightness(int r, int g, int b) + { + // 璁$畻棰滆壊鐨勪寒搴︼紝浜害鍊艰秺浣庯紝棰滆壊瓒婃繁 + return (r + g + b) / 3; + } + + } +} diff --git a/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/01-view/PumpViewChart.cs b/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/01-view/PumpViewChart.cs index 8707004..0f4d80e 100644 --- a/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/01-view/PumpViewChart.cs +++ b/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/01-view/PumpViewChart.cs @@ -279,13 +279,13 @@ } List<Yw.Geometry.Point2d> qh_pt_list, qe_pt_list = null, qp_pt_list = null; - qh_pt_list = qh.GetPointList(12); + qh_pt_list = qh.GetPointList(100); if (qe != null) - qe_pt_list = qe.GetPointList(12); + qe_pt_list = qe.GetPointList(100); if (qp != null) - qp_pt_list = qp.GetPointList(12); + qp_pt_list = qp.GetPointList(100); SetBindingData(qh, qe, qp, qh_pt_list, qe_pt_list, qp_pt_list, null, qe_pt_list, null, coordinate_paras, calc_coordinate); } diff --git a/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/02-operation/PumpOperationChart.cs b/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/02-operation/PumpOperationChart.cs index 861dd54..361a259 100644 --- a/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/02-operation/PumpOperationChart.cs +++ b/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/02-operation/PumpOperationChart.cs @@ -260,14 +260,14 @@ return; } - start_head ??= _coordinate.DispMinH(); + start_head ??= _coordinate.DispMinH(); var equip_line = Yw.Geometry.EquipCurveHelper.CalcEquipCurve(_vm.CurveQH, _equip_pt, start_head.Value, out Yw.Geometry.Point2d sect_pt); if (equip_line == null || sect_pt == null) return; _equip_line = equip_line; _equip_sect_pt = sect_pt; - + double flow = 0, head = 0; double? eff = null, power = null; flow = sect_pt.X; @@ -282,12 +282,12 @@ eff = _vm.CurveQE.GetPointY(flow); power = PumpCalcHelper.CalculateP(flow, head, eff.Value); } - + var design_pt_list = new List<PumpDesignPointViewModel> { new() { - Id = _vm.Id + "棰濆畾", - Name = _vm.Name + "(棰濆畾)", + Id = _vm.Id, + Name = _vm.Name, Q = flow, H = head, E = eff, @@ -295,12 +295,12 @@ Hz = _vm.RatedHz, N = _vm.RatedN } - }; + }; if (_vm.CurrentStatus) { var current_equip_line = Yw.Geometry.EquipCurveHelper.CalcEquipCurve(_vm.CurrentCurveQH, _equip_pt, start_head.Value, out Yw.Geometry.Point2d current_sect_pt); - if ( current_sect_pt == null) + if (current_sect_pt == null) return; double current_flow = 0, current_head = 0; double? current_eff = null, current_power = null; @@ -315,7 +315,7 @@ { current_eff = _vm.CurrentCurveQE.GetPointY(current_flow); current_power = PumpCalcHelper.CalculateP(current_flow, current_head, current_eff.Value); - } + } design_pt_list.Add(new() { @@ -329,7 +329,7 @@ N = _vm.CurrentN }); - } + } this.DesignPointChangedEvent?.Invoke(design_pt_list); UpdateChart(true); @@ -560,7 +560,7 @@ } //鍔熺巼 - if (_max_power > _min_power) + if (_max_power > _min_power && _qp_visible) { //璁$畻鍒诲害 var labels = new List<CustomAxisLabel>(); @@ -782,7 +782,7 @@ series_qh.View = series_qh_view; series_qh.Visible = true; - var pt_qh_list = vm.CurveQH.GetPointList(12); + var pt_qh_list = vm.CurveQH.GetPointList(100); for (int i = 0; i < pt_qh_list.Count; i++) { series_qh.Points.Add(new SeriesPoint(pt_qh_list[i].X, new double[] { pt_qh_list[i].Y })); @@ -816,7 +816,7 @@ txt_qh.RuntimeMoving = true; txt_qh.RuntimeResizing = false; txt_qh.RuntimeRotation = false; - txt_qh.Text = vm.Name; + txt_qh.Text = $"{vm.RatedN}({vm.RatedHz}hz)"; txt_qh.TextColor = PumpChartDisplay.CurveColorQH; txt_qh.ShapePosition = position_qh; txt_qh.Visible = _line_name_visible; @@ -848,7 +848,7 @@ series_qe.Visible = _qe_visible; - var pt_qe_list = vm.CurveQE.GetPointList(12); + var pt_qe_list = vm.CurveQE.GetPointList(100); for (int i = 0; i < pt_qe_list.Count; i++) { series_qe.Points.Add(new SeriesPoint(pt_qe_list[i].X, new double[] { pt_qe_list[i].Y })); @@ -881,7 +881,7 @@ series_qp.View = series_qp_view; series_qp.Visible = _qp_visible; - var pt_qp_list = vm.CurveQP.GetPointList(12); + var pt_qp_list = vm.CurveQP.GetPointList(100); for (int i = 0; i < pt_qp_list.Count; i++) { series_qp.Points.Add(new SeriesPoint(pt_qp_list[i].X, new double[] { pt_qp_list[i].Y })); @@ -917,7 +917,7 @@ series_qh.View = series_qh_view; series_qh.Visible = true; - var pt_qh_list = vm.CurrentCurveQH.GetPointList(12); + var pt_qh_list = vm.CurrentCurveQH.GetPointList(100); for (int i = 0; i < pt_qh_list.Count; i++) { series_qh.Points.Add(new SeriesPoint(pt_qh_list[i].X, new double[] { pt_qh_list[i].Y })); @@ -951,7 +951,7 @@ txt_qh.RuntimeMoving = true; txt_qh.RuntimeResizing = false; txt_qh.RuntimeRotation = false; - txt_qh.Text = vm.Name; + txt_qh.Text = $"{vm.CurrentN}({vm.CurrentHz}hz)"; txt_qh.TextColor = PumpChartDisplay.CurveColorQH; txt_qh.ShapePosition = position_qh; txt_qh.Visible = _line_name_visible; @@ -981,7 +981,7 @@ series_qe.View = series_qe_view; series_qe.Visible = _qe_visible; - var pt_qe_list = vm.CurrentCurveQE.GetPointList(12); + var pt_qe_list = vm.CurrentCurveQE.GetPointList(100); for (int i = 0; i < pt_qe_list.Count; i++) { series_qe.Points.Add(new SeriesPoint(pt_qe_list[i].X, new double[] { pt_qe_list[i].Y })); @@ -1013,7 +1013,7 @@ series_qp.View = series_qp_view; series_qp.Visible = _qp_visible; - var pt_qp_list = vm.CurrentCurveQP.GetPointList(12); + var pt_qp_list = vm.CurrentCurveQP.GetPointList(100); for (int i = 0; i < pt_qp_list.Count; i++) { series_qp.Points.Add(new SeriesPoint(pt_qp_list[i].X, new double[] { pt_qp_list[i].Y })); diff --git a/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/02-operation/PumpOperationViewModel.cs b/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/02-operation/PumpOperationViewModel.cs index 53e9c41..a19b332 100644 --- a/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/02-operation/PumpOperationViewModel.cs +++ b/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/02-operation/PumpOperationViewModel.cs @@ -9,7 +9,7 @@ public PumpOperationViewModel(PumpOperationViewModel rhs) { this.Id = rhs.Id; - this.Name = rhs.Name; + this.Name = rhs.Name; this.RatedQ = rhs.RatedQ; this.RatedH = rhs.RatedH; this.RatedP = rhs.RatedP; @@ -37,6 +37,7 @@ /// 鍚嶇О /// </summary> public string Name { get; set; } + /// <summary> /// 棰濆畾娴侀噺 diff --git a/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/03-variable-speed/PumpVariableSpeedChart.cs b/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/03-variable-speed/PumpVariableSpeedChart.cs index 41b466b..4c5a303 100644 --- a/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/03-variable-speed/PumpVariableSpeedChart.cs +++ b/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/03-variable-speed/PumpVariableSpeedChart.cs @@ -1,8 +1,6 @@ 锘縰sing DevExpress.Utils; using DevExpress.Utils.Drawing; using DevExpress.XtraCharts; -using System.Text; -using Yw.Geometry; namespace Yw.WinFrmUI.Phart { @@ -514,7 +512,7 @@ } //鍔熺巼 - if (_max_power > _min_power) + if (_max_power > _min_power && _qp_visible) { //璁$畻鍒诲害 var labels = new List<CustomAxisLabel>(); @@ -687,7 +685,7 @@ series_qh.View = series_qh_view; series_qh.Visible = true; - var pt_qh_list = vm.CurrentCurveQH.GetPointList(12); + var pt_qh_list = vm.CurrentCurveQH.GetPointList(100); for (int i = 0; i < pt_qh_list.Count; i++) { series_qh.Points.Add(new SeriesPoint(pt_qh_list[i].X, new double[] { pt_qh_list[i].Y })); @@ -751,7 +749,7 @@ series_qe.View = series_qe_view; series_qe.Visible = _qe_visible; - var pt_qe_list = vm.CurrentCurveQE.GetPointList(12); + var pt_qe_list = vm.CurrentCurveQE.GetPointList(100); for (int i = 0; i < pt_qe_list.Count; i++) { series_qe.Points.Add(new SeriesPoint(pt_qe_list[i].X, new double[] { pt_qe_list[i].Y })); @@ -783,7 +781,7 @@ series_qp.View = series_qp_view; series_qp.Visible = _qp_visible; - var pt_qp_list = vm.CurrentCurveQP.GetPointList(12); + var pt_qp_list = vm.CurrentCurveQP.GetPointList(100); for (int i = 0; i < pt_qp_list.Count; i++) { series_qp.Points.Add(new SeriesPoint(pt_qp_list[i].X, new double[] { pt_qp_list[i].Y })); diff --git a/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/04-variable-speed-view/PumpVariableSpeedViewItemViewModel.cs b/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/03-variable-speed/PumpVariableSpeedViewItemViewModel.cs similarity index 60% copy from WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/04-variable-speed-view/PumpVariableSpeedViewItemViewModel.cs copy to WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/03-variable-speed/PumpVariableSpeedViewItemViewModel.cs index 6dd156b..2f79926 100644 --- a/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/04-variable-speed-view/PumpVariableSpeedViewItemViewModel.cs +++ b/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/03-variable-speed/PumpVariableSpeedViewItemViewModel.cs @@ -3,18 +3,14 @@ /// <summary> /// 娉靛彉閫� Item ViewModel /// </summary> - public class PumpVariableSpeedViewItemViewModel + public class PumpVariableSpeedItemViewModel { - public PumpVariableSpeedViewItemViewModel() { } - public PumpVariableSpeedViewItemViewModel(PumpVariableSpeedViewItemViewModel rhs) + public PumpVariableSpeedItemViewModel() { } + public PumpVariableSpeedItemViewModel(PumpVariableSpeedItemViewModel rhs) { this.Id = rhs.Id; this.Name = rhs.Name; - this.CurveName = rhs.CurveName; - this.Q = rhs.Q; - this.H = rhs.H; - this.P = rhs.P; - this.N = rhs.N; + this.CurveName = rhs.CurveName; this.Hz = rhs.Hz; this.CurveQH = rhs.CurveQH; @@ -37,31 +33,7 @@ /// </summary> public string CurveName { get; set; } - /// <summary> - /// 娴侀噺 - /// </summary> - public double Q { get; set; } - - /// <summary> - /// 鎵▼ - /// </summary> - public double H { get; set; } - - /// <summary> - /// 鍔熺巼 - /// </summary> - public double? P { get; set; } - - /// <summary> - /// 鏁堢巼 - /// </summary> - public double? E { get; set; } - - /// <summary> - /// 杞�� - /// </summary> - public double N { get; set; } - + /// <summary> /// 棰戠巼 /// </summary> @@ -81,6 +53,11 @@ /// 娴侀噺鍔熺巼绾� /// </summary> public Yw.Geometry.CubicSpline2d CurveQP { get; set; } + + /// <summary> + /// 棰滆壊 + /// </summary> + public Color Color { get; set; } } diff --git a/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/03-variable-speed/PumpVariableSpeedViewModel.cs b/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/03-variable-speed/PumpVariableSpeedViewModel.cs index 8768e46..c26b0b3 100644 --- a/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/03-variable-speed/PumpVariableSpeedViewModel.cs +++ b/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/03-variable-speed/PumpVariableSpeedViewModel.cs @@ -10,23 +10,19 @@ { this.Id = rhs.Id; this.Name = rhs.Name; + this.CurveName = rhs.CurveName; this.RatedQ = rhs.RatedQ; this.RatedH = rhs.RatedH; this.RatedP = rhs.RatedP; this.RatedN = rhs.RatedN; - this.RatedHz = rhs.RatedHz; - this.CurrentN = rhs.CurrentN; - this.CurrentHz = rhs.CurrentHz; - this.CurrentColor = rhs.CurrentColor; + this.RatedHz = rhs.RatedHz; this.CurveQH = rhs.CurveQH; this.CurveQE = rhs.CurveQE; - this.CurveQP = rhs.CurveQP; - this.CurrentCurveQH= rhs.CurrentCurveQH; - this.CurrentCurveQE= rhs.CurrentCurveQE; - this.CurrentCurveQP = rhs.CurrentCurveQP; - this.EquipPoint = rhs.EquipPoint; + this.CurveQP = rhs.CurveQP; + } + /// <summary> /// 鏍囪瘑 @@ -37,7 +33,7 @@ /// 鍚嶇О /// </summary> public string Name { get; set; } - + /// <summary> /// 鍚嶇О /// </summary> @@ -68,20 +64,6 @@ /// </summary> public double RatedHz { get; set; } - /// <summary> - /// 褰撳墠杞�� - /// </summary> - public double CurrentN { get; set; } - - /// <summary> - /// 褰撳墠棰戠巼 - /// </summary> - public double CurrentHz { get; set; } - - /// <summary> - /// 褰撳墠棰滆壊 - /// </summary> - public Color CurrentColor { get; set; } /// <summary> /// 娴侀噺鎵▼绾� @@ -97,27 +79,16 @@ /// 娴侀噺鍔熺巼绾� /// </summary> public Yw.Geometry.CubicSpline2d CurveQP { get; set; } + + /// <summary> + /// 鍙橀�熼」鍒楄〃 + /// </summary> + public List<PumpVariableSpeedViewItemViewModel> Items { get; set; } /// <summary> - /// 褰撳墠娴侀噺鎵▼绾� + /// 棰滆壊 /// </summary> - public Yw.Geometry.CubicSpline2d CurrentCurveQH { get; set; } - - /// <summary> - /// 褰撳墠娴侀噺鏁堢巼绾� - /// </summary> - public Yw.Geometry.CubicSpline2d CurrentCurveQE { get; set; } - - /// <summary> - /// 褰撳墠娴侀噺鍔熺巼绾� - /// </summary> - public Yw.Geometry.CubicSpline2d CurrentCurveQP { get; set; } - - /// <summary> - /// 瑁呯疆鐐� - /// </summary> - public Yw.Geometry.Point2d EquipPoint { get; set; } - + public Color Color { get; set; } } } diff --git a/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/03-variable-speed/PumpVariableSpeedViewModel1.cs b/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/03-variable-speed/PumpVariableSpeedViewModel1.cs new file mode 100644 index 0000000..8768e46 --- /dev/null +++ b/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/03-variable-speed/PumpVariableSpeedViewModel1.cs @@ -0,0 +1,123 @@ +锘縩amespace Yw.WinFrmUI.Phart +{ + /// <summary> + /// 娉靛彉閫烿iewModel + /// </summary> + public class PumpVariableSpeedViewModel + { + public PumpVariableSpeedViewModel() { } + public PumpVariableSpeedViewModel(PumpVariableSpeedViewModel rhs) + { + this.Id = rhs.Id; + this.Name = rhs.Name; + this.RatedQ = rhs.RatedQ; + this.RatedH = rhs.RatedH; + this.RatedP = rhs.RatedP; + this.RatedN = rhs.RatedN; + this.RatedHz = rhs.RatedHz; + this.CurrentN = rhs.CurrentN; + this.CurrentHz = rhs.CurrentHz; + this.CurrentColor = rhs.CurrentColor; + + this.CurveQH = rhs.CurveQH; + this.CurveQE = rhs.CurveQE; + this.CurveQP = rhs.CurveQP; + this.CurrentCurveQH= rhs.CurrentCurveQH; + this.CurrentCurveQE= rhs.CurrentCurveQE; + this.CurrentCurveQP = rhs.CurrentCurveQP; + this.EquipPoint = rhs.EquipPoint; + } + + /// <summary> + /// 鏍囪瘑 + /// </summary> + public string Id { get; set; } + + /// <summary> + /// 鍚嶇О + /// </summary> + public string Name { get; set; } + + /// <summary> + /// 鍚嶇О + /// </summary> + public string CurveName { get; set; } + + /// <summary> + /// 棰濆畾娴侀噺 + /// </summary> + public double RatedQ { get; set; } + + /// <summary> + /// 棰濆畾鎵▼ + /// </summary> + public double RatedH { get; set; } + + /// <summary> + /// 棰濆畾鍔熺巼 + /// </summary> + public double RatedP { get; set; } + + /// <summary> + /// 棰濆畾杞�� + /// </summary> + public double RatedN { get; set; } + + /// <summary> + /// 棰濆畾棰戠巼 + /// </summary> + public double RatedHz { get; set; } + + /// <summary> + /// 褰撳墠杞�� + /// </summary> + public double CurrentN { get; set; } + + /// <summary> + /// 褰撳墠棰戠巼 + /// </summary> + public double CurrentHz { get; set; } + + /// <summary> + /// 褰撳墠棰滆壊 + /// </summary> + public Color CurrentColor { get; set; } + + /// <summary> + /// 娴侀噺鎵▼绾� + /// </summary> + public Yw.Geometry.CubicSpline2d CurveQH { get; set; } + + /// <summary> + /// 娴侀噺鏁堢巼绾� + /// </summary> + public Yw.Geometry.CubicSpline2d CurveQE { get; set; } + + /// <summary> + /// 娴侀噺鍔熺巼绾� + /// </summary> + public Yw.Geometry.CubicSpline2d CurveQP { get; set; } + + /// <summary> + /// 褰撳墠娴侀噺鎵▼绾� + /// </summary> + public Yw.Geometry.CubicSpline2d CurrentCurveQH { get; set; } + + /// <summary> + /// 褰撳墠娴侀噺鏁堢巼绾� + /// </summary> + public Yw.Geometry.CubicSpline2d CurrentCurveQE { get; set; } + + /// <summary> + /// 褰撳墠娴侀噺鍔熺巼绾� + /// </summary> + public Yw.Geometry.CubicSpline2d CurrentCurveQP { get; set; } + + /// <summary> + /// 瑁呯疆鐐� + /// </summary> + public Yw.Geometry.Point2d EquipPoint { get; set; } + + } + +} diff --git a/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/04-variable-speed-view/PumpVariableSpeedViewChart.Designer.cs b/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/04-run-view/PumpRunViewChart.Designer.cs similarity index 87% rename from WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/04-variable-speed-view/PumpVariableSpeedViewChart.Designer.cs rename to WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/04-run-view/PumpRunViewChart.Designer.cs index 194ced6..b96fc0a 100644 --- a/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/04-variable-speed-view/PumpVariableSpeedViewChart.Designer.cs +++ b/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/04-run-view/PumpRunViewChart.Designer.cs @@ -1,6 +1,6 @@ 锘縩amespace Yw.WinFrmUI.Phart { - partial class PumpVariableSpeedViewChart + partial class PumpRunViewChart { /// <summary> /// Requipuired designer variable. @@ -29,11 +29,7 @@ private void InitializeComponent() { components = new System.ComponentModel.Container(); - DevExpress.XtraCharts.TextAnnotation textAnnotation1 = new DevExpress.XtraCharts.TextAnnotation(); - DevExpress.XtraCharts.ChartAnchorPoint chartAnchorPoint1 = new DevExpress.XtraCharts.ChartAnchorPoint(); - DevExpress.XtraCharts.RelativePosition relativePosition1 = new DevExpress.XtraCharts.RelativePosition(); DevExpress.XtraCharts.XYDiagram xyDiagram1 = new DevExpress.XtraCharts.XYDiagram(); - DevExpress.XtraCharts.ConstantLine constantLine1 = new DevExpress.XtraCharts.ConstantLine(); DevExpress.XtraCharts.LayoutDefinition layoutDefinition1 = new DevExpress.XtraCharts.LayoutDefinition(); DevExpress.XtraCharts.LayoutDefinition layoutDefinition2 = new DevExpress.XtraCharts.LayoutDefinition(); DevExpress.XtraCharts.LayoutDefinition layoutDefinition3 = new DevExpress.XtraCharts.LayoutDefinition(); @@ -46,7 +42,7 @@ DevExpress.XtraCharts.SplineSeriesView splineSeriesView2 = new DevExpress.XtraCharts.SplineSeriesView(); DevExpress.XtraCharts.Series series3 = new DevExpress.XtraCharts.Series(); DevExpress.XtraCharts.SplineSeriesView splineSeriesView3 = new DevExpress.XtraCharts.SplineSeriesView(); - System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(PumpVariableSpeedViewChart)); + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(PumpRunViewChart)); chartControl1 = new DevExpress.XtraCharts.ChartControl(); barBtnSetChartAxis = new DevExpress.XtraBars.BarButtonItem(); barCekCurveQEVisible = new DevExpress.XtraBars.BarCheckItem(); @@ -61,9 +57,7 @@ barDockControlRight = new DevExpress.XtraBars.BarDockControl(); bar1 = new DevExpress.XtraBars.Bar(); ((System.ComponentModel.ISupportInitialize)chartControl1).BeginInit(); - ((System.ComponentModel.ISupportInitialize)textAnnotation1).BeginInit(); ((System.ComponentModel.ISupportInitialize)xyDiagram1).BeginInit(); - ((System.ComponentModel.ISupportInitialize)constantLine1).BeginInit(); ((System.ComponentModel.ISupportInitialize)xyDiagramPane1).BeginInit(); ((System.ComponentModel.ISupportInitialize)secondaryAxisy1).BeginInit(); ((System.ComponentModel.ISupportInitialize)secondaryAxisy2).BeginInit(); @@ -78,31 +72,7 @@ // // chartControl1 // - chartAnchorPoint1.X = 951; - chartAnchorPoint1.Y = 30; - textAnnotation1.AnchorPoint = chartAnchorPoint1; - textAnnotation1.AnnotationID = 0; - textAnnotation1.AutoHeight = true; - textAnnotation1.AutoWidth = true; - textAnnotation1.BackColor = Color.FromArgb(255, 255, 255); - textAnnotation1.ConnectorStyle = DevExpress.XtraCharts.AnnotationConnectorStyle.None; - textAnnotation1.Name = "TextAnnoWorkPoint"; - relativePosition1.Angle = -131.51672853100234D; - relativePosition1.ConnectorLength = 81.467785044151043D; - textAnnotation1.ShapePosition = relativePosition1; - textAnnotation1.Text = "宸ヤ綔鐐�"; - textAnnotation1.TextColor = Color.FromArgb(0, 0, 0); - chartControl1.AnnotationRepository.AddRange(new DevExpress.XtraCharts.Annotation[] { textAnnotation1 }); chartControl1.BorderOptions.Visibility = DevExpress.Utils.DefaultBoolean.False; - constantLine1.AxisValueSerializable = "1"; - constantLine1.ConstantLineID = 0; - constantLine1.LineStyle.LineJoin = System.Drawing.Drawing2D.LineJoin.Miter; - constantLine1.LineStyle.Thickness = 2; - constantLine1.Name = "WorkPointLine"; - constantLine1.ShowInLegend = false; - constantLine1.Title.DXFont = new DevExpress.Drawing.DXFont("Tahoma", 8F); - constantLine1.Title.Text = "宸ヤ綔鐐�"; - xyDiagram1.AxisX.ConstantLines.AddRange(new DevExpress.XtraCharts.ConstantLine[] { constantLine1 }); xyDiagram1.AxisX.Title.Text = "娴侀噺 锛坢鲁/h锛�"; xyDiagram1.AxisX.Title.Visibility = DevExpress.Utils.DefaultBoolean.Default; xyDiagram1.AxisX.VisibleInPanesSerializable = "-1"; @@ -213,7 +183,7 @@ // barCekCurveEQVisible // barCekCurveEQVisible.BindableChecked = true; - barCekCurveEQVisible.Caption = "瑁呯疆绾�"; + barCekCurveEQVisible.Caption = "杩愯鐐�"; barCekCurveEQVisible.Checked = true; barCekCurveEQVisible.Id = 22; barCekCurveEQVisible.ImageOptions.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("barCekCurveEQVisible.ImageOptions.SvgImage"); @@ -310,8 +280,6 @@ Controls.Add(barDockControlTop); Name = "PumpVariableSpeedViewChart"; Size = new Size(1023, 857); - ((System.ComponentModel.ISupportInitialize)textAnnotation1).EndInit(); - ((System.ComponentModel.ISupportInitialize)constantLine1).EndInit(); ((System.ComponentModel.ISupportInitialize)xyDiagramPane1).EndInit(); ((System.ComponentModel.ISupportInitialize)secondaryAxisy1).EndInit(); ((System.ComponentModel.ISupportInitialize)secondaryAxisy2).EndInit(); diff --git a/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/04-variable-speed-view/PumpVariableSpeedViewChart.cs b/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/04-run-view/PumpRunViewChart.cs similarity index 69% rename from WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/04-variable-speed-view/PumpVariableSpeedViewChart.cs rename to WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/04-run-view/PumpRunViewChart.cs index 9555024..8d4adc2 100644 --- a/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/04-variable-speed-view/PumpVariableSpeedViewChart.cs +++ b/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/04-run-view/PumpRunViewChart.cs @@ -5,11 +5,11 @@ namespace Yw.WinFrmUI.Phart { /// <summary> - /// 娉靛彉閫熻鍥惧浘琛� + /// 娉佃繍琛岃鍥惧浘琛� /// </summary> - public partial class PumpVariableSpeedViewChart : DevExpress.XtraEditors.XtraUserControl + public partial class PumpRunViewChart : DevExpress.XtraEditors.XtraUserControl { - public PumpVariableSpeedViewChart() + public PumpRunViewChart() { InitializeComponent(); InitialChart(); @@ -17,40 +17,36 @@ } #region Private Variable - + private readonly string _tag_qh = "QH", _tag_qe = "QE", _tag_qp = "QP"; private XYDiagram _diagram; - private XYDiagramDefaultPane _default_pane; + private XYDiagramDefaultPane _default_pane; private XYDiagramPane _bottom_pane; private AxisX _axis_x_flow; private AxisY _axis_y_head; - private SecondaryAxisY _axis_y_eff, _axis_y_power; - + private SecondaryAxisY _axis_y_eff, _axis_y_power; + private PumpCoordinate _coordinate; private bool _qe_visible = true; private bool _qp_visible = true; - private bool _equip_visible = true; - private Yw.Geometry.CubicSpline2d _equip_line = null; - private Yw.Geometry.Point2d _equip_pt = null; - private List<Tuple<string, Yw.Geometry.Point2d, Yw.Geometry.Point2d, Yw.Geometry.Point2d>> _equip_sect_pt_list; + private bool _run_visible = true; private bool _initial_data = false; - private PumpVariableSpeedViewViewModel _vm = null; + private PumpRunViewViewModel _vm = null; #endregion - + #region Public Evnet /// <summary> /// 鍧愭爣鍙樻崲浜嬩欢 /// </summary> public event Action<PumpCoordinate> CoordinateChangedEvent = null; - - + #endregion #region Initial @@ -64,11 +60,11 @@ this.chartControl1.Legend.Direction = DevExpress.XtraCharts.LegendDirection.TopToBottom; _diagram = (XYDiagram)this.chartControl1.Diagram; - _default_pane = _diagram.DefaultPane; + _default_pane = _diagram.DefaultPane; _bottom_pane = (XYDiagramPane)_diagram.FindPaneByName("BottomPanel"); _axis_x_flow = _diagram.AxisX; - _axis_x_flow.SetAxisXQDisplay(); + _axis_x_flow.SetAxisXQDisplay(); _axis_y_head = _diagram.AxisY; _axis_y_head.SetAxisYQHDisplay(); _axis_y_eff = _diagram.SecondaryAxesY.GetAxisByName("AxisYQE"); @@ -77,7 +73,7 @@ _axis_y_power = _diagram.SecondaryAxesY.GetAxisByName("AxisYQP"); _axis_y_power.SetSecondaryAxisYQPDisplay(); - + this.chartControl1.SetChartMonoColorDisplay(); _axis_x_flow.Visibility = DefaultBoolean.False; _axis_x_flow.GridLines.Visible = false; @@ -87,7 +83,7 @@ _axis_y_eff.GridLines.Visible = false; _axis_y_power.Visibility = DefaultBoolean.False; _axis_y_power.GridLines.Visible = false; - + this.chartControl1.CustomPaint += ChartControl1_CustomPaint; } @@ -99,68 +95,34 @@ if (_vm == null) return; - if (_equip_line != null && _equip_sect_pt_list != null && _equip_sect_pt_list.Any() && _equip_visible) + if (_vm.Items!=null&&_vm.Items.Any()&& _run_visible) { using Pen pen = new(Color.Black, 2); pen.DashStyle = System.Drawing.Drawing2D.DashStyle.DashDotDot; - foreach (var tuple in _equip_sect_pt_list) + foreach (var vm in _vm.Items) { - DrawEquipPoint(dxArgs.Cache, pen, tuple.Item2, tuple.Item3, tuple.Item4); + var color = vm.Color; + var flow = vm.Q; + var head = vm.H; + var eff = vm.E; + var power = vm.P; + DrawWorkPoint(dxArgs.Cache, color, _axis_y_head, flow, head); + if (eff.HasValue && _qe_visible) + DrawWorkPoint(dxArgs.Cache, color, _axis_y_eff, flow, eff.Value); + if (power.HasValue && _qp_visible) + DrawWorkPoint(dxArgs.Cache, color, _axis_y_power, flow, power.Value); } - - DrawEquipLine(dxArgs.Cache, pen, _equip_line); + } } + - private void DrawEquipLine(GraphicsCache cache, Pen pen, Yw.Geometry.CubicSpline2d qh) + private void DrawWorkPoint(GraphicsCache cache, Color color, AxisYBase axis_y, double x, double y) { - if (qh == null) - return; - var pt_list = qh.GetPointList().ToArray(); - var pt_f_list = new List<PointF>(); - foreach (var pt in pt_list) - { - var x = pt.X; - var y = pt.Y; - var c_pt = _diagram.DiagramToPoint(x, y, _axis_x_flow, _axis_y_head); - pt_f_list.Add(new PointF(c_pt.Point.X, c_pt.Point.Y)); - } - - using var path = new System.Drawing.Drawing2D.GraphicsPath(); - path.AddCurve(pt_f_list.ToArray()); - cache.DrawPath(pen, path); + var dg_pt = _diagram.DiagramToPoint(x, y, _axis_x_flow, axis_y); + cache.FillEllipse((int)(dg_pt.Point.X - 5), (int)(dg_pt.Point.Y - 5), 10, 10, color); } - - private void DrawEquipPoint(GraphicsCache cache, Pen pen, Yw.Geometry.Point2d qh_sect_pt, Yw.Geometry.Point2d qe_sect_pt, Yw.Geometry.Point2d qp_sect_pt) - { - if (qh_sect_pt == null) - return; - - var offset_size = 10; - var qh_x = qh_sect_pt.X; - var qh_pt = _diagram.DiagramToPoint(qh_sect_pt.X, qh_sect_pt.Y, _axis_x_flow, _axis_y_head); - - var qh_pt_x = qh_pt.Point.X; - var qh_pt_y = qh_pt.Point.Y; - cache.DrawLine(pen, new Point(qh_pt_x, qh_pt_y - offset_size), new Point(qh_pt_x, qh_pt_y + offset_size)); - - if (qe_sect_pt != null && _qe_visible) - { - var qe_pt = _diagram.DiagramToPoint(qe_sect_pt.X, qe_sect_pt.Y, _axis_x_flow, _axis_y_eff); - var qe_pt_x = qe_pt.Point.X; - var qe_pt_y = qe_pt.Point.Y; - cache.DrawLine(pen, new Point(qe_pt_x, qe_pt_y - offset_size), new Point(qe_pt_x, qe_pt_y + offset_size)); - } - if (qp_sect_pt != null && _qp_visible) - { - var qp_pt = _diagram.DiagramToPoint(qp_sect_pt.X, qp_sect_pt.Y, _axis_x_flow, _axis_y_power); - var qp_pt_x = qp_pt.Point.X; - var qp_pt_y = qp_pt.Point.Y; - cache.DrawLine(pen, new Point(qp_pt_x, qp_pt_y - offset_size), new Point(qp_pt_x, qp_pt_y + offset_size)); - } - - } - + /// <summary> /// 鍒濆鍖栧浘琛ㄦ暟鎹� /// </summary> @@ -179,83 +141,14 @@ /// <summary> /// 缁戝畾鏁版嵁 /// </summary> - public void SetBindingData(PumpVariableSpeedViewViewModel vm) + public void SetBindingData(PumpRunViewViewModel vm) { _vm = vm; _initial_data = vm != null; UpdateChart(true); } - /// <summary> - /// 璁剧疆璁捐鐐� - /// </summary> - public void SetDesignPoint(double x, double y, double? start_head = null) - { - _equip_pt = new Geometry.Point2d(x, y); - _equip_line = null; - _equip_sect_pt_list = null; - if (_vm == null) - { - return; - } - - start_head ??= _coordinate.DispMinH(); - - var equip_line = Yw.Geometry.EquipCurveHelper.CalcEquipCurve(_vm.CurveQH, _equip_pt, start_head.Value, out Yw.Geometry.Point2d sect_pt); - if (equip_line == null || sect_pt == null) - return; - _equip_line = equip_line; - _equip_sect_pt_list = new List<Tuple<string, Geometry.Point2d, Geometry.Point2d, Geometry.Point2d>>(); - - Yw.Geometry.Point2d sect_pt_eff=null, sect_pt_power = null; - if (_vm.CurveQE != null) - { - var eff = _vm.CurveQE.GetPointY(sect_pt.X); - sect_pt_eff = new Geometry.Point2d(sect_pt.X, eff); - } - if (_vm.CurveQP != null) - { - var power = _vm.CurveQP.GetPointY(sect_pt.X); - sect_pt_power = new Geometry.Point2d(sect_pt.X, power); - } - - _equip_sect_pt_list.Add(new(_vm.Id, sect_pt,sect_pt_eff, sect_pt_power)); - foreach (var vm in _vm.Items) - { - double flow = 0, head = 0; - double? eff = null, power = null; - - var pump_equip_line = Yw.Geometry.EquipCurveHelper.CalcEquipCurve(vm.CurveQH, _equip_pt, start_head.Value, out Yw.Geometry.Point2d pump_sect_pt); - if (pump_equip_line == null || pump_sect_pt == null) - return; - Yw.Geometry.Point2d pump_sect_pt_eff = null, pump_sect_pt_power = null; - - flow = pump_sect_pt.X; - head = vm.CurveQH.GetPointYUnlimited(flow); - if (vm.CurveQP != null) - { - power = vm.CurveQP.GetPointYUnlimited(flow); - eff = PumpCalcHelper.CalculateE(flow, head, power.Value); - - pump_sect_pt_eff = new Geometry.Point2d(flow, eff.Value); - pump_sect_pt_power = new Geometry.Point2d(flow, power.Value); - } - else if (vm.CurveQE != null) - { - eff = vm.CurveQE.GetPointYUnlimited(flow); - power = PumpCalcHelper.CalculateP(flow, head, eff.Value); - - pump_sect_pt_eff = new Geometry.Point2d(flow, eff.Value); - pump_sect_pt_power = new Geometry.Point2d(flow, power.Value); - } - - _equip_sect_pt_list.Add(new(vm.Id, new Geometry.Point2d(flow, head), pump_sect_pt_eff, pump_sect_pt_power)); - } - - UpdateChart(true); - - } - + /// <summary> /// 娓呯┖鏇茬嚎 /// </summary> @@ -279,7 +172,7 @@ CalcSeries(); - CalcChartAxis(); + CalcChartAxis(); } #endregion @@ -416,11 +309,9 @@ _axis_y_eff.GridLines.Visible = false; _axis_y_power.Visibility = DefaultBoolean.False; _axis_y_power.GridLines.Visible = false; - + _bottom_pane.Visibility = ChartElementVisibility.Hidden; - - _bottom_pane.Visibility = _qp_visible ? ChartElementVisibility.Visible : ChartElementVisibility.Hidden; //璁$畻鍒诲害 Q @@ -471,7 +362,7 @@ } //鍔熺巼 - if (_max_power > _min_power) + if (_max_power > _min_power && _qp_visible) { //璁$畻鍒诲害 var labels = new List<CustomAxisLabel>(); @@ -511,7 +402,7 @@ var grid_count_power = _coordinate.EndLineNoP - _coordinate.StartLineNoP; var min_axis_power = _coordinate.CoordMinP + _coordinate.StartLineNoP * _coordinate.CoordSpaceP; var max_axis_power = min_axis_power + grid_count_power * _coordinate.CoordSpaceP; - _axis_y_power.SetAxisRange(min_axis_power, max_axis_power); + _axis_y_power.SetAxisRange(min_axis_power, max_axis_power); } /// <summary> @@ -521,36 +412,174 @@ { this.chartControl1.BeginInit(); this.chartControl1.Series.Clear(); - - var annotation_count = this.chartControl1.AnnotationRepository.Count; - for (int i = annotation_count - 1; i > 0; i--) - { - if (i == 0) - break; - this.chartControl1.AnnotationRepository.RemoveAt(i); - } - + this.chartControl1.AnnotationRepository.Clear(); this.chartControl1.Legend.CustomItems.Clear(); + if (_vm != null) { - CreateLineSeries(_vm.Id, _vm.Name, _vm.CurveQH, _vm.CurveQE, _vm.CurveQP); - if (_vm.Items != null && _vm.Items.Any()) + if (_vm.Items == null || !_vm.Items.Any()) { - foreach (var vm in _vm.Items) + CreateLineSeries(_vm.Id, _vm.Color, _vm.Name, _vm.CurveQH, _vm.CurveQE, _vm.CurveQP); + } + else + { + if (_vm.Items != null && _vm.Items.Any()) { - CreateLineSeries(vm.Id, vm.Name, vm.CurveQH, vm.CurveQE, vm.CurveQP); + if (_vm.Items[0].Hz != 50) + CreateLineSeries(_vm.Id, _vm.Color, _vm.Name, _vm.CurveQH, _vm.CurveQE, _vm.CurveQP); + for (int i = 0; i < _vm.Items.Count; i++) + { + var vm = _vm.Items[i]; + CreateCurrentLineSeries(vm.Id, vm.Color, vm.CurveName, vm.CurveQH, vm.CurveQE, vm.CurveQP); + } } - } + } } this.chartControl1.EndInit(); } - 銆� + /// <summary> /// 鍒涘缓绾跨郴鍒� /// </summary> - private void CreateLineSeries(string id, string curve_name, Yw.Geometry.CubicSpline2d qh, Yw.Geometry.CubicSpline2d qe, Yw.Geometry.CubicSpline2d qp) + private void CreateLineSeries(string id, Color color, string curve_name, Yw.Geometry.CubicSpline2d qh, Yw.Geometry.CubicSpline2d qe, Yw.Geometry.CubicSpline2d qp) + { + var series_qh = new DevExpress.XtraCharts.Series(); + series_qh.ArgumentScaleType = DevExpress.XtraCharts.ScaleType.Numerical; + series_qh.LabelsVisibility = DevExpress.Utils.DefaultBoolean.False; + series_qh.Name = _tag_qh + id; + series_qh.ShowInLegend = false; + series_qh.CrosshairEnabled = DefaultBoolean.False; + series_qh.LegendTextPattern = curve_name; + + var series_qh_view = new DevExpress.XtraCharts.LineSeriesView(); + series_qh_view.LineStyle.Thickness = 2; + series_qh_view.LineStyle.DashStyle = DashStyle.Dash; + series_qh_view.LineStyle.LineJoin = System.Drawing.Drawing2D.LineJoin.MiterClipped; + series_qh_view.Color = color; + series_qh_view.EnableAntialiasing = DefaultBoolean.True; + + series_qh.SeriesPointsSorting = SortingMode.None; + series_qh.SeriesPointsSortingKey = SeriesPointKey.Value_1; + series_qh.View = series_qh_view; + series_qh.Visible = true; + + var pt_qh_list = qh.GetPointList(100); + for (int i = 0; i < pt_qh_list.Count; i++) + { + series_qh.Points.Add(new SeriesPoint(pt_qh_list[i].X, new double[] { pt_qh_list[i].Y })); + } + + var point_qh = pt_qh_list[pt_qh_list.Count - 1]; + var anchor_qh_pt = new DevExpress.XtraCharts.PaneAnchorPoint(); + anchor_qh_pt.Pane = _default_pane; + anchor_qh_pt.AxisXCoordinate.AxisValue = point_qh.X.ToString(); + anchor_qh_pt.AxisYCoordinate.AxisValue = point_qh.Y.ToString(); + + var position_qh = new DevExpress.XtraCharts.RelativePosition(); + position_qh.Angle = -50; + position_qh.ConnectorLength = 10; + + var txt_qh = new TextAnnotation(); + txt_qh.Border.Visibility = DefaultBoolean.False; + txt_qh.AnchorPoint = anchor_qh_pt; + txt_qh.AutoHeight = true; + txt_qh.AutoWidth = true; + txt_qh.BackColor = System.Drawing.Color.Transparent; + txt_qh.Border.Color = color; + txt_qh.ConnectorStyle = DevExpress.XtraCharts.AnnotationConnectorStyle.Line; + txt_qh.DXFont = PumpChartDisplay.AnnoFontQH; + txt_qh.Name = _tag_qh + id; + txt_qh.Padding.Bottom = 1; + txt_qh.Padding.Left = 1; + txt_qh.Padding.Right = 1; + txt_qh.Padding.Top = 1; + txt_qh.RuntimeAnchoring = false; + txt_qh.RuntimeMoving = true; + txt_qh.RuntimeResizing = false; + txt_qh.RuntimeRotation = false; + txt_qh.Text = curve_name; + txt_qh.TextColor = color; + txt_qh.ShapePosition = position_qh; + txt_qh.Visible = true; + this.chartControl1.AnnotationRepository.Add(txt_qh); + this.chartControl1.Series.Add(series_qh); + + if (qe != null) + { + var series_qe = new DevExpress.XtraCharts.Series(); + series_qe.ArgumentScaleType = DevExpress.XtraCharts.ScaleType.Numerical; + series_qe.LabelsVisibility = DevExpress.Utils.DefaultBoolean.False; + series_qe.Name = _tag_qe + id; + series_qe.ShowInLegend = false; + series_qe.CrosshairEnabled = DefaultBoolean.False; + series_qe.Tag = id; + + + var series_qe_view = new DevExpress.XtraCharts.LineSeriesView(); + series_qe_view.LineStyle.Thickness = 2; + series_qe_view.LineStyle.DashStyle = DashStyle.Dash; + series_qe_view.LineStyle.LineJoin = System.Drawing.Drawing2D.LineJoin.MiterClipped; + series_qe_view.Color = color; + series_qe_view.AxisY = _axis_y_eff; + series_qe_view.Pane = _default_pane; + series_qe_view.EnableAntialiasing = DefaultBoolean.True; + + series_qe.SeriesPointsSorting = SortingMode.None; + series_qe.SeriesPointsSortingKey = SeriesPointKey.Value_1; + series_qe.View = series_qe_view; + series_qe.Visible = _qe_visible; + + var pt_qe_list = qe.GetPointList(100); + for (int i = 0; i < pt_qe_list.Count; i++) + { + series_qe.Points.Add(new SeriesPoint(pt_qe_list[i].X, new double[] { pt_qe_list[i].Y })); + } + + this.chartControl1.Series.Add(series_qe); + } + + if (qp != null) + { + var series_qp = new DevExpress.XtraCharts.Series(); + series_qp.ArgumentScaleType = DevExpress.XtraCharts.ScaleType.Numerical; + series_qp.LabelsVisibility = DevExpress.Utils.DefaultBoolean.False; + series_qp.Name = _tag_qp + id; + series_qp.ShowInLegend = false; + series_qp.CrosshairEnabled = DefaultBoolean.False; + series_qp.Tag = id; + + var series_qp_view = new DevExpress.XtraCharts.LineSeriesView(); + series_qp_view.LineStyle.Thickness = 2; + series_qp_view.LineStyle.DashStyle = DashStyle.Dash; + series_qp_view.LineStyle.LineJoin = System.Drawing.Drawing2D.LineJoin.MiterClipped; + series_qp_view.Color = color; + series_qp_view.AxisY = _axis_y_power; + series_qp_view.Pane = _bottom_pane; + series_qp_view.EnableAntialiasing = DefaultBoolean.True; + + series_qp.SeriesPointsSorting = SortingMode.None; + series_qp.SeriesPointsSortingKey = SeriesPointKey.Value_1; + series_qp.View = series_qp_view; + series_qp.Visible = _qp_visible; + + var pt_qp_list = qp.GetPointList(100); + for (int i = 0; i < pt_qp_list.Count; i++) + { + series_qp.Points.Add(new SeriesPoint(pt_qp_list[i].X, new double[] { pt_qp_list[i].Y })); + } + + this.chartControl1.Series.Add(series_qp); + } + + } + + + /// <summary> + /// 鍒涘缓绾跨郴鍒� + /// </summary> + private void CreateCurrentLineSeries(string id, Color color, string curve_name, Yw.Geometry.CubicSpline2d qh, Yw.Geometry.CubicSpline2d qe, Yw.Geometry.CubicSpline2d qp) { var series_qh = new DevExpress.XtraCharts.Series(); series_qh.ArgumentScaleType = DevExpress.XtraCharts.ScaleType.Numerical; @@ -563,7 +592,7 @@ var series_qh_view = new DevExpress.XtraCharts.SplineSeriesView(); series_qh_view.LineStyle.Thickness = 2; - //series_qh_view.Color = vm.Color; + series_qh_view.Color = color; series_qh_view.EnableAntialiasing = DefaultBoolean.True; series_qh_view.LineTensionPercent = 50; @@ -572,7 +601,7 @@ series_qh.View = series_qh_view; series_qh.Visible = true; - var pt_qh_list = qh.GetPointList(12); + var pt_qh_list = qh.GetPointList(100); for (int i = 0; i < pt_qh_list.Count; i++) { series_qh.Points.Add(new SeriesPoint(pt_qh_list[i].X, new double[] { pt_qh_list[i].Y })); @@ -594,7 +623,7 @@ txt_qh.AutoHeight = true; txt_qh.AutoWidth = true; txt_qh.BackColor = System.Drawing.Color.Transparent; - //txt_qh.Border.Color = vm.Color; + txt_qh.Border.Color = color; txt_qh.ConnectorStyle = DevExpress.XtraCharts.AnnotationConnectorStyle.Line; txt_qh.DXFont = PumpChartDisplay.AnnoFontQH; txt_qh.Name = _tag_qh + id; @@ -607,7 +636,7 @@ txt_qh.RuntimeResizing = false; txt_qh.RuntimeRotation = false; txt_qh.Text = curve_name; - //txt_qh.TextColor = vm.Color; + txt_qh.TextColor = color; txt_qh.ShapePosition = position_qh; txt_qh.Visible = true; this.chartControl1.AnnotationRepository.Add(txt_qh); @@ -625,7 +654,7 @@ var series_qe_view = new DevExpress.XtraCharts.SplineSeriesView(); series_qe_view.LineStyle.Thickness = 2; - //series_qe_view.Color = vm.Color; + series_qe_view.Color = color; series_qe_view.AxisY = _axis_y_eff; series_qe_view.Pane = _default_pane; series_qe_view.EnableAntialiasing = DefaultBoolean.True; @@ -636,7 +665,7 @@ series_qe.View = series_qe_view; series_qe.Visible = _qe_visible; - var pt_qe_list = qe.GetPointList(12); + var pt_qe_list = qe.GetPointList(100); for (int i = 0; i < pt_qe_list.Count; i++) { series_qe.Points.Add(new SeriesPoint(pt_qe_list[i].X, new double[] { pt_qe_list[i].Y })); @@ -657,7 +686,7 @@ var series_qp_view = new DevExpress.XtraCharts.SplineSeriesView(); series_qp_view.LineStyle.Thickness = 2; - //series_qp_view.Color = vm.Color; + series_qp_view.Color = color; series_qp_view.AxisY = _axis_y_power; series_qp_view.Pane = _bottom_pane; series_qp_view.EnableAntialiasing = DefaultBoolean.True; @@ -668,33 +697,32 @@ series_qp.View = series_qp_view; series_qp.Visible = _qp_visible; - var pt_qp_list = qp.GetPointList(12); + var pt_qp_list = qp.GetPointList(100); for (int i = 0; i < pt_qp_list.Count; i++) { series_qp.Points.Add(new SeriesPoint(pt_qp_list[i].X, new double[] { pt_qp_list[i].Y })); } this.chartControl1.Series.Add(series_qp); - } + } + } - + #endregion - - - + #region Right Click Menu #region Event - + private void barBtnSetChartAxis_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { SetChartAxis(); - } - + } + private void barCekCurveQEVisible_CheckedChanged(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { - _qe_visible = this.barCekCurveQEVisible.Checked; + _qe_visible = this.barCekCurveQEVisible.Checked; UpdateChart(); } @@ -702,17 +730,17 @@ { _bottom_pane.Visibility = _bottom_pane.Visibility == ChartElementVisibility.Visible ? ChartElementVisibility.Hidden : ChartElementVisibility.Visible; _qp_visible = _bottom_pane.Visibility == ChartElementVisibility.Visible ? true : false; - + UpdateChart(); } private void barCekCurveEQVisible_CheckedChanged(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { - _equip_visible = this.barCekCurveEQVisible.Checked; + _run_visible = this.barCekCurveEQVisible.Checked; } #endregion - - + + /// <summary> /// 璁剧疆鍧愭爣杞� /// </summary> @@ -731,8 +759,8 @@ #endregion - - + + } diff --git a/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/04-variable-speed-view/PumpVariableSpeedViewChart.resx b/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/04-run-view/PumpRunViewChart.resx similarity index 100% rename from WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/04-variable-speed-view/PumpVariableSpeedViewChart.resx rename to WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/04-run-view/PumpRunViewChart.resx diff --git a/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/04-variable-speed-view/PumpVariableSpeedViewItemViewModel.cs b/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/04-run-view/PumpRunViewItemViewModel.cs similarity index 81% rename from WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/04-variable-speed-view/PumpVariableSpeedViewItemViewModel.cs rename to WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/04-run-view/PumpRunViewItemViewModel.cs index 6dd156b..ac01990 100644 --- a/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/04-variable-speed-view/PumpVariableSpeedViewItemViewModel.cs +++ b/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/04-run-view/PumpRunViewItemViewModel.cs @@ -1,16 +1,17 @@ 锘縩amespace Yw.WinFrmUI.Phart { /// <summary> - /// 娉靛彉閫� Item ViewModel + /// 娉佃繍琛岃鍥� Item ViewModel /// </summary> - public class PumpVariableSpeedViewItemViewModel + public class PumpRunViewItemViewModel { - public PumpVariableSpeedViewItemViewModel() { } - public PumpVariableSpeedViewItemViewModel(PumpVariableSpeedViewItemViewModel rhs) + public PumpRunViewItemViewModel() { } + public PumpRunViewItemViewModel(PumpRunViewItemViewModel rhs) { this.Id = rhs.Id; this.Name = rhs.Name; this.CurveName = rhs.CurveName; + this.Color = rhs.Color; this.Q = rhs.Q; this.H = rhs.H; this.P = rhs.P; @@ -19,7 +20,7 @@ this.CurveQH = rhs.CurveQH; this.CurveQE = rhs.CurveQE; - this.CurveQP = rhs.CurveQP; + this.CurveQP = rhs.CurveQP; } /// <summary> @@ -36,6 +37,11 @@ /// 鍚嶇О /// </summary> public string CurveName { get; set; } + + /// <summary> + /// 棰滆壊 + /// </summary> + public Color Color { get; set; } /// <summary> /// 娴侀噺 @@ -81,6 +87,8 @@ /// 娴侀噺鍔熺巼绾� /// </summary> public Yw.Geometry.CubicSpline2d CurveQP { get; set; } + + } diff --git a/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/04-variable-speed-view/PumpVariableSpeedViewViewModel.cs b/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/04-run-view/PumpRunViewViewModel.cs similarity index 83% rename from WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/04-variable-speed-view/PumpVariableSpeedViewViewModel.cs rename to WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/04-run-view/PumpRunViewViewModel.cs index 73c4457..6b65813 100644 --- a/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/04-variable-speed-view/PumpVariableSpeedViewViewModel.cs +++ b/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/04-run-view/PumpRunViewViewModel.cs @@ -1,16 +1,17 @@ 锘縩amespace Yw.WinFrmUI.Phart { /// <summary> - /// 娉靛彉閫烿iewModel + /// 娉佃繍琛岃鍥綱iewModel /// </summary> - public class PumpVariableSpeedViewViewModel + public class PumpRunViewViewModel { - public PumpVariableSpeedViewViewModel() { } - public PumpVariableSpeedViewViewModel(PumpVariableSpeedViewViewModel rhs) + public PumpRunViewViewModel() { } + public PumpRunViewViewModel(PumpRunViewViewModel rhs) { this.Id = rhs.Id; this.Name = rhs.Name; this.CurveName = rhs.CurveName; + this.Color= rhs.Color; this.RatedQ = rhs.RatedQ; this.RatedH = rhs.RatedH; this.RatedP = rhs.RatedP; @@ -38,6 +39,11 @@ /// 鍚嶇О /// </summary> public string CurveName { get; set; } + + /// <summary> + /// 棰滆壊 + /// </summary> + public Color Color { get; set; } /// <summary> /// 棰濆畾娴侀噺 @@ -83,8 +89,7 @@ /// <summary> /// 鍙橀�熼」鍒楄〃 /// </summary> - public List<PumpVariableSpeedViewItemViewModel> Items { get; set; } - + public List<PumpRunViewItemViewModel> Items { get; set; } } } diff --git a/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/09-edit/PumpEditChart.cs b/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/09-edit/PumpEditChart.cs index dfa81f2..bafc46f 100644 --- a/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/09-edit/PumpEditChart.cs +++ b/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/09-edit/PumpEditChart.cs @@ -172,13 +172,13 @@ List<Yw.Geometry.Point2d> qh_pt_list, qe_pt_list = null, qp_pt_list = null; - qh_pt_list = qh.GetPointList(12); + qh_pt_list = qh.GetPointList(100); if (qe != null) - qe_pt_list = qe.GetPointList(12); + qe_pt_list = qe.GetPointList(100); if (qp != null) - qp_pt_list = qp.GetPointList(12); + qp_pt_list = qp.GetPointList(100); SetBindingData(qh_pt_list, qe_pt_list, qp_pt_list, qh_pt_list, qe_pt_list, qp_pt_list, coordinate_paras, calc_coordinate); diff --git a/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/09-edit/PumpEditChartCtrl.cs b/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/09-edit/PumpEditChartCtrl.cs index 9b84283..b43eafa 100644 --- a/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/09-edit/PumpEditChartCtrl.cs +++ b/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/01-single/09-edit/PumpEditChartCtrl.cs @@ -52,13 +52,13 @@ return; List<Yw.Geometry.Point2d> qh_pt_list, qe_pt_list = null, qp_pt_list = null; - qh_pt_list = qh.GetPointList(12); + qh_pt_list = qh.GetPointList(100); if (qe != null) - qe_pt_list = qe.GetPointList(12); + qe_pt_list = qe.GetPointList(100); if (qp != null) - qp_pt_list = qp.GetPointList(12); + qp_pt_list = qp.GetPointList(100); SetBindingData(qh_pt_list, qe_pt_list, qp_pt_list, qh_pt_list, qe_pt_list, qp_pt_list); diff --git a/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/02-multi/01-parallel/PumpParallelChart.cs b/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/02-multi/01-parallel/PumpParallelChart.cs index 62178c3..a306f38 100644 --- a/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/02-multi/01-parallel/PumpParallelChart.cs +++ b/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/02-multi/01-parallel/PumpParallelChart.cs @@ -198,7 +198,7 @@ private void DrawExpandLine(GraphicsCache cache, Pen pen, AxisYBase axis_y, Yw.Geometry.CubicSpline2d line, double x_max) { - var pt_list = line.GetPointList(12).ToList(); + var pt_list = line.GetPointList(100).ToList(); pt_list = pt_list?.Where(x => x.X > x_max).ToList(); if (pt_list == null || !pt_list.Any()) return; @@ -584,7 +584,7 @@ } //鍔熺巼 - if (_max_power > _min_power) + if (_max_power > _min_power && _qp_visible) { //璁$畻鍒诲害 var labels = new List<CustomAxisLabel>(); @@ -851,7 +851,7 @@ series_qh.View = series_qh_view; series_qh.Visible = true; - var pt_qh_list = vm.CurrentCurveQH.GetPointList(12); + var pt_qh_list = vm.CurrentCurveQH.GetPointList(100); for (int i = 0; i < pt_qh_list.Count; i++) { series_qh.Points.Add(new SeriesPoint(pt_qh_list[i].X, new double[] { pt_qh_list[i].Y })); @@ -915,7 +915,7 @@ series_qe.View = series_qe_view; series_qe.Visible = _qe_visible; - var pt_qe_list = vm.CurrentCurveQE.GetPointList(12); + var pt_qe_list = vm.CurrentCurveQE.GetPointList(100); for (int i = 0; i < pt_qe_list.Count; i++) { series_qe.Points.Add(new SeriesPoint(pt_qe_list[i].X, new double[] { pt_qe_list[i].Y })); @@ -947,7 +947,7 @@ series_qp.View = series_qp_view; series_qp.Visible = _qp_visible; - var pt_qp_list = vm.CurrentCurveQP.GetPointList(12); + var pt_qp_list = vm.CurrentCurveQP.GetPointList(100); for (int i = 0; i < pt_qp_list.Count; i++) { series_qp.Points.Add(new SeriesPoint(pt_qp_list[i].X, new double[] { pt_qp_list[i].Y })); diff --git a/WinFrmUI/Yw.WinFrmUI.Phart.Core/02-valve/01-view/ValveViewChart.cs b/WinFrmUI/Yw.WinFrmUI.Phart.Core/02-valve/01-view/ValveViewChart.cs index d7463d7..33cdd96 100644 --- a/WinFrmUI/Yw.WinFrmUI.Phart.Core/02-valve/01-view/ValveViewChart.cs +++ b/WinFrmUI/Yw.WinFrmUI.Phart.Core/02-valve/01-view/ValveViewChart.cs @@ -169,7 +169,7 @@ return; } List<Yw.Geometry.Point2d> pt_ql_list; - pt_ql_list = cubic_spline_ql.GetPointList(12); + pt_ql_list = cubic_spline_ql.GetPointList(100); SetBindingData(cubic_spline_ql, pt_ql_list, null, coordinate_paras, calc_coordinate); } diff --git a/WinFrmUI/Yw.WinFrmUI.Phart.Core/02-valve/02-edit/ValveEditChart.cs b/WinFrmUI/Yw.WinFrmUI.Phart.Core/02-valve/02-edit/ValveEditChart.cs index 6826fbd..bca6cbb 100644 --- a/WinFrmUI/Yw.WinFrmUI.Phart.Core/02-valve/02-edit/ValveEditChart.cs +++ b/WinFrmUI/Yw.WinFrmUI.Phart.Core/02-valve/02-edit/ValveEditChart.cs @@ -129,7 +129,7 @@ List<Yw.Geometry.Point2d> pt_ql_list; - pt_ql_list = cubic_spline_ql.GetPointList(12); + pt_ql_list = cubic_spline_ql.GetPointList(100); SetBindingData(pt_ql_list, pt_ql_list, coordinate_paras, calc_coordinate); } diff --git a/WinFrmUI/Yw.WinFrmUI.Phart.Core/02-valve/02-edit/ValveEditCtrl.cs b/WinFrmUI/Yw.WinFrmUI.Phart.Core/02-valve/02-edit/ValveEditCtrl.cs index 593948b..a92511f 100644 --- a/WinFrmUI/Yw.WinFrmUI.Phart.Core/02-valve/02-edit/ValveEditCtrl.cs +++ b/WinFrmUI/Yw.WinFrmUI.Phart.Core/02-valve/02-edit/ValveEditCtrl.cs @@ -42,7 +42,7 @@ return; List<Yw.Geometry.Point2d> pt_ql_list; - pt_ql_list = cubic_spline_ql.GetPointList(12); + pt_ql_list = cubic_spline_ql.GetPointList(100); SetBindingData(pt_ql_list, pt_ql_list); } diff --git a/WinFrmUI/Yw.WinFrmUI.Phart.Core/Yw.WinFrmUI.Phart.Core.csproj b/WinFrmUI/Yw.WinFrmUI.Phart.Core/Yw.WinFrmUI.Phart.Core.csproj index 5c78050..a3e2466 100644 --- a/WinFrmUI/Yw.WinFrmUI.Phart.Core/Yw.WinFrmUI.Phart.Core.csproj +++ b/WinFrmUI/Yw.WinFrmUI.Phart.Core/Yw.WinFrmUI.Phart.Core.csproj @@ -31,6 +31,8 @@ </ItemGroup> <ItemGroup> + <Compile Remove="01-pump\01-single\03-variable-speed\PumpVariableSpeedViewItemViewModel.cs" /> + <Compile Remove="01-pump\01-single\03-variable-speed\PumpVariableSpeedViewModel.cs" /> <Compile Remove="Title - 澶嶅埗.cs" /> </ItemGroup> diff --git a/WinFrmUI/Yw.WinFrmUI.Phart.Core/Yw.WinFrmUI.Phart.Core.csproj.user b/WinFrmUI/Yw.WinFrmUI.Phart.Core/Yw.WinFrmUI.Phart.Core.csproj.user index 49db179..8f72cdc 100644 --- a/WinFrmUI/Yw.WinFrmUI.Phart.Core/Yw.WinFrmUI.Phart.Core.csproj.user +++ b/WinFrmUI/Yw.WinFrmUI.Phart.Core/Yw.WinFrmUI.Phart.Core.csproj.user @@ -44,7 +44,7 @@ <Compile Update="01-pump\01-single\02-operation\PumpOperationChart.cs"> <SubType>UserControl</SubType> </Compile> - <Compile Update="01-pump\01-single\04-variable-speed-view\PumpVariableSpeedViewChart.cs"> + <Compile Update="01-pump\01-single\04-run-view\PumpRunViewChart.cs"> <SubType>UserControl</SubType> </Compile> <Compile Update="01-pump\01-single\09-edit\InputXYDlg.cs"> -- Gitblit v1.9.3