    

 ## On this page

  

 

 #  Class OrientationBase

 Last update: 16.07.2025 

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

This class is to represent the orientation base. Getting the information of orientation(OMatrix type) through Value property. After picking, Getting information of OrientationBase through picker.

```csharp
public class OrientationBase : Expression, IObservableObject, IDisposableObject, ILinkable, ILinkContainerEvent, IVerifiable, IExpression, IOrientationBase, IObject, ILinkContainer, IOwned, IHasID, IEventProvider

```

#### Inheritance

[object](https://learn.microsoft.com/dotnet/api/system.object) ← ObservableObject ← LinkableBase ← [LinkContainer](VM.Managed.LinkContainer.md) ← [Expression](VM.Managed.Expression.md) ← [OrientationBase](VM.Managed.OrientationBase.md)

#### Derived

[OrientationEulerAngle](VM.Managed.OrientationEulerAngle.md), [OrientationLink](VM.Managed.OrientationLink.md), [OrientationMatrix](VM.Managed.OrientationMatrix.md), [OrientationOneDirection](VM.Managed.OrientationOneDirection.md), [OrientationThreePoints](VM.Managed.OrientationThreePoints.md), [OrientationTwoDirections](VM.Managed.OrientationTwoDirections.md)

#### Implements

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

#### Inherited Members

[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), 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(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_OrientationBase__ctor_System_String_"></a> OrientationBase(string)

Initializes a new instance of the  class.

```csharp
public OrientationBase(string strValue)

```

#### Parameters

`strValue` [string](https://learn.microsoft.com/dotnet/api/system.string)

The value of Variable(string type).

### <a id="VM_Managed_OrientationBase__ctor"></a> OrientationBase()

Initializes a new instance of the  class.

```csharp
public OrientationBase()

```

## Properties

### <a id="VM_Managed_OrientationBase_AngleType"></a> AngleType

Gets the specifies angle type.

```csharp
public virtual AngleTypes AngleType { get; }

```

#### Property Value

AngleTypes

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

Gets the parametric.

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

```

#### Property Value

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### <a id="VM_Managed_OrientationBase_RotationAngles"></a> RotationAngles

Gets the list of ration angles.

```csharp
public virtual double[] RotationAngles { get; }

```

#### Property Value

[double](https://learn.microsoft.com/dotnet/api/system.double)\[\]

### <a id="VM_Managed_OrientationBase_RotationAxis"></a> RotationAxis

Gets the rotation axes type.

```csharp
public virtual RotationAxes RotationAxis { get; }

```

#### Property Value

RotationAxes

### <a id="VM_Managed_OrientationBase_RotationType"></a> RotationType

Gets the specifies rotation type.

```csharp
public virtual RotationTypes RotationType { get; }

```

#### Property Value

RotationTypes

### <a id="VM_Managed_OrientationBase_UseExpression"></a> UseExpression

Gets the UseExpression.

```csharp
public bool UseExpression { get; }

```

#### Property Value

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### <a id="VM_Managed_OrientationBase_Value"></a> Value

Gets the information of orientation(OMatrix type).

```csharp
public virtual OMatrix Value { get; set; }

```

#### Property Value

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

### <a id="VM_Managed_OrientationBase_ValueImpl"></a> ValueImpl

Get the VectorBase(x, y, z).

```csharp
virtual OMatrix ValueImpl { get; }

```

#### Property Value

OMatrix

## Methods

### <a id="VM_Managed_OrientationBase_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 virtual XmlSchema GetSchema()

```

#### Returns

[XmlSchema](https://learn.microsoft.com/dotnet/api/system.xml.schema.xmlschema)

### <a id="VM_Managed_OrientationBase_IsParametric"></a> IsParametric()

Gets parametric.

```csharp
public virtual bool IsParametric()

```

#### Returns

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

If set to `true` is parametric; otherwise, `false` is none parametric.

### <a id="VM_Managed_OrientationBase_IsParametric_System_String_"></a> IsParametric(string)

Gets parametric.

```csharp
public static bool IsParametric(string strType)

```

#### Parameters

`strType` [string](https://learn.microsoft.com/dotnet/api/system.string)

Orientation picking type.

#### Returns

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

If set to `true` is parametric; otherwise, `false` is none parametric.

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

Generates an object from its XML representation.

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

```

#### Parameters

`reader` [XmlReader](https://learn.microsoft.com/dotnet/api/system.xml.xmlreader)

The XmlReader stream from which the object is deserialized.

### <a id="VM_Managed_OrientationBase_WriteRotationAnglesToXml_System_Xml_XmlWriter_"></a> WriteRotationAnglesToXml(XmlWriter)

Converts an object into its XML representation about rotation angles.

```csharp
protected void WriteRotationAnglesToXml(XmlWriter writer)

```

#### Parameters

`writer` [XmlWriter](https://learn.microsoft.com/dotnet/api/system.xml.xmlwriter)

The XmlWriter stream to which the object is serialized about rotation angles.

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

Converts an object into its XML representation.

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

```

#### Parameters

`writer` [XmlWriter](https://learn.microsoft.com/dotnet/api/system.xml.xmlwriter)

The XmlWriter stream to which the object is serialized.