    

 ## On this page

  

 

 # Class TransformLink

 Last update: 09.03.2026 

<a id="VM_Managed_TransformLink"></a>

Namespace: [VM.Managed](VM.Managed.md)  
Assembly: VMAppCore.dll

This class is to represent information of orientation through Design Frame and Design Point.

```csharp
public class TransformLink : TransformBase, IObservableObject, IDisposableObject, ILinkable, ILinkContainerEvent, IVerifiable, IExpression, ITransformBase, IObject, ILinkContainer, IOwned, IHasID, IEventProvider, IHasReplaceableEntity, IReservable

```

#### Inheritance

object ← ObservableObject ← [LinkableBase](https://github.com/AnsysVirtualMotion/DAFUL/blob/9110677a5f6a53d7604f8dfd35b4c5fceb59e8e0/DAFUL/Pre/Data/VM.Models.Pre/Models/LinkableBase.cs) ← [LinkContainer](VM.Managed.LinkContainer.md) ← [Expression](VM.Managed.Expression.md) ← [TransformBase](VM.Managed.TransformBase.md) ← [TransformLink](VM.Managed.TransformLink.md)

#### Implements

IObservableObject, IDisposableObject, ILinkable, [ILinkContainerEvent](VM.Managed.ILinkContainerEvent.md), [IVerifiable](VM.Managed.IVerifiable.md), IExpression, ITransformBase, IObject, ILinkContainer, IOwned, IHasID, IEventProvider, IHasReplaceableEntity, IReservable

#### Inherited Members

[TransformBase.m\_matTransform](VM.Managed.TransformBase.md#VM_Managed_TransformBase_m_matTransform), [TransformBase.WritePosAndOriToXml(XmlWriter)](VM.Managed.TransformBase.md#VM_Managed_TransformBase_WritePosAndOriToXml_System_Xml_XmlWriter_), [TransformBase.ReadXml(XmlReader)](VM.Managed.TransformBase.md#VM_Managed_TransformBase_ReadXml_System_Xml_XmlReader_), [TransformBase.WriteXml(XmlWriter)](VM.Managed.TransformBase.md#VM_Managed_TransformBase_WriteXml_System_Xml_XmlWriter_), [TransformBase.GetSchema()](VM.Managed.TransformBase.md#VM_Managed_TransformBase_GetSchema), [TransformBase.HasReplaceableEntity(IObjectBase)](VM.Managed.TransformBase.md#VM_Managed_TransformBase_HasReplaceableEntity_VM_Models_Pre_IObjectBase_), [TransformBase.ReplaceEntity(IObjectBase, IObjectBase)](VM.Managed.TransformBase.md#VM_Managed_TransformBase_ReplaceEntity_VM_Models_Pre_IObjectBase_VM_Models_Pre_IObjectBase_), [TransformBase.UseExpression](VM.Managed.TransformBase.md#VM_Managed_TransformBase_UseExpression), [TransformBase.RotationAngles](VM.Managed.TransformBase.md#VM_Managed_TransformBase_RotationAngles), [TransformBase.RotationAxis](VM.Managed.TransformBase.md#VM_Managed_TransformBase_RotationAxis), [TransformBase.AngleType](VM.Managed.TransformBase.md#VM_Managed_TransformBase_AngleType), [TransformBase.RotationType](VM.Managed.TransformBase.md#VM_Managed_TransformBase_RotationType), [TransformBase.IsParameterized](VM.Managed.TransformBase.md#VM_Managed_TransformBase_IsParameterized), [TransformBase.OrientationImpl](VM.Managed.TransformBase.md#VM_Managed_TransformBase_OrientationImpl), [TransformBase.Orientation](VM.Managed.TransformBase.md#VM_Managed_TransformBase_Orientation), [TransformBase.PositionImpl](VM.Managed.TransformBase.md#VM_Managed_TransformBase_PositionImpl), [TransformBase.Position](VM.Managed.TransformBase.md#VM_Managed_TransformBase_Position), [TransformBase.TransformationMatrixImpl](VM.Managed.TransformBase.md#VM_Managed_TransformBase_TransformationMatrixImpl), [TransformBase.TransformationMatrix](VM.Managed.TransformBase.md#VM_Managed_TransformBase_TransformationMatrix), [Expression.g\_bSkipUpdate](VM.Managed.Expression.md#VM_Managed_Expression_g_bSkipUpdate), [Expression.m\_pExpressionHandler](VM.Managed.Expression.md#VM_Managed_Expression_m_pExpressionHandler), [Expression.m\_strValue](VM.Managed.Expression.md#VM_Managed_Expression_m_strValue), [Expression.m\_dicReferenceObject](VM.Managed.Expression.md#VM_Managed_Expression_m_dicReferenceObject), [Expression.m\_lstReferenceObject](VM.Managed.Expression.md#VM_Managed_Expression_m_lstReferenceObject), [Expression.m\_linkCollectionReferenceObject](VM.Managed.Expression.md#VM_Managed_Expression_m_linkCollectionReferenceObject), [Expression.Initialize()](VM.Managed.Expression.md#VM_Managed_Expression_Initialize), [Expression.UpdateByReferenceObject(object, LinkEventArgs)](VM.Managed.Expression.md#VM_Managed_Expression_UpdateByReferenceObject_System_Object_VM_Managed_LinkEventArgs_), [Expression.AddReferenceObject(UIntPtr)](VM.Managed.Expression.md#VM_Managed_Expression_AddReferenceObject_System_UIntPtr_), [Expression.CheckReferenceObject()](VM.Managed.Expression.md#VM_Managed_Expression_CheckReferenceObject), [Expression.SetDefaultString(ref string)](VM.Managed.Expression.md#VM_Managed_Expression_SetDefaultString_System_String__), [Expression.ConvertToValue(string)](VM.Managed.Expression.md#VM_Managed_Expression_ConvertToValue_System_String_), [Expression.ParseToValue(char\*)](VM.Managed.Expression.md#VM_Managed_Expression_ParseToValue_System_Char__), [Expression.GetNumericValue()](VM.Managed.Expression.md#VM_Managed_Expression_GetNumericValue), [Expression.OnDeserialization(object)](VM.Managed.Expression.md#VM_Managed_Expression_OnDeserialization_System_Object_), [Expression.Uninitialize()](VM.Managed.Expression.md#VM_Managed_Expression_Uninitialize), [Expression.String](VM.Managed.Expression.md#VM_Managed_Expression_String), [LinkContainer.SetModified()](VM.Managed.LinkContainer.md#VM_Managed_LinkContainer_SetModified), [LinkContainer.raise\_OnUpdating(object, LinkEventArgs)](VM.Managed.LinkContainer.md#VM_Managed_LinkContainer_raise_OnUpdating_System_Object_VM_Managed_LinkEventArgs_), [LinkContainer.raise\_OnUpdate(object, LinkEventArgs)](VM.Managed.LinkContainer.md#VM_Managed_LinkContainer_raise_OnUpdate_System_Object_VM_Managed_LinkEventArgs_), [LinkContainer.raise\_OnDestroying(object, LinkEventArgs)](VM.Managed.LinkContainer.md#VM_Managed_LinkContainer_raise_OnDestroying_System_Object_VM_Managed_LinkEventArgs_), [LinkContainer.raise\_OnDestroy(object, LinkEventArgs)](VM.Managed.LinkContainer.md#VM_Managed_LinkContainer_raise_OnDestroy_System_Object_VM_Managed_LinkEventArgs_), [LinkContainer.raise\_OnAdded(object, AddToDocEventArgs)](VM.Managed.LinkContainer.md#VM_Managed_LinkContainer_raise_OnAdded_System_Object_VM_Managed_AddToDocEventArgs_), [LinkContainer.raise\_OnRemoved(object, RemoveFromDocEventArgs)](VM.Managed.LinkContainer.md#VM_Managed_LinkContainer_raise_OnRemoved_System_Object_VM_Managed_RemoveFromDocEventArgs_), [LinkContainer.GetTargetListForUpdate()](VM.Managed.LinkContainer.md#VM_Managed_LinkContainer_GetTargetListForUpdate), [LinkContainer.SkipUpdateObjectImpl()](VM.Managed.LinkContainer.md#VM_Managed_LinkContainer_SkipUpdateObjectImpl), [LinkContainer.Initialize(Unit.ConvertFactor)](VM.Managed.LinkContainer.md#VM_Managed_LinkContainer_Initialize_VM_Unit_ConvertFactor_), [LinkContainer.SetFlagWhenXMLFile(string, bool)](VM.Managed.LinkContainer.md#VM_Managed_LinkContainer_SetFlagWhenXMLFile_System_String_System_Boolean_), [LinkContainer.IsSerializableEvent(Delegate)](VM.Managed.LinkContainer.md#VM_Managed_LinkContainer_IsSerializableEvent_System_Delegate_), [LinkContainer.CustomGetObjectData(SerializationInfo, StreamingContext)](VM.Managed.LinkContainer.md#VM_Managed_LinkContainer_CustomGetObjectData_System_Runtime_Serialization_SerializationInfo_System_Runtime_Serialization_StreamingContext_), [LinkContainer.GetSerializedData(SerializationInfo, StreamingContext)](VM.Managed.LinkContainer.md#VM_Managed_LinkContainer_GetSerializedData_System_Runtime_Serialization_SerializationInfo_System_Runtime_Serialization_StreamingContext_), [LinkContainer.LinkRequestUpdating(object, LinkEventArgs)](VM.Managed.LinkContainer.md#VM_Managed_LinkContainer_LinkRequestUpdating_System_Object_VM_Managed_LinkEventArgs_), [LinkContainer.LinkRequestUpdate(object, LinkEventArgs)](VM.Managed.LinkContainer.md#VM_Managed_LinkContainer_LinkRequestUpdate_System_Object_VM_Managed_LinkEventArgs_), [LinkContainer.LinkRequestDestroying(object, LinkEventArgs)](VM.Managed.LinkContainer.md#VM_Managed_LinkContainer_LinkRequestDestroying_System_Object_VM_Managed_LinkEventArgs_), [LinkContainer.LinkRequestDestroy(object, LinkEventArgs)](VM.Managed.LinkContainer.md#VM_Managed_LinkContainer_LinkRequestDestroy_System_Object_VM_Managed_LinkEventArgs_), [LinkContainer.LinkAddedToDocument(object, AddToDocEventArgs)](VM.Managed.LinkContainer.md#VM_Managed_LinkContainer_LinkAddedToDocument_System_Object_VM_Managed_AddToDocEventArgs_), [LinkContainer.LinkRemovedFromDocument(object, RemoveFromDocEventArgs)](VM.Managed.LinkContainer.md#VM_Managed_LinkContainer_LinkRemovedFromDocument_System_Object_VM_Managed_RemoveFromDocEventArgs_), [LinkContainer.OnLinkReserved(ILink, object, EventArgs)](VM.Managed.LinkContainer.md#VM_Managed_LinkContainer_OnLinkReserved_VM_Managed_ILink_System_Object_System_EventArgs_), [LinkContainer.CanBeDestroy(object)](VM.Managed.LinkContainer.md#VM_Managed_LinkContainer_CanBeDestroy_System_Object_), [LinkContainer.DisposeManagedResources()](VM.Managed.LinkContainer.md#VM_Managed_LinkContainer_DisposeManagedResources), [LinkContainer.SetContainer(IOwned, bool)](VM.Managed.LinkContainer.md#VM_Managed_LinkContainer_SetContainer_VM_Models_Pre_IOwned_System_Boolean_), [LinkContainer.OnChildUpdated(object, LinkEventArgs)](VM.Managed.LinkContainer.md#VM_Managed_LinkContainer_OnChildUpdated_System_Object_VM_Managed_LinkEventArgs_), [LinkContainer.OnContainerDestroy(object, LinkEventArgs)](VM.Managed.LinkContainer.md#VM_Managed_LinkContainer_OnContainerDestroy_System_Object_VM_Managed_LinkEventArgs_), [LinkContainer.OnDeserialization(object)](VM.Managed.LinkContainer.md#VM_Managed_LinkContainer_OnDeserialization_System_Object_), [LinkContainer.Verify(VerifiedResult)](VM.Managed.LinkContainer.md#VM_Managed_LinkContainer_Verify_VM_Managed_VerifiedResult_), [LinkContainer.GetCopy(object)](VM.Managed.LinkContainer.md#VM_Managed_LinkContainer_GetCopy_System_Object_), [LinkContainer.Dispose(bool)](VM.Managed.LinkContainer.md#VM_Managed_LinkContainer_Dispose_System_Boolean_), [LinkContainer.ClearChildInfoBeforeDeserialize](VM.Managed.LinkContainer.md#VM_Managed_LinkContainer_ClearChildInfoBeforeDeserialize), [LinkContainer.Container](VM.Managed.LinkContainer.md#VM_Managed_LinkContainer_Container), [LinkContainer.Owner](VM.Managed.LinkContainer.md#VM_Managed_LinkContainer_Owner), [LinkContainer.Document](VM.Managed.LinkContainer.md#VM_Managed_LinkContainer_Document), [LinkContainer.ID](VM.Managed.LinkContainer.md#VM_Managed_LinkContainer_ID), [LinkContainer.IsChildExternable](VM.Managed.LinkContainer.md#VM_Managed_LinkContainer_IsChildExternable), [LinkContainer.IsExternable](VM.Managed.LinkContainer.md#VM_Managed_LinkContainer_IsExternable), [LinkContainer.OnRemoved](VM.Managed.LinkContainer.md#VM_Managed_LinkContainer_OnRemoved), [LinkContainer.OnAdded](VM.Managed.LinkContainer.md#VM_Managed_LinkContainer_OnAdded), [LinkContainer.OnDestroy](VM.Managed.LinkContainer.md#VM_Managed_LinkContainer_OnDestroy), [LinkContainer.OnDestroying](VM.Managed.LinkContainer.md#VM_Managed_LinkContainer_OnDestroying), [LinkContainer.OnUpdate](VM.Managed.LinkContainer.md#VM_Managed_LinkContainer_OnUpdate), [LinkContainer.OnUpdating](VM.Managed.LinkContainer.md#VM_Managed_LinkContainer_OnUpdating), [LinkableBase.OnDeserialization(object)](https://github.com/AnsysVirtualMotion/DAFUL/blob/9110677a5f6a53d7604f8dfd35b4c5fceb59e8e0/DAFUL/Pre/Data/VM.Models.Pre/Models/LinkableBase.cs), 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)](VM.Models.Pre.Cache.LinkPropertyItemCache.md#VM_Models_Pre_Cache_LinkPropertyItemCache_GetLinkProperties_System_Object_VM_Models_Pre_LinkPropertyType_), [LinkPropertyItemCache.GetLinkPropertiesAndValues(object, LinkPropertyType)](VM.Models.Pre.Cache.LinkPropertyItemCache.md#VM_Models_Pre_Cache_LinkPropertyItemCache_GetLinkPropertiesAndValues_System_Object_VM_Models_Pre_LinkPropertyType_), [LinkPropertyItemCache.GetLinkedObjects&lt;T&gt;(object, LinkPropertyType)](VM.Models.Pre.Cache.LinkPropertyItemCache.md#VM_Models_Pre_Cache_LinkPropertyItemCache_GetLinkedObjects__1_System_Object_VM_Models_Pre_LinkPropertyType_)

## Constructors

### <a id="VM_Managed_TransformLink__ctor_VM_Managed_ITransform_"></a> TransformLink(ITransform)

Initializes a new instance of the  class.

```csharp
public TransformLink(ITransform pTransform)

```

#### Parameters

`pTransform` [ITransform](VM.Managed.ITransform.md)

The data of transform.

### <a id="VM_Managed_TransformLink__ctor"></a> TransformLink()

Initializes a new instance of the  class.

```csharp
public TransformLink()

```

## Fields

### <a id="VM_Managed_TransformLink_m_linkTransform"></a> m\_linkTransform

```csharp
protected Link<ITransform, LinkContainer.Update, LinkContainer.Destroy, LinkContainer.None> m_linkTransform

```

#### Field Value

[Link](VM.Managed.Link-4.md)&lt;[ITransform](VM.Managed.ITransform.md), [LinkContainer](VM.Managed.LinkContainer.md).[Update](VM.Managed.LinkContainer.Update.md), [LinkContainer](VM.Managed.LinkContainer.md).[Destroy](VM.Managed.LinkContainer.Destroy.md), [LinkContainer](VM.Managed.LinkContainer.md).[None](VM.Managed.LinkContainer.None.md)&gt;

## Properties

### <a id="VM_Managed_TransformLink_IsParameterized"></a> IsParameterized

Gets the parametric.

```csharp
public override bool IsParameterized { get; }

```

#### Property Value

bool

### <a id="VM_Managed_TransformLink_LinkTransform"></a> LinkTransform

Gets or sets the object of design frame or design point.

```csharp
public ITransform LinkTransform { get; set; }

```

#### Property Value

[ITransform](VM.Managed.ITransform.md)

### <a id="VM_Managed_TransformLink_Orientation"></a> Orientation

Gets the information of orientation(OMatrix type).

```csharp
public override OMatrix Orientation { get; }

```

#### Property Value

[OMatrix](VM.Managed.OMatrix.md)

### <a id="VM_Managed_TransformLink_Position"></a> Position

Gets the information of position(VectorBase type).

```csharp
public override VectorBase Position { get; }

```

#### Property Value

[VectorBase](VM.Managed.VectorBase.md)

### <a id="VM_Managed_TransformLink_TransformationMatrix"></a> TransformationMatrix

Gets the information of transform(TMatrix type).

```csharp
public override TMatrix TransformationMatrix { get; set; }

```

#### Property Value

[TMatrix](VM.Managed.TMatrix.md)

### <a id="VM_Managed_TransformLink__LinkTransform"></a> \_LinkTransform

Gets or sets the object of design frame or design point.

```csharp
public Linker<ITransform> _LinkTransform { get; set; }

```

#### Property Value

[Linker](VM.Managed.Linker-1.md)&lt;[ITransform](VM.Managed.ITransform.md)&gt;

## Methods

### <a id="VM_Managed_TransformLink_GetSchema"></a> GetSchema()

This method is reserved and should not be used. When implementing the IXmlSerializable interface, you should return nullNothingnullptra null reference (Nothing in Visual Basic) (Nothing in Visual Basic) from this method, and instead, if specifying a custom schema is required, apply the XmlSchemaProviderAttribute to the class.

```csharp
public override XmlSchema GetSchema()

```

#### Returns

XmlSchema

### <a id="VM_Managed_TransformLink_HasReplaceableEntity_VM_Models_Pre_IObjectBase_"></a> HasReplaceableEntity(IObjectBase)

Gets a value indicating whether this instance has replacable entity.

```csharp
public override bool HasReplaceableEntity(IObjectBase oldObject)

```

#### Parameters

`oldObject` IObjectBase

The old object

#### Returns

bool

if this instance has replacable entity, the result is true.

### <a id="VM_Managed_TransformLink_LinkRequestUpdate_System_Object_VM_Managed_LinkEventArgs_"></a> LinkRequestUpdate(object, LinkEventArgs)

The update event occured from the linked object.

```csharp
protected override void LinkRequestUpdate(object obNotifier, LinkEventArgs arg)

```

#### Parameters

`obNotifier` object

`arg` [LinkEventArgs](VM.Managed.LinkEventArgs.md)

The update event information.

### <a id="VM_Managed_TransformLink_ReadXml_System_Xml_XmlReader_"></a> ReadXml(XmlReader)

Generates an object from its XML representation.

```csharp
public override void ReadXml(XmlReader reader)

```

#### Parameters

`reader` XmlReader

The XmlReader stream from which the object is deserialized.

### <a id="VM_Managed_TransformLink_ReplaceEntity_VM_Models_Pre_IObjectBase_VM_Models_Pre_IObjectBase_"></a> ReplaceEntity(IObjectBase, IObjectBase)

Replace Entity

```csharp
public override bool ReplaceEntity(IObjectBase oldObject, IObjectBase newObject)

```

#### Parameters

`oldObject` IObjectBase

The old object

`newObject` IObjectBase

The new object

#### Returns

bool

if success, the result is true.

### <a id="VM_Managed_TransformLink_WriteXml_System_Xml_XmlWriter_"></a> WriteXml(XmlWriter)

Converts an object into its XML representation.

```csharp
public override void WriteXml(XmlWriter writer)

```

#### Parameters

`writer` XmlWriter

The XmlWriter stream to which the object is serialized.