예제 #1
0
        private StatCrossSection GetWbeamStatCrossSection(sFrame jb, StatMaterial mat)
        {
            double a;
            double tw;
            double d;
            double tf;
            double bf;
            double nw;
            double ix;
            double sx;
            double rx;
            double zx;
            double iy;
            double sy;
            double ry;
            double zy;
            double rts;
            double ho;
            double j;
            double c;

            var t = jb;

            jb.crossSection.GetWBeamDimensions(jb.crossSection.shapeName, out a, out tw, out d, out tf, out bf, out nw, out ix, out sx, out rx, out zx, out iy, out sy, out ry, out zy, out rts, out ho, out j, out c);

            StatCrossSection cs = new StatCrossSection(jb.crossSection.shapeName, mat);

            //cs.Wbeam(d * 0.0254, bf * 0.0254, tf * 0.0254, tw * 0.0254);
            double ijFac   = 4.162314256E-07;
            double areaFac = 0.00064516;

            cs.Generic(a * areaFac, ix * ijFac, iy * ijFac, j * ijFac);

            return(cs);
        }
예제 #2
0
        private StatCrossSection GetHSSRectangleStatCrossSection(sFrame jb, StatMaterial mat)
        {
            double w; ///list of variables
            double d;
            double t;
            double ar;
            double ix;
            double sx;
            double rx;
            double zx;
            double iy;
            double sy;
            double ry;
            double zy;
            double jt;
            double ct;
            double nw;

            jb.crossSection.GetHSSRecDimensions(jb.crossSection.shapeName, out w, out d, out t, out ar, out ix, out sx, out rx, out zx, out iy, out sy, out ry, out zy, out jt, out ct, out nw);

            StatCrossSection cs = new StatCrossSection(jb.crossSection.shapeName, mat);

            //cs.RectangleHollow(w * 0.0254, d * 0.0254, t * 0.0254);
            double ijFac   = 4.162314256E-07;
            double areaFac = 0.00064516;

            cs.Generic(ar * areaFac, ix * ijFac, iy * ijFac, jt * ijFac);

            return(cs);
        }
예제 #3
0
        private StatCrossSection GetRectangleStatCrossSection(sFrame jb, StatMaterial mat)
        {
            StatCrossSection cs = new StatCrossSection(jb.crossSection.shapeName, mat);

            //currently cannot trust Millipede
            if (jb.crossSection.dimensions.Count > 0)
            {
                if (jb.crossSection.dimensions.Count == 2)
                {
                    double wid = jb.crossSection.dimensions[0];
                    double dep = jb.crossSection.dimensions[1];

                    double area;
                    double iyy;
                    double izz;
                    double jxx;
                    GetRectangularSolidProperties(wid, dep, out area, out iyy, out izz, out jxx);

                    //no factor as it is calculated in metric
                    cs.Generic(area, iyy, izz, jxx);

                    //cs.RectangleSolid(jb.crossSection.dimensions[0], jb.crossSection.dimensions[1]);
                }
                else if (jb.crossSection.dimensions.Count == 3)
                {
                    double wid = jb.crossSection.dimensions[0];
                    double dep = jb.crossSection.dimensions[1];
                    double th  = jb.crossSection.dimensions[2];

                    double area;
                    double iyy;
                    double izz;
                    double jxx;
                    GetRectangularHollowProperties(wid, dep, th, out area, out iyy, out izz, out jxx);

                    //no factor as it is calculated in metric
                    cs.Generic(area, iyy, izz, jxx);

                    //cs.RectangleHollow(jb.crossSection.dimensions[0], jb.crossSection.dimensions[1], jb.crossSection.dimensions[2]);
                }
            }
            return(cs);
        }
예제 #4
0
        private StatCrossSection GetHSSRoundStatCrossSection(sFrame jb, StatMaterial mat)
        {
            double od;
            double th;
            double a;
            double i;
            double s;
            double r;
            double z;
            double j;
            double c;
            double nw;

            jb.crossSection.GetHSSRoundDimensions(jb.crossSection.shapeName, out od, out th, out a, out i, out s, out r, out z, out j, out c, out nw);
            StatCrossSection cs = new StatCrossSection(jb.crossSection.shapeName, mat);

            //cs.RectangleHollow(w * 0.0254, d * 0.0254, t * 0.0254);
            double ijFac   = 4.162314256E-07;
            double areaFac = 0.00064516;

            cs.Generic(a * areaFac, i * ijFac, i * ijFac, j * ijFac);

            return(cs);
        }