示例#1
0
 /// <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;
 }
示例#2
0
        /// <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;
        }