BH.oM.Structure.Constraints.LinkConstraint¶
Defines the rigid connectivity between a primary and set of secondary nodes.
Class structure¶
Implemented interfaces and base types¶
The LinkConstraint 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.IProperty
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. | - |
XtoX | bool | True defines a rigid connectivity between primary and secondary nodes for translations along the X-axis, i.e. true prohibits relative translation along the X-axis between primary and secondary nodes. | - |
YtoY | bool | True defines a rigid connectivity between primary and secondary nodes for translations along the Y-axis, i.e. true prohibits relative translation along the Y-axis between primary and secondary nodes. | - |
ZtoZ | bool | True defines a rigid connectivity between primary and secondary nodes for translations along the Z-axis, i.e. true prohibits relative translation along the Z-axis between primary and secondary nodes. | - |
XtoYY | bool | True means that a X-translation imposes a rigid Y-axis rotation. | - |
XtoZZ | bool | True means that a X-translation imposes a rigid Z-axis rotation. | - |
YtoXX | bool | True means that a Y-translation imposes a rigid X-axis rotation. | - |
YtoZZ | bool | True means that a Y-translation imposes a rigid Z-axis rotation. | - |
ZtoXX | bool | True means that a Z-translation imposes a rigid X-axis rotation. | - |
ZtoYY | bool | True means that a Z-translation imposes a rigid Y-axis rotation. | - |
XXtoXX | bool | True defines a rigid connectivity between primary and secondary nodes for rotations about the X-axis, i.e. true prohibits relative rotation about the X-axis between primary and secondary nodes. | - |
YYtoYY | bool | True defines a rigid connectivity between primary and secondary nodes for rotations about the Y-axis, i.e. true prohibits relative rotation about the Y-axis between primary and secondary nodes. | - |
ZZtoZZ | bool | True defines a rigid connectivity between primary and secondary nodes for rotations about the Z-axis, i.e. true prohibits relative rotation about the Z-axis between primary and secondary nodes. | - |
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 LinkConstraint based on its fixities where x denoted fixed and f denotes free. | - | Structure_Engine |
DescriptionOrName | string | Gets the name from a IProperty. If null or empty, a default description name is provided instead. | - | Structure_Engine |
IDescription | string | Generates a default description for the IProperty, based on its properties. | - | Structure_Engine |
Code and Schema¶
C# implementation¶
C#
public class LinkConstraint : 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/LinkConstraint.json"
}
The JSON Schema is available on github here: