Skip to content

BH.oM.Structure.Constraints.Constraint6DOF

Constraint objects with six degrees of freedom, three translational and three rotational, used for supports and bar end releases.

Class structure

Implemented interfaces and base types

The Constraint6DOF 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
Name string A unique Name is required for some structural packages to create and identify the object. -
TranslationalStiffnessX double Defines the stiffness in X-direction. This will only be active when corresponding degree of freedom has a DOFType with a stiffness dependency, such as Spring. ForcePerUnitLength [N/m]
TranslationalStiffnessY double Defines the stiffness in Y-direction. This will only be active when corresponding degree of freedom has a DOFType with a stiffness dependency, such as Spring. ForcePerUnitLength [N/m]
TranslationalStiffnessZ double Defines the stiffness in Z-direction. This will only be active when corresponding degree of freedom has a DOFType with a stiffness dependency, such as Spring. ForcePerUnitLength [N/m]
RotationalStiffnessX double Defines the stiffness for rotation about the X-axis. This will only be active when corresponding degree of freedom has a DOFType with a stiffness dependency, such as Spring. MomentPerUnitAngle [N.m/rad]
RotationalStiffnessY double Defines the stiffness for rotation about the Y-axis. This will only be active when corresponding degree of freedom has a DOFType with a stiffness dependency, such as Spring. MomentPerUnitAngle [N.m/rad]
RotationalStiffnessZ double Defines the stiffness for rotation about the Z-axis. This will only be active when corresponding degree of freedom has a DOFType with a stiffness dependency, such as Spring. MomentPerUnitAngle [N.m/rad]
TranslationX DOFType Defines the translational fixity in the X-direction. -
TranslationY DOFType Defines the translational fixity in the Y-direction. -
TranslationZ DOFType Defines the translational fixity in the Z-direction. -
RotationX DOFType Defines the rotational fixity about the X-axis. -
RotationY DOFType Defines the rotational fixity about the Y-axis. -
RotationZ DOFType Defines the rotational fixity about the Z-axis. -

Inherited properties

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

Name Type Description Quantity
BHoM_Guid Guid - -
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
Description string Generates a default description for the Constraint6DOF based on the constraints at each degree of freedom. - Structure_Engine
DescriptionOrName string Gets the name from a IProperty. If null or empty, a default description name is provided instead. - Structure_Engine
ElasticValues double[] Gets the spring values from a Constraint6DOF as a double array. Values returned in the following order: TransX, TranxY, TransZ, RotX, RotY, RotZ. - Structure_Engine
Fixities bool[] Gets the fixitiy values from a constraint as a bool array. The value returned will be true if the DOFType is fixed. Values returned in the following order: TransX, TranxY, TransZ, RotX, RotY, RotZ. - Structure_Engine
IDescription string Generates a default description for the IProperty, based on its properties. - Structure_Engine
IsNull bool Checks if a Constraint6DOF is null and outputs relevant error message. - Structure_Engine
IsNumericallyDependent bool Returns true if any of the degrees of freedom is of a value based type or the values are non-zero. - Structure_Engine

Code and Schema

C# implementation

C#
public class Constraint6DOF : BH.oM.Base.BHoMObject, BH.oM.Base.IBHoMObject, BH.oM.Base.IObject, BH.oM.Structure.IProperty

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/Constraints/Constraint6DOF.json"
}

The JSON Schema is available on github here: