/// <summary> /// Defines a set of rectangles for analysis with respect to /// y-axis, each occupying full height of section. The rectangles are rotated 90 deg., /// because internally the properties are calculated with respect to x-axis. /// </summary> /// <returns>List of analysis rectangles</returns> public override List <CompoundShapePart> GetCompoundRectangleYAxisList() { double FlangeThickness = this.t_f; double FlangeWidth = this.b_f; double FlangeOverhang = (FlangeWidth - t_w - 2.0 * r) / 2.0; r = k - t_f; CompoundShapePart LeftFlange = new CompoundShapePart(FlangeThickness, FlangeOverhang, new Point2D(0, b_f - FlangeOverhang / 2.0)); CompoundShapePart RightFlange = new CompoundShapePart(FlangeThickness, FlangeOverhang, new Point2D(0, FlangeOverhang / 2.0)); PartWithDoubleFillet LeftFillet = new PartWithSingleFillet(r, FlangeThickness, new Point2D(0, b_f - FlangeOverhang), false); PartWithDoubleFillet RightFillet = new PartWithSingleFillet(r, FlangeThickness, new Point2D(0, FlangeOverhang), true); CompoundShapePart Web = new CompoundShapePart(d, t_w, new Point2D(0, b_f / 2)); List <CompoundShapePart> rectY = new List <CompoundShapePart>() { LeftFlange, LeftFillet, Web, RightFillet, RightFlange }; return(rectY); }
/// <summary> /// Defines a set of rectangles for analysis with respect to /// x-axis, each occupying full width of section. /// </summary> /// <returns>List of analysis rectangles</returns> public override List<CompoundShapePart> GetCompoundRectangleXAxisList() { //double FlangeThickness = this.t_fTop; //double FlangeWidth = this.b_fTop; CompoundShapePart TopFlange = new CompoundShapePart(b_f, t_f, new Point2D(0, d / 2 - t_f / 2)); CompoundShapePart BottomFlange = new CompoundShapePart(b_f, t_f, new Point2D(0, -(d / 2 - t_f / 2))); PartWithDoubleFillet TopFillet = new PartWithSingleFillet(k, t_w, new Point2D(0, d / 2 - t_f), true); PartWithDoubleFillet BottomFillet = new PartWithSingleFillet(k, t_w, new Point2D(0, -(d / 2 - t_f)), false); CompoundShapePart Web = new CompoundShapePart(t_w, d - 2 * t_f - 2 * k, new Point2D(0, 0)); List<CompoundShapePart> rectX = new List<CompoundShapePart>() { TopFlange, TopFillet, Web, BottomFillet, BottomFlange }; return rectX; }
/// <summary> /// Defines a set of rectangles for analysis with respect to /// x-axis, each occupying full width of section. /// </summary> /// <returns>List of analysis rectangles</returns> public override List <CompoundShapePart> GetCompoundRectangleXAxisList() { //double FlangeThickness = this.t_fTop; //double FlangeWidth = this.b_fTop; CompoundShapePart TopFlange = new CompoundShapePart(b_f, t_f, new Point2D(0, d / 2 - t_f / 2)); CompoundShapePart BottomFlange = new CompoundShapePart(b_f, t_f, new Point2D(0, -(d / 2 - t_f / 2))); PartWithDoubleFillet TopFillet = new PartWithSingleFillet(k, t_w, new Point2D(0, d / 2 - t_f), true); PartWithDoubleFillet BottomFillet = new PartWithSingleFillet(k, t_w, new Point2D(0, -(d / 2 - t_f)), false); CompoundShapePart Web = new CompoundShapePart(t_w, d - 2 * t_f - 2 * k, new Point2D(0, 0)); List <CompoundShapePart> rectX = new List <CompoundShapePart>() { TopFlange, TopFillet, Web, BottomFillet, BottomFlange }; return(rectX); }
/// <summary> /// Defines a set of rectangles for analysis with respect to /// y-axis, each occupying full height of section. The rectangles are rotated 90 deg., /// because internally the properties are calculated with respect to x-axis. /// </summary> /// <returns>List of analysis rectangles</returns> public override List<CompoundShapePart> GetCompoundRectangleYAxisList() { double FlangeThickness = this.t_f; double FlangeWidth = this.b_f; double FlangeOverhang = (FlangeWidth - t_w - 2.0 * r) / 2.0; r = k - t_f; CompoundShapePart LeftFlange = new CompoundShapePart(FlangeThickness, FlangeOverhang, new Point2D(0, b_f - FlangeOverhang / 2.0)); CompoundShapePart RightFlange = new CompoundShapePart(FlangeThickness, FlangeOverhang, new Point2D(0, FlangeOverhang/2.0)); PartWithDoubleFillet LeftFillet = new PartWithSingleFillet(r, FlangeThickness, new Point2D(0, b_f - FlangeOverhang ), false); PartWithDoubleFillet RightFillet = new PartWithSingleFillet(r, FlangeThickness, new Point2D(0, FlangeOverhang), true); CompoundShapePart Web = new CompoundShapePart(d, t_w, new Point2D(0, b_f / 2)); List<CompoundShapePart> rectY = new List<CompoundShapePart>() { LeftFlange, LeftFillet, Web, RightFillet, RightFlange }; return rectY; }