BH.oM.Spatial.ShapeProfiles.GeneralisedTSectionProfile¶
T-shaped profile that allows for different outsand widths and thicknesses. Outstands with different thicknesses are aligned by their top edge. The full width of the top flange can be calculated as LeftOutstandWidth + WebThickness + RightOutstandWidth.
Class structure¶
Implemented interfaces and base types¶
The GeneralisedTSectionProfile is inheriting from the following base type(s) and implements the following interfaces:
- BH.oM.Base.BHoMObject
- BH.oM.Base.IBHoMObject
- BH.oM.Base.IObject
- BH.oM.Spatial.ShapeProfiles.IProfile
- BH.oM.Base.IImmutable
Properties¶
Defining properties¶
The following properties are defined on the class
Name | Type | Description | Quantity |
---|---|---|---|
Shape | ShapeType | - | - |
Height | double | Full depth between the extreme fibre of the outstand and the web. | Length [m] |
WebThickness | double | - | Length [m] |
LeftOutstandWidth | double | Outstand width on the left side, measured from the outside edge of the web. | Length [m] |
LeftOutstandThickness | double | - | Length [m] |
RightOutstandWidth | double | Outstand width on the right side, measured from the outside edge of the web. | Length [m] |
RightOutstandThickness | double | - | - |
MirrorAboutLocalY | bool | If true, the section is mirrored about its local y-axis, resulting in upside down T-shape. | - |
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 'GenT Height x WebThickness x LeftOutstandWidth x LeftOutstandThickness x RightOutstandWidth x RightOutstandThickness'. | - | 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 |
TorsionalConstant | double | Calculates the torsional constant for the profile. Note that this is not the polar moment of inertia. | TorsionConstant [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¶
public class GeneralisedTSectionProfile : 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.
{
"$ref" : "https://raw.githubusercontent.com/BHoM/BHoM_JSONSchema/develop/Spatial_oM/ShapeProfiles/GeneralisedTSectionProfile.json"
}
The JSON Schema is available on github here: