| | |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.Windows.Forms; |
| | | using System.Reflection.Metadata; |
| | | using System.Windows.Forms; |
| | | using DPumpHydr.WinFrmUI.Volute.ViewModel; |
| | | using HydrEngineCSharp; |
| | | |
| | | namespace DPumpHydr.WinFrmUI.Volute |
| | |
| | | public partial class OccDesignBaseCtrl : UserControl |
| | | { |
| | | protected HydrEngineCSharp.CDisplayView pDisplayView; |
| | | protected string strTurbopumpTopoShapeName = "蜗壳设计x"; |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | public OccDesignBaseCtrl() |
| | | { |
| | | InitializeComponent(); |
| | | |
| | | //this.DefaultDockArea = RLT.Enum.Crown.DockArea.Document; |
| | | //this._isDispCloseIcon = false ;//不能关闭 |
| | | |
| | | |
| | | //InitializeComponent(); |
| | | |
| | | this.MouseDown += OnMouseDown; |
| | | this.MouseMove += OnMouseMove; |
| | | this.MouseUp += OnMouseUp; |
| | | this.MouseWheel += OnMouseWheel; |
| | | |
| | | |
| | | //string strTurbopumpTopoShapeName = "蜗壳设计" + (m_nNum++).ToString(); |
| | | //bool bSucc = pDisplayView.addTurbopumpTopoShape(strTurbopumpTopoShapeName); |
| | | //if (bSucc) |
| | | //{ |
| | | // m_nCreateCurve = 1; |
| | | // //MessageBox.Show("开始蜗壳设计"); |
| | | //} |
| | | |
| | | |
| | | |
| | | } |
| | | |
| | | |
| | |
| | | } |
| | | |
| | | |
| | | public virtual void SetDimVisible(bool isVisible) |
| | | { |
| | | |
| | | } |
| | | |
| | | |
| | | protected void OnMouseDown(object sender, MouseEventArgs e) |
| | |
| | | } |
| | | protected bool _is3D = true; |
| | | |
| | | |
| | | public void ClearAll() |
| | | |
| | | |
| | | public virtual void Initial() |
| | | { |
| | | //pDisplayView.DeleteObject(strTurbopumpTopoShapeName); |
| | | //pDisplayView.addTurbopumpTopoShape(strTurbopumpTopoShapeName); |
| | | } |
| | | public virtual void Initial( ) |
| | | { |
| | | } |
| | | |
| | | #region 1-8 截面设计 |
| | |
| | | /// </summary> |
| | | /// <param name="sender"></param> |
| | | /// <param name="e"></param> |
| | | public void RefreshAllSectShape18(ViewModel.SectionBundleInfo bundle) |
| | | public List<int> RefreshAllSectShape18(ViewModel.SectionBundleInfo bundle) |
| | | { |
| | | if (_isFirstSectShape18) |
| | | { |
| | | CreateSectShape18(bundle); |
| | | _isFirstSectShape18 = false; |
| | | return CreateSectShape18(bundle); |
| | | } |
| | | else |
| | | { |
| | | EditSectShape18(bundle); |
| | | } |
| | | _isFirstSectShape18 = false; |
| | | return EditSectShape18(bundle); |
| | | } |
| | | } |
| | | protected void CreateSectShape18(ViewModel.SectionBundleInfo bundle) |
| | | protected double _sectStartAngle = -HydrDisplayEngineBridge.PI_4; |
| | | public double SectStartAngle |
| | | { |
| | | //pDisplayView.Update3DViews(_is3D); |
| | | get |
| | | { |
| | | return _sectStartAngle; |
| | | } |
| | | set |
| | | { |
| | | _sectStartAngle = value; |
| | | } |
| | | } |
| | | |
| | | double dStartAngle = -HydrDisplayEngineBridge.PI_4; |
| | | /// <summary> |
| | | /// |
| | | /// </summary> |
| | | /// <param name="bundle"></param> |
| | | protected List<int> CreateSectShape18(ViewModel.SectionBundleInfo bundle) |
| | | { |
| | | List<int> error_sect = new List<int>(); |
| | | |
| | | double dDetAngle = 2 * HydrDisplayEngineBridge.PI / 8; |
| | | for (int i = 8; i >=1; i--) |
| | | |
| | | double dStartAngle = _sectStartAngle; |
| | | |
| | | double dDetAngle = HydrDisplayEngineBridge.PI / 4; |
| | | for (int i = 8; i >= 1; i--) |
| | | { |
| | | var theSectionParam = bundle.ToSectionShapePara(i); |
| | | |
| | | double dGama_Left, dGama_Right, dH, dR_out, dR_Left, dR_Right, dBaseWidth, dBaseCircleRadius; |
| | | double dGama_Left, dGama_Right, dH, dR_out, dBaseWidth, dBaseCircleRadius; |
| | | dGama_Left = theSectionParam.Gama_Left; |
| | | dGama_Right = theSectionParam.Gama_Right; |
| | | dH = theSectionParam.H; |
| | | dR_out = theSectionParam.R_out; |
| | | dR_Left = theSectionParam.R_Left; |
| | | dR_Right = theSectionParam.R_Right; |
| | | double dR_Left = theSectionParam.R_Left; |
| | | double dR_Right = theSectionParam.R_Right; |
| | | if (dR_Left < 1) |
| | | dR_Left = 1; |
| | | if (dR_Right < 1) |
| | | dR_Right = 1; |
| | | |
| | | dBaseWidth = theSectionParam.BaseWidth; |
| | | dBaseCircleRadius = theSectionParam.BaseCircleRadius; |
| | | |
| | | string wstrShapeNameI = string.Format("SectShape_{0}", theSectionParam.Index); |
| | | |
| | | |
| | | |
| | | HydrProperties theHydrProperties = new HydrProperties(); |
| | |
| | | |
| | | |
| | | double dAngle = (8 - theSectionParam.Index) * dDetAngle + dStartAngle; |
| | | theHydrProperties.SetShapeName(wstrShapeNameI); |
| | | theHydrProperties.SetShapeGuid(GlobalParas.BuildSectShapeName(theSectionParam.Index)); |
| | | pHydrGeomCurve.SetHydrProperties(theHydrProperties); |
| | | pHydrGeomCurve.SetGeomSection(dGama_Left, dGama_Right, dH, dR_out, dR_Left, dR_Right, dBaseWidth); |
| | | pHydrGeomCurve.SetMatrix(dAngle, dBaseCircleRadius); |
| | | //if (_is3D) |
| | | //{ |
| | | |
| | | // BcGeMatrix theMatrix = BcGeMatrix.translate(0, dBaseCircleRadius, 0); |
| | | // BcGeMatrix theMatrix1 = BcGeMatrix.rotate(-dAngle, 1.0, 0.0, 0.0); |
| | | // theMatrix.postMult(theMatrix1); |
| | | // pHydrGeomCurve.SetMatrix(theMatrix); |
| | | //} |
| | | |
| | | pDisplayView.addVoluteCurve( theSectionParam.Index, pHydrGeomCurve); |
| | | } |
| | | |
| | | |
| | | |
| | | Invalidate(true); |
| | | pDisplayView.FitAll3DViews(true); |
| | | |
| | | } |
| | | |
| | | |
| | | |
| | | protected void EditSectShape18(ViewModel.SectionBundleInfo bundle) |
| | | { |
| | | pDisplayView.Update3DViews(_is3D); |
| | | |
| | | double dStartAngle = -HydrDisplayEngineBridge.PI_4; |
| | | |
| | | double dDetAngle = 2 * HydrDisplayEngineBridge.PI / 8; |
| | | for (int i = 1; i <= 8; i++) |
| | | { |
| | | var theSectionParam = bundle.ToSectionShapePara(i); |
| | | |
| | | double dGama_Left, dGama_Right, dH, dR_out, dR_Left, dR_Right, dBaseWidth, dBaseCircleRadius; |
| | | dGama_Left = theSectionParam.Gama_Left; |
| | | dGama_Right = theSectionParam.Gama_Right; |
| | | dH = theSectionParam.H; |
| | | dR_out = theSectionParam.R_out; |
| | | dR_Left = theSectionParam.R_Left; |
| | | dR_Right = theSectionParam.R_Right; |
| | | dBaseWidth = theSectionParam.BaseWidth; |
| | | dBaseCircleRadius = theSectionParam.BaseCircleRadius; |
| | | |
| | | string wstrShapeNameI = string.Format("SectShape_{0}", theSectionParam.Index); |
| | | |
| | | |
| | | HydrProperties theHydrProperties = new HydrProperties(); |
| | | HydrGeomCurve theHydrGeomCurve = HydrDisplayEngineBridge.CreateGeomCurve(HydrCurveType.EHydrGeomSection); |
| | | HydrGeomSection pHydrGeomCurve = theHydrGeomCurve as HydrGeomSection; |
| | | if (pHydrGeomCurve == null) |
| | | ToolTips tt = pDisplayView.addVoluteCurve(theSectionParam.Index, pHydrGeomCurve); |
| | | if (tt == null || tt.GetTipsId() != 1) |
| | | { |
| | | continue; |
| | | error_sect.Add(theSectionParam.Index); |
| | | } |
| | | double dAngle = (8 - theSectionParam.Index) * dDetAngle + dStartAngle; |
| | | |
| | | |
| | | theHydrProperties.SetShapeName(wstrShapeNameI); |
| | | pHydrGeomCurve.SetHydrProperties(theHydrProperties); |
| | | pHydrGeomCurve.SetGeomSection(dGama_Left, dGama_Right, dH, dR_out, dR_Left, dR_Right, dBaseWidth ); |
| | | pHydrGeomCurve.SetMatrix(dAngle, dBaseCircleRadius); |
| | | //if (_is3D) |
| | | //{ |
| | | |
| | | // BcGeMatrix theMatrix = BcGeMatrix.translate(0, dBaseCircleRadius, 0); |
| | | // BcGeMatrix theMatrix1 = BcGeMatrix.rotate(-dAngle, 1.0, 0.0, 0.0); |
| | | // theMatrix.postMult(theMatrix1); |
| | | // pHydrGeomCurve.SetMatrix(theMatrix); |
| | | //} |
| | | |
| | | pDisplayView.editVoluteCurve(wstrShapeNameI, pHydrGeomCurve); |
| | | } |
| | | |
| | | |
| | | |
| | | Invalidate(true); |
| | | |
| | | |
| | | pDisplayView.FitAll3DViews(true); |
| | | return error_sect; |
| | | } |
| | | |
| | | |
| | | /// <summary> |
| | | /// |
| | | /// </summary> |
| | | /// <param name="bundle"></param> |
| | | public List<int> EditSectShape18(ViewModel.SectionBundleInfo bundle) |
| | | { |
| | | List<int> error_sect = new List<int>(); |
| | | |
| | | double dStartAngle = _sectStartAngle; |
| | | |
| | | double dDetAngle = HydrDisplayEngineBridge.PI / 4; |
| | | for (int i = 1; i <= 8; i++) |
| | | { |
| | | var theSectionParam = bundle.ToSectionShapePara(i); |
| | | |
| | | double dGama_Left, dGama_Right, dH, dR_out, dBaseWidth, dBaseCircleRadius; |
| | | dGama_Left = theSectionParam.Gama_Left; |
| | | dGama_Right = theSectionParam.Gama_Right; |
| | | dH = theSectionParam.H; |
| | | dR_out = theSectionParam.R_out; |
| | | double dR_Left = theSectionParam.R_Left; |
| | | double dR_Right = theSectionParam.R_Right; |
| | | dBaseWidth = theSectionParam.BaseWidth; |
| | | dBaseCircleRadius = theSectionParam.BaseCircleRadius; |
| | | if (dR_Left < 1) |
| | | dR_Left = 1; |
| | | if (dR_Right < 1) |
| | | dR_Right = 1; |
| | | |
| | | string wstrShapeNameI = string.Format("SectShape_{0}", theSectionParam.Index); |
| | | |
| | | |
| | | HydrProperties theHydrProperties = new HydrProperties(); |
| | | HydrGeomCurve theHydrGeomCurve = HydrDisplayEngineBridge.CreateGeomCurve(HydrCurveType.EHydrGeomSection); |
| | | HydrGeomSection pHydrGeomCurve = theHydrGeomCurve as HydrGeomSection; |
| | | if (pHydrGeomCurve == null) |
| | | { |
| | | continue; |
| | | } |
| | | double dAngle = (8 - theSectionParam.Index) * dDetAngle + dStartAngle; |
| | | |
| | | |
| | | //theHydrProperties.SetShapeName(wstrShapeNameI); |
| | | pHydrGeomCurve.SetHydrProperties(theHydrProperties); |
| | | pHydrGeomCurve.SetGeomSection(dGama_Left, dGama_Right, dH, dR_out, dR_Left, dR_Right, dBaseWidth); |
| | | pHydrGeomCurve.SetMatrix(dAngle, dBaseCircleRadius); |
| | | //if (_is3D) |
| | | //{ |
| | | // BcGeMatrix theMatrix = BcGeMatrix.translate(0, dBaseCircleRadius, 0); |
| | | // BcGeMatrix theMatrix1 = BcGeMatrix.rotate(-dAngle, 1.0, 0.0, 0.0); |
| | | // theMatrix.postMult(theMatrix1); |
| | | // pHydrGeomCurve.SetMatrix(theMatrix); |
| | | //} |
| | | |
| | | ToolTips tt = pDisplayView.editVoluteCurve(wstrShapeNameI, pHydrGeomCurve); |
| | | //pDisplayView.addVoluteCurve(theSectionParam.Index, pHydrGeomCurve); |
| | | if (tt == null || tt.GetTipsId() != 1) |
| | | { |
| | | error_sect.Add(theSectionParam.Index); |
| | | } |
| | | } |
| | | |
| | | |
| | | |
| | | Invalidate(true); |
| | | pDisplayView.ShowTopoShape(TopoTypeDisplay.ESectionCurve); |
| | | return error_sect; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// |
| | | /// </summary> |
| | | /// <param name="theSectionParam"></param> |
| | | public void RefreshSingleSectShape18(ViewModel.SectionShapePara theSectionParam) |
| | | { |
| | | pDisplayView.Update3DViews(true ); |
| | | pDisplayView.Update3DViews(true); |
| | | |
| | | double dStartAngle = -HydrDisplayEngineBridge.PI_4; |
| | | double dStartAngle = _sectStartAngle; |
| | | |
| | | double dDetAngle = 2 * HydrDisplayEngineBridge.PI / 8; |
| | | double dDetAngle = HydrDisplayEngineBridge.PI / 4; |
| | | |
| | | |
| | | double dGama_Left, dGama_Right, dH, dR_out, dR_Left, dR_Right, dBaseWidth, dBaseCircleRadius; |
| | |
| | | dBaseWidth = theSectionParam.BaseWidth; |
| | | dBaseCircleRadius = theSectionParam.BaseCircleRadius; |
| | | |
| | | string wstrShapeNameI = string.Format("SectShape_{0}", theSectionParam.Index); |
| | | |
| | | |
| | | HydrProperties theHydrProperties = new HydrProperties(); |
| | | HydrGeomCurve theHydrGeomCurve = HydrDisplayEngineBridge.CreateGeomCurve(HydrCurveType.EHydrGeomSection); |
| | |
| | | |
| | | double dAngle = (8 - theSectionParam.Index) * dDetAngle + dStartAngle; |
| | | |
| | | theHydrProperties.SetShapeName(wstrShapeNameI); |
| | | theHydrProperties.SetShapeGuid(GlobalParas.BuildSectShapeName(theSectionParam.Index)); |
| | | pHydrGeomCurve.SetHydrProperties(theHydrProperties); |
| | | pHydrGeomCurve.SetGeomSection(dGama_Left, dGama_Right, dH, dR_out, dR_Left, dR_Right, dBaseWidth ); |
| | | pHydrGeomCurve.SetGeomSection(dGama_Left, dGama_Right, dH, dR_out, dR_Left, dR_Right, dBaseWidth); |
| | | pHydrGeomCurve.SetMatrix(dAngle, dBaseCircleRadius); |
| | | //{ |
| | | |
| | | // BcGeMatrix theMatrix = BcGeMatrix.translate(0, dBaseCircleRadius, 0); |
| | | // BcGeMatrix theMatrix1 = BcGeMatrix.rotate(-dAngle, 1.0, 0.0, 0.0); |
| | | // theMatrix.postMult(theMatrix1); |
| | | // pHydrGeomCurve.SetMatrix(theMatrix); |
| | | //} |
| | | |
| | | pDisplayView.editVoluteCurve(wstrShapeNameI, pHydrGeomCurve); |
| | | |
| | | pDisplayView.editVoluteCurve(GlobalParas.BuildSectShapeName(theSectionParam.Index), pHydrGeomCurve); |
| | | |
| | | Invalidate(true); |
| | | |
| | | Invalidate(true); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// |
| | | /// </summary> |
| | | /// <param name="isVisible"></param> |
| | | public void SetAllSectionCurveVisible(bool isVisible) |
| | | { |
| | | for (int i = 8; i >= 1; i--) |
| | | { |
| | | string wstrShapeNameI = string.Format("SectShape_{0}", i); |
| | | if (isVisible) |
| | | pDisplayView.showVoluteCurve(wstrShapeNameI); |
| | | else |
| | | pDisplayView.hideVoluteCurve(wstrShapeNameI); |
| | | } |
| | | } |
| | | /// <summary> |
| | | /// |
| | | /// </summary> |
| | | /// <param name="sectIndex"></param> |
| | | public void HightLightSectCurve(int sectIndex) |
| | | { |
| | | for (int i = 1; i <= 8; i++) |
| | | { |
| | | if (i == sectIndex) |
| | | this.pDisplayView.setVoluteCurveClr(i, 255, 20, 147); |
| | | else |
| | | this.pDisplayView.setVoluteCurveClr(i, 75, 0, 130); |
| | | } |
| | | |
| | | |
| | | |
| | | Invalidate(true); |
| | | } |
| | | #endregion |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | public HydrGeomSplineParam Create2DWaterBody(WaterBodyOuterParam theWaterBodyOuterParam) |
| | | |
| | | #region 水体 |
| | | |
| | | public bool Create2DWaterBody(HydrEngineCSharp.WaterBodyOuterArcParam pHydrGeomArcCurve) |
| | | { |
| | | if (this._is3D) |
| | | return null; |
| | | |
| | | bool bSucc = pDisplayView.build2DMidCurve(theWaterBodyOuterParam); |
| | | return false; |
| | | |
| | | |
| | | |
| | | |
| | | ToolTips theToolTips = this.pDisplayView.build2DMidCurve(pHydrGeomArcCurve); |
| | | if (theToolTips == null) |
| | | return false; |
| | | Invalidate(true); |
| | | pDisplayView.FitAll3DViews(true); |
| | | if (bSucc) |
| | | |
| | | pDisplayView.set2DMidCurveClr( |
| | | DPumpHydr.WinFrmUI.Volute.GlobalParas.WaterBoudaryColor.R, |
| | | DPumpHydr.WinFrmUI.Volute.GlobalParas.WaterBoudaryColor.G, |
| | | DPumpHydr.WinFrmUI.Volute.GlobalParas.WaterBoudaryColor.B); |
| | | |
| | | if (theToolTips.GetTipsId() == 1) |
| | | { |
| | | return pDisplayView.getHydrGeomSplineParam(); |
| | | return true; |
| | | } |
| | | else |
| | | { |
| | | return null; |
| | | pDisplayView.ClearTopoShape(TopoTypeDisplay.E2DMidCurve); |
| | | MessageBox.Show(theToolTips.GetToolTips(), "2D提示"); |
| | | return false; |
| | | } |
| | | } |
| | | public void Create3DWaterBody(WaterBodyOuterParam theWaterBodyOuterParam, HydrGeomSplineParam theHydrGeomSplineParam) |
| | | public bool Create2DWaterBody(HydrEngineCSharp.WaterBodyOuterSpParam pHydrGeomCurve) |
| | | { |
| | | if (!this._is3D) |
| | | return; |
| | | if (theHydrGeomSplineParam != null) |
| | | { |
| | | string wstrName = "水体"; |
| | | string wstrShapeNameI = wstrName; |
| | | HydrGeomCurve theHydrGeomCurve = HydrDisplayEngineBridge.CreateGeomCurve(HydrCurveType.EHydrGeomCircle); |
| | | HydrProperties theHydrProperties = new HydrProperties(); |
| | | theHydrProperties.SetShapeName(wstrShapeNameI); |
| | | theHydrGeomCurve.SetHydrProperties(theHydrProperties); |
| | | if (pDisplayView.hasBuildThicknessBody()) |
| | | pDisplayView.removeThicknessBody();// |
| | | pDisplayView.buildWaterBody(wstrShapeNameI, theHydrGeomSplineParam, theWaterBodyOuterParam); |
| | | Invalidate(true); |
| | | pDisplayView.FitAll3DViews(true); |
| | | } |
| | | if (this._is3D) |
| | | return false ; |
| | | |
| | | |
| | | |
| | | |
| | | ToolTips theToolTips = this.pDisplayView.build2DMidCurve(pHydrGeomCurve); |
| | | if (theToolTips == null) |
| | | return false ; |
| | | Invalidate(true); |
| | | pDisplayView.FitAll3DViews(true); |
| | | |
| | | pDisplayView.set2DMidCurveClr( |
| | | DPumpHydr.WinFrmUI.Volute.GlobalParas.WaterBoudaryColor.R, |
| | | DPumpHydr.WinFrmUI.Volute.GlobalParas.WaterBoudaryColor.G, |
| | | DPumpHydr.WinFrmUI.Volute.GlobalParas.WaterBoudaryColor.B); |
| | | |
| | | if (theToolTips.GetTipsId() == 1) |
| | | { |
| | | return true ; |
| | | } |
| | | else |
| | | { |
| | | pDisplayView.ClearTopoShape(TopoTypeDisplay.E2DMidCurve); |
| | | MessageBox.Show(theToolTips.GetToolTips(), "2D提示"); |
| | | return false ; |
| | | } |
| | | } |
| | | public void Edit3DWaterBody(WaterBodyOuterParam theWaterBodyOuterParam, HydrGeomSplineParam theHydrGeomSplineParam) |
| | | |
| | | public HydrEngineCSharp.ToolTips Create3DWaterBody(HydrEngineCSharp.WaterBodyOuterSpParam pHydrGeomCurve) |
| | | { |
| | | if (!this._is3D) |
| | | return; |
| | | if(theHydrGeomSplineParam != null) |
| | | return null; |
| | | |
| | | HydrProperties theHydrProperties = new HydrProperties(); |
| | | theHydrProperties.SetShapeGuid(DPumpHydr.WinFrmUI.Volute.GlobalParas.WaterBodyShapeName); |
| | | theHydrProperties.SetShapeColor( |
| | | DPumpHydr.WinFrmUI.Volute.GlobalParas.WaterBodyColor.R, |
| | | DPumpHydr.WinFrmUI.Volute.GlobalParas.WaterBodyColor.G, |
| | | DPumpHydr.WinFrmUI.Volute.GlobalParas.WaterBodyColor.B, 256); |
| | | |
| | | if (pDisplayView.hasBuildThicknessBody()) |
| | | pDisplayView.ClearTopoShape(TopoTypeDisplay.EThicknessBody); |
| | | var tt = pDisplayView.buildWaterBody(theHydrProperties, pHydrGeomCurve); |
| | | if (tt.GetTipsId() != 1) |
| | | { |
| | | pDisplayView.rebuildWaterBody(theHydrGeomSplineParam, theWaterBodyOuterParam); |
| | | Invalidate(true); |
| | | pDisplayView.FitAll3DViews(true); |
| | | MessageBox.Show(tt.GetToolTips(), "3D提示"); |
| | | } |
| | | Invalidate(true); |
| | | pDisplayView.FitAll3DViews(true); |
| | | return tt; |
| | | } |
| | | public HydrEngineCSharp.ToolTips Create3DWaterBody(HydrEngineCSharp.WaterBodyOuterArcParam pHydrGeomArcCurve) |
| | | { |
| | | if (!this._is3D) |
| | | return null; |
| | | |
| | | HydrProperties theHydrProperties = new HydrProperties(); |
| | | theHydrProperties.SetShapeGuid(DPumpHydr.WinFrmUI.Volute.GlobalParas.WaterBodyShapeName); |
| | | theHydrProperties.SetShapeColor( |
| | | DPumpHydr.WinFrmUI.Volute.GlobalParas.WaterBodyColor.R, |
| | | DPumpHydr.WinFrmUI.Volute.GlobalParas.WaterBodyColor.G, |
| | | DPumpHydr.WinFrmUI.Volute.GlobalParas.WaterBodyColor.B, 256); |
| | | |
| | | if (pDisplayView.hasBuildThicknessBody()) |
| | | pDisplayView.ClearTopoShape(TopoTypeDisplay.EThicknessBody); |
| | | var tt = pDisplayView.buildWaterBody(theHydrProperties, pHydrGeomArcCurve); |
| | | if (tt.GetTipsId() != 1) |
| | | { |
| | | MessageBox.Show(tt.GetToolTips(), "3D提示"); |
| | | } |
| | | Invalidate(true); |
| | | pDisplayView.FitAll3DViews(true); |
| | | |
| | | |
| | | return tt; |
| | | } |
| | | public HydrEngineCSharp.ToolTips Edit3DWaterBody(HydrEngineCSharp.WaterBodyOuterSpParam pHydrGeomCurve) |
| | | { |
| | | if (!this._is3D) |
| | | return null; |
| | | if (pDisplayView.hasBuildThicknessBody()) |
| | | pDisplayView.ClearTopoShape(TopoTypeDisplay.EThicknessBody); |
| | | |
| | | var tt = pDisplayView.rebuildWaterBody(pHydrGeomCurve); |
| | | if (tt == null) |
| | | return null; |
| | | if (tt.GetTipsId() != 1) |
| | | { |
| | | pDisplayView.ClearTopoShape(TopoTypeDisplay.EWaterBody); |
| | | pDisplayView.FitAll3DViews(true); |
| | | MessageBox.Show(tt.GetToolTips(), "3D提示"); |
| | | } |
| | | Invalidate(true); |
| | | |
| | | return tt; |
| | | } |
| | | |
| | | public HydrEngineCSharp.ToolTips Edit3DWaterBody(HydrEngineCSharp.WaterBodyOuterArcParam pHydrGeomArcCurve) |
| | | { |
| | | if (!this._is3D) |
| | | return null; |
| | | if (pDisplayView.hasBuildThicknessBody()) |
| | | pDisplayView.ClearTopoShape(TopoTypeDisplay.EThicknessBody); |
| | | |
| | | var tt = pDisplayView.rebuildWaterBody(pHydrGeomArcCurve); |
| | | if (tt == null) |
| | | return null; |
| | | if (tt.GetTipsId() != 1) |
| | | { |
| | | pDisplayView.ClearTopoShape(TopoTypeDisplay.EWaterBody); |
| | | pDisplayView.FitAll3DViews(true); |
| | | MessageBox.Show(tt.GetToolTips(), "3D提示"); |
| | | } |
| | | Invalidate(true); |
| | | |
| | | return tt; |
| | | } |
| | | |
| | | #endregion |
| | | public virtual bool RemoveThicknessBody() |
| | | { |
| | | return pDisplayView.RemoveShow(TopoTypeDisplay.EThicknessBody); |
| | | } |
| | | public virtual bool RemoveWaterBody() |
| | | { |
| | | return pDisplayView.RemoveShow(TopoTypeDisplay.EWaterBody); |
| | | } |
| | | public virtual bool RemoveMidCurve() |
| | | { |
| | | return pDisplayView.RemoveShow(TopoTypeDisplay.E2DMidCurve); |
| | | } |
| | | public virtual bool RemoveSectCurve910() |
| | | { |
| | | pDisplayView.removeOuterSectionCurve(10); |
| | | return pDisplayView.removeOuterSectionCurve( 9); |
| | | } |
| | | public virtual bool HideSectCurve18() |
| | | { |
| | | for (int i= 1;i <= 8;i++) |
| | | pDisplayView.hideOuterSectionCurve(i); |
| | | return true; |
| | | } |
| | | public bool HideAll() |
| | | { |
| | | var ret = pDisplayView.HideTopoShape(TopoTypeDisplay.EAllBody); |
| | | //bool bSucc = pDisplayView.BeginTurbopumpTopoShape(DPumpHydr.WinFrmUI.Volute.GlobalParas.RootTopoShapeName); |
| | | Invalidate(true); |
| | | |
| | | return ret; |
| | | } |
| | | public bool ClearAll() |
| | | { |
| | | _isFirstSectShape18 = true; |
| | | var ret = pDisplayView.ClearTopoShape(TopoTypeDisplay.EAllBody); |
| | | //bool bSucc = pDisplayView.BeginTurbopumpTopoShape(DPumpHydr.WinFrmUI.Volute.GlobalParas.RootTopoShapeName); |
| | | Invalidate(true); |
| | | return ret; |
| | | } |
| | | |
| | | public void FitView() |
| | | { |
| | | pDisplayView.FitAll3DViews(true); |
| | | } |
| | | } |
| | | } |