using DevExpress.XtraEditors;
|
using System;
|
|
namespace IStation.WinFrmUI.Basic
|
{
|
public partial class SetLxpCoordinateDlg : DevExpress.XtraEditors.XtraForm
|
{
|
public event ChangeLxpCoordHandler OnChangedCoord = null;
|
|
private Eventech.Model.LxpCoordinateParas _coordinateParas = null;
|
public Eventech.Model.LxpCoordinateParas CoordinateParas { get { return _coordinateParas; } set { _coordinateParas = value; } }
|
public SetLxpCoordinateDlg()
|
{
|
InitializeComponent();
|
this.IconOptions.Icon = WinFrmUI.Properties.Resources.App;
|
this.label扬程效率刻度错位数.Visible = spinEdit扬程效率刻度错位数.Visible = false;
|
}
|
|
Eventech.Model.UnitQ _unitQ = Eventech.Model.UnitQ.M3H;
|
Eventech.Model.UnitH _unitH = Eventech.Model.UnitH.M;
|
Eventech.Model.UnitP _unitP = Eventech.Model.UnitP.KW;
|
Eventech.Model.UnitH _unitNPSH = Eventech.Model.UnitH.M;
|
public void SetCoordinate(Eventech.Model.LxpCoordinateParas coordinateParas)
|
{
|
this.SetCoordinate(coordinateParas, Eventech.Model.UnitQ.M3H,
|
Eventech.Model.UnitH.M, Eventech.Model.UnitP.KW);
|
}
|
public void SetCoordinate(
|
Eventech.Model.LxpCoordinateParas coordinateParas,
|
Eventech.Model.UnitQ unitQ,
|
Eventech.Model.UnitH unitH,
|
Eventech.Model.UnitP unitP,
|
Eventech.Model.UnitH unitNPSH = Eventech.Model.UnitH.M)
|
{
|
this._coordinateParas = coordinateParas;
|
this._unitQ = unitQ;
|
this._unitH = unitH;
|
this._unitP = unitP;
|
this._unitNPSH = unitNPSH;
|
}
|
public void SetChartDiagramPanelStyle(Model.eChartDiagramPanelStyle ChartDiagramPanelStyle)
|
{
|
if (ChartDiagramPanelStyle == Model.eChartDiagramPanelStyle.Two)
|
this.label扬程效率刻度错位数.Visible = spinEdit扬程效率刻度错位数.Visible = true;
|
else
|
this.label扬程效率刻度错位数.Visible = spinEdit扬程效率刻度错位数.Visible = false;
|
}
|
public void IsHaveEta(bool isHave)
|
{
|
groupBoxE.Visible = isHave;
|
}
|
public void IsHaveNpsh(bool isHave)
|
{
|
groupBoxNPSH.Visible = isHave;
|
}
|
|
|
private void LoadWindow(object sender, EventArgs e)
|
{
|
if (_coordinateParas == null)
|
return;
|
|
spinEdit扬程效率刻度错位数.Text = _coordinateParas.DislocationNumUp.ToString();
|
|
//流量刻度间隔数
|
textGridNumberX.Text = _coordinateParas.GridNumberX.ToString();
|
textGridNumberY.Text = _coordinateParas.GridNumberY.ToString();
|
textGridNumberX.Enabled = true;
|
|
if (_unitQ != Eventech.Model.UnitQ.M3H)
|
{
|
textCoordSpaceQ.Text = Eventech.Common.UnitQHelper.fromM3H(_unitQ, _coordinateParas.CoordSpaceQ).ToString("0.00");
|
textMinDispQ.Text = Eventech.Common.UnitQHelper.fromM3H(_unitQ, _coordinateParas.CoordMinQ).ToString("0.00");
|
}
|
else
|
{
|
textCoordSpaceQ.Text = _coordinateParas.CoordSpaceQ.ToString();
|
textMinDispQ.Text = _coordinateParas.CoordMinQ.ToString();
|
}
|
|
groupBoxQ.Text = string.Format("{0}({1})",
|
"流量",
|
Eventech.Common.UnitQHelper.GetEnUnitName(_unitQ));
|
|
groupBoxH.Text = string.Format("{0}({1})",
|
"扬程",
|
Eventech.Common.UnitHHelper.GetEnUnitName(_unitH));
|
|
groupBoxP.Text = string.Format("{0}({1})",
|
"功率",
|
Eventech.Common.UnitPHelper.GetEnUnitName(_unitP));
|
|
groupBoxNPSH.Text = string.Format("{0}({1})",
|
"汽蚀",
|
Eventech.Common.UnitHHelper.GetEnUnitName(_unitNPSH));
|
|
textStartLineNoH.Text = _coordinateParas.StartLineNoH.ToString();
|
textEndLineNoH.Text = _coordinateParas.EndLineNoH.ToString();
|
if (_unitH != Eventech.Model.UnitH.M)
|
{
|
textMaxDispH.Text = Eventech.Common.UnitHHelper.fromM2(_unitH, (_coordinateParas.CoordMinH + _coordinateParas.EndLineNoH * _coordinateParas.CoordSpaceH)).ToString("0.00");
|
textCoordSpaceH.Text = Eventech.Common.UnitHHelper.fromM2(_unitH, _coordinateParas.CoordSpaceH).ToString("0.00");
|
}
|
else
|
{
|
textMaxDispH.Text = (_coordinateParas.CoordMinH + _coordinateParas.EndLineNoH * _coordinateParas.CoordSpaceH).ToString();
|
textCoordSpaceH.Text = _coordinateParas.CoordSpaceH.ToString();
|
}
|
|
|
|
|
textEndLineNoE.Text = _coordinateParas.EndLineNoE.ToString();
|
textStartLineNoE.Text = _coordinateParas.StartLineNoE.ToString();
|
textCoordSpaceE.Text = _coordinateParas.CoordSpaceE.ToString();
|
textMaxDispE.Text = (_coordinateParas.CoordMinE + _coordinateParas.EndLineNoE * _coordinateParas.CoordSpaceE).ToString();
|
|
|
|
|
double minP = _coordinateParas.CoordMinP + _coordinateParas.StartLineNoP * _coordinateParas.CoordSpaceP;
|
if (minP < 0.001)
|
minP = 0;
|
if (_unitP != Eventech.Model.UnitP.KW)
|
{
|
textMinDispP.Text = Eventech.Common.UnitPHelper.fromKW(_unitP, minP).ToString();
|
textCoordSpaceP.Text = Eventech.Common.UnitPHelper.fromKW(_unitP, _coordinateParas.CoordSpaceP).ToString();
|
}
|
else
|
{
|
textMinDispP.Text = minP.ToString();
|
textCoordSpaceP.Text = _coordinateParas.CoordSpaceP.ToString();
|
}
|
textStartLineNoP.Text = _coordinateParas.StartLineNoP.ToString();
|
textEndLineNoP.Text = _coordinateParas.EndLineNoP.ToString();
|
|
|
|
|
if (_unitNPSH != Eventech.Model.UnitH.M)
|
{
|
textMinDispNPSH.Text = Math.Round(Eventech.Common.UnitHHelper.fromM(_unitNPSH, _coordinateParas.CoordMinNPSH + _coordinateParas.StartLineNoNPSH * _coordinateParas.CoordSpaceNPSH), 2).ToString();
|
textStartLineNoNPSH.Text = _coordinateParas.StartLineNoNPSH.ToString();
|
textEndLineNoNPSH.Text = _coordinateParas.EndLineNoNPSH.ToString();
|
textCoordSpaceNPSH.Text = Math.Round(Eventech.Common.UnitHHelper.fromM(_unitNPSH, _coordinateParas.CoordSpaceNPSH), 2).ToString();
|
}
|
else
|
{
|
textMinDispNPSH.Text = (_coordinateParas.CoordMinNPSH + _coordinateParas.StartLineNoNPSH * _coordinateParas.CoordSpaceNPSH).ToString();
|
textStartLineNoNPSH.Text = _coordinateParas.StartLineNoNPSH.ToString();
|
textEndLineNoNPSH.Text = _coordinateParas.EndLineNoNPSH.ToString();
|
textCoordSpaceNPSH.Text = _coordinateParas.CoordSpaceNPSH.ToString();
|
}
|
|
|
|
|
}
|
|
|
|
private void btnClose_Click(object sender, EventArgs e)
|
{
|
this.Close();
|
}
|
|
private void btnSet_Click(object sender, EventArgs e)
|
{
|
if (OnChangedCoord == null || _coordinateParas == null)
|
return;
|
|
double space = 0;
|
int start = 0, end = 0, num = 0;
|
double maxValue = 0;
|
double minValue = 0;
|
|
|
|
if (!double.TryParse(textCoordSpaceQ.Text, out space))
|
{
|
XtraMessageBox.Show("请输入合理值");
|
return;
|
}
|
if (space < 0.1)
|
{
|
XtraMessageBox.Show("刻度值过小,请重新调整");
|
return;
|
}
|
|
if (!int.TryParse(textGridNumberX.Text, out num))
|
{
|
XtraMessageBox.Show("扬程刻度数请输入合理值");
|
return;
|
}
|
_coordinateParas.GridNumberX = num;
|
|
if (!int.TryParse(textGridNumberY.Text, out num))
|
{
|
XtraMessageBox.Show("扬程刻度数请输入合理值");
|
return;
|
}
|
_coordinateParas.GridNumberY = num;
|
|
if (spinEdit扬程效率刻度错位数.Visible)
|
_coordinateParas.DislocationNumUp = (int)spinEdit扬程效率刻度错位数.Value;
|
|
|
double CoordMinQ = 0;
|
double.TryParse(textMinDispQ.Text, out CoordMinQ);
|
|
if (_unitQ != Eventech.Model.UnitQ.M3H)
|
{
|
_coordinateParas.CoordMinQ = Eventech.Common.UnitQHelper.toM3H(_unitQ, CoordMinQ);
|
_coordinateParas.CoordSpaceQ = Eventech.Common.UnitQHelper.toM3H(_unitQ, space);
|
}
|
else
|
{
|
_coordinateParas.CoordMinQ = CoordMinQ;
|
_coordinateParas.CoordSpaceQ = space;
|
}
|
|
|
|
|
|
|
if (!int.TryParse(textStartLineNoH.Text, out start))
|
{
|
XtraMessageBox.Show("扬程刻度数请输入合理值");
|
return;
|
}
|
if (!int.TryParse(textEndLineNoH.Text, out end))
|
{
|
XtraMessageBox.Show("扬程刻度数请输入合理值");
|
return;
|
}
|
if (start >= end - 1)
|
{
|
XtraMessageBox.Show("扬程刻度设置不合理");
|
return;
|
}
|
if (!double.TryParse(textCoordSpaceH.Text, out space))
|
{
|
XtraMessageBox.Show("请输入合理值");
|
return;
|
}
|
if (_unitH == Eventech.Model.UnitH.MPa)
|
{
|
if (space < 0.01)
|
{
|
XtraMessageBox.Show("刻度值过小,请重新调整");
|
return;
|
}
|
}
|
else
|
{
|
if (space < 0.1)
|
{
|
XtraMessageBox.Show("刻度值过小,请重新调整");
|
return;
|
}
|
}
|
|
if (!double.TryParse(textMaxDispH.Text, out maxValue))
|
{
|
XtraMessageBox.Show("请输入合理值");
|
return;
|
}
|
|
_coordinateParas.StartLineNoH = start;
|
_coordinateParas.EndLineNoH = end;
|
if (_unitH != Eventech.Model.UnitH.M)
|
{
|
_coordinateParas.CoordSpaceH = Eventech.Common.UnitHHelper.toM2(_unitH, space);
|
_coordinateParas.CoordMinH = Eventech.Common.UnitHHelper.toM2(_unitH, maxValue - _coordinateParas.EndLineNoH * space);
|
}
|
else
|
{
|
_coordinateParas.CoordSpaceH = space;
|
_coordinateParas.CoordMinH = maxValue - _coordinateParas.EndLineNoH * space;
|
}
|
|
|
|
|
|
if (groupBoxE.Visible)
|
{
|
if (!int.TryParse(textEndLineNoE.Text, out end))
|
{
|
XtraMessageBox.Show("效率刻度数请输入合理值");
|
return;
|
}
|
if (!int.TryParse(textStartLineNoE.Text, out start))
|
{
|
XtraMessageBox.Show("效率刻度数请输入合理值");
|
return;
|
}
|
if (start >= end - 1)
|
{
|
XtraMessageBox.Show("效率刻度设置不合理");
|
return;
|
}
|
if (!double.TryParse(textCoordSpaceE.Text, out space))
|
{
|
XtraMessageBox.Show("请输入合理值");
|
return;
|
}
|
if (space < 0.1)
|
{
|
XtraMessageBox.Show("刻度值过小,请重新调整");
|
return;
|
}
|
if (!double.TryParse(textMaxDispE.Text, out maxValue))
|
{
|
XtraMessageBox.Show("请输入合理值");
|
return;
|
}
|
_coordinateParas.CoordSpaceE = space;
|
_coordinateParas.StartLineNoE = start;
|
_coordinateParas.EndLineNoE = end;
|
_coordinateParas.CoordMinE = maxValue - _coordinateParas.EndLineNoE * _coordinateParas.CoordSpaceE;
|
}
|
|
|
|
|
|
|
if (!int.TryParse(textStartLineNoP.Text, out start))
|
{
|
XtraMessageBox.Show("功率刻度数请输入合理值");
|
return;
|
}
|
if (!int.TryParse(textEndLineNoP.Text, out end))
|
{
|
XtraMessageBox.Show("功率刻度数请输入合理值");
|
return;
|
}
|
if (start >= end - 1)
|
{
|
XtraMessageBox.Show("功率刻度设置不合理");
|
return;
|
}
|
if (!double.TryParse(textCoordSpaceP.Text, out space))
|
{
|
XtraMessageBox.Show("请输入合理值");
|
return;
|
}
|
if (space < 0.01)
|
{
|
XtraMessageBox.Show("刻度值过小,请重新调整");
|
return;
|
}
|
if (!double.TryParse(textMinDispP.Text, out minValue))
|
{
|
XtraMessageBox.Show("请输入合理值");
|
return;
|
}
|
|
_coordinateParas.StartLineNoP = start;
|
_coordinateParas.EndLineNoP = end;
|
if (_unitP != Eventech.Model.UnitP.KW)
|
{
|
_coordinateParas.CoordSpaceP = Eventech.Common.UnitPHelper.toKW(_unitP, space);
|
_coordinateParas.CoordMinP = Eventech.Common.UnitPHelper.toKW(_unitP, minValue - _coordinateParas.StartLineNoP * space);
|
}
|
else
|
{
|
_coordinateParas.CoordSpaceP = space;
|
_coordinateParas.CoordMinP = minValue - _coordinateParas.StartLineNoP * _coordinateParas.CoordSpaceP;
|
}
|
|
|
|
|
|
|
|
|
if (groupBoxNPSH.Visible)
|
{
|
if (!int.TryParse(textEndLineNoNPSH.Text, out end))
|
{
|
XtraMessageBox.Show("功率刻度数请输入合理值");
|
return;
|
}
|
if (!int.TryParse(textStartLineNoNPSH.Text, out start))
|
{
|
XtraMessageBox.Show("功率刻度数请输入合理值");
|
return;
|
}
|
if (start >= end)
|
{
|
XtraMessageBox.Show("汽蚀刻度设置不合理");
|
return;
|
}
|
if (!double.TryParse(textCoordSpaceNPSH.Text, out space))
|
{
|
XtraMessageBox.Show("请输入合理值");
|
return;
|
}
|
if (!double.TryParse(textMinDispNPSH.Text, out minValue))
|
{
|
XtraMessageBox.Show("请输入合理值");
|
return;
|
}
|
_coordinateParas.StartLineNoNPSH = start;
|
_coordinateParas.EndLineNoNPSH = end;
|
if (_unitNPSH != Eventech.Model.UnitH.M)
|
{
|
_coordinateParas.CoordSpaceNPSH = Eventech.Common.UnitHHelper.toM(this._unitNPSH, space);
|
_coordinateParas.CoordMinNPSH = Eventech.Common.UnitHHelper.toM(this._unitNPSH, minValue - _coordinateParas.StartLineNoNPSH * _coordinateParas.CoordSpaceNPSH);
|
}
|
else
|
{
|
_coordinateParas.CoordSpaceNPSH = space;
|
_coordinateParas.CoordMinNPSH = minValue - _coordinateParas.StartLineNoNPSH * _coordinateParas.CoordSpaceNPSH;
|
}
|
|
}
|
|
|
//
|
if (OnChangedCoord != null)
|
OnChangedCoord(this, new LxpCoordEventArgs(_coordinateParas));
|
}
|
|
private void textGridNumberP_EditValueChanged(object sender, EventArgs e)
|
{
|
|
}
|
|
private void textGridNumberNPSH_EditValueChanged(object sender, EventArgs e)
|
{
|
|
}
|
|
}
|
}
|