Shuxia Ning
2025-01-08 0a1bf56909464e938a68c29b26ab88ff51380fad
WinFrmUI/HStation.WinFrmUI.PhartRelation.Core/01-pump/01-view/PumpChartViewCtrl.cs
@@ -1,6 +1,4 @@
using DevExpress.Spreadsheet;
using HStation.WinFrmUI.PhartRelation;
using NPOI.OpenXmlFormats.Dml.Diagram;
using Yw.Geometry;
using Yw.Pump;
using Yw.WinFrmUI.Phart;
@@ -19,7 +17,7 @@
        }
        private Yw.Vmo.PhartDiagramExGraphListVmo _vmo = null;
        private HStation.WinFrmUI.PumpCurveViewModel _model = null;
        private Yw.WinFrmUI.Phart.PumpPerformCurveViewModel _model = null;
        private Yw.WinFrmUI.Phart.PumpCurveViewModel _vm = null;
        private bool _default_visible = true;
@@ -95,7 +93,7 @@
                var index = 0;
                foreach (var item in vm_variable_speed_eff_list)
                {
                    var vs_color =Yw.WinFrmUI.PhartColorHelper.Get(index);
                    var vs_color = Yw.WinFrmUI.PhartColorHelper.Get(index);
                    var vs_vm = new Yw.WinFrmUI.Phart.PumpCurveVariableSpeedViewModel();
                    vs_vm.Id = Guid.NewGuid().ToString();
                    vs_vm.ColorQH = vs_color;
@@ -167,7 +165,7 @@
            var equip_pt = new Yw.Geometry.Point2d(pipe_flow, pipe_head);
            var qh_line = new Yw.Ahart.CurveQH(Yw.Ahart.eFeatType.Cubic, _vm.CurveQH);
            var equip_line =   Yw.Pump.PerformParabolaHelper.GetEquipCurvePointListByQH(qh_line, equip_pt, start_head,30,true, out Yw.Geometry.Point2d sect_pt);
            var equip_line = Yw.Pump.PerformParabolaHelper.GetEquipCurvePointListByQH(qh_line, equip_pt, start_head, 30, true, out Yw.Geometry.Point2d sect_pt);
            if (equip_line == null || sect_pt == null)
            {
                XtraMessageBox.Show("计算失败,设计点不合理!");
@@ -285,7 +283,7 @@
                }
                var index = _vm.VariableSpeedList?.Count + 1 ?? 1;
                var vs_color =Yw.WinFrmUI.PhartColorHelper.Get(index);
                var vs_color = Yw.WinFrmUI.PhartColorHelper.Get(index);
                var vs_vm = new Yw.WinFrmUI.Phart.PumpCurveVariableSpeedViewModel();
                vs_vm.Id = Guid.NewGuid().ToString();
                vs_vm.ColorQH = vs_color;
@@ -320,7 +318,7 @@
                }
                var speed = Math.Round(hz / 50 * _nr);
                var index = _vm.VariableSpeedList?.Count + 1 ?? 1;
                var vs_color =Yw.WinFrmUI.PhartColorHelper.Get(index);
                var vs_color = Yw.WinFrmUI.PhartColorHelper.Get(index);
                var vs_vm = new Yw.WinFrmUI.Phart.PumpCurveVariableSpeedViewModel();
                vs_vm.Id = Guid.NewGuid().ToString();
                vs_vm.ColorQH = vs_color;
@@ -352,11 +350,11 @@
            dlg.VerifyValueChanged += (x, y) =>
            {
                var pt = new Yw.Geometry.Point2d(x, y);
                var sect_pt= Yw.Pump.PerformParabolaHelper.GetQHSectPoint(_model.CurveQH, pt);
                var sect_pt = Yw.Pump.PerformParabolaHelper.GetQHSectPoint(_model.CurveQH, pt);
                if (sect_pt == null || sect_pt.IsZeroPoint())
                    return false;
                var speed = sect_pt.Y.CalculateSimuByH(_nr,pt.Y);
                var speed = sect_pt.Y.CalculateSimuByH(_nr, pt.Y);
                var hz = Math.Round(speed / _nr * 50, 1);
                if (hz > 50 || hz < 20)
                {
@@ -364,7 +362,7 @@
                }
                speed = Math.Round(speed, 1);
                var index = _vm.VariableSpeedList?.Count + 1 ?? 1;
                var vs_color =Yw.WinFrmUI.PhartColorHelper.Get(index);
                var vs_color = Yw.WinFrmUI.PhartColorHelper.Get(index);
                var vs_vm = new Yw.WinFrmUI.Phart.PumpCurveVariableSpeedViewModel();
                vs_vm.Id = Guid.NewGuid().ToString();
                vs_vm.ColorQH = vs_color;
@@ -407,7 +405,7 @@
                foreach (var eff in eff_double_list)
                {
                    var eff_list = EqualParaCurveEListHelper.CalcEqualParaCurveE(_model, max_hz, min_hz, eff);
                    var eff_list = EqualParaCurveEListHelper.CalcEqualParaCurveE(_model.CurveQH, _model.CurveQE, max_hz, min_hz, eff);
                    if (eff_list != null && eff_list.Any())
                    {
                        foreach (var item in eff_list)