From 018bfb9c78088d9cd7b9371edcd2102abd594b4d Mon Sep 17 00:00:00 2001
From: ningshuxia <ningshuxia0927@outlook.com>
Date: 星期一, 21 四月 2025 15:21:59 +0800
Subject: [PATCH] 水力计算曲线 报错修复

---
 WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/04-special/01-operation/PumpOperationChart.cs |   12 ++++++++++--
 1 files changed, 10 insertions(+), 2 deletions(-)

diff --git a/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/04-special/01-operation/PumpOperationChart.cs b/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/04-special/01-operation/PumpOperationChart.cs
index 12fabb8..cb9db39 100644
--- a/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/04-special/01-operation/PumpOperationChart.cs
+++ b/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/04-special/01-operation/PumpOperationChart.cs
@@ -367,9 +367,17 @@
                 return;
             }
 
-            var equip_pt_list = Yw.Pump.PerformParabolaHelper.GetEquipCurvePointListByQH(_vm.CurveQH.GetPerformCurve(Yw.Ahart.eCurveType.QH, _feat_type_qh), _equip_pt, start_head.Value, 30, true, out Yw.Geometry.Point2d sect_pt);
-            if (equip_pt_list == null || sect_pt == null)
+            var temp_curve = _vm.CurveQH.GetPerformCurve(Yw.Ahart.eCurveType.QH, _feat_type_qh);
+
+            var equip_pt_list = Yw.Pump.PerformParabolaHelper.GetEquipCurvePointListByQH(temp_curve, _equip_pt, start_head.Value, 30, true, out Yw.Geometry.Point2d sect_pt);
+            if (equip_pt_list == null || !equip_pt_list.Any())
                 return;
+            if (equip_pt_list.Exists(x=>x.IsInvalid()))
+                return;
+            if (sect_pt==null)
+                return;
+           
+
 
 
             double flow = 0, head = 0;

--
Gitblit v1.9.3