| | |
| | | }; |
| | | this.pumpParallelInfoCtrl1.SetInfoEvent += (id, name, color) => |
| | | { |
| | | this.pumpSerialParallelChart.SetInfo(id, name, color); |
| | | this.pumpSerialParallelChart.Set(id, name, color); |
| | | }; |
| | | |
| | | this.pumpParallelInfoCtrl1.SetDesignPointEvent += (q, h) => |
| | | { |
| | | this.pumpSerialParallelChart.SetEquipPt(new Point2d(q, h)); |
| | | this.pumpSerialParallelChart.SetDesignPoint(new Point2d(q, h)); |
| | | }; |
| | | |
| | | this.pumpParallelInfoCtrl1.AddEvent += (vm) => |
| | |
| | | SetParallel(list); |
| | | }; |
| | | |
| | | this.pumpSerialParallelChart.OnCalcQueryPoint += (id, pt) => |
| | | this.pumpSerialParallelChart.QueryPointChangedEvent += (id, pt) => |
| | | { |
| | | this.pumpParallelInfoCtrl1.SetQueryInfo(id, pt); |
| | | }; |
| | |
| | | vm.Name = x.Name; |
| | | vm.Code = x.Code; |
| | | vm.IsBp = x.IsBp; |
| | | vm.RatedSpeed = x.RatedSpeed; |
| | | vm.CurrentSpeed = x.CurrentSpeed; |
| | | vm.RatedN = x.RatedSpeed; |
| | | vm.CurrentN = x.CurrentSpeed; |
| | | vm.RunStatus = x.RunStatus; |
| | | vm.CurrentHz = x.CurrentHz; |
| | | var qh_pt_list = x.CurveQH.Select(x => new Yw.Geometry.Point2d(x.X, x.Y)).ToList(); |
| | | vm.Qh = new CubicSpline2d(qh_pt_list); |
| | | vm.CurveQH = new CubicSpline2d(qh_pt_list); |
| | | if (x.CurveQE != null && x.CurveQE.Any()) |
| | | { |
| | | var qe_pt_list = x.CurveQE.Select(x => new Yw.Geometry.Point2d(x.X, x.Y)).ToList(); |
| | | vm.Qe = new CubicSpline2d(qe_pt_list); |
| | | vm.CurveQE = new CubicSpline2d(qe_pt_list); |
| | | } |
| | | if (x.CurveQP != null && x.CurveQP.Any()) |
| | | { |
| | | var qp_pt_list = x.CurveQP.Select(x => new Yw.Geometry.Point2d(x.X, x.Y)).ToList(); |
| | | vm.Qp = new CubicSpline2d(qp_pt_list); |
| | | vm.CurveQP = new CubicSpline2d(qp_pt_list); |
| | | } |
| | | vm.CalcuQ = x.CalcuQ; |
| | | vm.CalcuH = x.CalcuH; |
| | |
| | | |
| | | private string SetParallel(List<Yw.WinFrmUI.Phart.PumpSerialParallelInfoViewModel> list) |
| | | { |
| | | this.pumpSerialParallelChart.Delete(); |
| | | this.pumpSerialParallelChart.Clear(); |
| | | if (list == null || !list.Any()) |
| | | { |
| | | return "无数据!"; |
| | |
| | | Yw.Geometry.CubicSpline2d qe = new Yw.Geometry.CubicSpline2d(calc_pt_qe_list); |
| | | Yw.Geometry.CubicSpline2d qp = new Yw.Geometry.CubicSpline2d(calc_pt_qp_list); |
| | | |
| | | var total_flow = list.Sum(x => x.Qh.MaxX); |
| | | var total_flow = list.Sum(x => x.CurveQH.MaxX); |
| | | var parallel_flow = calc_pt_qh_list.Max(x => x.X); |
| | | if (total_flow > parallel_flow * 1.05) |
| | | { |
| | |
| | | var vm_sp = new Yw.WinFrmUI.Phart.PumpSerialParallelInfoViewModel(); |
| | | vm_sp.Id = _parallel_id; |
| | | vm_sp.Name = line_name; |
| | | vm_sp.Qh = qh; |
| | | vm_sp.Qe = qe; |
| | | vm_sp.Qp = qp; |
| | | vm_sp.QhCalc = vm_sp.Qh; |
| | | vm_sp.QeCalc = vm_sp.Qe; |
| | | vm_sp.QpCalc = vm_sp.Qp; |
| | | vm_sp.CurveQH = qh; |
| | | vm_sp.CurveQE = qe; |
| | | vm_sp.CurveQP = qp; |
| | | vm_sp.QhCalc = vm_sp.CurveQH; |
| | | vm_sp.QeCalc = vm_sp.CurveQE; |
| | | vm_sp.QpCalc = vm_sp.CurveQP; |
| | | vm_sp.Color = Color.Black; |
| | | vm_sp.IsBp = true; |
| | | vm_sp.IsDefault = true; |