IES ShapeBuilder User's Guide
Commands

Script Command Categories

Command Description Example Input Example Result

User Interface

(BACK TO TOP)

Clear Clears all text in the command line and clears any stored variables
Browse Launches the Open dialog box to navigate to an external script to run
Up/Down Arrows Use the "Up Arrow" and "Down Arrow" keys to navigate the command line history
Esc Press the "Esc" key while a script is running to end the script run

General

(BACK TO TOP)

Help() Launches the Help File and navigates to the script overview page
Help(command) Launches the Help File and navigates to the specified command Help("AddDatabaseShape") Launches the Help File and navigates to the AddDatabaseShape command
SetUnits(style) Sets the unit style to a default or custom style in the program SetUnits("Canadian") Sets the programs unit style to Canadian
GenerateDimensions() Creates typical dimensions for overall height and width and distances to the centroid
ZoomExtents() Zooms to fit the entire cross-section in the window
Print(List<names>) Prints the list of items in a comma-delimited format Print(Shapes()) Prints the list of shapes in the project in a comma-delimited format
List(List<names>) Lists the list of items with one item per line List(Shapes()) Lists the list of shapes with one item per line
SaveAs(path) Saves the ShapeBuilder file to a specified path SaveAs("C:/Users/your.login/Desktop/ShapeFile.sbp") Saves the current ShapeBuilder file to the desktop as ShapeFile.sbp
PickMaterial() Opens the Material Database dialog box SetMaterial("S1", PickMaterial()) Opens the Material Database dialog box to define a material for shape S1
PickDatabaseSection() Opens the Shape Database dialog box AddDatabaseShape(PickDatabaseSection()) Opens the Shape Database dialog box to define a database section to be added to the model

Import CAD

(BACK TO TOP)

GetCADFiles(folder) Returns a list of CAD files in a specified folder List(GetCADFiles("C:/Users/your.login/Desktop/CADFolder")) Prints a list of the cad files located in CADFolder on the desktop
ImportCAD(path) Imports the CAD file located at the specified path ImportCAD("C:/Users/your.login/Desktop/CadDrawing.dxf") Imports the CadDrawing.dxf file from the desktop
ImportCAD(path, material) Imports the CAD file located at the specified path with the specified material ImportCAD("C:/Users/your.login/Desktop/CadDrawing.dxf", "ASTM A36") Imports the CadDrawing.dxf file from the desktop and sets the material to ASTM A36
ImportCAD(path, material, layer) Imports the specified layers from the CAD file located at the specified path with the specified material ImportCAD("C:/Users/your.login/Desktop/CadDrawing.dxf", "ASTM A36", "Layer1") Imports Layer1 from the CadDrawing.dxf file from the desktop and sets the material to ASTM A36
ImportCAD(path, multiplier, arcDivisions, material, layer) Imports the specified layers from the CAD file located at the specified path with the specified material ImportCAD("C:/Users/your.login/Desktop/CadDrawing.dxf", 2, 10, "ASTM A36", "Layer1") Imports Layer1 (scaled by a factor of two) from the CadDrawing.dxf file from the desktop and sets the material to ASTM A36. Ten line segments will be used to approximate arc and circle shapes.

Add Shapes

(BACK TO TOP)

Shapes() Returns a list of all the shapes in the project Print(Shapes()) Prints the list of all the shapes in the project in a comma-delimited format
AddShape(List, List) Adds a shape to the model based on lists of the X and Y coordinates AddShape(new List<double>() {0 , 1 , 0}, new List<double>() {0 , 0 , 1}) Adds a triangle to the model with points at {0, 0}, {1, 0}, and {0, 1}
AddDatabaseShape(name) Adds a database shape to the model AddDatabaseShape("L5x5x1/2") Adds a L5x5x1/2 to the model
AddAngle(verticalLeg, horizontalLeg, thickness) Adds a parametric angle to the model AddAngle(5, 5, 0.5) Adds a L5x5x1/2 angle to the model
AddChannel(depth, width, tf, tw) Adds a parametric channel to the model AddChannel(10, 3, 0.5, 0.25) Adds a 10 in deep by 3 inch wide channel to the model
AddCircle(diameter) Adds a parametric circle to the model AddCircle(6) Adds a 6 in diameter circle to the model
AddDoubleAngle(depth, totalWidth, thickness, spacing) Adds a parametric double angle to the model AddDoubleAngle(5, 10, 0.5, 0) Adds a 2L5x5x1/2 double to the model
AddFillet(radius) Adds a parametric fillet to the model AddFillet(0.75) Adds a 0.75 in radius fillet to the model
AddHat(depth, width, lip, thickness) Adds a parametric hat to the model AddHat(5, 2, 1, 0.25) Adds a 5 in deep by 2 in wide hat section to the model
AddI(depth, width, tf, tw) Adds a parametric I-shape to the model AddI(10, 5, 0.75, 0.5) Adds a 10 in deep by 5 in wide hat section to the model
AddIsoscelesTriangle(depth, width) Adds a parametric isosceles triangle to the model AddIsoscelesTriangle(4, 3) Adds a 4 in deep by 3 in wide isosceles triangle to the model
AddPipe(outsideDiameter, insideDiameter) Adds a parametric pipe to the model AddPipe(12, 11.5) Adds a 12 in outside diameter by 11.5 in inside diameter pipe to the model
AddPipeSection(radius, thickness, alpha) Adds a parametric pipe section to the model AddPipeSection(6, 0.25, 90) Adds a 90 degree pipe sector with a radius of 6 in and thickness of 0.25 in to the model
AddQuarterCircle(radius) Adds a parametric quarter circle to the model AddQuarterCircle(3) Adds a quarter circle with a 3 in radius to the model
AddRectangle(depth, width) Adds a parametric rectangle to the model AddRectangle(6, 3) Adds a 6 in deep by 3 in wide rectangle to the model
AddRectangularTube(depth, width, thickness) Adds a parametric rectangular tube to the model AddRectangularTube(6, 3, 0.25) Adds a 6 in deep by 3 in wide rectangular tube of thickness 0.25 in to the model
AddRegularPolygon(numberSides, sideLength) Adds a parametric regular polygon to the model AddRegularPolygon(8, 2) Adds an octagon with 2 in sides to the model
AddRightTriangle(depth, width) Adds a parametric right triangle to the model AddRightTriangle(4, 2) Adds a 4 in deep by 2 in wide right triangle to the model
AddSpandrel(depth, width, stemThickness, flangeThickness) Adds a parametric spandrel to the model AddSpandrel(12, 24, 18, 4) Adds a 12 in deep by 24 in wide spandrel to the model
AddTaperedTee(depth, width, tf, twt, twb) Adds a parametric tapered tee to the model AddTaperedTee(8, 6, 0.75, 0.75, 0.5) Adds a 8 in deep by 6 in wide tapered tee to the model
AddTee(depth, width, tf, tw) Adds a parametric tee to the model AddTee(8, 6, 0.75, 0.5) Adds a 8 in deep by 6 in wide tee to the model
AddTrapezoid(depth, baseWidth, leftOffset, rightOffset) Adds a parametric trapezoid to the model AddTrapezoid(6, 4, 2, 1) Adds a 6 in deep by 4 in wide trapezoid to the model
AddZee(depth, width, tf, tw) Adds a parametric zee to the model AddZee(6, 3, 0.75, 0.5) Adds a 6 in deep by 3 in wide zee to the model
AddRolledAngle(depth, width, thickness, centerFillet, edgeFillet) Adds a parametric rolled angle to the model AddRolledAngle(6, 4, 0.375, 0.5, 0.25) Adds a 6 in deep by 4 in wide rolled angle to the model
AddRolledChannel(depth, width, tw, tf1, tf2, centerFillet, edgeFillet) Adds a parametric rolled channel to the model AddRolledChannel(16, 4, 0.75, 0.70, 0.5, 0.65, 0.375) Adds a 16 in deep by 4 in wide rolled channel to the model
AddRolledDoubleAngle(depth, width, thickness, centerFillet, edgeFillet, spacing) Adds a parametric rolled double angle to the model AddRolledDoubleAngle(6, 12, 0.375, 0.5, 0.25, 0.75) Adds a 6 in deep by 12 inch wide rolled double angle to the model
AddRolledI(depth, width, web, flangeCenter, flangeEdge, centerFilletRadius, edgeFilletRadius) Adds a parametric rolled I-shape to the model AddRolledI(12, 6, 0.25, 0.75, 0.625, 0.5, 0.25) Adds a 12 in deep by 6 in wide rolled I-shape to the model
AddRolledRectangle(depth, width, radius) Adds a parametric rolled rectangle to the model AddRolledRectangle(10, 5, 1) Adds a 10 in deep by 5 in wide rolled rectangle to the model
AddRolledTee(depth, width, topWebThickness, bottomWebThickness, flangeCenterThickness, flangeEdgeThickness, centerFillet, flangeFillet, webFillet) Adds a parametric rolled tee to the model AddRolledTee(8, 6, 0.375, 0.25, 0.625, 0.5, 0.25, 0.125, 0.0625) Adds a 8 in deep by 6 in wide rolled tee to the model
AddRolledTube(depth, width, thickness, insideFillet, outsideFillet) Adds a parametric rolled tube to the model AddRolledTube(8, 4, 0.25, 0.25, 0.5) Adds a 8 in deep by 4 in wide rolled tube to the model
AddRolledZee(depth, width, tf, tw, edgeFillet, centerFillet) Adds a parametric rolled zee to the model AddRolledZee(6, 4, 0.375, 0.25, 0.125, 0.375) Adds a 6 in deep by 4 in wide rolled zee to the model
AddBentAngle(verticalLeg, horizontalLeg, thickness, insideRadius) Adds a parametric bent angle to the model AddBentAngle(6, 4, 0.25, 0.125) Adds a 6 in deep by 4 in wide bent angle to the model
AddBentAngleLips(verticalLeg, horizontalLeg, thickness, insideRadius, lip) Adds a parametric bent angle w/ lips to the model AddBentAngleLips(6, 4, 0.25, 0.125, 1) Adds a 6 in deep by 4 in wide bent angle with 1 in lips to the model
AddBentChannel(depth, width, thickness, insideRadius) Adds a parametric bent channel to the model AddBentChannel(8, 4, 0.25, 0.25) Adds a 8 in deep by 4 in wide bent channel to the model
AddBentChannelLips(depth, width, thickness, insideRadius, lip) Adds a parametric bent channel w/ lips to the model AddBentChannelLips(8, 4, 0.25, 0.25, 0.75) Adds a 8 in deep by 4 in wide bent channel with 0.75 in long lips to the model
AddBentEaveStrut(depth, topWidth, bottomWidth, thickness, insideRadius, lip, topFlangeAngle, bottomFlangeAngle, isLipParallelToWeb) Adds a parametric bent eave strut to the model AddBentEaveStrut(8, 4, 4, 0.25, 0.375, 0.5, 75, 90, true) Adds a 8 in deep by 4 in wide bent eave strut to the model
AddBentHat(depth, width, opening, thickness, radius) Adds a parametric bent hat to the model AddBentHat(6, 2, 3, 0.25, 0.25) Adds a 6 in deep by 2 in wide bent hat to the model
AddBentZee(depth, width, thickness, radius) Adds a parametric bent zee to the model AddBentZee(8, 4, 0.25, 0.25) Adds a 8 in deep by 4 in wide bent zee to the model
AddBentZeeLips(depth, width, thickness, radius, lip, lipAngle) Adds a parametric bent zee w/ lips to the model AddBentZeeLips(8, 6, 0.25, 0.25, 0.5, 15) Adds a 8 in deep by 6 in wide bent zee with 0.5 in lips to the model

