Table of Contents

Class CrossSectionFactoryHelper

Namespace
IdeaStatiCa.BimApiLink.Utils
Assembly
IdeaStatiCa.BimApiLink.dll

CrossSectionFactoryHelper

public static class CrossSectionFactoryHelper

Inheritance

Inherited Members

Methods

Box 2 - steel shape

public static void FillBox2(IdeaCrossSectionByParameters css, double bu, double bb, double hw, double b1, double tw, double tfu, double tfb)

Parameters

css IdeaCrossSectionByParameters

Parameters of CrossSectionParameter will be filled

bu double

Width of upper flange

bb double

Width of bottom flange

hw double

Height of web

b1 double

Web distance

tw double

Web thickness

tfu double

Upper flange thickness

tfb double

Bottom flange thickness

Circular shape - for steel or concrete shape

public static void FillCircle(IdeaCrossSectionByParameters css, double d)

Parameters

css IdeaCrossSectionByParameters

Parameters of CrossSectionParameter will be filled

d double

Diametrer of the shape

Fill parameters for cold formed C section

public static void FillColdFormedC(IdeaCrossSectionByParameters css, double Width, double Height, double Thickness, double Radius, double lip, bool mirrorZ = false)

Parameters

css IdeaCrossSectionByParameters

Parameters of CrossSectionParameter will be filled

Width double

Css width

Height double

Height of cross-section

Thickness double

Thickness

Radius double

Inside radius

lip double

Lip length

mirrorZ bool

Fill parameters for cold formed Z section

public static void FillColdFormedZ(IdeaCrossSectionByParameters css, double width, double height, double thickness, double radius, bool mirrorZ)

Parameters

css IdeaCrossSectionByParameters

Parameters of CrossSectionParameter will be filled

width double

Css width

height double

Height of cross-section

thickness double

Thickness

radius double

Inside radius

mirrorZ bool

Mirrored shape

Creates a new L shape css

public static void FillComposedDblLt(IdeaCrossSectionByParameters css, double h, double b, double th, double distance, bool shortLegUp = false, bool mirrorY = false)

Parameters

css IdeaCrossSectionByParameters

Parameters of CrossSectionParameter will be filled

h double

The height of css.

b double

The width of css.

th double

Thickness

distance double

Distance between ||

shortLegUp bool
mirrorY bool

Fills a double channel steel section. They form an open/front-to-front ][ shape.

public static void FillComposedDblUo(IdeaCrossSectionByParameters css, double b, double h, double tw, double th, double distance)

Parameters

css IdeaCrossSectionByParameters

Parameters of CrossSectionParameter will be filled

b double

The width of css

h double

The height of css

tw double

Web thickness

th double

Flange thickness

distance double

Distance between ][

Fill cross-section of shape rectangular for concrete sections

public static void FillCssRectangleHollow(IdeaCrossSectionByParameters css, double width, double height, double thickLeft, double thickRight, double thickTop, double thickBottom)

Parameters

css IdeaCrossSectionByParameters

Parameters of CrossSectionParameter will be filled

width double

The width of css.

height double

The height of css.

thickLeft double

The thickness at the left side.

thickRight double

The thickness at the rigth side.

thickTop double

The thickness at the top.

thickBottom double

The thickness at the bottom.

Fill massive pipe shape

public static void FillOHollow(IdeaCrossSectionByParameters css, double r, double t)

Parameters

css IdeaCrossSectionByParameters

Parameters of CrossSectionParameter will be filled

r double

The radius of circle.

t double

The thickness of wall.

Rectangle shape - massive concrete shape

public static void FillRectangle(IdeaCrossSectionByParameters css, double width, double height)

Parameters

css IdeaCrossSectionByParameters

Parameters of CrossSectionParameter will be filled

width double

Width of the rectangle

height double

Height of the rectangle

Rolled steel angle

public static void FillRolledAngle(IdeaCrossSectionByParameters css, double B, double D, double t, double rw, double r2, double C, bool mirrorZ = false, bool mirrorY = false)

Parameters

css IdeaCrossSectionByParameters

CrossSectionParameter to fill

B double

Width

D double

Depth

t double

Thickness

rw double

Root radius

r2 double

Toe radius

C double

Centroid position

mirrorZ bool

Z-axis mirror

mirrorY bool

Y-axis mirror

Steel circular hollow section

public static void FillRolledCHS(IdeaCrossSectionByParameters css, double r, double t)

Parameters

css IdeaCrossSectionByParameters

CrossSectionParameter to fill

r double

Radius

t double

Thickness

Rolled steel channel

public static void FillRolledChannel(IdeaCrossSectionByParameters css, double B, double D, double tw, double tf, double rw, double rf, double taperF, bool mirrorZ = false)

Parameters

css IdeaCrossSectionByParameters

CrossSectionParameter to fill

B double

Width

D double

Depth

tw double

Web thickness

tf double

Flange thickness

rw double

Root radius

rf double

Flange edge radius

taperF double

Flange taper

mirrorZ bool

Rolled steel I section

public static void FillRolledI(IdeaCrossSectionByParameters css, double b, double h, double s, double t, double r2, double tapperF, double r1)

Parameters

css IdeaCrossSectionByParameters

IdeaCrossSectionByParameters to fill

b double

Width

h double

Height

s double

Web thickness

t double

Flange thickness

r2 double

Inside radius

tapperF double

Flange tapper

r1 double

Flange edge rounding radius

Steel rectangular hollow section

public static void FillRolledRHS(IdeaCrossSectionByParameters css, double D, double B, double t, double r1, double r2, double d)

Parameters

css IdeaCrossSectionByParameters

CrossSectionParameter to fill

D double

depth

B double

width

t double

thickness

r1 double

inner radius

r2 double

outer radius

d double

web buckling depth

Rolled steel T section

public static void FillRolledT(IdeaCrossSectionByParameters css, double B, double H, double Tw, double Tf, double R, double R1, double R2, double tapperF, double tapperW, bool mirrorY = false)

Parameters

css IdeaCrossSectionByParameters

CrossSectionParameter to fill

B double

Width

H double

Height

Tw double

Web thickness

Tf double

Flange thickness

R double

Inside radius

R1 double

Flange edge rounding radius

R2 double

Web edge rounding radius

tapperF double

Flange tapper

tapperW double

Web tapper

mirrorY bool

Y-axis mirror

I shape - massive concrete shape

public static void FillShapeI(IdeaCrossSectionByParameters css, double h, double btf, double bbf, double htf, double hbf, double tw)

Parameters

css IdeaCrossSectionByParameters

Parameters of CrossSectionParameter will be filled

h double

Total height

btf double

Width of the upper part

bbf double

Width of the bottom part

htf double

Thickness of the upper part

hbf double

Thickness of the bottom part

tw double

Thinkness of the web

Creates a new L shape css - massive concrete shape

public static void FillShapeL(IdeaCrossSectionByParameters css, double h, double b, double th, double sh)

Parameters

css IdeaCrossSectionByParameters

Parameters of CrossSectionParameter will be filled

h double

The height of css.

b double

The width of css.

th double

The bottom flange thisckness.

sh double

The wall thickness.

T shape - massive concrete shape

public static void FillShapeT(IdeaCrossSectionByParameters css, double b, double h, double hf, double bw)

Parameters

css IdeaCrossSectionByParameters

Parameters of CrossSectionParameter will be filled

b double

Width of shape

h double

Height of shape

hf double

Top flange width

bw double

Wall width

T shape - massive concrete shape

public static void FillShapeTwh(IdeaCrossSectionByParameters css, double b, double h, double hf, double bwT, double bwB)

Parameters

css IdeaCrossSectionByParameters

Parameters of CrossSectionParameter will be filled

b double

Width of shape

h double

Height of shape

hf double

Flange thickness

bwT double

Web thickness top

bwB double

Web thickness bottom

Creates a U shape of css.

public static void FillShapeU(IdeaCrossSectionByParameters css, double bt, double bb, double h, double tb, double tl, double tr)

Parameters

css IdeaCrossSectionByParameters

Parameters of CrossSectionParameter will be filled

bt double

The width of U top flange.

bb double

The width of U bottom flange.

h double

The height of U shape.

tb double

The bottom deck thickness.

tl double

The left deck thickness.

tr double

The right deck thickness.

Welded I asymetrical - steel shape

public static void FillWeldedAsymI(IdeaCrossSectionByParameters css, double bu, double bb, double hw, double tw, double tfu, double tfb)

Parameters

css IdeaCrossSectionByParameters

Parameters of CrossSectionParameter will be filled

bu double

Width of upper flange

bb double

Width of bottom flange

hw double

Height of web

tw double

Web thickness

tfu double

Upper flange thickness

tfb double

Bottom flange thickness

Examples

This sample shows how to call this method./>

CrossSectionParameter css = new CrossSectionParameter();
css.Id = 4;
css.Material = new ReferenceElement(openStructModel.MatSteel.First());
double bu = 0.150;
double bb = 0.180;
double hw = 0.320;
double tw = 0.016;
double tfu = 0.014;
double tfb = 0.018;
CrossSectionFactory.FillWeldedAsymI(css, bu, bb, hw, tw, tfu, tfb);
openStructModel.AddObject(css);

Remarks

Dimension of assymetrical I section

Box 2 - steel shape

public static void FillWeldedBoxFlange(IdeaCrossSectionByParameters css, double bu, double bb, double hw, double b1, double tw, double tfu, double tfb)

Parameters

css IdeaCrossSectionByParameters

Parameters of CrossSectionParameter will be filled

bu double

Width of upper flange

bb double

Width of bottom flange

hw double

Height of web

b1 double

Web distance

tw double

Web thickness

tfu double

Upper flange thickness

tfb double

Bottom flange thickness

Fill steel section of welded I

public static void FillWeldedI(IdeaCrossSectionByParameters css, double bu, double hw, double tw, double tf)

Parameters

css IdeaCrossSectionByParameters

Parameters of CrossSectionParameter will be filled

bu double

Width of flange

hw double

Height of web

tw double

Web thickness

tf double

Flange thickness

Examples

This sample shows how to call this method./>

CrossSectionParameter css = new CrossSectionParameter();
css.Id = 1;
css.Material = new ReferenceElement(openStructModel.MatSteel.First());  // I have only one material, I take the first one
double bu = 0.2;
double hw = 0.4;
double tw = 0.025;
double tf = 0.02;
CrossSectionFactory.FillWeldedI(css, bu, hw, tw, tf);
openStructModel.AddObject(css);

Remarks

Dimension of welded I section

Fill steel section of welded T

public static void FillWeldedT(IdeaCrossSectionByParameters css, double b, double h, double tw, double tf, bool mirrorY = false)

Parameters

css IdeaCrossSectionByParameters

Parameters of CrossSectionParameter will be filled

b double

Width of flange

h double

Height of web

tw double

Web thickness

tf double

Flange thickness

mirrorY bool

T shape - massive concrete shape

public static void IdeaCrossSectionByParameters(IdeaCrossSectionByParameters css, double b, double h, double hf, double bwT, double bwB)

Parameters

css IdeaCrossSectionByParameters

Parameters of CrossSectionParameter will be filled

b double

Width of shape

h double

Height of shape

hf double

Flange thickness

bwT double

Web thickness top

bwB double

Web thickness bottom