Пример #1
0
        public ISection GetWeakAxisClone()
        {
            PredefinedSectionAngle clone = new PredefinedSectionAngle(b, t, d,
                                                                      I_w,
                                                                      I_z,
                                                                      S_w,
                                                                      S_z,
                                                                      r_w,
                                                                      r_z,
                                                                      new SectionAngle("", this.b, d, t, Common.AngleRotation.FlatLegBottom, Common.AngleOrientation.ShortLegVertical)
                                                                      );

            clone._I_x      = this.I_y;
            clone._I_y      = this.I_x;
            clone._S_x_Top  = this.S_yRight;
            clone._S_xBot   = this.S_yLeft;
            clone._S_yLeft  = this.S_xTop;
            clone._S_yRight = this.S_xBot;
            clone._Z_x      = this.Z_y;
            clone._Z_y      = this.Z_x;
            clone._r_x      = this.r_y;
            clone._r_y      = this.r_x;
            clone.elasticCentroidCoordinate.X = this.y_Bar;
            clone.elasticCentroidCoordinate.Y = this.x_Bar;
            clone.plasticCentroidCoordinate.X = this.y_pBar;
            clone.plasticCentroidCoordinate.Y = this.x_pBar;
            return(clone);
        }
Пример #2
0
        public ISection GetShape(string ShapeId, ShapeTypeSteel shapeType, AngleOrientation AngleOrientation = AngleOrientation.LongLegVertical, AngleRotation AngleRotation = AngleRotation.FlatLegBottom)
        {
            string           DEFAULT_EXCEPTION_STRING = "Selected shape is not supported. Specify a different shape.";
            AiscCatalogShape cs  = new AiscCatalogShape(ShapeId, null);
            CalcLog          log = new CalcLog();
            ISection         sec = null;

            switch (shapeType)
            {
            case ShapeTypeSteel.IShapeRolled:
                sec = new PredefinedSectionI(cs);
                break;

            case ShapeTypeSteel.IShapeBuiltUp:
                throw new Exception(DEFAULT_EXCEPTION_STRING);
                break;

            case ShapeTypeSteel.Channel:
                sec = new PredefinedSectionChannel(cs);
                break;

            case ShapeTypeSteel.Angle:
                sec = new PredefinedSectionAngle(cs, AngleOrientation, AngleRotation);
                break;

            case ShapeTypeSteel.TeeRolled:
                throw new Exception(DEFAULT_EXCEPTION_STRING);
                break;

            case ShapeTypeSteel.TeeBuiltUp:
                throw new Exception(DEFAULT_EXCEPTION_STRING);
                break;

            case ShapeTypeSteel.DoubleAngle:
                throw new Exception(DEFAULT_EXCEPTION_STRING);
                break;

            case ShapeTypeSteel.CircularHSS:
                sec = new PredefinedSectionCHS(cs);
                break;

            case ShapeTypeSteel.RectangularHSS:
                sec = new PredefinedSectionRHS(cs);
                break;

            case ShapeTypeSteel.Box:
                throw new Exception(DEFAULT_EXCEPTION_STRING);
                break;

            case ShapeTypeSteel.Rectangular:
                throw new Exception(DEFAULT_EXCEPTION_STRING);
                break;

            case ShapeTypeSteel.Circular:
                throw new Exception(DEFAULT_EXCEPTION_STRING);
                break;

            case ShapeTypeSteel.IShapeAsym:
                throw new Exception(DEFAULT_EXCEPTION_STRING);
                break;

            default:
                break;
            }

            return(sec);
        }