| | |
| | | public int InitialParas( |
| | | ViewModel.HdrBaseInfo hdrBaseInfo, |
| | | ViewModel.GeomBaseInfo geomBaseInfo, |
| | | ViewModel.SectionBundleInfo sectionBundleInfo) |
| | | ViewModel.SectionBundleInfo sectionBundleInfo, |
| | | ViewModel.OutflowParas outflowParas) |
| | | { |
| | | if (IsSameBaseParas(hdrBaseInfo, geomBaseInfo, sectionBundleInfo)) |
| | | {//夿æ¯å¦ä¿®æ¹äº |
| | |
| | | this._geomBaseInfo = geomBaseInfo; |
| | | this._sectionBundleInfo = sectionBundleInfo; |
| | | |
| | | //åºå£ç´å¾æ åå |
| | | double outer_dia = 4.5 * Math.Pow(hdrBaseInfo.Q / 3600 / hdrBaseInfo.n, 1 / 3.0) * 1000; |
| | | //侧颿²çº¿ |
| | | var outflowParas3 = new OutflowParas(); |
| | | outflowParas3.Offset = ((int)((geomBaseInfo.D3 / 2 + sectionBundleInfo.H[8]) * 1.6 / 3 / 5) + 1) * 5; |
| | | outflowParas3.H1 = 5; |
| | | outflowParas3.H2 = 5; |
| | | outflowParas3.Dia = GetStdDia(outer_dia); |
| | | double height3 = 5 * (int)(((geomBaseInfo.D3 / 2 + sectionBundleInfo.H[8] / 2) * 1.5 + outflowParas3.Dia / 2) / 5 + 1); |
| | | outflowParas3.Heigh = height3; |
| | | outflowParas3.Septalradius = 2; |
| | | _parasControlCurve.InitialParas(hdrBaseInfo, geomBaseInfo, sectionBundleInfo); |
| | | _parasControlCurve.IsInvokeRefreshShapeAble = false; |
| | | _parasControlCurve.SetBindingData(outflowParas3); |
| | | _parasControlCurve.IsInvokeRefreshShapeAble = true; |
| | | //ä¸å¿åºå£ |
| | | var outflowParas1 = new OutflowParas(); |
| | | outflowParas1.Offset = 0; |
| | | outflowParas1.H1 = 5; |
| | | outflowParas1.H2 = 5; |
| | | outflowParas1.Dia = GetStdDia(outer_dia); |
| | | double height1 = 5 * (int)((((geomBaseInfo.D3 / 2 + sectionBundleInfo.H[8] / 2) * 1.4141 + outflowParas1.Dia / 2) / 5) + 1); |
| | | outflowParas1.Heigh = height1; |
| | | outflowParas1.Septalradius = 2; |
| | | _parasControlCenter.InitialParas(hdrBaseInfo, geomBaseInfo, sectionBundleInfo); |
| | | _parasControlCenter.IsInvokeRefreshShapeAble = false; |
| | | _parasControlCenter.SetBindingData(outflowParas1); |
| | | _parasControlCenter.IsInvokeRefreshShapeAble = true; |
| | | |
| | | //ä¾§é¢ç´çº¿ |
| | | var outflowParas2 = new OutflowParas(); |
| | | outflowParas2.Offset = (int)((geomBaseInfo.D3 + sectionBundleInfo.H[8]) / 2 + 0.5); |
| | | outflowParas2.H1 = 5; |
| | | outflowParas2.H2 = 5; |
| | | outflowParas2.Dia = GetStdDia(outer_dia); |
| | | double height2 = 5 * (int)(((outflowParas2.Dia - Math.Sqrt(4 * sectionBundleInfo.Area[8] / Math.PI)) / (2 * Math.Tan(4 * Math.PI / 180))) / 5 + 0.5); |
| | | if(height2 < geomBaseInfo.D3/ 2) |
| | | if(outflowParas != null) |
| | | { |
| | | height2 = geomBaseInfo.D3 * 0.75; |
| | | _sharp_type = outflowParas.ShapeStyle; |
| | | } |
| | | outflowParas2.Heigh = height2; |
| | | outflowParas2.Septalradius = 3; |
| | | _parasControlLine.InitialParas(hdrBaseInfo, geomBaseInfo, sectionBundleInfo); |
| | | _parasControlLine.IsInvokeRefreshShapeAble = false; |
| | | _parasControlLine.SetBindingData(outflowParas2); |
| | | _parasControlLine.IsInvokeRefreshShapeAble = true; |
| | | // |
| | | InitialCtrlDefaultParas(hdrBaseInfo, geomBaseInfo, sectionBundleInfo, outflowParas); |
| | | |
| | | //åå¼§ä¸å¿ |
| | | var outflowParas4 = new OutflowParas(); |
| | | outflowParas4.Offset = 0; |
| | | outflowParas4.H1 = 5; |
| | | outflowParas4.H2 = 5; |
| | | outflowParas4.Dia = GetStdDia(outer_dia); |
| | | double height4 = 5 * (int)((((geomBaseInfo.D3 / 2 + sectionBundleInfo.H[8] / 2) * 1.4141 + outflowParas4.Dia / 2) / 5) + 1); |
| | | outflowParas4.Heigh = height4; |
| | | outflowParas4.Septalradius = 3; |
| | | outflowParas4.R1 = (int)((outflowParas4.Dia * 11 / 10 / 10) + 1) * 10; |
| | | outflowParas4.R2 = (int)(outflowParas4.Dia * 3 / 4 / 10) * 10; |
| | | _parasControlArcCenter.InitialParas(hdrBaseInfo, geomBaseInfo, sectionBundleInfo); |
| | | _parasControlArcCenter.IsInvokeRefreshShapeAble = false; |
| | | _parasControlArcCenter.SetBindingData(outflowParas4); |
| | | _parasControlArcCenter.IsInvokeRefreshShapeAble = true; |
| | | |
| | | //åå¼§ä¾§é¢ |
| | | var outflowParas5 = new OutflowParas(); |
| | | outflowParas5.Offset = ((int)((geomBaseInfo.D3 / 2 + sectionBundleInfo.H[8]) * 1.6 / 3 / 5) + 1) * 5; |
| | | outflowParas5.H1 = 5; |
| | | outflowParas5.H2 = 5; |
| | | outflowParas5.Dia = GetStdDia(outer_dia); |
| | | double height5 = 5 * (int)(((geomBaseInfo.D3 / 2 + sectionBundleInfo.H[8] / 2) * 1.5 + outflowParas3.Dia / 2) / 5 + 1); |
| | | outflowParas5.Heigh = height5; |
| | | outflowParas5.Septalradius = 3; |
| | | outflowParas5.R1 = (int)(((geomBaseInfo.D3 / 2 + sectionBundleInfo.H[8]) * 2.0 / 10) + 1) * 10; ; |
| | | outflowParas5.R2 = outflowParas5.CalR2(hdrBaseInfo, geomBaseInfo, sectionBundleInfo); |
| | | _parasControlArcSide.InitialParas(hdrBaseInfo, geomBaseInfo, sectionBundleInfo); |
| | | _parasControlArcSide.IsInvokeRefreshShapeAble = false; |
| | | _parasControlArcSide.SetBindingData(outflowParas5); |
| | | _parasControlArcSide.IsInvokeRefreshShapeAble = true; |
| | | |
| | | |
| | | if (_sharp_type == eOutflowShapeStyle.æªç¥) |
| | | { |
| | |
| | | return 1; |
| | | } |
| | | |
| | | private void InitialCtrlDefaultParas( |
| | | ViewModel.HdrBaseInfo hdrBaseInfo, |
| | | ViewModel.GeomBaseInfo geomBaseInfo, |
| | | ViewModel.SectionBundleInfo sectionBundleInfo, |
| | | ViewModel.OutflowParas outflowParas) |
| | | { |
| | | //åºå£ç´å¾æ åå |
| | | double outer_dia = 4.5 * Math.Pow(hdrBaseInfo.Q / 3600 / hdrBaseInfo.n, 1 / 3.0) * 1000; |
| | | //侧颿²çº¿ |
| | | OutflowParas outflowParas侧颿²çº¿ = null; |
| | | if(outflowParas != null && outflowParas.ShapeStyle == eOutflowShapeStyle.ä¾§é¢åºå£_æ²çº¿è¿æ¥) |
| | | { |
| | | outflowParas侧颿²çº¿ = outflowParas; |
| | | } |
| | | else |
| | | { |
| | | outflowParas侧颿²çº¿ = new OutflowParas(); |
| | | outflowParas侧颿²çº¿.Offset = ((int)((geomBaseInfo.D3 / 2 + sectionBundleInfo.H[8]) * 1.6 / 3 / 5) + 1) * 5; |
| | | outflowParas侧颿²çº¿.H1 = 5; |
| | | outflowParas侧颿²çº¿.H2 = 5; |
| | | outflowParas侧颿²çº¿.Dia = GetStdDia(outer_dia); |
| | | double height3 = 5 * (int)(((geomBaseInfo.D3 / 2 + sectionBundleInfo.H[8] / 2) * 1.5 + outflowParas侧颿²çº¿.Dia / 2) / 5 + 1); |
| | | outflowParas侧颿²çº¿.Heigh = height3; |
| | | outflowParas侧颿²çº¿.Septalradius = 2; |
| | | } |
| | | _parasControlCurve.InitialParas(hdrBaseInfo, geomBaseInfo, sectionBundleInfo); |
| | | _parasControlCurve.IsInvokeRefreshShapeAble = false; |
| | | _parasControlCurve.SetBindingData(outflowParas侧颿²çº¿); |
| | | _parasControlCurve.IsInvokeRefreshShapeAble = true; |
| | | //ä¸å¿åºå£ |
| | | OutflowParas outflowParasä¸å¿åºå£ = null; |
| | | if (outflowParas != null && outflowParas.ShapeStyle == eOutflowShapeStyle.ä¸å¿åºå£ && outflowParas.LinkStyle == eOutflowLinkStyle.æ²çº¿) |
| | | { |
| | | outflowParasä¸å¿åºå£ = outflowParas; |
| | | } |
| | | else |
| | | { |
| | | outflowParasä¸å¿åºå£ = new OutflowParas(); |
| | | outflowParasä¸å¿åºå£.Offset = 0; |
| | | outflowParasä¸å¿åºå£.H1 = 5; |
| | | outflowParasä¸å¿åºå£.H2 = 5; |
| | | outflowParasä¸å¿åºå£.Dia = GetStdDia(outer_dia); |
| | | double height1 = 5 * (int)((((geomBaseInfo.D3 / 2 + sectionBundleInfo.H[8] / 2) * 1.4141 + outflowParasä¸å¿åºå£.Dia / 2) / 5) + 1); |
| | | outflowParasä¸å¿åºå£.Heigh = height1; |
| | | outflowParasä¸å¿åºå£.Septalradius = 2; |
| | | } |
| | | _parasControlCenter.InitialParas(hdrBaseInfo, geomBaseInfo, sectionBundleInfo); |
| | | _parasControlCenter.IsInvokeRefreshShapeAble = false; |
| | | _parasControlCenter.SetBindingData(outflowParasä¸å¿åºå£); |
| | | _parasControlCenter.IsInvokeRefreshShapeAble = true; |
| | | |
| | | //ä¾§é¢ç´çº¿ |
| | | OutflowParas outflowParasä¾§é¢ç´çº¿ = null; |
| | | if (outflowParas != null && outflowParas.ShapeStyle == eOutflowShapeStyle.ä¾§é¢åºå£_ç´çº¿è¿æ¥ && outflowParas.LinkStyle == eOutflowLinkStyle.æ²çº¿) |
| | | { |
| | | outflowParasä¾§é¢ç´çº¿ = outflowParas; |
| | | } |
| | | else |
| | | { |
| | | outflowParasä¾§é¢ç´çº¿ = new OutflowParas(); |
| | | outflowParasä¾§é¢ç´çº¿.Offset = (int)((geomBaseInfo.D3 + sectionBundleInfo.H[8]) / 2 + 0.5); |
| | | outflowParasä¾§é¢ç´çº¿.H1 = 5; |
| | | outflowParasä¾§é¢ç´çº¿.H2 = 5; |
| | | outflowParasä¾§é¢ç´çº¿.Dia = GetStdDia(outer_dia); |
| | | double height2 = 5 * (int)(((outflowParasä¾§é¢ç´çº¿.Dia - Math.Sqrt(4 * sectionBundleInfo.Area[8] / Math.PI)) / (2 * Math.Tan(4 * Math.PI / 180))) / 5 + 0.5); |
| | | if (height2 < geomBaseInfo.D3 / 2) |
| | | { |
| | | height2 = geomBaseInfo.D3 * 0.75; |
| | | } |
| | | outflowParasä¾§é¢ç´çº¿.Heigh = height2; |
| | | outflowParasä¾§é¢ç´çº¿.Septalradius = 3; |
| | | } |
| | | _parasControlLine.InitialParas(hdrBaseInfo, geomBaseInfo, sectionBundleInfo); |
| | | _parasControlLine.IsInvokeRefreshShapeAble = false; |
| | | _parasControlLine.SetBindingData(outflowParasä¾§é¢ç´çº¿); |
| | | _parasControlLine.IsInvokeRefreshShapeAble = true; |
| | | |
| | | //åå¼§ä¸å¿ |
| | | OutflowParas outflowParasåå¼§ä¸å¿ = null; |
| | | if (outflowParas != null && outflowParas.ShapeStyle == eOutflowShapeStyle.ä¸å¿åºå£ && outflowParas.LinkStyle == eOutflowLinkStyle.ç´çº¿åå¼§) |
| | | { |
| | | outflowParasåå¼§ä¸å¿ = outflowParas; |
| | | } |
| | | else |
| | | { |
| | | outflowParasåå¼§ä¸å¿ = new OutflowParas(); |
| | | outflowParasåå¼§ä¸å¿.Offset = 0; |
| | | outflowParasåå¼§ä¸å¿.H1 = 5; |
| | | outflowParasåå¼§ä¸å¿.H2 = 5; |
| | | outflowParasåå¼§ä¸å¿.Dia = GetStdDia(outer_dia); |
| | | double height4 = 5 * (int)((((geomBaseInfo.D3 / 2 + sectionBundleInfo.H[8] / 2) * 1.4141 + outflowParasåå¼§ä¸å¿.Dia / 2) / 5) + 1); |
| | | outflowParasåå¼§ä¸å¿.Heigh = height4; |
| | | outflowParasåå¼§ä¸å¿.Septalradius = 3; |
| | | outflowParasåå¼§ä¸å¿.R1 = (int)((outflowParasåå¼§ä¸å¿.Dia * 11 / 10 / 10) + 1) * 10; |
| | | outflowParasåå¼§ä¸å¿.R2 = (int)(outflowParasåå¼§ä¸å¿.Dia * 3 / 4 / 10) * 10; |
| | | } |
| | | _parasControlArcCenter.InitialParas(hdrBaseInfo, geomBaseInfo, sectionBundleInfo); |
| | | _parasControlArcCenter.IsInvokeRefreshShapeAble = false; |
| | | _parasControlArcCenter.SetBindingData(outflowParasåå¼§ä¸å¿); |
| | | _parasControlArcCenter.IsInvokeRefreshShapeAble = true; |
| | | |
| | | //åå¼§ä¾§é¢ |
| | | OutflowParas outflowParasåå¼§ä¾§é¢ = null; |
| | | if (outflowParas != null && outflowParas.ShapeStyle == eOutflowShapeStyle.ä¾§é¢åºå£_æ²çº¿è¿æ¥ && outflowParas.LinkStyle == eOutflowLinkStyle.ç´çº¿åå¼§) |
| | | { |
| | | outflowParasåå¼§ä¾§é¢ = outflowParas; |
| | | } |
| | | else |
| | | { |
| | | outflowParasåå¼§ä¾§é¢ = new OutflowParas(); |
| | | outflowParasåå¼§ä¾§é¢.Offset = ((int)((geomBaseInfo.D3 / 2 + sectionBundleInfo.H[8]) * 1.6 / 3 / 5) + 1) * 5; |
| | | outflowParasåå¼§ä¾§é¢.H1 = 5; |
| | | outflowParasåå¼§ä¾§é¢.H2 = 5; |
| | | outflowParasåå¼§ä¾§é¢.Dia = GetStdDia(outer_dia); |
| | | double height5 = 5 * (int)(((geomBaseInfo.D3 / 2 + sectionBundleInfo.H[8] / 2) * 1.5 + outflowParas侧颿²çº¿.Dia / 2) / 5 + 1); |
| | | outflowParasåå¼§ä¾§é¢.Heigh = height5; |
| | | outflowParasåå¼§ä¾§é¢.Septalradius = 3; |
| | | outflowParasåå¼§ä¾§é¢.R1 = (int)(((geomBaseInfo.D3 / 2 + sectionBundleInfo.H[8]) * 2.0 / 10) + 1) * 10; ; |
| | | outflowParasåå¼§ä¾§é¢.R2 = outflowParasåå¼§ä¾§é¢.CalR2(hdrBaseInfo, geomBaseInfo, sectionBundleInfo); |
| | | } |
| | | _parasControlArcSide.InitialParas(hdrBaseInfo, geomBaseInfo, sectionBundleInfo); |
| | | _parasControlArcSide.IsInvokeRefreshShapeAble = false; |
| | | _parasControlArcSide.SetBindingData(outflowParasåå¼§ä¾§é¢); |
| | | _parasControlArcSide.IsInvokeRefreshShapeAble = true; |
| | | } |
| | | |
| | | private bool IsSameBaseParas( |
| | | ViewModel.HdrBaseInfo hdrBaseInfo, |
| | | ViewModel.GeomBaseInfo geomBaseInfo, |