duheng
2025-01-10 2b31b7e3926134da96d384ab3bdac345691a179c
WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/11-pump/04-working/SimulationPumpSingleWorkingChartCtrl.cs
@@ -1,14 +1,4 @@
using DevExpress.XtraEditors;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using Yw.Geometry;
using System.Data;
using Yw.Pump;
using Yw.Vmo;
using Yw.WinFrmUI.Phart;
@@ -97,15 +87,13 @@
            vm.CurveName = $"装置线";
            vm.Color = Color.Black;
            var startSourceMonitor = _allMonitorList?
                .Matching(HydroVisualCalcuProp.CalcuHead, new List<string>()
                { HStation.Xhs.Flags.水源,HStation.Xhs.Flags.始端,HStation.Xhs.Flags.默认});
            var head = _hydroInfo.GetHead();
            var pipeQ = _hydroInfo.GetPipeQ(_allCalcuResultVisualDict);
            var pipeH = _hydroInfo.GetPipeHead(_allCalcuResultVisualDict);
            vm.StartH = 2;
            vm.StartH = head;
            vm.PipeQ = pipeQ ?? 0;
            vm.PipeH = pipeH ?? 0;
            if (_hydroInfo.Pumps != null && _hydroInfo.Pumps.Count > 0)
            {
@@ -130,7 +118,7 @@
                            vmItem.E = calcuResult.CalcuE;
                        }
                        vmItem.Hz = Math.Round(pump.SpeedRatio * pump.RatedHz, 1);
                        vmItem.N = pump.RatedN.HasValue ? Math.Round(pump.SpeedRatio * pump.RatedN.Value, 1) : 0;
                        vmItem.N = pump.RatedN > 0 ? Math.Round(pump.SpeedRatio * pump.RatedN, 1) : 0;
                        var curveqh = _hydroInfo.Curves?.Find(x => x.Code == pump.CurveQH);
@@ -140,7 +128,7 @@
                            if (qh_pts != null && qh_pts.Count > 3)
                            {
                                var qh_run_pts = qh_pts.GetQHPointListByN(pump.RatedHz, vmItem.Hz);
                                vmItem.CurveQH = new CubicSpline2d(qh_run_pts);
                                vmItem.CurveQH = qh_run_pts;
                            }
                        }
@@ -151,7 +139,7 @@
                            if (qp_pts != null && qp_pts.Count > 3)
                            {
                                var qp_run_pts = qp_pts.GetQPPointListByN(pump.RatedHz, vmItem.Hz);
                                vmItem.CurveQP = new CubicSpline2d(qp_run_pts);
                                vmItem.CurveQP = qp_run_pts;
                            }
                        }
@@ -162,14 +150,11 @@
                            if (qe_pts != null && qe_pts.Count > 3)
                            {
                                var qe_run_pts = qe_pts.GetQEPointListByN(pump.RatedHz, vmItem.Hz);
                                vmItem.CurveQE = new CubicSpline2d(qe_run_pts);
                                vmItem.CurveQE = qe_run_pts;
                            }
                        }
                    }
                    vm.PipeQ = vm.Items.Sum(t => t.Q);
                    vm.PipeH = vm.Items.Max(t => t.H);
                }
            }
@@ -204,6 +189,14 @@
            this.pumpWorkingViewChart1.SetChartAxis();
        }
        /// <summary>
        ///
        /// </summary>
        /// <param name="fileName"></param>
        public void ExportToImage(string fileName)
        {
            this.pumpWorkingViewChart1.ExportToImage(fileName);
        }
    }
}