Class Shackle
Last update: 16.07.2025Namespace: VM.Models.Pre.Force
Assembly: VM.Models.Pre.Force.dll
This class is to represent the Shackle.
public class Shackle : LinkContainer, IObservableObject, IDisposableObject, ILinkable, IObject, ILinkContainer, IOwned, IHasID, IEventProvider, ILinkContainerEvent, IVerifiable
Inheritance
object ← ObservableObject ← LinkableBase ← LinkContainer ← Shackle
Implements
IObservableObject, IDisposableObject, ILinkable, IObject, ILinkContainer, IOwned, IHasID, IEventProvider, ILinkContainerEvent, IVerifiable
Inherited Members
LinkContainer.SetModified(), LinkContainer.raise_OnUpdating(object, LinkEventArgs), LinkContainer.raise_OnUpdate(object, LinkEventArgs), LinkContainer.raise_OnDestroying(object, LinkEventArgs), LinkContainer.raise_OnDestroy(object, LinkEventArgs), LinkContainer.raise_OnAdded(object, AddToDocEventArgs), LinkContainer.raise_OnRemoved(object, RemoveFromDocEventArgs), LinkContainer.GetTargetListForUpdate(), LinkContainer.SkipUpdateObjectImpl(), LinkContainer.Initialize(Unit.ConvertFactor), LinkContainer.SetFlagWhenXMLFile(string, bool), LinkContainer.IsSerializableEvent(Delegate), LinkContainer.CustomGetObjectData(SerializationInfo, StreamingContext), LinkContainer.GetSerializedData(SerializationInfo, StreamingContext), LinkContainer.LinkRequestUpdating(object, LinkEventArgs), LinkContainer.LinkRequestUpdate(object, LinkEventArgs), LinkContainer.LinkRequestDestroying(object, LinkEventArgs), LinkContainer.LinkRequestDestroy(object, LinkEventArgs), LinkContainer.LinkAddedToDocument(object, AddToDocEventArgs), LinkContainer.LinkRemovedFromDocument(object, RemoveFromDocEventArgs), LinkContainer.OnLinkReserved(ILink, object, EventArgs), LinkContainer.CanBeDestroy(object), LinkContainer.DisposeManagedResources(), LinkContainer.SetContainer(IOwned, bool), LinkContainer.OnChildUpdated(object, LinkEventArgs), LinkContainer.OnContainerDestroy(object, LinkEventArgs), LinkContainer.OnDeserialization(object), LinkContainer.Verify(VerifiedResult), LinkContainer.GetCopy(object), LinkContainer.Dispose(bool), LinkContainer.ClearChildInfoBeforeDeserialize, LinkContainer.Container, LinkContainer.Owner, LinkContainer.Document, LinkContainer.ID, LinkContainer.IsChildExternable, LinkContainer.IsExternable, LinkContainer.OnRemoved, LinkContainer.OnAdded, LinkContainer.OnDestroy, LinkContainer.OnDestroying, LinkContainer.OnUpdate, LinkContainer.OnUpdating, LinkableBase.OnDeserialization(object), ObservableObject.Dispose(), ObservableObject.RaisePropertyChanged(string), ObservableObject.RaisePropertyChanged(string, object, object), ObservableObject.Dispose(bool), ObservableObject.DisposeManagedResources(), ObservableObject.DisposeUnmanagedResources(), ObservableObject.IsDisposed, ObservableObject.TryDisposing, ObservableObject.Disposed, ObservableObject.Disposing, ObservableObject.PropertyChanged
Extension Methods
LinkPropertyItemCache.GetLinkProperties(object, LinkPropertyType),
LinkPropertyItemCache.GetLinkPropertiesAndValues(object, LinkPropertyType),
LinkPropertyItemCache.GetLinkedObjects
Constructors
Shackle()
Initializes a new instance of the
public Shackle()
Properties
ConnectionType
Gets or sets the connection type.
public ConnectionType ConnectionType { get; set; }
Property Value
ConnectorProperty
Gets or sets the connector property.
public PropertyBush ConnectorProperty { get; set; }
Property Value
PropertyBush
Length
Gets the length.
public double Length { get; set; }
Property Value
Location
Gets the location.
public ShackleLocationType Location { get; set; }
Property Value
ShackleLocationType
MassProperty
Gets or sets the mass property.
public ShackleMass MassProperty { get; set; }
Property Value
OffsetX
Gets the offset X to eye.
public double OffsetX { get; set; }
Property Value
OuterRadius
Gets or sets the outer radius.
public ExpressionValueVariable OuterRadius { get; set; }
Property Value
ExpressionValueVariable
PinRadius
Gets or sets the pin radius.
public ExpressionValueVariable PinRadius { get; set; }
Property Value
ExpressionValueVariable
PositioningType
Gets the positioning type.
public ShacklePositonType PositioningType { get; set; }
Property Value
ShacklePositonType
ShackleToFramePosition
Gets the shackle to frame position.
public (double X, double Z) ShackleToFramePosition { get; set; }
Property Value
Methods
GetEyeHolePosition(Eye, double, TMatrix?)
Get the top, bottom position of the cylindrical eye hole body.
public static (Vector Top, Vector Bottom) GetEyeHolePosition(Eye eye, double mainLeafWidth, TMatrix? repositionMatrix = null)
Parameters
eye Eye
The eye.
mainLeafWidth double
The main leaf width.
repositionMatrix TMatrix?
The reposition matrix.
Returns
The top, bottom position
GetShackleHolePosition(Vector, double, TMatrix?)
Get the top, bottom position of the cylindrical shackle hole body.
public static (Vector Top, Vector Bottom) GetShackleHolePosition(Vector centerPosition, double mainLeafWidth, TMatrix? repositionMatrix = null)
Parameters
centerPosition Vector
The center position
mainLeafWidth double
The main leaf width.
repositionMatrix TMatrix?
The reposition matrix.
Returns
The top, bottom position
GetShackleHolePosition(double, TMatrix?)
Get the top, bottom position of the cylindrical shackle hole body.
public (Vector Top, Vector Bottom) GetShackleHolePosition(double mainLeafWidth, TMatrix? repositionMatrix = null)
Parameters
mainLeafWidth double
The main leaf width.
repositionMatrix TMatrix?
The reposition matrix.
Returns
The top, bottom position
Initialize(ConvertFactor)
Initializes member through unit convert factor.
public override void Initialize(Unit.ConvertFactor factor)
Parameters
factor Unit.ConvertFactor
The unit convert factor.
InitializeMassProperty()
Initialize mass property.
public void InitializeMassProperty()