/// <summary> /// Konstruktor klasy reprezentującej strzemiona /// </summary> /// <param name="legs">Ilość ramion strzemion</param> /// <param name="fi">Średnica prętów strzemion</param> /// <param name="steel">Stal zbrojeniowa strzemion</param> /// <param name="s">Rozstaw podłużny strzemion w mm</param> /// <param name="alfa">Kąt strzemion w stosunku do osi elementu w stopniach</param> public Stirrups(int legs, double fi, Steel steel, double s, double alfa) { Legs = legs; Fi = fi; Asw = Math.PI * (Fi / 2) * (Fi / 2) * Legs; CurrentSteel = steel; Swd = s; Alfa = alfa; }
/// <summary> /// Konstruktor przekroju /// </summary> /// <param name="concrete">Obiekt reprezentujący klasę betonu dla przekroju</param> /// <param name="steel">Obiekt reprezentujący klasę stali zbrojeniowej w przekroju</param> /// <param name="d">Średnica przekroju w milimetrach</param> /// <param name="fiB">Średnica prętów zbrojenia w mm</param> /// <param name="c">Otulina zbrojenia w mm</param> /// <param name="noB">Ilość prętów zbrojenia w przekroju - MINIMUM 4 sztuki!</param> public CircleSection(Concrete concrete, Steel steel, double d, double fiB, double c, int noB) { this.D = d; this.FiB = fiB; this.C = c; this.NoB = noB; CurrentConcrete = concrete; CurrentSteel = steel; this.Ab = (fiB / 2) * (fiB / 2) * Math.PI; this.A = c + fiB / 2; SetCreepFactor(0); }
/// <summary> /// Konstruktor przekroju na podstawie ilości prętów zbrojenia w przekroju /// </summary> /// <param name="concrete">Obiekt reprezentujący klasę betonu dla przekroju</param> /// <param name="steel">Obiekt reprezentujący klasę stali zbrojeniowej w przekroju</param> /// <param name="b">Szerokość przekroju w milimetrach</param> /// <param name="h">Wysokość przekroju w milimetrach</param> /// <param name="fi1">Średnica zbrojenia As1 w mm</param> /// <param name="noOfBars1">Ilość prętów zbrojenia As1 w sztukach (liczba całkowita)</param> /// <param name="c1">Otulina zbrojenia As1 w mm</param> /// <param name="fi2">Średnica zbrojenia As2 w mm</param> /// <param name="noOfBars2">Ilość prętów zbrojenia As2 w sztukach (liczba całkowita)</param> /// <param name="c2">Otulina zbrojenia As2 w mm</param> public RectangleSection(Concrete concrete, Steel steel, double b, double h, double fi1, int noOfBars1, double c1, double fi2, int noOfBars2, double c2, Stirrups stirrups) { this.B = b; this.H = h; this.Fi1 = fi1; this.C1 = c1; this.Fi2 = fi2; this.C2 = c2; this.Spacing1 = (b - 2 * c1 - fi1) / (noOfBars1 - 1); this.Spacing2 = (b - 2 * c2 - fi2) / (noOfBars2 - 1); CurrentConcrete = concrete; CurrentSteel = steel; A1 = c1 + 0.5 * fi1; A2 = c2 + 0.5 * fi2; if (fi1 == 0 || noOfBars1 == 0) { c1 = 0; A1 = 0; As1 = 0.000000001; } else { As1 = (fi1 / 2) * (fi1 / 2) * Math.PI * noOfBars1; A1 = c1 + 0.5 * fi1; } if (fi2 == 0 || noOfBars2 == 0) { A2 = 0; c2 = 0; As2 = 0.000000001; } else { As2 = (fi2 / 2) * (fi2 / 2) * Math.PI * noOfBars2; A2 = c2 + 0.5 * fi2; } SetCreepFactor(0); MyStirrups = stirrups; }
/// <summary> /// Konstruktor przekroju na podstawie rozstawu zbrojenia /// </summary> /// <param name="concrete">Obiekt reprezentujący klasę betonu dla przekroju</param> /// <param name="steel">Obiekt reprezentujący klasę stali zbrojeniowej w przekroju</param> /// <param name="b">Szerokość przekroju w milimetrach</param> /// <param name="h">Wysokość przekroju w milimetrach</param> /// <param name="fi1">Średnica zbrojenia As1 w mm</param> /// <param name="spacing1">Rozstaw prętów zbrojenia As1 w mm</param> /// <param name="c1">Otulina zbrojenia As1 w mm</param> /// <param name="fi2">Średnica zbrojenia As2 w mm</param> /// <param name="spacing2">Rozstaw prętów zbrojenia As2 w mm</param> /// <param name="c2">Otulina zbrojenia As2 w mm</param> public RectangleSection(Concrete concrete, Steel steel, double b, double h, double fi1, double spacing1, double c1, double fi2, double spacing2, double c2, Stirrups stirrups) { this.B = b; this.H = h; this.Fi1 = fi1; this.C1 = c1; this.Spacing1 = spacing1; this.Fi2 = fi2; this.C2 = c2; this.Spacing2 = spacing2; CurrentConcrete = concrete; CurrentSteel = steel; if (fi1 == 0) { c1 = 0; A1 = 0; As1 = 0.000000001; } else { As1 = (fi1 / 2) * (fi1 / 2) * Math.PI * b / spacing1; A1 = c1 + 0.5 * fi1; } if (fi2 == 0) { A2 = 0; c2 = 0; As2 = 0.000000001; } else { As2 = (fi2 / 2) * (fi2 / 2) * Math.PI * b / spacing2; A2 = c2 + 0.5 * fi2; } SetCreepFactor(0); MyStirrups = stirrups; }
RectangleSection(Concrete concrete, Steel steel, double b, double h, double fi1, double spacing1, double c1, double As1, double fi2, double spacing2, double c2, double As2, Stirrups stirrups, double fi) { this.B = b; this.H = h; this.Fi1 = fi1; this.C1 = c1; this.Spacing1 = spacing1; this.Fi2 = fi2; this.C2 = c2; this.Spacing2 = spacing2; CurrentConcrete = concrete; CurrentSteel = steel; this.As1 = As1; this.As2 = As2; if (As1 == 0) { c1 = 0; A1 = 0; } else { A1 = c1 + 0.5 * fi1; } if (As2 == 0) { A2 = 0; c2 = 0; } else { A2 = c2 + 0.5 * fi2; } SetCreepFactor(fi); MyStirrups = stirrups; }