From 8b3c150ccc930e334f787f85db75784a54f08b0f Mon Sep 17 00:00:00 2001 From: Shuxia Ning <NingShuxia0927@outlook.com> Date: 星期二, 15 十月 2024 14:32:25 +0800 Subject: [PATCH] 性能曲线 --- WinFrmUI/Yw.WinFrmUI.Phart.Core/01-perform/01-pump-chart/01-chart/02-perform-compare/PumpPerformCompareChart.cs | 44 +++++++++++++++++++++++++++++++++++++++----- 1 files changed, 39 insertions(+), 5 deletions(-) diff --git a/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-perform/01-pump-chart/01-chart/02-perform-compare/PumpPerformCompareChart.cs b/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-perform/01-pump-chart/01-chart/02-perform-compare/PumpPerformCompareChart.cs index 9f7b3e2..8ad5d00 100644 --- a/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-perform/01-pump-chart/01-chart/02-perform-compare/PumpPerformCompareChart.cs +++ b/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-perform/01-pump-chart/01-chart/02-perform-compare/PumpPerformCompareChart.cs @@ -810,6 +810,11 @@ var minQ = _qh_pt_list.Min(x => x.X); var maxQ = _qh_pt_list.Max(x => x.X); + if (_qh_wk != null) + { + minQ = _qh_wk.MinX; + maxQ = _qh_wk.MaxX; + } if (workQ == null) { @@ -821,8 +826,38 @@ return; } - _work_point.Q = workQ.Value; - _work_point.H = _qh.GetPointY(_work_point.Q); + double flow, head, power = 0, eff = 0; + + flow = workQ.Value; + if (_qh_wk != null) + { + head = _qh_wk.GetPointY(flow); + if (_qp_wk != null) + { + power = _qp_wk.GetPointY(flow); + } + if (_qe_wk != null) + { + eff = _qe_wk.GetPointY(flow); + } + } + else + { + head = _qh.GetPointY(flow); + + if (_qp != null) + { + power = _qp.GetPointY(flow); + } + if (_qe != null) + { + eff = _qe.GetPointY(flow); + } + } + + + _work_point.Q = flow; + _work_point.H = head; var workInfoStringBuilder = new StringBuilder(); @@ -830,13 +865,13 @@ workInfoStringBuilder.AppendLine($"鎵▼:{_work_point.H.ToString("N1")} "); if (_qe != null) { - _work_point.E = _qe.GetPointY(_work_point.Q); + _work_point.E = eff; workInfoStringBuilder.AppendLine($"鏁堢巼:{_work_point.E.ToString("N1")} "); } if (_qp != null) { - _work_point.P = _qp.GetPointY(_work_point.Q); + _work_point.P = power; workInfoStringBuilder.Append($"鍔熺巼:{_work_point.P.ToString("N1")} "); } @@ -856,7 +891,6 @@ { OnCalcQueryPoint(_work_point); } - } /// <summary> -- Gitblit v1.9.3