BH.oM.Structure.FloorSystem.PrecastConcreteFrameRibbed¶
Floor configuration of a ribbed slab supported on a precast concrete frame of primary and secondary beams.
Class structure¶
Implemented interfaces and base types¶
The PrecastConcreteFrameRibbed 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.FloorSystem.IFloorConfiguration
- BH.oM.Structure.FloorSystem.IConcreteFrameConfiguration
- BH.oM.Structure.FloorSystem.ISecondaryBeamConfiguration<BH.oM.Structure.SectionProperties.ConcreteSection, BH.oM.Structure.SectionProperties.ConcreteSection>
- BH.oM.Structure.FloorSystem.IPrimaryBeamConfiguration<BH.oM.Structure.SectionProperties.ConcreteSection>
- BH.oM.Structure.FloorSystem.IConcretePrimaryBeamConfiguration
- BH.oM.Structure.FloorSystem.IConcreteSlabConfiguration<BH.oM.Structure.SurfaceProperties.Ribbed>
- BH.oM.Structure.FloorSystem.ISlabConfiguration<BH.oM.Structure.SurfaceProperties.Ribbed>
Properties¶
Defining properties¶
The following properties are defined on the class
| Name | Type | Description | Quantity |
|---|---|---|---|
| Slab | Ribbed | Surface property defining the construction and thickness of the slab. | - |
| SlabReinforcement | ISlabReinforcement | Reinforcement of the slab, defined either as an estimated density or as an explicit layout. Can be null if no slab reinforcement is to be accounted for. | - |
| PrimaryBeam | ConcreteSection | Section of the primary beams spanning between columns in the local X direction. | - |
| SecondaryBeam | ConcreteSection | Section of the secondary beams spanning between the primary beams in the local Y direction. | - |
| BeamReinforcement | IBeamReinforcement | Reinforcement applied to the beams. Can be left null if more detailed reinforcement is applied to the ConcreteSections for Primary and Secondary beams. | - |
| NumSecondary | int | Number of secondary (infill) beams in a bay, counting the beam on one edge of the bay but not the one on the opposite edge. Set to zero for no secondary beams. | - |
| PrimaryBeamTopLevel | double | Distance from top of slab to top of primary beam. Set to slab thickness for slab on top but set to zero for within depth of slab. | Length [m] |
| SecondaryBeamTopLevel | double | Distance from top of slab to top of secondary beam. Set to slab thickness for slab on top but set to zero for within depth of slab. | Length [m] |
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> | - | - |
Code and Schema¶
C# implementation¶
C#
public class PrecastConcreteFrameRibbed : BH.oM.Base.BHoMObject,
BH.oM.Base.IBHoMObject,
BH.oM.Base.IObject,
BH.oM.Structure.FloorSystem.IFloorConfiguration,
BH.oM.Structure.FloorSystem.IConcreteFrameConfiguration,
BH.oM.Structure.FloorSystem.ISecondaryBeamConfiguration<BH.oM.Structure.SectionProperties.ConcreteSection, BH.oM.Structure.SectionProperties.ConcreteSection>,
BH.oM.Structure.FloorSystem.IPrimaryBeamConfiguration<BH.oM.Structure.SectionProperties.ConcreteSection>,
BH.oM.Structure.FloorSystem.IConcretePrimaryBeamConfiguration,
BH.oM.Structure.FloorSystem.IConcreteSlabConfiguration<BH.oM.Structure.SurfaceProperties.Ribbed>,
BH.oM.Structure.FloorSystem.ISlabConfiguration<BH.oM.Structure.SurfaceProperties.Ribbed>
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/FloorSystem/PrecastConcreteFrameRibbed.json"
}
The JSON Schema is available on github here: