public override void SumAndSetRow(SpecGroupRow specGroupRow, List <ISpecElement> elems) { // Обозначения, Наименования, Кол, Массы ед, примечания specGroupRow.Mark = Mark; specGroupRow.Designation = Gost.Number; specGroupRow.Name = GetName(); double metersTotal = 0; double weightTotal = 0; foreach (var item in elems) { var bar = item as BarRunning; metersTotal += bar.Meters; //weightTotal += bar.WeightTotal; } metersTotal = RoundHelper.RoundWhole(metersTotal); weightTotal = RoundHelper.Round2Digits(metersTotal * Weight); specGroupRow.Count = metersTotal.ToString(); specGroupRow.Weight = Weight.ToString("0.000"); specGroupRow.Description = weightTotal.ToString(); }
private static int getLength(int lStart, int lEnd, int lDif, int hDif, int diam) { var dif = Math.Sqrt(lDif * lDif + hDif * hDif); return(RoundHelper.RoundWhole(lStart + lEnd + dif)); }
/// <summary> /// Определение стороны хомута2 /// </summary> private int getSideShackle2() { return(RoundHelper.RoundWhole(Side * 0.707)); }
/// <summary> /// Опрределение длины скобы /// </summary> /// <param name="h">Длина нахлеста скобы - вылет (от внутренней грани стержня)</param> /// <param name="t">Ширина скобы (по внутренней грани стержня)</param> /// <param name="d">Диаметр скобы</param> private static int CalcLength(int h, int t, int d) { return(RoundHelper.RoundWhole(2 * h + RoundHelper.Round5(t) + 0.58 * d)); }
/// <summary> /// Определение длины гнутого стержня. /// Округление до 1. /// </summary> /// <param name="l">Длина загиба</param> /// <param name="h">Высота загиба</param> /// <param name="diam">Диаметр</param> private static int getLength(int l, int h, int diam) { return(RoundHelper.RoundWhole(l + h - 1.15 * diam)); }