tx
9 天以前 e0b138b3e057de6f57021e6c8963868f5c5acc5a
TProduct.WinFrmUI/TProduct.WinFrmUI.TPump/MainPageÐÔÄܲâÊÔ/FeatTestViewMainPage_Chart.cs
@@ -2,6 +2,7 @@
using System;
using System.Linq;
using System.Windows.Forms;
using TProduct.WinFrmUI.TBase;
namespace TProduct.WinFrmUI.TPump
@@ -116,17 +117,30 @@
            if (this._featTestItem.ItemParas != null &&
                this._featTestItem.ItemParas.IsEntendZeroH)
                this._featTestItem.ItemParas.ExtendPointQ != null &&
                this._featTestItem.ItemParas.ExtendPointH != null)
            {
                ExtendZeroH();
                ExtendCurveToH(this._featTestItem.ItemParas.ExtendPointH.Value);
            }
        }
        private void bbi显示高效点_CheckedChanged(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            this._chartMainCtrl.SetBepPointVisible(bbi显示高效点.Checked);
        }
        private void bbi延长到目标扬程_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            InputHeadDialog inputHeadDialog = new InputHeadDialog();
            if (inputHeadDialog.ShowDialog() != DialogResult.OK)
                return;
            ExtendCurveToH(inputHeadDialog.HeadValue);
        }
        private void bbi延长到零扬程_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            ExtendZeroH();
            ExtendCurveToH(0);
        }
        private void ExtendZeroH()
        private void ExtendCurveToH(double target_h)
        {
            if (_chartMainCtrl == null || _featTestItem == null)
            {
@@ -138,37 +152,37 @@
            var ex_curveExpressQH = new Eventech.Model.CurveExpress(curveExpressQH);
            ex_curveExpressQH.RangeMax = ex_curveExpressQH.RangeMax * 2.5;
            var x_pts = Eventech.Common.FitCurveHelper.GetInterPointX(ex_curveExpressQH, 0);
            var x_pts = Eventech.Common.FitCurveHelper.GetInterPointX(ex_curveExpressQH, target_h);
            if (x_pts == null || x_pts.Count() == 0)
            {
                MessageBox.Show("曲线长度不够, æ— æ³•延长到零扬程处");
                MessageBox.Show("曲线长度不够, æ— æ³•延长到目标扬程处");
                return;
            }
            var zero_head_flow = x_pts.First().X;
            var extend_pt_flow = x_pts.First().X;
            // ex_curveExpressQH.RangeMin = curveExpressQH.RangeMax;
            ex_curveExpressQH.RangeMax = zero_head_flow;
            ex_curveExpressQH.RangeMax = extend_pt_flow;
            var points = Eventech.Common.FitCurveHelper.GetFitPointsByRange(ex_curveExpressQH,
                curveExpressQH.RangeMax, zero_head_flow, 10);
                curveExpressQH.RangeMax, extend_pt_flow, 10);
            _chartMainCtrl.SetExtendCurveInfoQH(points);
            if (this._featTestItem.ItemParas == null)
            {
                this._featTestItem.ItemParas = new Model.TestProjectItemParas();
                this._featTestItem.ItemParas.IsEntendZeroH = true;
                this._featTestItem.ItemParas.FlowInZeroH = zero_head_flow;
                this._featTestItem.ItemParas.ExtendPointH = target_h;
                this._featTestItem.ItemParas.ExtendPointQ = extend_pt_flow;
                new BLL.TestProjectItem().UpdateItemParas(this._featTestItem.ItemID, this._featTestItem.ItemParas.ToDsString());
            }
            else if (!this._featTestItem.ItemParas.IsEntendZeroH)
            else if ( this._featTestItem.ItemParas.ExtendPointQ == null || this._featTestItem.ItemParas.ExtendPointH == null)
            {
                this._featTestItem.ItemParas.IsEntendZeroH = true;
                this._featTestItem.ItemParas.FlowInZeroH = zero_head_flow;
                this._featTestItem.ItemParas.ExtendPointH = target_h;
                this._featTestItem.ItemParas.ExtendPointQ = extend_pt_flow;
                new BLL.TestProjectItem().UpdateItemParas(this._featTestItem.ItemID, this._featTestItem.ItemParas.ToDsString());
            }
            else if (Math.Abs(
                this._featTestItem.ItemParas.FlowInZeroH - zero_head_flow) > 0.01)
            else if (Math.Abs(  this._featTestItem.ItemParas.ExtendPointQ.Value - extend_pt_flow) > 0.01 ||
                Math.Abs(this._featTestItem.ItemParas.ExtendPointH.Value - target_h) > 0.01)
            {
                this._featTestItem.ItemParas.IsEntendZeroH = true;
                this._featTestItem.ItemParas.FlowInZeroH = zero_head_flow;
                this._featTestItem.ItemParas.ExtendPointH = target_h;
                this._featTestItem.ItemParas.ExtendPointQ = extend_pt_flow;
                new BLL.TestProjectItem().UpdateItemParas(this._featTestItem.ItemID, this._featTestItem.ItemParas.ToDsString());
            }