Modify

(BACK TO TOP)

Select(names[]) Selects a specified item(s) in the model Select("S1", "S2") Selects shapes S1 and S2 in the model
SelectAllShapes() Selects all of the shapes in the model
UnselectAll() Unselects everything in the model
DeleteSelected() Deletes the selected shape(s) in the model Select shapes S1 and S2 then enter DeleteSelected() Deletes shapes S1 and S2 in the model
Delete(names[]) Deletes a specified shape(s) in the model Delete("S1", "S2") Deletes shapes S1 and S2 in the model
ZeroCentroid() Locates the cross-section's center-of-gravity (cg) at the global origin
MovePointTo(X, Y) Moves a point that defines a generic section part to modify the shape's boundary Select a point of a generic section then enter MovePointTo(5, 10) Moves the selected point to (5, 10)
MoveBy(shape, distanceX, distanceY) Moves a specified shape by a specified distance in each global direction MoveBy("S1", 5, 10) Moves shape S1 by 5 inches and 10 inches in the global X and Y-directions, respectively
MoveTo(shape, X, Y) Moves a specified shape to a defined location MoveTo("S1", 0, 0) Moves shape S1 to the origin
RotateBy(shape, distanceX, distanceY) Rotates a specified shape by a specified amount about its centroid (CCW is +) RotateBy("S1", 15) Rotates shape S1 by 15 degrees CCW
RotateTo(shape, X, Y) Rotates a specified shape to a specified angle amount about its centroid (CCW is +) RotateTo("S1", -15) Rotates shape S1 to 15 degrees CW
RotateToHorizontal() Rotates selected (or all) shapes to align two selected points with the X axis
RotateToVertical() Rotates selected (or all) shapes to align two selected points with the Y axis
SetMaterial(shape, material) Sets the material for a specified shape in the model SetMaterial("S1", "ASTM A36") Sets the material for shape S1 to ASTM A36 steel
SetBaseMaterial(material) Sets the base material in the model SetBaseMaterial("ASTM A992 Grade 50") Sets the base material in the model to ASTM A992 Grade 50 steel
ToggleHole(shape) Toggles the hole parameter for a specified shape in the model ToggleHole("S1") Sets shape S1 as a hole in the model

Loads

(BACK TO TOP)

ApplyCentroidLoad(p, va, vb, ma, mb, t) Applies specified load(s) to the shape's centroid where the primary axis is parallel to the global X-axis and the secondary axis is parallel to the global Y-axis ApplyCentroidLoad(1, 2, 3, 4, 5, 6) Applies 1 kip tension, 2 kips shear along primary axis, 3 kips shear along secondary axis, 4 kips-in moment about primary axis, 5 kip-in moment about secondary axis, and 6 kip-in torsional moment to the section (assuming the Unit Style is Kip & Inches).
ApplyShearCenterLoad(p, va, vb, ma, mb, t) Applies specified load(s) to the shape's shear center where the primary axis is parallel to the global X-axis and the secondary axis is parallel to the global Y-axis ApplyShearCenterLoad(-1, 2, 3, 4, 5, 6) Applies 1 kip compression, 2 kips shear along primary axis, 3 kips shear along secondary axis, 4 kips-in moment about primary axis, 5 kip-in moment about secondary axis, and 6 kip-in torsional moment to the section (assuming Unit Styles are Kip & Inches)
ApplyPrincipalLoad(p, va, vb, ma, mb, t) Applies specified load(s) to the shape's centroid where the primary axis is the shape's major principal axis and the secondary axis is the shape's minor principal axis ApplyPrincipalLoad(1, 2, 3, 4, 5, 6) Applies 1 kip tension, 2 kips shear along primary axis, 3 kips shear along secondary axis, 4 kips-in moment about primary axis, 5 kip-in moment about secondary axis, and 6 kip-in torsional moment to the section (assuming the Unit Style is Kip & Inches).
ApplyGlobalLoad(p, va, vb, ma, mb, t) Applies specified load(s) at the global origin where the primary axis is the global X-axis and the secondary axis is the global Y-axis ApplyGlobalLoad(1, 2, 3, 4, 5, 6) Applies 1 kip tension, 2 kips shear along primary axis, 3 kips shear along secondary axis, 4 kips-in moment about primary axis, 5 kip-in moment about secondary axis, and 6 kip-in torsional moment to the section (assuming Unit Styles are Kip & Inches)
ApplyCustomLoad(p, va, vb, ma, mb, t, x, y, angle) Applies specified load(s) to a specified location with the primary axis and secondary axis rotated a specified amount ApplyCustomLoad(1, 2, 3, 4, 5, 6, 10, 20, 45) Applies 1 kip tension, 2 kips shear along primary axis, 3 kips shear along secondary axis, 4 kips-in moment about primary axis, 5 kip-in moment about secondary axis, and 6 kip-in torsional moment to the section at {10 in, 20 in} where the primary and secondary axes are rotated 45 degrees ccw (assuming Unit Styles are Kip & Inches & Degrees)

Analysis

(BACK TO TOP)

SimpleAnalysis() Pauses the script until the simple analysis completes. Note: Only used for external scripts and must be preceded by "await" await SimpleAnalysis(); Pauses the external script until the simple analysis completes
AdvancedAnalysis() Pauses the script until the advanced analysis completes. Note: Only used for external scripts and must be preceded by "await" await AdvancedAnalysis(); Pauses the external script until the advanced analysis completes
SetMesh(ratio) Sets the finite element mesh size. Note: The mesh refinement is exponential where 0 = coarse and 10 = fine. SetMesh(0) Sets the mesh refinement to coarse

Results

(BACK TO TOP)

GetSectionProperty(property) Returns a specified section property GetSectionProperty("Ix") Returns the moment of inertia bout the centroidal X-axis
GetPartProperty(part, property) Returns a specified section property for a specified part GetSectionProperty("Angle", "Area") Returns the area for the angle section part
Nodes() Returns the number of meshed nodes in the model
Elements() Returns the number of meshed elements for the shape
NormalStress(isMax) Returns the shape's maximum or minimum normal stress NormalStress(false) Returns the shape's minimum normal stress
StVenantXZ(isMax) Returns the shape's maximum or minimum St. Venant τxz stress StVenantXZ(true) Returns the shape's maximum St. Venant τxz stress
StVenantYZ(isMax) Returns the shape's maximum or minimum St. Venant τyz stress StVenantYZ(false) Returns the shape's minimum St. Venant τyz stress
FlexuralShearXZ(isMax) Returns the shape's maximum or minimum flexural τxz shear stress FlexuralShearXZ(true) Returns the shape's maximum flexural τxz shear stress
FlexuralShearYZ(isMax) Returns the shape's maximum or minimum flexural τyz shear stress FlexuralShearYZ(false) Returns the shape's minimum flexural τyz shear stress
CombinedShearXZ(isMax) Returns the shape's maximum or minimum combined St. Venant τxz and flexural τxz shear stress CombinedShearXZ(true) Returns the shape's maximum combined St. Venant τxz and flexural τxz shear stress
CombinedShearYZ(isMax) (isMax)Returns the shape's maximum or minimum combined St. Venant τyz and flexural τyz shear stress CombinedShearYZ(false) Returns the shape's minimum combined St. Venant τyz and flexural τyz shear stress
ResultantShear(isMax) Returns the shape's maximum or minimum resultant shear stress ResultantShear(true) Returns the shape's maximum resultant shear stress
WarpingFunction(isMax) Returns the shape's maximum or minimum warping function value WarpingFunction(true) Returns the shape's maximum warping function value

Report

(BACK TO TOP)

PrintResults() Prints the calculated property results in the command line
ExportResults() Exports the calculated property results to a tab-delimited text file
ExportResults(path) Exports the calculated property results to a tab-delimited text file at a specified path ExportResults("C:/Users/your.login/Desktop/Results.txt") Exports the calculated property results to the Results.txt file on the Desktop
AppendResults(path) Appends the results to the text file at a specified path AppendResults("C:/Users/your.login/Desktop/SectionProperties.txt") Appends the results to the SectionProperties.txt file on the Desktop
AddTable(title) Adds a specified table to the report AddTable("Geometric Properties") Adds the Geometric Properties table to the report
ExportReport(path) Exports the results to a specified path ExportReport("C:/Users/your.login/Desktop/Report.pdf") Saves the report as a .pdf on the desktop for the specified user

Note: The examples in the table above assume the unit style is "Kips & Inches".