BH.oM.Structure.Loads.GravityLoad¶
Gravity load to be applied to elements such as Bars, Panels and FEMeshes.
Class structure¶
Implemented interfaces and base types¶
The GravityLoad 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.Structure.Loads.IElementLoad<BH.oM.Base.BHoMObject>
- BH.oM.Structure.Loads.ILoad
Properties¶
Defining properties¶
The following properties are defined on the class
Name | Type | Description | Quantity |
---|---|---|---|
GravityDirection | Vector | The magnitude and direction of gravity. This will be scaled by the gravity constant g in the analysis, which means a load representing gravity should be a Vector with -1 as its Z-component. | - |
Loadcase | Loadcase | The Loadcase in which the load is applied. | - |
Objects | BHoMGroup<BHoMObject> | The group of structural elements, Bars and IAreaElements, that the load should be applied to. For most analysis packages the objects added here need to be pulled from the analysis package before being assigned to the load. | - |
Axis | LoadAxis | Defines whether the load is applied in local or global coordinates. | - |
Projected | bool | If true the load is projected to the element. This means that the load will be reduced when its direction is at an angle to the element. | - |
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 |
---|---|---|---|---|
IsNull | bool | Checks if a Load is null and outputs relevant error message. | - | Structure_Engine |
IVisualize | IEnumerable<IGeometry> | Draws arrows representing the load. Visualisation will depend on the load type. | - | Structure_Engine |
Visualize | List<ICurve> | Draws arrows representing the gravity load. FOr bars it will be drawn as a series of arrows over the length of the Bar elements in the load. For panels it will be displayed as a list of arrows along the boundary on the element. | - | Structure_Engine |
Code and Schema¶
C# implementation¶
C#
public class GravityLoad : BH.oM.Base.BHoMObject,
BH.oM.Base.IBHoMObject,
BH.oM.Base.IObject,
BH.oM.Structure.Loads.IElementLoad<BH.oM.Base.BHoMObject>,
BH.oM.Structure.Loads.ILoad
Assembly: Structure_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/Structure_oM/Loads/GravityLoad.json"
}
The JSON Schema is available on github here: