Skip to content

BH.oM.Spatial.ShapeProfiles.GeneralisedFabricatedBoxProfile

Rectangular hollow profile that allows for different thicknesses of the webs, top flange and bottom flange as well as defined outstands of the top and bottom flange

Class structure

Implemented interfaces and base types

The GeneralisedFabricatedBoxProfile is inheriting from the following base type(s) and implements the following interfaces:

Properties

Defining properties

The following properties are defined on the class

Name Type Description Quantity
Shape ShapeType - -
Height double Full depth between the extreme fibres of the flanges. Length [m]
Width double Width between the extreme fibres of the webs, excluding corbel widths. Length [m]
WebThickness double - Length [m]
TopFlangeThickness double - Length [m]
BotFlangeThickness double - Length [m]
TopLeftCorbelWidth double The additional width added to the left side of the top flange, measured from the outside edge of the web. Length [m]
TopRightCorbelWidth double The additional width added to the right side of the top flange, measured from the outside edge of the web. Length [m]
BotLeftCorbelWidth double The additional width added to the left side of the bottom flange, measured from the outside edge of the web. Length [m]
BotRightCorbelWidth double The additional width added to the right side of the bottom flange, measured from the outside edge of the web. Length [m]
Edges ReadOnlyCollection<ICurve> Edge curves that matches the dimensions in the global XY-plane. -

Inherited properties

The following properties are inherited from the base class of the object

Name Type Description Quantity
BHoM_Guid Guid - -
Name string - -
Fragments FragmentSet - -
Tags HashSet<string> - -
CustomData Dictionary<string, object> - -

Derived properties

The following properties are defined as extension methods in one of the BHoM_Engines

Name Type Description Quantity Engine
Area double Gets the area of an IProfile. This assumes that the outermost curve(s) are solid. Curves inside a solid region are assumed to be openings, and curves within openings are assumed to be solid, etc. Also, for TaperedProfiles, the average area is returned. Area [m²] Spatial_Engine
Bounds BoundingBox Queries the BoundingBox of a Profile. Acts on the profile edges through the Geometry_Engine. - Spatial_Engine
Description string Generates a default description for the profile as 'GenFabBox Height x TotalWidth x WebThickness x TopFlangeThickness x BotFlangeThickness'. - Structure_Engine
DescriptionOrName string Gets the name from a profile. If null or empty, a default description name is provided instead. - Structure_Engine
Geometry CompositeGeometry Queries edge curves from an IProfile. - Spatial_Engine
ICircularEquivalentDiameter double Returns the Circular Equivalent Diameter for elements that are non-circular, equivalent in length, fluid resistance and airflow. - MEP_Engine
IDescription string Generates a default description for the Profile, based on dimensions. - Structure_Engine
IsNull bool Checks if an Profile is null and outputs relevant error message. - Spatial_Engine
IThickness double Returns the thickness of a ShapeProfile. Length [m] Spatial_Engine
ITorsionalConstant double Calculates the torsional constant for the profile. Note that this is not the polar moment of inertia. TorsionConstant [m⁴] Structure_Engine
IWarpingConstant double Gets the warping constant for the profile. WarpingConstant [m⁶] Structure_Engine
VoidArea double Gets the void area enclosed by an IProfile. This assumes that the outermost curve(s) are solid. Curves inside a solid region are assumed to be openings, and curves within openings are assumed to be solid, etc. Also, for TaperedProfiles, the average void area is returned. Area [m²] Spatial_Engine

Code and Schema

C# implementation

C#
public class GeneralisedFabricatedBoxProfile : BH.oM.Base.BHoMObject, BH.oM.Base.IBHoMObject, BH.oM.Base.IObject, BH.oM.Spatial.ShapeProfiles.IProfile, BH.oM.Base.IImmutable

Assembly: Spatial_oM.dll

The C# class definition is available on github:

All history and changes of the class can be found by inspection the history.

JSON Schema implementation

The object is defined as a JSON schema. You can validate a JSON instance against this schema by reference. To do this, use the schema reference below in a validator like this one.

JSON Schema
{
 "$ref" : "https://raw.githubusercontent.com/BHoM/BHoM_JSONSchema/develop/Spatial_oM/ShapeProfiles/GeneralisedFabricatedBoxProfile.json"
}

The JSON Schema is available on github here: