BH.oM.Physical.Reinforcement.IShapeCode¶
Base interface for all ShapeCode objects.
Interface structure¶
Implemented interfaces and base types¶
The IShapeCode is inheriting from the following base type(s) and implements the following interfaces:
- BH.oM.Base.IBHoMObject
- BH.oM.Base.IObject
Classes implementing this interface¶
The following classes are implementing this interface:
- BH.oM.Physical.Reinforcement.BS8666.ShapeCode00
- BH.oM.Physical.Reinforcement.BS8666.ShapeCode11
- BH.oM.Physical.Reinforcement.BS8666.ShapeCode12
- BH.oM.Physical.Reinforcement.BS8666.ShapeCode13
- BH.oM.Physical.Reinforcement.BS8666.ShapeCode14
- BH.oM.Physical.Reinforcement.BS8666.ShapeCode15
- BH.oM.Physical.Reinforcement.BS8666.ShapeCode21
- BH.oM.Physical.Reinforcement.BS8666.ShapeCode22
- BH.oM.Physical.Reinforcement.BS8666.ShapeCode23
- BH.oM.Physical.Reinforcement.BS8666.ShapeCode24
- BH.oM.Physical.Reinforcement.BS8666.ShapeCode25
- BH.oM.Physical.Reinforcement.BS8666.ShapeCode26
- BH.oM.Physical.Reinforcement.BS8666.ShapeCode27
- BH.oM.Physical.Reinforcement.BS8666.ShapeCode28
- BH.oM.Physical.Reinforcement.BS8666.ShapeCode29
- BH.oM.Physical.Reinforcement.BS8666.ShapeCode31
- BH.oM.Physical.Reinforcement.BS8666.ShapeCode32
- BH.oM.Physical.Reinforcement.BS8666.ShapeCode33
- BH.oM.Physical.Reinforcement.BS8666.ShapeCode34
- BH.oM.Physical.Reinforcement.BS8666.ShapeCode35
- BH.oM.Physical.Reinforcement.BS8666.ShapeCode36
- BH.oM.Physical.Reinforcement.BS8666.ShapeCode41
- BH.oM.Physical.Reinforcement.BS8666.ShapeCode44
- BH.oM.Physical.Reinforcement.BS8666.ShapeCode46
- BH.oM.Physical.Reinforcement.BS8666.ShapeCode47
- BH.oM.Physical.Reinforcement.BS8666.ShapeCode48
- BH.oM.Physical.Reinforcement.BS8666.ShapeCode51
- BH.oM.Physical.Reinforcement.BS8666.ShapeCode52
- BH.oM.Physical.Reinforcement.BS8666.ShapeCode56
- BH.oM.Physical.Reinforcement.BS8666.ShapeCode63
- BH.oM.Physical.Reinforcement.BS8666.ShapeCode64
- BH.oM.Physical.Reinforcement.BS8666.ShapeCode67
- BH.oM.Physical.Reinforcement.BS8666.ShapeCode75
- BH.oM.Physical.Reinforcement.BS8666.ShapeCode77
- BH.oM.Physical.Reinforcement.BS8666.ShapeCode98
- BH.oM.Physical.Reinforcement.BS8666.ShapeCode99
Properties¶
Defining properties¶
The following properties are defined on the interface
Name | Type | Description | Quantity |
---|---|---|---|
Diameter | double | The diameter of the reinforcement bar. | - |
BendRadius | double | Bend radius used for any discontinuities in the CentreCurve. | - |
Derived properties¶
The following properties are defined as extension methods in one of the BHoM_Engines
Name | Type | Description | Quantity | Engine |
---|---|---|---|---|
GeneralEndProjection | double | Gets the minimum end projection for general bends (bobs) or links where the bend is greater than or equal to 150 degrees.This is based on the diameter of the reinforcement bar and the standard is determined from the ShapeCode namespace. | Length [m] | Physical_Engine |
HookDiameter | double | Gets the hook diameter based on the diameter of the reinforcement bar, the shape code and the bend radius. | Length [m] | Physical_Engine |
ICentreline | ICurve | Computes the centreline for a Reinforcement using the standard as determined by the ShapeCode namespace. The curve will be in the XY Plane - refer to the ShapeCode description for specifics on the orientation. | - | Physical_Engine |
IIsCompliant | bool | Verifies the dimensions to the standard as determined by the ShapeCode namespace. | - | Physical_Engine |
IsNull | bool | Checks if a ShapeCode is null and outputs relevant error message. | - | Physical_Engine |
LinksEndProjection | double | Gets the minimum end projection for links where the bend is less than 150 degrees.This is based on the diameter of the reinforcement bar and the standard is determined from the ShapeCode namespace. | Length [m] | Physical_Engine |
MaximumRadius | double | Gets the maximum radius based on the diameter of the reinforcement bar. The standard is determined from the namespace of the ShapeCode. | Length [m] | Physical_Engine |
ReinforcementStandard | string | Gets the standard for reinforcement (e.g. BS 8666) based on the namespace of the ShapeCode. | - | Physical_Engine |
SchedulingRadius | double | Gets the minimum scheduling radius based on the diameter of the reinforcement bar. The standard is determined from the namespace of the ShapeCode. | Length [m] | Physical_Engine |
Code and Schema¶
C# implementation¶
Assembly: Physical_oM.dll
The C# interface 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/Physical_oM/Reinforcement/IShapeCode.json"
}
The JSON Schema is available on github here: